.aod { position:fixed; inset:0; z-index:5000; display:grid; place-items:center; padding:16px; background:rgba(2,6,23,.55); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); animation:aod-bg .16s ease-out; }
.aod.out { opacity:0; transition:opacity .14s; }
.aod-card { width:min(380px,100%); padding:24px 22px 18px; border-radius:20px; background:var(--card); color:var(--fg); text-align:center; outline:none; box-shadow:0 0 0 1px rgba(15,23,42,.06), 0 28px 60px -12px rgba(15,23,42,.5); animation:aod-in .2s cubic-bezier(.2,1.2,.3,1); }
.aod-ico { display:grid; place-items:center; width:44px; height:44px; margin:0 auto 12px; border-radius:50%; background:var(--primary-soft); color:var(--primary); font-weight:800; font-size:1.3rem; }
.aod-ico.danger { background:rgba(225,29,72,.14); color:#E11D48; }
.aod-card h2 { margin:0 0 6px; font-size:1.1rem; }
.aod-card p { margin:0 0 18px; color:var(--muted); line-height:1.5; font-size:.95rem; }
.aod-acts { display:flex; gap:10px; }
.aod-acts .btn { flex:1; }
.aod-acts .btn.danger { background:#E11D48; border-color:#E11D48; color:#fff; }
.aod-acts .btn.danger:hover { background:#BE123C; border-color:#BE123C; }
@keyframes aod-bg { from { opacity:0; } }
@keyframes aod-in { from { opacity:0; transform:translateY(8px) scale(.96); } }
@media (prefers-reduced-motion: reduce) { .aod, .aod-card { animation:none; } }
.aof-f { display:flex; flex-direction:column; gap:4px; text-align:left; }
.aof-f label { font-weight:600; font-size:.88rem; }
.aof-f input, .aof-f select, .aof-f textarea { width:100%; box-sizing:border-box; padding:10px 12px; border:1px solid var(--border); border-radius:12px; background:var(--card); color:var(--fg); font:inherit; }
.aof-f input:focus, .aof-f select:focus, .aof-f textarea:focus { outline:2px solid var(--primary); outline-offset:1px; }
.aof-f small { color:var(--muted); font-size:.78rem; }
.aod-card.wide { width:min(520px,100%); max-height:92vh; overflow-y:auto; text-align:left; }
.aod-card.wide h2 { margin:0 0 4px; }
.trm-sub { margin:0 0 14px !important; font-size:.85rem !important; }
.trm-body { display:flex; flex-direction:column; gap:12px; margin-bottom:14px; }
.trm-err { margin:0 0 10px; color:#DC2626; font-size:.85rem; }
