:root{
  color-scheme:dark;
  --canvas:#07090d;--surface-1:#0c1016;--surface-2:#111722;--surface-3:#18212c;--surface-raised:#1c2733;
  --border-subtle:#18222d;--border:#283543;--border-strong:#3a4a5a;
  --text-primary:#f4f6f8;--text-secondary:#c7cfd8;--text-muted:#8995a4;
  --accent:#d8bb62;--accent-strong:#e5ca78;--accent-dim:#a88b38;--accent-rgb:216,187,98;
  --accent-soft:rgba(var(--accent-rgb),.10);--accent-medium:rgba(var(--accent-rgb),.18);
  --on-accent:#171306;--focus-ring:rgba(var(--accent-rgb),.32);
  --danger:#f87171;--success:#4ade80;--info:#60a5fa;--warning:#fbbf24;
  --control-bg:#111722;--stage-bg:#090c11;--prompt-bg:#090c12;
  --grid-line:rgba(255,255,255,.025);--surface-hover:rgba(255,255,255,.045);
  --shadow-sm:0 4px 14px rgba(0,0,0,.24);--shadow-md:0 14px 36px rgba(0,0,0,.32);
  --radius-sm:6px;--radius-md:8px;
  --ui:'IBM Plex Sans',Arial,sans-serif;--display:'Orbitron',sans-serif;--mono:'IBM Plex Mono',monospace;
  --ease:cubic-bezier(.2,.8,.2,1);
  /* Compatibility aliases retained for existing application logic and markup. */
  --bg:var(--canvas);--s1:var(--surface-1);--s2:var(--surface-2);--s3:var(--surface-3);
  --brd:var(--border-subtle);--brd2:var(--border);
  --gold:var(--accent);--glo:var(--accent-strong);--gdim:var(--accent-dim);--gold-rgb:var(--accent-rgb);
  --gglow:var(--accent-soft);--gglow2:var(--accent-medium);
  --txt:var(--text-primary);--txt2:var(--text-secondary);--mut:var(--text-muted);
  --err:var(--danger);--ok:var(--success);--inf:var(--info);--warn:var(--warning);
  --r:var(--radius-sm);--r2:var(--radius-md);
  --gold-shadow:0 0 16px rgba(var(--accent-rgb),.14);--card-shadow:var(--shadow-md);
  --surface-elevated:rgba(255,255,255,.025);--neo-glow:var(--accent-soft);
}
[data-theme="neo"]{
  --canvas:#060a0f;--surface-1:#0b1118;--surface-2:#101923;--surface-3:#17232e;--surface-raised:#1b2a36;
  --border-subtle:#14232d;--border:#243946;--border-strong:#35515f;
  --text-primary:#f0f6f8;--text-secondary:#bfced5;--text-muted:#8297a1;
  --accent:#35c7e7;--accent-strong:#6ad9ee;--accent-dim:#1b90aa;--accent-rgb:53,199,231;
  --on-accent:#041318;--control-bg:#101923;--stage-bg:#070c11;--prompt-bg:#080e14;
}
[data-theme="aurora"]{
  --canvas:#08090e;--surface-1:#0f1119;--surface-2:#151824;--surface-3:#1c2030;--surface-raised:#23283a;
  --border-subtle:#202334;--border:#32374d;--border-strong:#484e68;
  --text-primary:#f4f2f8;--text-secondary:#cec8dc;--text-muted:#9690a8;
  --accent:#a98bf7;--accent-strong:#c4adff;--accent-dim:#7d63cf;--accent-rgb:169,139,247;
  --on-accent:#130d21;--control-bg:#151824;--stage-bg:#090a10;--prompt-bg:#0a0b12;
}
[data-theme="emerald"]{
  --canvas:#070b09;--surface-1:#0c1210;--surface-2:#121a17;--surface-3:#19241f;--surface-raised:#1f2d27;
  --border-subtle:#17251f;--border:#293d34;--border-strong:#3a584a;
  --text-primary:#f0f6f2;--text-secondary:#c3d2c8;--text-muted:#879b8e;
  --accent:#4dce89;--accent-strong:#7bdfa8;--accent-dim:#2d9660;--accent-rgb:77,206,137;
  --on-accent:#06150c;--control-bg:#121a17;--stage-bg:#080d0a;--prompt-bg:#090e0b;
}
[data-theme="light"]{
  color-scheme:light;
  --canvas:#eef3f8;--surface-1:#ffffff;--surface-2:#f7f9fc;--surface-3:#edf2f7;--surface-raised:#ffffff;
  --border-subtle:#dbe4ee;--border:#bdcad8;--border-strong:#8ea0b4;
  --text-primary:#101828;--text-secondary:#344054;--text-muted:#667085;
  --accent:#4169a8;--accent-strong:#31548c;--accent-dim:#345c98;--accent-rgb:65,105,168;
  --accent-soft:rgba(var(--accent-rgb),.08);--accent-medium:rgba(var(--accent-rgb),.15);
  --on-accent:#ffffff;--focus-ring:rgba(var(--accent-rgb),.24);
  --danger:#b42318;--success:#137a4c;--info:#175cd3;--warning:#9a6700;
  --control-bg:#ffffff;--stage-bg:#f5f8fb;--prompt-bg:#ffffff;
  --grid-line:rgba(16,24,40,.045);--surface-hover:rgba(16,24,40,.045);
  --shadow-sm:0 3px 12px rgba(16,24,40,.08);--shadow-md:0 14px 34px rgba(16,24,40,.12);
  --surface-elevated:rgba(16,24,40,.02);
}
@media(prefers-color-scheme:light){
  [data-theme="system"]{
    color-scheme:light;
    --canvas:#e8edf3;--surface-1:#ffffff;--surface-2:#f6f8fb;--surface-3:#edf1f5;--surface-raised:#ffffff;
    --border-subtle:#dce3eb;--border:#c3ceda;--border-strong:#9eacbb;
    --text-primary:#101828;--text-secondary:#344054;--text-muted:#667085;
    --accent:#8a6418;--accent-strong:#6f4e0d;--accent-dim:#6f4e0d;--accent-rgb:138,100,24;
    --accent-soft:rgba(var(--accent-rgb),.08);--accent-medium:rgba(var(--accent-rgb),.15);
    --on-accent:#ffffff;--focus-ring:rgba(var(--accent-rgb),.24);
    --danger:#b42318;--success:#137a4c;--info:#175cd3;--warning:#8a5200;
    --control-bg:#ffffff;--stage-bg:#f3f6f9;--prompt-bg:#ffffff;
    --grid-line:rgba(16,24,40,.045);--surface-hover:rgba(16,24,40,.045);
    --shadow-sm:0 3px 12px rgba(16,24,40,.08);--shadow-md:0 14px 34px rgba(16,24,40,.12);
  }
}

*{box-sizing:border-box;margin:0;padding:0;}
html,body{
 background:var(--bg);color:var(--txt);font-family:var(--ui);
 font-size:13px;height:100%;overflow:hidden;
 /* subtle noise grain texture */
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.032'/%3E%3C/svg%3E");
}
#app{display:flex;flex-direction:column;height:100vh;overflow:hidden;}

/* HEADER enhanced with gold shimmer line */
.hdr{
 background:linear-gradient(180deg,#0e0e14 0%,#08080b 100%);
 border-bottom:1px solid rgba(var(--accent-rgb),.22);
 padding:10px 18px 9px;flex-shrink:0;
 display:flex;align-items:center;justify-content:space-between;
 position:relative;box-shadow:0 2px 28px rgba(0,0,0,.55),0 1px 0 rgba(var(--accent-rgb),.08);
 z-index:10;
}
.hdr::after{
 content:'';position:absolute;bottom:0;left:0;right:0;height:1px;
 background:linear-gradient(90deg,transparent 0%,rgba(var(--accent-rgb),.5) 50%,transparent 100%);
}
.brand-wrap{display:flex;align-items:baseline;gap:5px;}
.brand{
 font-family:var(--serif);font-size:17px;font-weight:300;letter-spacing:.16em;
 color:var(--gold);text-shadow:0 0 24px rgba(var(--accent-rgb),.18);
}
.brand-tm{font-size:8px;color:var(--gdim);}
.brand-ver{font-size:8px;color:var(--mut);letter-spacing:.18em;margin-left:2px;align-self:center;}
.brand-sub{
 font-size:9px;letter-spacing:.22em;color:var(--mut);
 text-transform:uppercase;margin-top:3px;
}
.hdr-right{display:flex;align-items:center;gap:8px;} #adminKeyBtn{opacity:.5;transition:opacity .2s;} #adminKeyBtn:hover{opacity:1;}
#hdrEmail{
 font-size:8px;color:var(--txt2);max-width:130px;
 overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.btn-logout{
 padding:4px 10px;font-size:7px;letter-spacing:.18em;text-transform:uppercase;
 background:transparent;border:1px solid rgba(255,255,255,.08);
 color:var(--mut);border-radius:var(--r);cursor:pointer;font-family:var(--mono);
 transition:all .18s;
}
.btn-logout:hover{border-color:var(--gdim);color:var(--txt2);background:rgba(var(--accent-rgb),.04);}
/* VIEWS */
#loginView{position:fixed;inset:0;z-index:100;background:var(--bg);display:none;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;background-image:radial-gradient(ellipse at 50% 40%,rgba(var(--accent-rgb),.05),transparent 68%);}
#loginView.active{display:flex;}
#mainView{display:none;flex:1;min-height:0;overflow:hidden;flex-direction:column;}
#mainView.active{display:flex;}

/* LOGIN */
.login-box{width:100%;max-width:440px;padding:40px 20px;margin-top:auto;margin-bottom:auto;flex-shrink:0;}
.login-brand{text-align:center;margin-bottom:28px;}
.login-brand .brand{font-size:26px;letter-spacing:.1em;text-shadow:0 0 30px rgba(var(--accent-rgb),.2);}
.login-brand p{font-size:8px;letter-spacing:.3em;color:var(--mut);text-transform:uppercase;margin-top:5px;}
.login-rule{width:40px;height:1px;background:linear-gradient(90deg,transparent,var(--gdim),transparent);margin:14px auto;}

/* TABS - enhanced with micro top-accent and glow */
.main-tabs{
 display:flex;border-bottom:1px solid rgba(var(--accent-rgb),.18);
 flex-shrink:0;background:linear-gradient(180deg,#0c0c11,#090909);
 padding:0 8px;gap:0;overflow-x:auto;scrollbar-width:none;
 box-shadow:0 2px 12px rgba(0,0,0,.3);
}
.main-tabs::-webkit-scrollbar{display:none;}
.tab{
 padding:11px 15px;font-size:10px;letter-spacing:.14em;
 text-transform:uppercase;color:var(--mut);cursor:pointer;
 border-bottom:2px solid transparent;margin-bottom:-1px;
 white-space:nowrap;transition:color .2s,border-color .2s,background .2s;
 font-weight:700;position:relative;
}
.tab:hover{color:var(--txt2);background:rgba(var(--accent-rgb),.04);}
.tab.on{
 color:var(--gold);border-bottom-color:var(--gold);
 background:linear-gradient(180deg,rgba(var(--accent-rgb),.06),transparent);
}
.tab.on::before{
 content:'';position:absolute;top:0;left:0;right:0;height:1px;
 background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.6),transparent);
}

/* MAIN BODY */
.main-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;}

/* GENERATOR 2-col */
#tab-gen{flex:1;overflow:hidden;display:none;flex-direction:row;}
#tab-gen.on{display:flex;}
.panel-l{
 width:100%;overflow-y:auto;overflow-x:hidden;flex-shrink:0;
 border-right:1px solid rgba(var(--accent-rgb),.1);
 scrollbar-width:thin;scrollbar-color:rgba(var(--accent-rgb),.15) transparent;
 background:linear-gradient(180deg,#0a0a0f,#08080c);
 min-width:260px;max-width:520px;
}
.panel-resizer{
 width:5px;flex-shrink:0;cursor:col-resize;
 background:rgba(var(--accent-rgb),.06);border-left:1px solid rgba(var(--accent-rgb),.12);
 transition:background .15s;position:relative;z-index:5;
}
.panel-resizer:hover,.panel-resizer.dragging{background:rgba(var(--accent-rgb),.22);}
.panel-resizer::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:24px;background:rgba(var(--accent-rgb),.4);border-radius:2px;}
.panel-l::-webkit-scrollbar{width:3px;}
.panel-l::-webkit-scrollbar-thumb{background:rgba(var(--accent-rgb),.18);border-radius:2px;}
.panel-r{
 display:none;overflow-y:auto;flex:1;
 background:var(--s1);
 scrollbar-width:thin;scrollbar-color:rgba(var(--accent-rgb),.12) transparent;
}
.panel-r::-webkit-scrollbar{width:3px;}
.panel-r::-webkit-scrollbar-thumb{background:rgba(var(--accent-rgb),.15);border-radius:2px;}
@media(min-width:640px){.panel-l{width:300px;}.panel-r{display:block;}}
@media(min-width:800px){.panel-l{width:330px;}}
@media(min-width:960px){.panel-l{width:360px;}}

