:root{ --efap-btn-bg:#1976d2; --efap-btn-color:#fff; --efap-btn-radius:6px; --efap-btn-padding:8px 12px; --efap-gap:8px; }
.efap-action-wrap{ display:inline-flex; gap:var(--efap-gap); align-items:center; margin-right:6px; margin-bottom:6px; flex-wrap:wrap; }
.efap-action-btn{ padding:var(--efap-btn-padding); border-radius:var(--efap-btn-radius); border:none; background:var(--efap-btn-bg); color:var(--efap-btn-color); cursor:pointer; font-weight:600; }
.efap-backdrop{ position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:99990; }
.efap-modal{ position:fixed; left:50%; top:50%; transform:translate(-50%,-50%); background:#fff; padding:18px; width:92%; max-width:720px; border-radius:10px; box-shadow:0 12px 40px rgba(0,0,0,0.18); z-index:99991; box-sizing:border-box; }
.efap-close{ position:absolute; right:12px; top:8px; border:none; background:transparent; font-size:18px; cursor:pointer; }
.efap-content{ max-height:60vh; overflow:auto; padding-bottom:8px; }
.efap-preview-list table{ width:100%; border-collapse:collapse; }
.efap-preview-list th{ text-align:left; vertical-align:top; padding:8px 12px; width:30%; color:#333; font-weight:600; }
.efap-preview-list td{ padding:8px 12px; border-top:1px solid #f2f2f2; color:#555; word-break:break-word; }
.efap-no-data{ padding:12px; color:#777; }
.efap-actions{ text-align:right; margin-top:12px; }
.efap-btn{ padding:8px 12px; border-radius:8px; border:none; cursor:pointer; margin-left:8px; font-weight:600; }
.efap-btn-edit{ background:#e0e0e0; color:#111; }
.efap-btn-confirm{ background:#1e73be; color:#fff; }
.efap-flash{ position:fixed; left:50%; transform:translateX(-50%); bottom:24px; background:#333; color:#fff; padding:8px 12px; border-radius:6px; opacity:0; transition: all 0.28s ease; z-index:99999; }
.efap-flash-show{ opacity:1; transform: translateX(-50%) translateY(-6px); }
@media (max-width:480px){ .efap-action-wrap{ width:100%; } .efap-action-btn{ flex:1 1 auto; } .efap-actions .efap-btn{ width:48%; display:inline-block; } }