/* NeuroMira r5.1 — local dialog polish; no auth/API/permission changes. */
:root{--dg-surface:rgba(255,255,255,.58);--dg-field:rgba(255,255,255,.34);--dg-line:rgba(45,57,77,.16);--dg-glint:rgba(255,255,255,.85);--dg-muted:#566173;--dg-solid:#fafbfe;--dg-backdrop:rgba(27,36,52,.08);--dg-hover:rgba(255,255,255,.66)}
:root[data-theme=dark]{--dg-surface:rgba(8,12,18,.40);--dg-field:rgba(255,255,255,.045);--dg-line:rgba(255,255,255,.14);--dg-glint:rgba(255,255,255,.13);--dg-muted:#b3bbc8;--dg-solid:#11151c;--dg-backdrop:rgba(0,0,0,.16);--dg-hover:rgba(255,255,255,.075)}
@media(prefers-color-scheme:dark){:root[data-theme=system]{--dg-surface:rgba(8,12,18,.40);--dg-field:rgba(255,255,255,.045);--dg-line:rgba(255,255,255,.14);--dg-glint:rgba(255,255,255,.13);--dg-muted:#b3bbc8;--dg-solid:#11151c;--dg-backdrop:rgba(0,0,0,.16);--dg-hover:rgba(255,255,255,.075)}}
#authDialog,#modelDialog{background:linear-gradient(135deg,rgba(255,255,255,.055),transparent 42%),var(--dg-surface)!important;border:1px solid var(--dg-line)!important;box-shadow:0 28px 90px #0003,inset 0 1px 0 var(--dg-glint)!important;backdrop-filter:blur(16px) saturate(125%)!important;-webkit-backdrop-filter:blur(16px) saturate(125%)!important;border-radius:28px;padding:30px;max-height:calc(100dvh - 36px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--dg-line) transparent}
#authDialog::backdrop,#modelDialog::backdrop{background:var(--dg-backdrop)!important;backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important}
#authDialog .dialog-head,#modelDialog .dialog-head{margin:0 0 16px;gap:12px}
#authDialog .auth-top-icon{width:44px;height:44px;border-radius:15px;margin:0;background:rgba(50,183,255,.08);border-color:rgba(50,183,255,.18);box-shadow:inset 0 1px 0 #ffffff0c}
#authDialog .auth-top-icon svg{width:20px;height:20px}
#authDialog h2,#modelDialog h2{font-size:25px;font-weight:550;line-height:1.28;letter-spacing:-.7px;margin:0;max-width:440px}
#authDialog .dialog-desc,#modelDialog .dialog-desc{color:var(--dg-muted);font-size:13px;line-height:1.75}
#authDialog .auth-label{font-weight:500;margin-top:24px;margin-bottom:9px}
#authDialog .auth-input,#modelDialog .model-search{background:var(--dg-field)!important;border:1px solid var(--dg-line)!important;border-radius:16px;color:var(--text);box-shadow:inset 0 1px 0 #ffffff05;transition:border-color 180ms ease,background-color 180ms ease,box-shadow 180ms ease}
#authDialog .auth-input{min-height:54px;padding:15px 16px}
#authDialog .auth-input::placeholder,#modelDialog .model-search::placeholder{color:var(--dg-muted);opacity:.8}
#authDialog .auth-input:focus,#modelDialog .model-search:focus{outline:2px solid rgba(50,183,255,.23);outline-offset:2px;border-color:rgba(50,183,255,.65)!important;box-shadow:0 0 0 4px rgba(50,183,255,.045)}
#authDialog .auth-submit{min-height:48px;border-radius:16px;margin-top:20px;font-weight:550;box-shadow:0 6px 22px #0001}
#authDialog .auth-submit:active{transform:translateY(1px)}
#authDialog .auth-submit:disabled{opacity:.55;cursor:wait}
#authDialog .auth-note{font-size:12px;line-height:1.8;color:var(--dg-muted);padding-top:17px;margin-top:22px;border-top:1px solid var(--dg-line)}
#authDialog #privacyFromAuth{padding-left:0;min-height:38px;font-size:12px}
#authDialog .auth-success{margin:20px 0 0;padding:12px 14px;border-radius:14px;border:1px solid rgba(50,183,255,.2);background:rgba(50,183,255,.055);font-size:13px;overflow-wrap:anywhere}
#authDialog #otpCode{font-size:22px;letter-spacing:5px;font-variant-numeric:tabular-nums}
#authDialog #otpCode::placeholder{font-size:14px;letter-spacing:0}
#authDialog #authError{background:rgba(220,70,70,.075);border:1px solid rgba(220,70,70,.2);padding:11px 13px;border-radius:13px;font-size:13px}
#authDialog form:not(.hidden){animation:dg-step 220ms ease both}
@keyframes dg-step{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
#modelDialog .dialog-desc{margin:0 0 20px}
#modelDialog .model-search{width:100%;min-height:48px;padding:13px 15px;font-size:14px}
#modelDialog .model-limit-note{font-size:11px;line-height:1.7;color:var(--dg-muted);margin:10px 0 20px}
#modelDialog .model-option{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:4px 12px;min-height:86px;padding:16px 32px 16px 14px;background:var(--dg-field);border:1px solid var(--dg-line);border-radius:18px;transition:background-color 180ms ease,border-color 180ms ease,transform 200ms ease;box-shadow:inset 0 1px 0 #ffffff04}
#modelDialog .model-option .model-mark{grid-column:1;grid-row:1/3;width:32px;height:32px;align-self:center;border-radius:11px;background:rgba(50,183,255,.10);color:var(--blue)}
#modelDialog .model-option .details{grid-column:2;grid-row:1/3;align-self:center}
#modelDialog .model-option strong{font-size:14px;font-weight:550;line-height:1.45;margin-bottom:3px}
#modelDialog .model-option small{font-size:11px;line-height:1.65;color:var(--dg-muted)}
#modelDialog .model-option .model-id{font-size:10px;opacity:.7;margin-top:3px}
#modelDialog .model-option .price-label{grid-column:3;grid-row:1/3;align-self:center;font-size:10px;line-height:1.6;color:var(--dg-muted);max-width:100px;text-align:right}
#modelDialog .model-option .check{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--blue)}
#modelDialog .model-option:has(.check){border-color:rgba(50,183,255,.4);background:linear-gradient(105deg,rgba(50,183,255,.085),transparent 80%),var(--dg-field)}
@media(hover:hover){#modelDialog .model-option:hover{background-color:var(--dg-hover);border-color:rgba(50,183,255,.35);transform:translateY(-1px)}}
#authDialog button:focus-visible,#modelDialog button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
#modelDialog #modelNote{background:var(--dg-field);border:1px solid var(--dg-line);border-radius:16px;color:var(--dg-muted);font-size:12px;line-height:1.75;margin-top:18px;padding:14px}
@media(max-width:600px){#authDialog,#modelDialog{padding:22px 20px;border-radius:24px;max-height:calc(100dvh - 24px);width:calc(100% - 24px);max-width:560px}#authDialog h2,#modelDialog h2{font-size:23px}#authDialog .auth-note{font-size:11px}#modelDialog .model-option{padding:14px 30px 14px 12px;column-gap:10px}#modelDialog .model-option .details{grid-row:1}#modelDialog .model-option .price-label{grid-column:2;grid-row:2;text-align:left;max-width:none;margin-top:2px}#modelDialog .model-option .check{right:12px}#modelDialog .model-limit-note{margin-bottom:14px}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#authDialog,#modelDialog{background:var(--dg-solid)!important}}
@media(prefers-reduced-transparency:reduce){#authDialog,#modelDialog{background:var(--dg-solid)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}#authDialog::backdrop,#modelDialog::backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}#authDialog .auth-input,#modelDialog .model-search,#modelDialog .model-option,#modelDialog #modelNote{background:var(--dg-solid)!important}}
@media(prefers-reduced-motion:reduce){#authDialog,#modelDialog,#authDialog form:not(.hidden),#modelDialog .model-option{animation:none!important;transition:none!important}#modelDialog .model-option:hover{transform:none}}