/* OTHER TABS */
.tabpanel{display:none;flex:1;overflow-y:auto;padding:0;}
.tabpanel.on{display:flex;flex-direction:row;}
.tabpanel .tp-left{
 width:100%;padding:16px 18px 24px;overflow-y:auto;scrollbar-width:thin;
 background:linear-gradient(180deg,#0a0a0f,#08080c);
}
.tabpanel .tp-right{
 display:none;flex:1;padding:16px 18px 24px;
 background:var(--s1);border-left:1px solid rgba(var(--accent-rgb),.08);overflow-y:auto;
}
@media(min-width:640px){.tabpanel .tp-left{width:300px;}.tabpanel .tp-right{display:block;}}
@media(min-width:800px){.tabpanel .tp-left{width:330px;}}

/* SECTION HEADERS - sharper gold accent */
.sec{
 font-size:9px;letter-spacing:.22em;text-transform:uppercase;
 color:var(--gdim);margin:16px 0 10px;padding-bottom:6px;
 border-bottom:1px solid rgba(var(--accent-rgb),.1);
 display:flex;align-items:center;gap:6px;
}
.sec:first-child{margin-top:0;}
.sec-dot{
 width:4px;height:4px;border-radius:50%;
 background:var(--gold);box-shadow:0 0 6px rgba(var(--accent-rgb),.6);
 flex-shrink:0;
}

/* FORM CONTROLS - refined inputs */
.fld{margin-bottom:9px;}
label{
 display:block;font-size:9.5px;letter-spacing:.15em;
 color:var(--txt2);text-transform:uppercase;margin-bottom:4px;
}
input[type=text],input[type=email],input[type=password],select,textarea{
 width:100%;background:rgba(255,255,255,.03);
 border:1px solid rgba(255,255,255,.09);
 color:var(--txt);font-family:var(--mono);font-size:11px;
 padding:6px 10px;border-radius:var(--r);outline:none;
 transition:border-color .18s,background .18s,box-shadow .18s;
}
input:focus,select:focus,textarea:focus{
 border-color:rgba(var(--accent-rgb),.5);
 background:rgba(var(--accent-rgb),.03);
 box-shadow:0 0 0 2px rgba(var(--accent-rgb),.08);
}
input:hover,select:hover{border-color:rgba(255,255,255,.15);}
select{
 background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5'%3E%3Cpath d='M0 0l4.5 5 4.5-5z' fill='%238a6828'/%3E%3C/svg%3E");
 background-repeat:no-repeat;background-position:right 9px center;
 padding-right:26px;cursor:pointer;
}
select option{background:#111118;color:#e4dfd6;} select optgroup{background:#0d0d12;color:#8a6828;font-weight:700;letter-spacing:.1em;}
textarea{resize:vertical;min-height:58px;line-height:1.55;}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}

/* BUTTONS - refined gold gradient + others */
.btn{
 display:block;width:100%;padding:9px 12px;border:none;
 border-radius:var(--r);cursor:pointer;font-family:var(--mono);
 font-size:10px;letter-spacing:.18em;text-transform:uppercase;
 transition:all .18s;
}
.btn-gold{
 background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 50%,var(--accent) 100%);
 color:#060606;font-weight:700;
 box-shadow:0 1px 4px rgba(0,0,0,.3),0 1px 0 rgba(255,255,255,.1) inset;
 background-size:200%;letter-spacing:.12em;
}
.btn-gold:hover:not(:disabled){
 filter:brightness(1.1);
 box-shadow:0 2px 8px rgba(0,0,0,.3);
 transform:translateY(-1px);
}
.btn-gold:active:not(:disabled){transform:translateY(0);}
.btn-gold:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;}
.btn-dim{
 background:rgba(255,255,255,.03);
 border:1px solid rgba(255,255,255,.1);color:var(--txt2);
}
.btn-dim:hover{
 border-color:rgba(var(--accent-rgb),.4);color:var(--txt);
 background:rgba(var(--accent-rgb),.04);
}
.btn-ok{background:rgba(61,170,112,.1);border:1px solid rgba(61,170,112,.32);color:#5ed490;}
.btn-ok:hover{background:rgba(61,170,112,.18);}
.btn-inf{background:rgba(58,136,224,.1);border:1px solid rgba(58,136,224,.32);color:#6aaff5;}
.btn-inf:hover{background:rgba(58,136,224,.18);}
.btn-warn{background:rgba(220,150,40,.08);border:1px solid rgba(220,150,40,.3);color:#d4a040;}
.btn-sm{padding:5px 10px;font-size:9px;width:auto;display:inline-block;letter-spacing:.14em;}
.btn-icon{width:auto;padding:7px 10px;}
.btn-magic{
 background:linear-gradient(135deg,rgba(142,45,226,.15),rgba(74,0,224,.15));
 border:1px solid rgba(142,45,226,.4);color:#d1c4ff;
}
.btn-magic:hover{
 background:linear-gradient(135deg,rgba(142,45,226,.28),rgba(74,0,224,.28));
 border-color:rgba(142,45,226,.7);color:#fff;
}

/* NEO FUTURISTIC THEME OVERRIDES */
[data-theme="neo"] .hdr,
[data-theme="aurora"] .hdr,
[data-theme="emerald"] .hdr {
 background:linear-gradient(180deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.85) 100%);
 border-bottom:1px solid var(--gold);
 box-shadow:0 2px 30px rgba(0,0,0,.8),0 0 40px var(--neo-glow);
}
[data-theme="neo"] .hdr::after,
[data-theme="aurora"] .hdr::after,
[data-theme="emerald"] .hdr::after {
 background:linear-gradient(90deg,transparent 0%,var(--glo) 50%,transparent 100%);
}
[data-theme="neo"] .brand,
[data-theme="aurora"] .brand,
[data-theme="emerald"] .brand {
 text-shadow:0 0 20px var(--gold),0 0 40px var(--gold);
 letter-spacing:.2em;
}
[data-theme="neo"] .btn-gold,
[data-theme="aurora"] .btn-gold,
[data-theme="emerald"] .btn-gold {
 background:linear-gradient(135deg,var(--gdim),var(--glo),var(--gdim));
 box-shadow:0 0 20px var(--neo-glow),0 2px 14px rgba(0,0,0,.5);
 border:1px solid var(--gold);
}
[data-theme="neo"] input:focus,
[data-theme="neo"] select:focus,
[data-theme="aurora"] input:focus,
[data-theme="aurora"] select:focus,
[data-theme="emerald"] input:focus,
[data-theme="emerald"] select:focus {
 border-color:var(--gold);
 box-shadow:0 0 0 2px var(--neo-glow),0 0 12px var(--neo-glow);
}
[data-theme="neo"] .sec-dot,
[data-theme="aurora"] .sec-dot,
[data-theme="emerald"] .sec-dot {
 box-shadow:0 0 8px var(--gold),0 0 16px var(--gold);
}

/* THEME SWITCHER PILL */
.theme-switcher{display:flex;gap:4px;align-items:center;}
.theme-pill{width:18px;height:18px;border-radius:50%;border:1px solid rgba(255,255,255,.15);cursor:pointer;transition:all .18s;position:relative;display:flex;align-items:center;justify-content:center;}
.theme-pill:hover{transform:scale(1.15);border-color:rgba(255,255,255,.5);}
.theme-pill.active{border:2px solid white;box-shadow:0 0 8px rgba(255,255,255,.5);}
.theme-pill[data-t="dark"]{background:#07070a;}
.theme-pill[data-t="light"]{background:#f5f3ef;}
.theme-pill[data-t="neo"]{background:linear-gradient(135deg,#020812,#00d2ff);}
.theme-pill[data-t="aurora"]{background:linear-gradient(135deg,#080a14,#a855f7);}
.theme-pill[data-t="emerald"]{background:linear-gradient(135deg,#030c08,#00c864);}

/* LANDSCAPE MODE BUTTON */
.landscape-btn{
 display:inline-flex;align-items:center;gap:5px;
 background:rgba(0,200,100,.08);border:1px solid rgba(0,200,100,.25);
 color:#5ed490;border-radius:var(--r);padding:5px 10px;
 font-size:8.5px;cursor:pointer;font-family:var(--mono);
 letter-spacing:.12em;text-transform:uppercase;transition:all .18s;
}
.landscape-btn.active{background:rgba(0,200,100,.2);border-color:#5ed490;box-shadow:0 0 12px rgba(0,200,100,.2);}
.landscape-btn:hover{background:rgba(0,200,100,.15);border-color:#5ed490;}

/* SCENE PRESET CATEGORIES */
.scene-cat{margin-bottom:8px;}
.scene-cat-hdr{font-size:9.5px;font-weight:600;line-height:1.35;color:var(--txt2);letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px;display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none;min-height:34px;box-sizing:border-box;padding:7px 10px;border-radius:5px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.02);transition:all .15s;font-family:var(--mono);font-stretch:normal;}
.scene-cat-hdr:hover{color:var(--gold);border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.06);box-shadow:0 0 8px rgba(var(--accent-rgb),.15);}
.scene-cat-body{display:flex;flex-wrap:wrap;gap:3px;}
.scene-preset-tag{
 display:inline-flex;align-items:center;gap:4px;
 background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
 border-radius:10px;padding:5px 10px;font-size:9.5px;color:var(--txt);
 cursor:pointer;transition:all .18s;font-family:var(--mono);
 position:relative;
}
.scene-preset-tag:hover{border-color:rgba(var(--accent-rgb),.5);color:var(--gold);background:rgba(var(--accent-rgb),.1);box-shadow:0 0 8px rgba(var(--accent-rgb),.2),0 2px 6px rgba(0,0,0,.3);transform:translateY(-1px);}
.scene-preset-tag.km-on{border-color:rgba(var(--accent-rgb),.85)!important;background:rgba(var(--accent-rgb),.2)!important;color:var(--accent)!important;font-weight:700!important;box-shadow:0 0 16px rgba(var(--accent-rgb),.6),0 0 6px rgba(var(--accent-rgb),.25)!important;}
.scene-preset-tag.km-on .tag-num{background:rgba(var(--accent-rgb),.3);color:#f0d060;}
.scene-preset-tag .tag-num{
 font-size:7.5px;color:var(--gold);background:rgba(var(--accent-rgb),.12);
 border-radius:3px;padding:1px 4px;letter-spacing:.05em;font-weight:700;
}

/* RESET SETTINGS BUTTON */
.btn-reset{
 background:rgba(217,79,79,.06);border:1px solid rgba(217,79,79,.2);
 color:rgba(217,79,79,.7);border-radius:var(--r);padding:5px 10px;
 font-size:8px;cursor:pointer;font-family:var(--mono);letter-spacing:.12em;
 text-transform:uppercase;transition:all .18s;display:inline-flex;align-items:center;gap:5px;
}
.btn-reset:hover{background:rgba(217,79,79,.14);border-color:var(--err);color:var(--err);}

/* TARGET AI CARD (top placement) */
.ai-platform-card{
 background:linear-gradient(135deg,rgba(var(--accent-rgb),.06),rgba(var(--accent-rgb),.02));
 border:1px solid rgba(var(--accent-rgb),.22);border-radius:var(--r2);
 padding:10px 12px;margin-bottom:10px;
 box-shadow:0 2px 16px rgba(var(--accent-rgb),.06);
}
.ai-platform-card .ai-card-label{
 font-size:7.5px;color:var(--gold);letter-spacing:.2em;text-transform:uppercase;
 margin-bottom:6px;display:flex;align-items:center;gap:6px;font-weight:700;
}

/* CAMERA LOCK STRONG */
.cam-lock-badge{
 display:inline-flex;align-items:center;gap:4px;font-size:7px;
 background:rgba(61,170,112,.12);border:1px solid rgba(61,170,112,.3);
 color:#5ed490;border-radius:8px;padding:2px 8px;letter-spacing:.08em;
}

/* WARNING TOAST STYLE */
.toast-warn{background:rgba(220,150,40,.15);border:1px solid rgba(220,150,40,.4);color:#d4a040;}

/* NUMBERED INSTRUCTION ITEMS */
#instructionsList > div:hover{
 border-color:rgba(var(--accent-rgb),.25)!important;
 background:rgba(var(--accent-rgb),.03)!important;
}
/* AI PLATFORM CARD NEO GLOW */
[data-theme="neo"] .ai-platform-card,
[data-theme="aurora"] .ai-platform-card,
[data-theme="emerald"] .ai-platform-card {
 background:linear-gradient(135deg,rgba(0,0,0,.5),rgba(0,0,0,.3));
 border:1px solid var(--gold);
 box-shadow:0 0 20px var(--neo-glow),inset 0 0 20px rgba(0,0,0,.3);
}
[data-theme="neo"] .ai-platform-card .ai-card-label{text-shadow:0 0 10px var(--gold);}
[data-theme="aurora"] .ai-platform-card .ai-card-label{text-shadow:0 0 10px var(--gold);}
[data-theme="emerald"] .ai-platform-card .ai-card-label{text-shadow:0 0 10px var(--gold);}

.buy-tab-btn{flex:1;padding:10px 4px;background:rgba(var(--accent-rgb),.07);color:var(--gold);border:1px solid rgba(var(--accent-rgb),.22);border-radius:var(--r);font-family:var(--mono);font-size:7.5px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);}
.buy-tab-btn:hover{background:rgba(var(--accent-rgb),.18);border-color:var(--gold);transform:translateY(-2px);box-shadow:0 4px 14px rgba(var(--accent-rgb),.18);}
.buy-tab-btn:active{transform:translateY(0) scale(.96);}
.buy-tab-btn.active{background:var(--gold);color:#060606;border-color:var(--gold);font-weight:700;box-shadow:0 0 16px rgba(var(--accent-rgb),.35);}

/* UPLOAD ZONE */
.upzone{position:relative;overflow:hidden;border-radius:var(--r2);cursor:pointer;background:rgba(255,255,255,.02);border:1.5px dashed rgba(255,255,255,.1);min-height:clamp(190px,26vh,320px);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s;}
.upzone:hover,.upzone.drag{border-color:rgba(var(--accent-rgb),.45);background:rgba(var(--accent-rgb),.04);box-shadow:inset 0 0 20px rgba(var(--accent-rgb),.04);}
.upzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0;z-index:2;}
.up-ph{display:flex;flex-direction:column;align-items:center;padding:20px;pointer-events:none;gap:6px;}
.up-ico-wrap{width:44px;height:44px;border-radius:50%;border:1px solid rgba(var(--accent-rgb),.2);display:flex;align-items:center;justify-content:center;background:rgba(var(--accent-rgb),.05);}
.up-ico{font-size:18px;opacity:.5;}
.up-lbl{font-size:8.5px;letter-spacing:.18em;color:var(--txt2);text-transform:uppercase;}
.up-sub{font-size:7.5px;color:var(--mut);}
#refImg{width:100%;height:100%;object-fit:contain;position:absolute;inset:0;display:none;border-radius:var(--r2);background:var(--bg);}
.upzone.has-img{min-height:clamp(280px,40vh,480px);border-style:solid;border-color:rgba(var(--accent-rgb),.4);}
.upzone.has-img .up-ph{display:none;}
.prv-bar{display:none;position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(7,7,10,.96),rgba(7,7,10,.65));backdrop-filter:blur(8px);align-items:center;justify-content:space-between;padding:5px 10px;font-size:8px;color:var(--txt2);z-index:4;}
.prv-bar.on{display:flex;}
.prv-x{cursor:pointer;color:var(--err);padding-left:8px;flex-shrink:0;font-size:11px;}
.image-toolbelt{position:absolute;top:8px;right:8px;display:flex;gap:6px;z-index:9;opacity:0;transform:translateY(-3px);transition:opacity .18s,transform .18s;pointer-events:none;}
.upzone.has-img .image-toolbelt,.upzone.rendered .image-toolbelt{opacity:1;transform:translateY(0);pointer-events:auto;}
.image-tool-btn{width:28px;height:28px;border-radius:8px;border:1px solid rgba(var(--accent-rgb),.32);background:rgba(7,7,10,.82);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;cursor:pointer;backdrop-filter:blur(8px);box-shadow:0 8px 18px rgba(0,0,0,.35);transition:all .16s;}
.image-tool-btn:hover{background:rgba(var(--accent-rgb),.18);border-color:var(--gold);transform:translateY(-1px);}
@keyframes spin{to{transform:rotate(360deg);}}
.up-acts{display:flex;gap:6px;margin-top:8px;}
.up-acts .btn{font-size:7.5px;padding:7px 8px;letter-spacing:.14em;}
.render-status{display:none;margin-top:7px;padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:var(--r);background:rgba(255,255,255,.025);font-size:8px;line-height:1.6;color:var(--txt2);}
.render-status.on{display:block;}
.render-status.ok{border-color:rgba(61,170,112,.32);color:#7bd99c;background:rgba(61,170,112,.06);}
.render-status.err{border-color:rgba(217,79,79,.38);color:#ff8a8a;background:rgba(217,79,79,.08);}
.render-model-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;margin-top:7px;padding:7px 9px;border:1px solid rgba(255,255,255,.08);border-radius:var(--r);background:rgba(255,255,255,.025);}
.render-model-row label{font-size:7.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gdim);white-space:nowrap;}
.render-model-row select{width:100%;min-height:32px;border:1px solid rgba(var(--accent-rgb),.18);border-radius:8px;background:#09090d;color:var(--txt2);font-family:var(--mono);font-size:9px;padding:0 8px;}
.render-provider-note{margin-top:6px;font-size:7.5px;line-height:1.55;color:var(--mut);}

/* SCAN BADGES */
.badges{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0 4px;}
.badge{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:4px 10px;font-size:9px;color:var(--mut);transition:all .2s;}
.badge.on{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);background:rgba(var(--accent-rgb),.08);box-shadow:0 0 8px rgba(var(--accent-rgb),.1);}
.badge.scanning{border-color:var(--inf);color:var(--inf);animation:pulse 1.2s infinite;}
.scan-desc{display:none;font-size:8px;color:var(--txt2);line-height:1.6;padding:7px 10px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:var(--r);margin-bottom:6px;white-space:pre-line;max-height:132px;overflow:auto;}
.scan-desc.on{display:block;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.4;}}

/* PROMPT BOX */
.prompt-section{border:1px solid rgba(255,255,255,.08);border-radius:var(--r2);overflow:hidden;margin-top:14px;transition:border-color .3s,box-shadow .3s;}
@keyframes promptGlow2{
 0% {box-shadow:0 0 0 2px rgba(var(--accent-rgb),.5),0 0 12px rgba(var(--accent-rgb),.15),inset 0 0 20px rgba(var(--accent-rgb),.04);border-color:rgba(var(--accent-rgb),.6);}
 50% {box-shadow:0 0 0 3px rgba(var(--accent-rgb),1), 0 0 30px rgba(var(--accent-rgb),.4), inset 0 0 40px rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),1);}
 100%{box-shadow:0 0 0 2px rgba(var(--accent-rgb),.5),0 0 12px rgba(var(--accent-rgb),.15),inset 0 0 20px rgba(var(--accent-rgb),.04);border-color:rgba(var(--accent-rgb),.6);}
}
.prompt-section.generating{animation:promptGlow2 1.2s ease-in-out infinite;overflow:visible;}
.prompt-section.generating::after{content:'';position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.06),transparent);animation:promptScan 2s linear infinite;pointer-events:none;z-index:1;}
@keyframes promptScan{0%{left:-60%;}100%{left:160%;}}
[data-theme="neo"] .prompt-section.generating{animation:promptGlowNeo 1.2s ease-in-out infinite;}
@keyframes promptGlowNeo{0%,100%{box-shadow:0 0 0 2px rgba(0,210,255,.5),0 0 12px rgba(0,210,255,.2);border-color:rgba(0,210,255,.6);}50%{box-shadow:0 0 0 3px rgba(0,210,255,1),0 0 30px rgba(0,210,255,.5);border-color:rgba(0,210,255,1);}}
[data-theme="aurora"] .prompt-section.generating{animation:promptGlowAurora 1.2s ease-in-out infinite;}
@keyframes promptGlowAurora{0%,100%{box-shadow:0 0 0 2px rgba(168,85,247,.5),0 0 12px rgba(168,85,247,.2);border-color:rgba(168,85,247,.6);}50%{box-shadow:0 0 0 3px rgba(168,85,247,1),0 0 30px rgba(168,85,247,.5);border-color:rgba(168,85,247,1);}}
[data-theme="emerald"] .prompt-section.generating{animation:promptGlowEmerald 1.2s ease-in-out infinite;}
@keyframes promptGlowEmerald{0%,100%{box-shadow:0 0 0 2px rgba(0,200,100,.5),0 0 12px rgba(0,200,100,.2);border-color:rgba(0,200,100,.6);}50%{box-shadow:0 0 0 3px rgba(0,200,100,1),0 0 30px rgba(0,200,100,.5);border-color:rgba(0,200,100,1);}}
.prompt-hdr{background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06);padding:8px 12px;display:flex;align-items:center;justify-content:space-between;}
.prompt-hdr-title{font-size:7.5px;letter-spacing:.28em;color:var(--gdim);text-transform:uppercase;display:flex;align-items:center;gap:6px;}
.prompt-hdr-acts{display:flex;gap:5px;}
.prompt-body{padding:12px;font-size:9.5px;line-height:1.85;color:var(--txt);background:rgba(0,0,0,.25);font-family:var(--mono);min-height:80px;letter-spacing:.02em;white-space:pre-wrap;word-break:break-word;max-height:280px;overflow-y:auto;}
.prompt-line-key{color:#5aafcc;}.prompt-line-val{color:#7ab89e;}
.prompt-line-head{color:var(--gold);letter-spacing:.12em;font-size:9px;font-weight:500;}
.prompt-line-neg{color:#c06060;}.prompt-line-brand{color:var(--gdim);font-style:italic;}
.prompt-line-sep{color:rgba(255,255,255,.08);font-size:8px;}.prompt-line-sys{color:var(--txt2);font-size:9px;}
.prompt-empty{color:var(--mut);font-size:9px;font-style:italic;text-align:center;padding:20px 0;}

/* RESULT CARDS */
.result-card{background:var(--s2);border:1px solid rgba(255,255,255,.07);border-radius:var(--r2);overflow:hidden;margin-bottom:10px;position:relative;box-shadow:0 4px 24px rgba(0,0,0,.45);}
.result-card img{width:100%;display:block;}
.result-badge{position:absolute;top:8px;left:8px;font-size:7px;letter-spacing:.15em;background:rgba(7,7,10,.85);color:var(--gold);padding:3px 9px;border-radius:10px;border:1px solid rgba(var(--accent-rgb),.3);backdrop-filter:blur(6px);}
.result-new{border-color:rgba(var(--accent-rgb),.35);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.1);}
.result-prompt-preview{padding:10px 12px;font-size:8.5px;color:var(--txt2);line-height:1.7;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,.05);}

/* COMPARE */
.cmp-wrap{position:relative;overflow:hidden;border-radius:var(--r2);border:1px solid rgba(255,255,255,.08);background:#050507;display:none;margin-bottom:10px;touch-action:none;}
.cmp-wrap.on{display:block;}
.cmp-before{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;background:#050507;}
.cmp-after-wrap{position:absolute;inset:0;width:50%;height:100%;overflow:hidden;background:#050507;}
.cmp-after-wrap img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:#050507;}
.cmp-slider{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--gold);display:block;box-shadow:0 0 12px rgba(var(--accent-rgb),.55);z-index:3;}
.cmp-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;background:var(--gold);box-shadow:0 2px 12px rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;font-size:9px;color:#060606;font-weight:bold;}
.cmp-label-before,.cmp-label-after{position:absolute;bottom:8px;font-size:7px;letter-spacing:.15em;text-transform:uppercase;background:rgba(7,7,10,.8);color:var(--gold);padding:2px 7px;border-radius:8px;}
.cmp-label-before{left:8px;}.cmp-label-after{right:8px;}
.render-full-modal{z-index:260;padding:14px;}
.render-full-box{width:min(96vw,1280px);max-width:none;height:min(94vh,920px);display:flex;flex-direction:column;padding:14px;}
.render-full-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
.render-full-stage{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#050507;border:1px solid rgba(255,255,255,.08);border-radius:var(--r2);}
.render-full-stage .cmp-wrap{width:100%;height:100%;margin:0;border:0;border-radius:0;background:#050507;display:block;}
.render-full-stage .cmp-before,.render-full-stage .cmp-after-wrap img{width:100%;height:100%;object-fit:contain;background:#050507;}
.render-key-note{font-size:8px;line-height:1.6;color:var(--mut);margin-top:8px;}
input[type=range].range-slider{width:100%;margin:0;height:4px;cursor:pointer;-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,var(--gold) 50%,rgba(255,255,255,.1) 50%);border-radius:2px;outline:none;}
input[type=range].range-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--gold);cursor:pointer;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.2),0 2px 6px rgba(0,0,0,.5);transition:box-shadow .15s,transform .15s;}
input[type=range].range-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 0 5px rgba(var(--accent-rgb),.25),0 2px 8px rgba(0,0,0,.5);}
input[type=range].range-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:none;background:var(--gold);cursor:pointer;}
[data-theme="neo"] input[type=range].range-slider{background:linear-gradient(90deg,#00d2ff 50%,rgba(255,255,255,.1) 50%);}
[data-theme="neo"] input[type=range].range-slider::-webkit-slider-thumb{background:#00d2ff;box-shadow:0 0 0 3px rgba(0,210,255,.2),0 2px 6px rgba(0,0,0,.5);}
[data-theme="aurora"] input[type=range].range-slider{background:linear-gradient(90deg,#a855f7 50%,rgba(255,255,255,.1) 50%);}
[data-theme="aurora"] input[type=range].range-slider::-webkit-slider-thumb{background:#a855f7;box-shadow:0 0 0 3px rgba(168,85,247,.2),0 2px 6px rgba(0,0,0,.5);}
[data-theme="emerald"] input[type=range].range-slider{background:linear-gradient(90deg,#00c864 50%,rgba(255,255,255,.1) 50%);}
[data-theme="emerald"] input[type=range].range-slider::-webkit-slider-thumb{background:#00c864;box-shadow:0 0 0 3px rgba(0,200,100,.2),0 2px 6px rgba(0,0,0,.5);}

/* PROGRESS */
.prog{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:var(--r2);padding:16px;text-align:center;display:none;margin-bottom:10px;}
.prog.on{display:block;}
.prog-bar-wrap{height:2px;background:rgba(255,255,255,.07);border-radius:1px;margin:10px 0 8px;overflow:hidden;}
.prog-bar{height:100%;background:linear-gradient(90deg,var(--gdim),var(--gold),var(--glo));border-radius:1px;width:0%;transition:width .6s ease;}
.prog-bar.indeterminate{width:40%;animation:progslide 1.4s ease-in-out infinite;}
@keyframes progslide{0%{transform:translateX(-100%);}100%{transform:translateX(350%);}}
.prog-steps{display:flex;justify-content:center;gap:6px;margin-top:6px;flex-wrap:wrap;}
.prog-step{font-size:7px;letter-spacing:.15em;text-transform:uppercase;color:var(--mut);padding:3px 8px;border:1px solid rgba(255,255,255,.07);border-radius:8px;}
.prog-step.active{color:var(--gold);border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.07);}
.prog-step.done{color:var(--ok);border-color:rgba(61,170,112,.3);}

/* HISTORY */
.hist-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}
.hist-item{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid rgba(255,255,255,.08);cursor:pointer;transition:border-color .2s,box-shadow .2s;box-shadow:0 2px 12px rgba(0,0,0,.4);}
.hist-item:hover{border-color:rgba(var(--accent-rgb),.4);box-shadow:0 4px 20px rgba(var(--accent-rgb),.12);}
.hist-item img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;height:60px;}
.hist-overlay{position:absolute;inset:0;background:rgba(7,7,10,.78);display:flex;align-items:center;justify-content:center;gap:5px;opacity:0;transition:.2s;backdrop-filter:blur(2px);}
.hist-item:hover .hist-overlay{opacity:1;}
.hist-ts{position:absolute;bottom:2px;left:4px;font-size:8px;color:rgba(228,223,214,.45);letter-spacing:.05em;}
.hist-empty{text-align:center;padding:40px 20px;font-size:9px;color:var(--mut);line-height:1.8;}

/* EDIT CANVAS */
.edit-canvas-wrap{position:relative;border-radius:var(--r2);overflow:hidden;margin-bottom:8px;border:1px solid rgba(255,255,255,.09);}
#editCanvas{display:block;width:100%;cursor:crosshair;}
.edit-tools{display:flex;gap:5px;margin-bottom:8px;flex-wrap:wrap;}
.etool{padding:5px 10px;font-size:7.5px;border-radius:var(--r);cursor:pointer;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);color:var(--mut);letter-spacing:.12em;text-transform:uppercase;transition:all .15s;}
.etool.on{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);background:rgba(var(--accent-rgb),.08);}

/* COLLAPSIBLE */
.coll-hdr{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:10px 14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:var(--r);transition:all .2s;margin-bottom:4px;}
.coll-hdr:hover{border-color:rgba(var(--accent-rgb),.3);background:rgba(var(--accent-rgb),.04);}
.coll-hdr .sec{margin:0;border:none;padding:0;font-size:8.5px;letter-spacing:.2em;font-weight:bold;color:var(--txt);}
.coll-arr{font-size:14px;color:var(--gold);transition:transform .35s cubic-bezier(.4,0,.2,1);display:inline-block;transform:rotate(-90deg);}
.coll-hdr.open .coll-arr{transform:rotate(0deg);}
.coll-body{display:none;padding:12px;background:rgba(0,0,0,.15);border:1px solid rgba(255,255,255,.07);border-top:none;border-radius:0 0 var(--r) var(--r);margin-top:-5px;margin-bottom:10px;}
.coll-body.open{display:block;}
/* scene-cat-hdr hover effect arrow */
.scene-cat-hdr .sc-arr{display:inline-block;font-size:10px;color:var(--gold);transition:transform .3s cubic-bezier(.4,0,.2,1);transform:rotate(-90deg);margin-right:3px;}
.scene-cat-hdr.open .sc-arr{transform:rotate(0deg);}
/* auto-spacing: hide empty .sep when prev sibling is hidden */
.km-coll-wrap{margin-bottom:8px;transition:margin .2s;}
.km-coll-wrap[style*="display:none"] + .km-coll-wrap{margin-top:0;}

/* ERRORS/TOAST */
.errmsg{background:rgba(217,79,79,.07);border:1px solid rgba(217,79,79,.28);color:var(--err);border-radius:var(--r);padding:7px 10px;font-size:8.5px;margin-bottom:10px;display:none;line-height:1.5;}
.toast{position:fixed;bottom:16px;left:50%;transform:translateX(-50%) translateY(32px);background:linear-gradient(135deg,var(--accent),var(--accent-dim));color:var(--on-accent);font-size:8px;letter-spacing:.22em;text-transform:uppercase;padding:8px 18px;border-radius:20px;opacity:0;transition:all .28s;pointer-events:none;z-index:999;white-space:nowrap;font-family:var(--mono);font-weight:600;box-shadow:0 4px 20px rgba(var(--accent-rgb),.4);}
.toast.on{opacity:1;transform:translateX(-50%) translateY(0);}
.toast.err{background:linear-gradient(135deg,#c04040,#8a2020);color:#fff;box-shadow:0 4px 20px rgba(200,64,64,.4);}
.toast.ok{background:linear-gradient(135deg,#3daa70,#1a6040);color:#fff;box-shadow:0 4px 20px rgba(61,170,112,.4);}

/* HELPERS */
.sep{height:1px;background:rgba(255,255,255,.06);margin:10px 0;}
.spin{display:inline-block;width:11px;height:11px;border:1.5px solid rgba(var(--accent-rgb),.25);border-top-color:var(--gold);border-radius:50%;animation:rot .7s linear infinite;margin-right:5px;vertical-align:middle;}
@keyframes rot{to{transform:rotate(360deg);}}
.pl{padding:14px 16px 16px;}.pr{padding:14px 16px 16px;}
.info-tag{display:inline-block;font-size:8px;color:var(--inf);background:rgba(58,136,224,.1);border:1px solid rgba(58,136,224,.22);border-radius:8px;padding:2px 6px;margin-left:4px;vertical-align:middle;letter-spacing:.1em;}

/* AI LAUNCHER BUTTONS */
.ai-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:12px;}
.ai-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 10px;border-radius:var(--r2);cursor:pointer;font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;transition:all .2s;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);color:var(--mut);text-align:center;box-shadow:0 4px 24px rgba(0,0,0,.45);}
.ai-btn:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,.6);border-color:inherit;}
.ai-ico{font-size:24px;line-height:1;}.ai-name{font-weight:500;color:var(--txt2);font-size:10px;}.ai-sub{font-size:7px;opacity:.6;letter-spacing:.1em;}
.ai-gem{border-color:rgba(66,133,244,.28);}.ai-gem:hover{background:rgba(66,133,244,.07);border-color:rgba(66,133,244,.6);}
.ai-flow{border-color:rgba(52,168,83,.28);}.ai-flow:hover{background:rgba(52,168,83,.07);border-color:rgba(52,168,83,.6);}
.ai-mj{border-color:rgba(var(--accent-rgb),.2);}.ai-mj:hover{background:rgba(var(--accent-rgb),.07);border-color:rgba(var(--accent-rgb),.5);}
.ai-ideo{border-color:rgba(200,100,255,.2);}.ai-ideo:hover{background:rgba(200,100,255,.07);border-color:rgba(200,100,255,.5);}
.ai-kling{border-color:rgba(255,120,80,.2);}.ai-kling:hover{background:rgba(255,120,80,.07);border-color:rgba(255,120,80,.5);}
.ai-rwy{border-color:rgba(100,200,255,.2);}.ai-rwy:hover{background:rgba(100,200,255,.07);border-color:rgba(100,200,255,.5);}
.ai-gpt{border-color:rgba(16,163,127,.28);}.ai-gpt:hover{background:rgba(16,163,127,.07);border-color:rgba(16,163,127,.6);}
.ai-claude{border-color:rgba(217,119,87,.28);}.ai-claude:hover{background:rgba(217,119,87,.07);border-color:rgba(217,119,87,.6);}
.ai-leo{border-color:rgba(255,153,0,.28);}.ai-leo:hover{background:rgba(255,153,0,.07);border-color:rgba(255,153,0,.6);}
.ai-krea{border-color:rgba(200,200,200,.2);}.ai-krea:hover{background:rgba(200,200,200,.07);border-color:rgba(200,200,200,.6);}
.ai-luma{border-color:rgba(255,50,100,.2);}.ai-luma:hover{background:rgba(255,50,100,.07);border-color:rgba(255,50,100,.5);}
.ai-ff{border-color:rgba(255,0,0,.2);}.ai-ff:hover{background:rgba(255,0,0,.07);border-color:rgba(255,0,0,.6);}

/* MODAL */
.modal{display:none;position:fixed;inset:0;background:rgba(4,4,6,.9);z-index:200;align-items:center;justify-content:center;backdrop-filter:blur(4px);}
.modal.on{display:flex;}
.modal-box{background:var(--s1);border:1px solid rgba(var(--accent-rgb),.2);border-radius:var(--r2);padding:20px;width:90%;max-width:420px;box-shadow:0 24px 70px rgba(0,0,0,.65),0 0 0 1px rgba(var(--accent-rgb),.05);}
.modal-title{font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--gdim);margin-bottom:14px;display:flex;align-items:center;gap:6px;}
.modal-acts{display:flex;gap:7px;margin-top:14px;}

/* UPSCALE ZONE */
.upz{border:1.5px dashed rgba(255,255,255,.1);border-radius:var(--r2);padding:14px;text-align:center;cursor:pointer;transition:all .2s;position:relative;background:rgba(255,255,255,.02);min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;}
.upz:hover,.upz.drag{border-color:rgba(58,136,224,.5);background:rgba(58,136,224,.04);}
.upz input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0;}
#upPrev{width:100%;max-height:120px;object-fit:contain;border-radius:var(--r);margin-top:8px;border:1px solid rgba(255,255,255,.08);display:none;background:var(--bg);}

/* FOOTER */
.foot{padding:7px 16px;border-top:1px solid rgba(var(--accent-rgb),.1);display:flex;justify-content:space-between;align-items:center;font-size:7.5px;color:var(--mut);flex-shrink:0;background:linear-gradient(180deg,var(--s1),var(--bg));letter-spacing:.12em;}
.foot a{color:var(--gdim);text-decoration:none;transition:color .15s;}
.foot a:hover{color:var(--gold);}

/* THEME TOGGLE */
.theme-toggle{display:flex;align-items:center;gap:3px;background:var(--s2);border:1px solid var(--brd2);border-radius:20px;padding:3px;flex-shrink:0;}
.theme-btn{width:24px;height:24px;border-radius:50%;border:none;background:transparent;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--mut);}
.theme-btn:hover{background:var(--gglow);color:var(--gold);}
.theme-btn.active{background:var(--gold);color:#060606;box-shadow:0 0 8px rgba(var(--accent-rgb),.4);}

/* IMPROVED SECTION ORGANIZATION */
.env-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.env-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;}
.section-card{background:var(--surface-elevated);border:1px solid var(--brd);border-radius:var(--r2);padding:10px 12px;margin-bottom:8px;}
.section-card .sec{margin-top:0;margin-bottom:8px;}
#anglePicker{display:none !important;}
#instructionsList{min-height:110px !important;max-height:320px !important;}
#extra{min-height:110px !important;}

/* MOOD PRESETS REDESIGN */
.mood-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin-top:6px;}
.mood-btn-new{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:var(--r);cursor:pointer;border:1px solid var(--brd2);background:var(--surface-elevated);color:var(--txt2);transition:all .2s;font-size:9px;font-family:var(--mono);letter-spacing:.04em;text-align:left;}
.mood-btn-new:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--txt);background:rgba(var(--accent-rgb),.06);transform:translateY(-1px);}
.mood-btn-new.active{background:rgba(var(--accent-rgb),.15);border-color:var(--gold);color:var(--gold);font-weight:700;box-shadow:0 0 10px rgba(var(--accent-rgb),.2);}
.mood-btn-new .mood-icon{font-size:14px;flex-shrink:0;}
.mood-btn-new .mood-info{display:flex;flex-direction:column;gap:1px;}
.mood-btn-new .mood-name{font-size:8.5px;font-weight:600;}
.mood-btn-new .mood-desc{font-size:8px;color:var(--mut);letter-spacing:.04em;}

/* SHOT STYLE REDESIGN */
.shot-grid{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
.shot-btn{padding:4px 10px;border-radius:12px;border:1px solid var(--brd2);background:transparent;color:var(--txt2);font-size:8px;cursor:pointer;font-family:var(--mono);transition:all .18s;letter-spacing:.06em;}
.shot-btn:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);}
.shot-btn.active{background:var(--gold);color:#060606;border-color:var(--gold);font-weight:700;}

/* CONFLICT FIX: Separate Golden Hour in Shot vs Mood */
.conflict-note{font-size:7px;color:var(--inf);background:rgba(58,136,224,.08);border:1px solid rgba(58,136,224,.2);border-radius:var(--r);padding:3px 8px;margin-top:4px;display:flex;align-items:center;gap:4px;}

/* IMPROVED SELECTS FOR LIGHT MODE */
[data-theme="light"] select option{background:#ffffff;color:#101828;}
[data-theme="light"] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234169a8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");}
[data-theme="light"] input,[data-theme="light"] select,[data-theme="light"] textarea{background:#ffffff;color:#101828;border-color:#bdcad8;}
[data-theme="light"] .hdr{background:linear-gradient(180deg,#ffffff,#eef3f8);}
[data-theme="light"] body{background-image:none;}
[data-theme="light"] .ai-platform-card,[data-theme="light"] .render-model-row,[data-theme="light"] .prompt-section,[data-theme="light"] .section-card{background:#ffffff!important;border-color:#bdcad8!important;box-shadow:0 8px 22px rgba(16,24,40,.08)!important;}
[data-theme="light"] .prompt-body{background:#ffffff;color:#101828;}
[data-theme="light"] .upzone{background:#f8fbff;border-color:#c7d3e1;}
[data-theme="light"] .notif-bar{background:#fff8dc;color:#6b4b00;border-bottom-color:#d8ba5e;}
[data-theme="light"] .notif-bar .marquee{color:#6b4b00;text-shadow:none;}
[data-theme="light"] .image-tool-btn,[data-theme="light"] .prv-bar{background:rgba(255,255,255,.92);color:#31548c;border-color:#bdcad8;}
[data-theme="light"] .render-status{background:#ffffff;border-color:#bdcad8;color:#344054;}

/* ANGLE PICKER */
.angle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:6px 0 8px;}
.angle-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 4px 5px;border-radius:var(--r);cursor:pointer;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);color:var(--mut);font-size:6.5px;letter-spacing:.1em;text-transform:uppercase;transition:all .18s;text-align:center;line-height:1.3;}
.angle-btn:hover{border-color:rgba(var(--accent-rgb),.35);color:var(--txt2);background:rgba(var(--accent-rgb),.04);}
.angle-btn.on{border-color:rgba(var(--accent-rgb),.5);color:var(--gold);background:rgba(var(--accent-rgb),.1);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.1);}
.angle-ico{font-size:16px;line-height:1;display:block;}

/* TAGS & LABELS */
.ftag{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.09);border-radius:14px;cursor:pointer;font-size:8px;color:var(--txt2);transition:all .15s;letter-spacing:0;text-transform:none;margin:0;}
.ftag:hover{border-color:rgba(var(--accent-rgb),.35);color:var(--txt);}
.ftag input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0;padding:0;}
.ftag:has(input:checked){border-color:var(--gold)!important;background:rgba(var(--gold-rgb,200,168,74),.15)!important;color:var(--gold)!important;box-shadow:0 0 14px rgba(var(--gold-rgb,200,168,74),.5),0 0 4px rgba(var(--gold-rgb,200,168,74),.3)!important;font-weight:700!important;}
[data-theme="neo"] .ftag:has(input:checked){border-color:#00d2ff!important;background:rgba(0,210,255,.15)!important;color:#00d2ff!important;box-shadow:0 0 14px rgba(0,210,255,.5)!important;}
[data-theme="aurora"] .ftag:has(input:checked){border-color:#a855f7!important;background:rgba(168,85,247,.15)!important;color:#a855f7!important;box-shadow:0 0 14px rgba(168,85,247,.5)!important;}
[data-theme="emerald"] .ftag:has(input:checked){border-color:#00c864!important;background:rgba(0,200,100,.15)!important;color:#00c864!important;box-shadow:0 0 14px rgba(0,200,100,.5)!important;}
[data-theme="light"] .ftag:has(input:checked){border-color:#9a6e20!important;background:rgba(154,110,32,.12)!important;color:#9a6e20!important;box-shadow:0 0 10px rgba(154,110,32,.3)!important;}

/* PROMPT LIBRARY */
.lib-group-title{font-size:7px;letter-spacing:.28em;text-transform:uppercase;color:var(--gdim);padding:10px 0 6px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:8px;display:flex;align-items:center;gap:5px;}
.lib-group-title:first-child{padding-top:0;}
.lib-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:4px;}
.lib-card{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:var(--r2);overflow:hidden;cursor:pointer;transition:border-color .18s,box-shadow .18s;display:flex;flex-direction:column;box-shadow:0 4px 24px rgba(0,0,0,.45);}
.lib-card:hover{border-color:rgba(var(--accent-rgb),.4);box-shadow:0 4px 18px rgba(var(--accent-rgb),.12);}
.lib-card.active{border-color:var(--gold);background:rgba(var(--accent-rgb),.06);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.15);}
.lib-card-thumb-wrap{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--bg);flex-shrink:0;}
.lib-card-thumb-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.lib-card:hover .lib-card-thumb-wrap img{transform:scale(1.04);}
.lib-card-no-thumb{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:20px;opacity:.15;}
.lib-card-body{padding:7px 8px 6px;}
.lib-card-name{font-size:8.5px;font-weight:500;color:var(--txt);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lib-card-cat{font-size:7px;color:var(--gdim);margin-bottom:5px;letter-spacing:.08em;}
.lib-card-copy{width:100%;padding:4px 0;font-size:7px;letter-spacing:.16em;text-transform:uppercase;background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--txt2);border-radius:var(--r);cursor:pointer;font-family:var(--mono);transition:all .15s;}
.lib-card-copy:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);background:rgba(var(--accent-rgb),.07);}
.master-badge{display:inline-block;font-size:6px;padding:1px 5px;background:rgba(var(--accent-rgb),.14);border:1px solid rgba(var(--accent-rgb),.3);color:var(--gold);border-radius:10px;margin-left:4px;letter-spacing:.1em;vertical-align:middle;}
.admin-thumbs{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px;}
.admin-thumb-item{position:relative;width:60px;height:45px;border-radius:var(--r);overflow:hidden;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);flex-shrink:0;}
.admin-thumb-item img{width:100%;height:100%;object-fit:cover;display:block;}
.admin-thumb-del{position:absolute;top:1px;right:1px;width:14px;height:14px;border-radius:50%;background:rgba(217,79,79,.85);border:none;color:#fff;font-size:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;}
.admin-thumb-add{width:60px;height:45px;border-radius:var(--r);border:1.5px dashed rgba(255,255,255,.1);background:rgba(255,255,255,.02);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;color:var(--mut);transition:all .15s;flex-shrink:0;}
.admin-thumb-add:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);}
.admin-preset-row{display:flex;align-items:center;gap:7px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.admin-preset-row-thumb{width:36px;height:27px;border-radius:2px;object-fit:cover;border:1px solid rgba(255,255,255,.08);flex-shrink:0;background:rgba(255,255,255,.03);}
.admin-preset-row-info{flex:1;min-width:0;}
.admin-preset-row-name{font-size:8px;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-preset-row-cat{font-size:7px;color:var(--gdim);}
.admin-preset-row-acts{display:flex;gap:4px;flex-shrink:0;}

/* WATERMARK & BATCH */
.wm-section{margin-top:10px;padding:10px;background:rgba(255,255,255,.02);border-radius:var(--r2);border:1px solid rgba(255,255,255,.07);}
.wm-tabs{display:flex;gap:4px;margin-bottom:8px;}
.wm-tab{padding:4px 10px;font-size:7.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);cursor:pointer;border-radius:var(--r);border:1px solid rgba(255,255,255,.09);background:transparent;transition:all .15s;}
.wm-tab.on{color:var(--gold);border-color:rgba(var(--accent-rgb),.35);background:rgba(var(--accent-rgb),.08);}
/* Library category filter buttons */
.lib-cat-btn{padding:3px 10px;font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);cursor:pointer;border-radius:var(--r);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);font-family:var(--mono);transition:all .15s;white-space:nowrap;}
.lib-cat-btn:hover{color:var(--txt2);border-color:rgba(var(--accent-rgb),.25);}
.lib-cat-btn.on{color:var(--gold);border-color:rgba(var(--accent-rgb),.4);background:rgba(var(--accent-rgb),.1);font-weight:700;}
.wm-panel{display:none;}.wm-panel.on{display:block;}
.batch-list{margin:8px 0;max-height:180px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent;}
.batch-item{display:flex;align-items:center;gap:7px;padding:5px 7px;border-radius:var(--r);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);margin-bottom:4px;font-size:8px;}
.batch-item .bi-thumb{width:32px;height:24px;object-fit:cover;border-radius:2px;border:1px solid rgba(255,255,255,.07);flex-shrink:0;}
.batch-item .bi-name{flex:1;color:var(--txt2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.batch-item .bi-status{font-size:7.5px;flex-shrink:0;color:var(--mut);}
.batch-item .bi-status.ok{color:var(--ok);}.batch-item .bi-status.err{color:var(--err);}.batch-item .bi-status.running{color:var(--gold);animation:pulse 1s infinite;}
.batch-drop{border:1.5px dashed rgba(255,255,255,.1);border-radius:var(--r2);padding:12px;text-align:center;cursor:pointer;transition:all .2s;position:relative;background:rgba(255,255,255,.02);}
.batch-drop:hover{border-color:rgba(58,136,224,.4);background:rgba(58,136,224,.04);}
.batch-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0;}





/* MODERN SECTION HEADERS - already defined above, this ensures specificity */
.sec:first-child,.sec[style*="margin-top:0"]{border-top:none;margin-top:0;padding-top:0;}

/* PROMPT GLOW */
@keyframes promptGlow2{
 0%,100%{box-shadow:0 0 0 rgba(var(--accent-rgb),0);border-color:rgba(255,255,255,.08);}
 50%{box-shadow:0 0 24px rgba(var(--accent-rgb),.28),inset 0 0 20px rgba(var(--accent-rgb),.04);border-color:rgba(var(--accent-rgb),.55);}
}
.prompt-section.generating{animation:promptGlow2 1.6s ease-in-out infinite;}

/* INSPIRE ME BUTTON */
#inspireBtn{
 background:linear-gradient(135deg,rgba(var(--accent-rgb),.14),rgba(var(--accent-rgb),.05));
 border:1px solid rgba(var(--accent-rgb),.35) !important;color:var(--gold) !important;
 letter-spacing:.18em;position:relative;overflow:hidden;
}
#inspireBtn::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.08),transparent);transform:translateX(-100%);transition:transform .55s;}
#inspireBtn:hover::before{transform:translateX(100%);}
#inspireBtn:hover{border-color:var(--gold) !important;box-shadow:0 0 18px rgba(var(--accent-rgb),.22);}

/* CAMERA SECTION BOXES */
.cam-ai-box{background:rgba(var(--accent-rgb),.04);border:1px solid rgba(var(--accent-rgb),.18);border-radius:var(--r2);padding:8px 10px;margin-bottom:8px;}
.cam-vp-box{background:rgba(58,136,224,.04);border:1px solid rgba(58,136,224,.18);border-radius:var(--r2);padding:8px 10px;margin-bottom:8px;}
.cam-box-label{font-size:8px;letter-spacing:.2em;font-weight:700;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:5px;}

/* SHORTCUT TOOLBAR */
.sc-btn{display:flex;flex-direction:column;align-items:center;gap:1px;padding:3px 6px;background:transparent;border:1px solid transparent;border-radius:var(--r);cursor:pointer;transition:all .15s;flex-shrink:0;min-width:38px;}
.sc-btn:hover{background:var(--s1);border-color:var(--brd2);}
.sc-btn.active{background:var(--gglow);border-color:var(--gdim);}
.sc-ico{font-size:12px;line-height:1;}
.sc-lbl{font-size:8px;color:var(--mut);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;line-height:1;}
.sc-btn:hover .sc-lbl{color:var(--txt2);}
.sc-btn-special{border-color:rgba(var(--accent-rgb),.2);background:rgba(var(--accent-rgb),.04);}
.sc-btn-special.on{background:rgba(var(--accent-rgb),.15);border-color:var(--gdim);}
.sc-btn-special.on .sc-ico::after{content:'ON';font-size:8px;vertical-align:super;color:var(--gold);}
/* AUTH LOADING OVERLAY */
.auth-loading{
 position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;
 align-items:center;justify-content:center;gap:0;overflow:hidden;
 --km-loader-a:var(--gold);
 --km-loader-b:var(--glo);
 --km-loader-c:var(--gdim);
 background:
  radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--km-loader-a) 11%,transparent),transparent 24%),
  radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--km-loader-b) 5%,transparent),transparent 42%),
  linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px),
  linear-gradient(180deg,var(--bg) 0%,var(--s1) 100%);
 background-size:auto,auto,46px 46px,46px 46px,auto;
}
.auth-loading::before,
.auth-loading::after{
 content:none !important;display:none !important;
}
.auth-loading.hidden{display:none !important;}
.km-auth-stage{
 position:relative;z-index:2;display:flex;flex-direction:column;
 align-items:center;justify-content:flex-start;gap:0;
 width:150px;min-height:168px;padding:0;text-align:center;isolation:isolate;
}
.km-auth-rule{display:none !important;}
.km-auth-progress{
 order:1;
 width:96px;height:96px;margin:0 auto;display:block;overflow:visible;position:relative;border-radius:50%;
 background:
  radial-gradient(circle at center,transparent 0 33%,color-mix(in srgb,var(--km-loader-a) 20%,transparent) 34% 35%,transparent 36% 53%,color-mix(in srgb,var(--km-loader-b) 16%,transparent) 54% 55%,transparent 56% 100%);
 -webkit-mask:none;
 mask:none;
 box-shadow:
 0 0 24px color-mix(in srgb,var(--km-loader-a) 26%,transparent),
 inset 0 0 22px color-mix(in srgb,var(--km-loader-a) 8%,transparent);
 transform:translateZ(0);
}
.km-auth-progress::before,
.km-auth-progress::after{
 position:absolute;left:50%;top:50%;content:'';display:block;pointer-events:none;
}
.km-auth-progress::before{
 width:96px;height:96px;border-radius:50%;
 translate:-50% -50%;
 transform:none;
 rotate:0deg;
 background:
  conic-gradient(from -60deg,
   transparent 0 6%,
   color-mix(in srgb,var(--km-loader-a) 44%,transparent) 6% 15%,
   var(--km-loader-b) 15% 21%,
   color-mix(in srgb,var(--km-loader-a) 44%,transparent) 21% 30%,
   transparent 30% 47%,
   color-mix(in srgb,var(--km-loader-c) 34%,transparent) 47% 54%,
   transparent 54% 64%,
   color-mix(in srgb,var(--km-loader-a) 28%,transparent) 64% 75%,
   transparent 75% 100%),
  repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--km-loader-a) 22%,transparent) 0 1.5deg,transparent 1.5deg 12deg);
 -webkit-mask:radial-gradient(farthest-side,transparent 64%,#000 65% 69%,transparent 70% 76%,#000 77% 82%,transparent 83%);
 mask:radial-gradient(farthest-side,transparent 64%,#000 65% 69%,transparent 70% 76%,#000 77% 82%,transparent 83%);
 box-shadow:0 0 22px color-mix(in srgb,var(--km-loader-b) 32%,transparent);
 opacity:1;
 z-index:1;
 animation:km-auth-spin 2.8s linear infinite, km-auth-ring-color 4.4s linear infinite;
}
.km-auth-progress::after{
 width:76px;height:76px;border-radius:50%;
 translate:-50% -50%;
 transform:none;
 rotate:0deg;
 background:
  conic-gradient(from 110deg,
   color-mix(in srgb,var(--km-loader-b) 82%,transparent) 0 7%,
   transparent 7% 18%,
   color-mix(in srgb,var(--km-loader-a) 54%,transparent) 18% 32%,
   transparent 32% 58%,
   color-mix(in srgb,var(--km-loader-c) 62%,transparent) 58% 68%,
   transparent 68% 100%);
 -webkit-mask:radial-gradient(farthest-side,transparent 68%,#000 69% 74%,transparent 75% 100%);
 mask:radial-gradient(farthest-side,transparent 68%,#000 69% 74%,transparent 75% 100%);
 border:0;
 box-shadow:0 0 18px color-mix(in srgb,var(--km-loader-a) 20%,transparent);
 opacity:.96;
 z-index:2;
 animation:km-auth-spin-reverse 4.1s linear infinite, km-auth-ring-color 5.2s linear infinite reverse;
}
.km-auth-bar{display:none !important;}
.km-auth-stage::before{
 content:'';position:absolute;left:50%;top:48px;width:112px;height:112px;
 translate:-50% -50%;
 transform:none;
 rotate:0deg;
 border:1px solid color-mix(in srgb,var(--km-loader-a) 16%,transparent);
 border-radius:50%;
 background:
  radial-gradient(circle at center,color-mix(in srgb,var(--km-loader-a) 12%,transparent) 0 18%,transparent 48%),
  conic-gradient(from 0deg,transparent 0 18%,color-mix(in srgb,var(--km-loader-a) 12%,transparent) 18% 24%,transparent 24% 50%,color-mix(in srgb,var(--km-loader-b) 10%,transparent) 50% 56%,transparent 56% 100%);
 box-shadow:0 0 34px color-mix(in srgb,var(--km-loader-a) 16%,transparent);
 pointer-events:none;z-index:-1;
 animation:km-auth-spin-reverse 7.2s linear infinite, km-auth-halo-pulse 2.8s ease-in-out infinite;
}
.km-auth-stage::after{
 content:'';position:absolute;left:50%;top:48px;width:56px;height:56px;
 translate:-50% -50%;
 transform:none;
 scale:1;
 border-radius:50%;
 border:2px solid color-mix(in srgb,var(--km-loader-a) 76%,transparent);
 box-shadow:inset 0 0 14px color-mix(in srgb,var(--km-loader-a) 10%,transparent),0 0 14px color-mix(in srgb,var(--km-loader-b) 18%,transparent);
 background:radial-gradient(circle at center,color-mix(in srgb,var(--km-loader-a) 8%,transparent),transparent 58%);
 pointer-events:none;z-index:-1;
 animation:km-auth-center-pulse 2s ease-in-out infinite;
}
.km-auth-brand{
 display:flex !important;position:absolute;left:50%;top:48px;transform:translate(-50%,-50%);
 align-items:center;justify-content:center;width:56px;height:56px;
 font-family:'Orbitron',var(--mono),sans-serif !important;
 font-size:20px !important;font-weight:900 !important;letter-spacing:.03em !important;
 color:var(--txt) !important;text-shadow:0 0 16px color-mix(in srgb,var(--km-loader-a) 32%,transparent);
 z-index:4;
}
.km-auth-brand::before{content:'KM';}
.km-auth-tag{
 order:2;display:block !important;margin-top:12px;
 font-family:var(--mono) !important;font-size:11px !important;line-height:1 !important;
 letter-spacing:.24em !important;color:var(--txt) !important;text-transform:uppercase !important;
 text-shadow:0 0 14px color-mix(in srgb,var(--km-loader-a) 18%,transparent);
}
.km-auth-tag::before{content:'LOADING';}
.km-auth-status{
 order:3;display:block !important;min-height:12px;margin-top:8px;
 font-family:var(--mono) !important;font-size:8px !important;line-height:1 !important;
 letter-spacing:.18em !important;color:var(--txt2) !important;text-transform:uppercase !important;
}
.km-auth-status::before{content:'PLEASE WAIT...';}
.km-auth-actions{
 order:4;display:flex;align-items:center;justify-content:center;
 width:100%;min-height:0;margin-top:8px;
}
#km-retry-v5{
 min-width:170px;height:36px;margin:0 !important;padding:0 18px !important;
 display:inline-flex !important;align-items:center !important;justify-content:center !important;
 border-radius:11px !important;border:1px solid rgba(var(--accent-rgb),.32) !important;
 background:linear-gradient(180deg,rgba(255,255,255,.038),rgba(255,255,255,.012)) !important;
 color:var(--gold) !important;font-family:var(--mono) !important;font-size:9px !important;
 letter-spacing:.18em !important;text-transform:uppercase !important;cursor:pointer !important;
 box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.05) !important;
 transition:transform .16s ease,border-color .16s ease,background .16s ease !important;
}
#km-retry-v5:hover{
 transform:translateY(-1px);
 border-color:rgba(255,224,139,.64) !important;
 background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02)) !important;
}
@keyframes km-auth-spin{to{rotate:360deg;}}
@keyframes km-auth-spin-reverse{to{rotate:-360deg;}}
@keyframes km-auth-ring-color{
 0%{filter:hue-rotate(0deg) saturate(1);}
 50%{filter:hue-rotate(18deg) saturate(1.12);}
 100%{filter:hue-rotate(0deg) saturate(1);}
}
@keyframes km-auth-halo-pulse{
 0%,100%{opacity:.72;}
 50%{opacity:1;}
}
@keyframes km-auth-center-pulse{
 0%,100%{opacity:.8;scale:.985;}
 50%{opacity:1;scale:1.015;}
}
html body #authLoading.auth-loading{
 display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:0 !important;
 --km-loader-a:var(--gold) !important;
 --km-loader-b:var(--glo) !important;
 --km-loader-c:var(--gdim) !important;
 background:
  radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--km-loader-a) 11%,transparent),transparent 24%),
  radial-gradient(circle at 50% 43%,color-mix(in srgb,var(--km-loader-b) 5%,transparent),transparent 42%),
  linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px),
  linear-gradient(180deg,var(--bg) 0%,var(--s1) 100%) !important;
 background-size:auto,auto,46px 46px,46px 46px,auto !important;
}
html body #authLoading.auth-loading.hidden{display:none !important;}
html body #authLoading.auth-loading::before,
html body #authLoading.auth-loading::after{
 content:none !important;display:none !important;animation:none !important;background:none !important;box-shadow:none !important;
}
html body #authLoading .km-auth-stage{
 display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:flex-start !important;
 gap:0 !important;width:150px !important;min-height:168px !important;padding:0 !important;border:0 !important;background:transparent !important;position:relative !important;isolation:isolate !important;
}
html body #authLoading .km-auth-rule,
html body #authLoading .km-auth-bar{
 display:none !important;
}
html body #authLoading .km-auth-progress{
 order:1 !important;
 width:96px !important;height:96px !important;margin:0 auto !important;border-radius:50% !important;
 background:radial-gradient(circle at center,transparent 0 33%,color-mix(in srgb,var(--km-loader-a) 20%,transparent) 34% 35%,transparent 36% 53%,color-mix(in srgb,var(--km-loader-b) 16%,transparent) 54% 55%,transparent 56% 100%) !important;
 -webkit-mask:none !important;
 mask:none !important;
 box-shadow:0 0 24px color-mix(in srgb,var(--km-loader-a) 26%,transparent),inset 0 0 22px color-mix(in srgb,var(--km-loader-a) 8%,transparent) !important;
 transform:translateZ(0) !important;
}
html body #authLoading .km-auth-progress::before,
html body #authLoading .km-auth-progress::after{
 position:absolute !important;left:50% !important;top:50% !important;content:'' !important;display:block !important;pointer-events:none !important;
}
html body #authLoading .km-auth-progress::before{
 width:96px !important;height:96px !important;border-radius:50% !important;
 translate:-50% -50% !important;
 transform:none !important;
 rotate:0deg;
 background:
  conic-gradient(from -60deg,transparent 0 6%,color-mix(in srgb,var(--km-loader-a) 44%,transparent) 6% 15%,var(--km-loader-b) 15% 21%,color-mix(in srgb,var(--km-loader-a) 44%,transparent) 21% 30%,transparent 30% 47%,color-mix(in srgb,var(--km-loader-c) 34%,transparent) 47% 54%,transparent 54% 64%,color-mix(in srgb,var(--km-loader-a) 28%,transparent) 64% 75%,transparent 75% 100%),
  repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--km-loader-a) 22%,transparent) 0 1.5deg,transparent 1.5deg 12deg) !important;
 -webkit-mask:radial-gradient(farthest-side,transparent 64%,#000 65% 69%,transparent 70% 76%,#000 77% 82%,transparent 83%) !important;
 mask:radial-gradient(farthest-side,transparent 64%,#000 65% 69%,transparent 70% 76%,#000 77% 82%,transparent 83%) !important;
 box-shadow:0 0 22px color-mix(in srgb,var(--km-loader-b) 32%,transparent) !important;
 opacity:1 !important;
 z-index:1 !important;
 animation:km-auth-spin 2.8s linear infinite, km-auth-ring-color 4.4s linear infinite !important;
}
html body #authLoading .km-auth-progress::after{
 width:76px !important;height:76px !important;border-radius:50% !important;
 translate:-50% -50% !important;
 transform:none !important;
 rotate:0deg;
 background:
  conic-gradient(from 110deg,color-mix(in srgb,var(--km-loader-b) 82%,transparent) 0 7%,transparent 7% 18%,color-mix(in srgb,var(--km-loader-a) 54%,transparent) 18% 32%,transparent 32% 58%,color-mix(in srgb,var(--km-loader-c) 62%,transparent) 58% 68%,transparent 68% 100%) !important;
 -webkit-mask:radial-gradient(farthest-side,transparent 68%,#000 69% 74%,transparent 75% 100%) !important;
 mask:radial-gradient(farthest-side,transparent 68%,#000 69% 74%,transparent 75% 100%) !important;
 border:0 !important;
 box-shadow:0 0 18px color-mix(in srgb,var(--km-loader-a) 20%,transparent) !important;
 opacity:.96 !important;
 z-index:2 !important;
 animation:km-auth-spin-reverse 4.1s linear infinite, km-auth-ring-color 5.2s linear infinite reverse !important;
}
html body #authLoading .km-auth-stage::before{
 content:'' !important;position:absolute !important;left:50% !important;top:48px !important;width:112px !important;height:112px !important;
 translate:-50% -50% !important;transform:none !important;rotate:0deg;border:1px solid color-mix(in srgb,var(--km-loader-a) 16%,transparent) !important;border-radius:50% !important;
 background:radial-gradient(circle at center,color-mix(in srgb,var(--km-loader-a) 12%,transparent) 0 18%,transparent 48%),conic-gradient(from 0deg,transparent 0 18%,color-mix(in srgb,var(--km-loader-a) 12%,transparent) 18% 24%,transparent 24% 50%,color-mix(in srgb,var(--km-loader-b) 10%,transparent) 50% 56%,transparent 56% 100%) !important;
 box-shadow:0 0 34px color-mix(in srgb,var(--km-loader-a) 16%,transparent) !important;pointer-events:none !important;z-index:-1 !important;
 animation:km-auth-spin-reverse 7.2s linear infinite, km-auth-halo-pulse 2.8s ease-in-out infinite !important;
}
html body #authLoading .km-auth-stage::after{
 content:'' !important;position:absolute !important;left:50% !important;top:48px !important;width:56px !important;height:56px !important;
 translate:-50% -50% !important;transform:none !important;scale:1;border-radius:50% !important;border:2px solid color-mix(in srgb,var(--km-loader-a) 76%,transparent) !important;
 box-shadow:inset 0 0 14px color-mix(in srgb,var(--km-loader-a) 10%,transparent),0 0 14px color-mix(in srgb,var(--km-loader-b) 18%,transparent) !important;
 background:radial-gradient(circle at center,color-mix(in srgb,var(--km-loader-a) 8%,transparent),transparent 58%) !important;
 pointer-events:none !important;z-index:-1 !important;animation:km-auth-center-pulse 2s ease-in-out infinite !important;
}
html body #authLoading .km-auth-actions{
 order:4 !important;display:flex !important;justify-content:center !important;align-items:center !important;width:100% !important;min-height:0 !important;margin-top:8px !important;
}
html body #authLoading .km-auth-actions:empty{display:none !important;}
html body #authLoading .km-auth-brand{
 display:flex !important;position:absolute !important;left:50% !important;top:48px !important;transform:translate(-50%,-50%) !important;
 align-items:center !important;justify-content:center !important;width:56px !important;height:56px !important;
 font-family:'Orbitron',var(--mono),sans-serif !important;font-size:20px !important;font-weight:900 !important;letter-spacing:.03em !important;
 color:var(--txt) !important;text-shadow:0 0 16px color-mix(in srgb,var(--km-loader-a) 32%,transparent) !important;z-index:4 !important;
}
html body #authLoading .km-auth-brand::before{content:'KM' !important;}
html body #authLoading .km-auth-tag{
 order:2 !important;display:block !important;margin-top:12px !important;font-family:var(--mono) !important;font-size:11px !important;line-height:1 !important;
 letter-spacing:.24em !important;color:var(--txt) !important;text-transform:uppercase !important;text-shadow:0 0 14px color-mix(in srgb,var(--km-loader-a) 18%,transparent) !important;
}
html body #authLoading .km-auth-tag::before{content:'LOADING' !important;}
html body #authLoading .km-auth-status{
 order:3 !important;display:block !important;min-height:12px !important;margin-top:8px !important;font-family:var(--mono) !important;font-size:8px !important;line-height:1 !important;
 letter-spacing:.18em !important;color:var(--txt2) !important;text-transform:uppercase !important;
}
html body #authLoading .km-auth-status::before{content:'PLEASE WAIT...' !important;}
@media(max-width:520px){
 .km-auth-stage{transform:scale(.82);}
}
/* NOTIFICATION BAR - running border light animation */
.notif-bar{
 max-height:0;overflow:hidden;width:100%;
 background:rgba(var(--accent-rgb),.06);
 border-bottom:1px solid rgba(var(--accent-rgb),.2);
 font-size:8px;color:var(--gold);letter-spacing:.04em;line-height:1.5;
 box-sizing:border-box;
 transition:max-height .4s ease,padding .4s ease;
 padding-top:0;padding-bottom:0;padding-left:14px;padding-right:14px;
 height:0;position:relative;
}
.notif-bar.on{
 max-height:70px;padding:7px 14px;
 display:flex;align-items:center;gap:8px;cursor:pointer;min-height:38px;
 overflow:visible;
}
/* Running light - pseudo element travels left to right along the bottom border */
.notif-bar.on::before{
 content:'';
 position:absolute;
 bottom:-1px;left:-10%;
 width:25%;height:2px;
 background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),1),rgba(255,220,100,1),rgba(var(--accent-rgb),1),transparent);
 border-radius:2px;
 animation:notifRun 2.2s linear infinite;
 box-shadow:0 0 8px rgba(var(--accent-rgb),.8),0 0 20px rgba(var(--accent-rgb),.4);
 pointer-events:none;
 z-index:10;
}
/* Second light - offset so two lights chase each other */
.notif-bar.on::after{
 content:'';
 position:absolute;
 bottom:-1px;left:-10%;
 width:18%;height:2px;
 background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.6),rgba(255,220,100,.8),rgba(var(--accent-rgb),.6),transparent);
 border-radius:2px;
 animation:notifRun 2.2s linear infinite 1.1s;
 box-shadow:0 0 6px rgba(var(--accent-rgb),.5);
 pointer-events:none;
 z-index:10;
}
@keyframes notifRun{
 0% {left:-25%;}
 100%{left:110%;}
}
@keyframes upgradePulse{0%,100%{color:var(--gdim);}50%{color:var(--gold);text-shadow:0 0 10px rgba(var(--accent-rgb),.6);}}
/* Theme color variants for running light */
[data-theme="neo"] .notif-bar.on::before,[data-theme="neo"] .notif-bar.on::after{background:linear-gradient(90deg,transparent,rgba(0,210,255,1),transparent);box-shadow:0 0 8px rgba(0,210,255,.8);}
[data-theme="aurora"] .notif-bar.on::before,[data-theme="aurora"] .notif-bar.on::after{background:linear-gradient(90deg,transparent,rgba(168,85,247,1),transparent);box-shadow:0 0 8px rgba(168,85,247,.8);}
[data-theme="emerald"] .notif-bar.on::before,[data-theme="emerald"] .notif-bar.on::after{background:linear-gradient(90deg,transparent,rgba(0,200,100,1),transparent);box-shadow:0 0 8px rgba(0,200,100,.8);}
.notif-bar-icon{font-size:11px;flex-shrink:0;animation:pulse 2s infinite;}
.notif-bar-text{flex:1;}
#upgradeLink{animation:upgradePulse 2.5s ease-in-out infinite;}
.notif-bar-link{color:var(--gdim);text-decoration:underline;font-size:7px;margin-left:6px;}
.notif-bar-close{opacity:.45;padding:2px 4px;font-size:9px;flex-shrink:0;background:transparent;border:none;color:var(--gold);cursor:pointer;}
.notif-bar-close:hover{opacity:1;}

/* PROMPT GLOW ANIMATION */
@keyframes promptGlow{
 0%,100%{box-shadow:0 0 0 rgba(var(--accent-rgb),0);border-color:var(--brd);}
 50%{box-shadow:0 0 24px rgba(var(--accent-rgb),.3),inset 0 0 20px rgba(var(--accent-rgb),.04);border-color:rgba(var(--accent-rgb),.6);}
}
.prompt-section.generating{animation:promptGlow 1.6s ease-in-out infinite;}

/* MOOD PRESET BUTTONS */
.mood-btn{
 background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.09);
 color:var(--txt2);border-radius:var(--r);padding:6px 4px;font-size:9px;
 cursor:pointer;font-family:var(--mono);transition:all .15s;text-align:center;
 letter-spacing:.04em;
}
.mood-btn:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);background:rgba(var(--accent-rgb),.06);}
.mood-btn.active{background:rgba(var(--accent-rgb),.15);border-color:var(--gold);color:var(--gold);font-weight:700;box-shadow:0 0 10px rgba(var(--accent-rgb),.2);}

/* PROMPT HISTORY */
.hist-item{
 background:var(--s2);border:1px solid rgba(255,255,255,.07);border-radius:var(--r2);
 padding:10px 12px;margin-bottom:8px;cursor:pointer;transition:border-color .15s;
 position:relative;
}
.hist-item:hover{border-color:rgba(var(--accent-rgb),.35);}
.hist-item-meta{font-size:8px;color:var(--mut);margin-bottom:5px;display:flex;gap:8px;align-items:center;}
.hist-item-type{background:rgba(var(--accent-rgb),.1);color:var(--gold);border-radius:10px;padding:1px 7px;font-size:7.5px;border:1px solid rgba(var(--accent-rgb),.25);}
.hist-item-preview{font-size:9px;color:var(--txt2);line-height:1.6;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;}
.hist-item-acts{display:flex;gap:5px;margin-top:7px;}

/* SETTINGS PROFILE LIST */
.profile-row{
 display:flex;align-items:center;gap:6px;padding:6px 8px;
 background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);
 border-radius:var(--r);font-size:9px;
}
.profile-row-name{flex:1;color:var(--txt2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.profile-row-type{font-size:7.5px;color:var(--gdim);background:rgba(var(--accent-rgb),.08);border-radius:8px;padding:1px 5px;flex-shrink:0;}
.profile-btn{padding:2px 7px;font-size:8px;border-radius:3px;cursor:pointer;font-family:var(--mono);border:1px solid;background:transparent;flex-shrink:0;}
.profile-btn-load{color:var(--gold);border-color:rgba(var(--accent-rgb),.3);}
.profile-btn-load:hover{background:rgba(var(--accent-rgb),.1);}
.profile-btn-del{color:var(--err);border-color:rgba(217,79,79,.25);}
.profile-btn-del:hover{background:rgba(217,79,79,.1);}

/* TARGET AI COPY BUTTONS */
.ai-copy-row{display:flex;gap:5px;margin-top:6px;}
.ai-copy-btn{flex:1;padding:5px 4px;font-size:8.5px;text-align:center;border-radius:var(--r);cursor:pointer;font-family:var(--mono);border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);color:var(--txt2);transition:all .15s;letter-spacing:.04em;}
.ai-copy-btn:hover{border-color:rgba(var(--accent-rgb),.4);color:var(--gold);background:rgba(var(--accent-rgb),.07);}



/* KM paper light final cleanup */
html[data-theme="light"] body,html[data-theme="light"] .app,html[data-theme="light"] #mainView,html[data-theme="light"] .tabpanel,html[data-theme="light"] .panel-l,html[data-theme="light"] .panel-r,html[data-theme="light"] #tab-library,html[data-theme="light"] #tab-history,html[data-theme="light"] #tab-ai,html[data-theme="light"] #tab-guide,html[data-theme="light"] #libGrid,html[data-theme="light"] #histScroll,html[data-theme="light"] #kmMobileStudioNav,html[data-theme="light"] #kmMobileActionDock,html[data-theme="light"] .foot{background:#f7f9fc!important;color:#172033!important;}
html[data-theme="light"] .section-card,html[data-theme="light"] .km-section,html[data-theme="light"] .km-coll-wrap,html[data-theme="light"] .km-coll-wrap .coll-hdr,html[data-theme="light"] .coll-hdr,html[data-theme="light"] #km-advanced-settings-section,html[data-theme="light"] #km-vivid-boost-section,html[data-theme="light"] #km-wrap-additional .coll-hdr,html[data-theme="light"] #km-wrap-camera-main,html[data-theme="light"] #km-wrap-camera-main .coll-hdr,html[data-theme="light"] #km-wrap-camera-motion .coll-hdr,html[data-theme="light"] #km-wrap-material-bias .coll-hdr,html[data-theme="light"] #km-wrap-style .coll-hdr,html[data-theme="light"] .ai-platform-card,html[data-theme="light"] .render-model-row,html[data-theme="light"] .prompt-section,html[data-theme="light"] .prompt-hdr,html[data-theme="light"] #promptSection .prompt-hdr,html[data-theme="light"] .prompt-body,html[data-theme="light"] .lib-card,html[data-theme="light"] .library-card,html[data-theme="light"] .ai-launch-card,html[data-theme="light"] .ai-launcher-card,html[data-theme="light"] .guide-card,html[data-theme="light"] .hist-card,html[data-theme="light"] .render-history-card{background:#ffffff!important;color:#172033!important;border-color:#c8d3df!important;box-shadow:0 10px 24px rgba(16,24,40,.08)!important;}
html[data-theme="light"] #badges span,html[data-theme="light"] .badge,html[data-theme="light"] .mini-badge,html[data-theme="light"] .tag,html[data-theme="light"] .chip,html[data-theme="light"] .ftag,html[data-theme="light"] .preset-chip,html[data-theme="light"] .scene-preset,html[data-theme="light"] .scene-preset button,html[data-theme="light"] .material-bias button,html[data-theme="light"] .negative-chip{background:#ffffff!important;color:#172033!important;border-color:#b9c8d8!important;text-shadow:none!important;box-shadow:none!important;}
html[data-theme="light"] .btn-dim,html[data-theme="light"] .btn-inf,html[data-theme="light"] button:not(.btn-gold){background:#ffffff!important;color:#172033!important;border-color:#bdcad8!important;text-shadow:none!important;}
html[data-theme="light"] .btn-gold{color:#211700!important;text-shadow:none!important;}
html[data-theme="light"] .prompt-body.km-prompt-empty::before{color:#667085!important;opacity:.5!important;}
html[data-theme="light"] .prompt-hdr *,html[data-theme="light"] .coll-hdr *,html[data-theme="light"] #km-advanced-settings-section *,html[data-theme="light"] #km-vivid-boost-section *,html[data-theme="light"] .lib-card *,html[data-theme="light"] #histScroll *,html[data-theme="light"] #tab-ai *,html[data-theme="light"] #tab-guide *{text-shadow:none!important;}

/* KM theme menu final cleanup */
.theme-switcher,
.theme-switcher summary,
.theme-switcher .theme-current-swatch{ cursor:pointer; }
.theme-switcher kbd,
.theme-switcher .theme-key,
.theme-switcher .theme-hotkey,
.theme-switcher .theme-shortcut,
.theme-switcher [class*="hotkey"],
.theme-switcher [class*="shortcut"]{ display:none !important; }
.theme-switcher .theme-menu-row{ grid-template-columns: 18px 1fr !important; }
.theme-trigger-btn,.theme-summary{ width:42px !important; min-width:42px !important; height:42px !important; padding:0 !important; border-width:1px !important; }
.theme-current-swatch,.theme-swatch{ width:16px !important; height:16px !important; border-radius:5px !important; }

/* KM paper light absolute cleanup */
html[data-theme="light"] body,
html[data-theme="paper"] body,
body[data-theme="light"],
body[data-theme="paper"]{ background:#f8f5ec !important; color:#1f2937 !important; }
html[data-theme="light"] .panel-l,
html[data-theme="light"] .panel-r,
html[data-theme="light"] .sec,
html[data-theme="light"] .coll,
html[data-theme="light"] .coll-hdr,
html[data-theme="light"] .prompt-section,
html[data-theme="light"] .prompt-hdr,
html[data-theme="light"] .prompt-body,
html[data-theme="light"] .lib-grid,
html[data-theme="light"] #libGrid,
html[data-theme="light"] #histScroll,
html[data-theme="light"] #tab-ai,
html[data-theme="light"] #tab-guide,
html[data-theme="light"] #kmMobileStudioNav,
html[data-theme="light"] #kmMobileActionDock,
html[data-theme="light"] .foot,
html[data-theme="light"] .badge,
html[data-theme="light"] .preset-card,
html[data-theme="light"] .tool-card,
html[data-theme="light"] .option-pill,
html[data-theme="light"] .preset-btn,
html[data-theme="light"] .preset-chip,
html[data-theme="paper"] .panel-l,
html[data-theme="paper"] .panel-r,
html[data-theme="paper"] .sec,
html[data-theme="paper"] .coll,
html[data-theme="paper"] .coll-hdr,
html[data-theme="paper"] .prompt-section,
html[data-theme="paper"] .prompt-hdr,
html[data-theme="paper"] .prompt-body,
html[data-theme="paper"] .lib-grid,
html[data-theme="paper"] #libGrid,
html[data-theme="paper"] #histScroll,
html[data-theme="paper"] #tab-ai,
html[data-theme="paper"] #tab-guide,
html[data-theme="paper"] #kmMobileStudioNav,
html[data-theme="paper"] #kmMobileActionDock,
html[data-theme="paper"] .foot,
html[data-theme="paper"] .badge,
html[data-theme="paper"] .preset-card,
html[data-theme="paper"] .tool-card,
html[data-theme="paper"] .option-pill,
html[data-theme="paper"] .preset-btn,
html[data-theme="paper"] .preset-chip{
  background:#fffaf0 !important;
  background-image:none !important;
  color:#1f2937 !important;
  border-color:#d9c895 !important;
  box-shadow:0 12px 30px rgba(99,79,34,.10) !important;
}
html[data-theme="light"] .coll-hdr,
html[data-theme="paper"] .coll-hdr,
html[data-theme="light"] .prompt-hdr,
html[data-theme="paper"] .prompt-hdr{ color:#1f2937 !important; }
html[data-theme="light"] .prompt-empty,
html[data-theme="paper"] .prompt-empty{ color:rgba(31,41,55,.45) !important; user-select:none !important; pointer-events:none !important; }
html[data-theme="light"] button,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea,
html[data-theme="paper"] button,
html[data-theme="paper"] input,
html[data-theme="paper"] select,
html[data-theme="paper"] textarea{ background:#fffdf7 !important; color:#111827 !important; border-color:#d8c58f !important; }
html[data-theme="light"] .btn-primary,
html[data-theme="light"] #generateBtn,
html[data-theme="paper"] .btn-primary,
html[data-theme="paper"] #generateBtn{ background:linear-gradient(135deg,#e8c75c,#fff3b0) !important; color:#17130a !important; }

/* Additional Instructions: compact preview when collapsed, full presets on hover/focus. */
body:not(.km-ui-ready) #additionalSection{max-height:168px!important;overflow:hidden!important;}
body:not(.km-ui-ready) #additionalSection .km-instruction-presets,
body:not(.km-ui-ready) #additionalSection #instructionsList{display:none!important;}
#additionalSection .km-additional-toolbar,
#additionalSection>div:first-child{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:10px!important;}
#additionalSection .km-additional-actions,
#additionalSection>div:first-child>div{display:flex!important;align-items:center!important;gap:8px!important;flex-shrink:0!important;}
#additionalSection .km-additional-actions .btn,
#additionalSection .km-additional-actions button,
#additionalSection>div:first-child>div>button{height:36px!important;min-height:36px!important;padding:0 14px!important;border:1px solid rgba(var(--accent-rgb),.42)!important;border-radius:8px!important;background:linear-gradient(180deg,rgba(var(--accent-rgb),.12),rgba(255,255,255,.025))!important;color:var(--txt)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;line-height:1!important;white-space:nowrap!important;}
#additionalSection .km-additional-actions .btn:hover,
#additionalSection .km-additional-actions button:hover,
#additionalSection>div:first-child>div>button:hover{border-color:rgba(var(--accent-rgb),.75)!important;box-shadow:0 0 0 1px rgba(var(--accent-rgb),.18),0 10px 22px rgba(var(--accent-rgb),.12)!important;}
#km-wrap-additional.km-additional-preview{overflow:visible!important;}
#km-wrap-additional.km-additional-preview>.coll-body{display:block!important;transition:max-height .18s ease,opacity .18s ease!important;}
#km-wrap-additional.km-additional-preview.is-collapsed>.coll-body{max-height:238px!important;overflow:hidden!important;opacity:.96!important;}
#km-wrap-additional.km-additional-preview.is-collapsed .km-instruction-presets,
#km-wrap-additional.km-additional-preview.is-collapsed #instructionsList{display:none!important;}
#km-wrap-additional.km-additional-preview.is-collapsed:hover>.coll-body,
#km-wrap-additional.km-additional-preview.is-collapsed:focus-within>.coll-body{max-height:720px!important;overflow:auto!important;opacity:1!important;}
#km-wrap-additional.km-additional-preview.is-collapsed:not(:hover):not(:focus-within) #instructionsList,
#km-wrap-additional.km-additional-preview.is-collapsed:not(:hover):not(:focus-within) .scene-cat{display:none!important;}
#km-wrap-additional.km-additional-preview.is-collapsed:not(:hover):not(:focus-within) #extra{min-height:118px!important;max-height:128px!important;}
#km-wrap-additional.km-additional-preview.is-collapsed>.coll-hdr .coll-arr{transform:rotate(-90deg)!important;}
#km-wrap-additional.km-additional-preview.is-collapsed:hover>.coll-hdr .coll-arr,
#km-wrap-additional.km-additional-preview.is-collapsed:focus-within>.coll-hdr .coll-arr{transform:rotate(0deg)!important;}
html[data-theme="light"] #additionalSection .km-additional-actions .btn,
html[data-theme="light"] #additionalSection .km-additional-actions button,
html[data-theme="light"] #additionalSection>div:first-child>div>button{background:#fff!important;color:#172033!important;border-color:#b8c6d6!important;box-shadow:0 1px 2px rgba(16,24,40,.06)!important;}

/* Final Additional Instructions collapse cleanup: hide current instruction list metadata while collapsed. */
#km-wrap-additional.km-additional-preview.is-collapsed .km-current-instructions-wrap,
#km-wrap-additional.km-additional-preview.is-collapsed #instructionsList{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
/* Readable micro tooltips/help bubbles. */
[title], .tip, .tooltip, .hint, .help-tip, .info-tip, .info-dot, .km-info, .km-help, .km-help-dot{color:var(--text,#eef6ff)!important;}
.info-dot:hover::after,
.km-info:hover::after,
.km-help:hover::after,
.km-help-dot:hover::after,
.help-tip:hover::after{
  color:#f8fbff!important;
  background:rgba(8,14,24,.98)!important;
  border:1px solid var(--accent,#31d5ff)!important;
  text-shadow:none!important;
  opacity:1!important;
  z-index:99999!important;
}

/* Complete mode-aware preset library; every category starts collapsed. */
#additionalSection .km-additional-mode-slot{margin:8px 0 10px;display:block;}
#additionalSection .km-additional-mode-slot[hidden],#additionalSection .km-mode-preset-block[hidden],#additionalSection .scene-cat[hidden],#additionalSection .km-original-mode-quick[hidden]{display:none!important;}
#additionalSection .km-additional-mode-note{font-size:7px;color:var(--ok);line-height:1.45;letter-spacing:.03em;margin:7px 0;}
#additionalSection .km-mode-scene-cat{margin:0 0 7px!important;}
#additionalSection .km-mode-scene-cat .scene-cat-hdr{width:100%;box-sizing:border-box;margin:0;min-height:34px;padding:7px 10px;font-size:9.5px;font-weight:600;line-height:1.35;letter-spacing:.16em;}
#additionalSection .scene-cat-hdr>.km-category-label{display:inline-block;flex:1;min-width:0;font-family:var(--ui)!important;font-size:10.5px!important;font-weight:700!important;line-height:1.35!important;letter-spacing:.16em!important;white-space:normal;transform:scaleX(1.08)!important;transform-origin:left center!important;}
#additionalSection .km-mode-scene-cat .scene-cat-hdr:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
#additionalSection .km-mode-scene-cat .scene-cat-body{display:none;padding-top:6px;}
#additionalSection .km-mode-scene-cat .scene-cat-hdr.open + .scene-cat-body{display:flex;}
#additionalSection .km-mode-scene-cat .km-cat-arrow{display:inline-block;transform:rotate(-90deg);transition:transform .18s ease;}
#additionalSection .km-mode-scene-cat .scene-cat-hdr.open .km-cat-arrow{transform:rotate(0deg);}
#additionalSection .km-mode-scene-cat .scene-preset-tag.km-on,#additionalSection .km-mode-scene-cat .scene-preset-tag[aria-pressed="true"]{border-color:var(--accent)!important;background:rgba(var(--accent-rgb),.24)!important;color:var(--accent)!important;box-shadow:0 0 0 1px rgba(var(--accent-rgb),.38),0 0 14px rgba(var(--accent-rgb),.28)!important;}
#km-ctx-inst-hint,#kmAdditionalModeNote{display:none!important;}

@keyframes notifDot{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.7);}}
