:root{
  --bg:#18181a;--bg2:#1e1e20;
  --panel:#242427;--panel2:#2c2c30;--panel3:#363639;
  --border:#363639;--border2:#424248;
  --text:#f0f0f2;--text2:#9090a0;--text3:#505060;
  --brand:#1A23CE;--accent:#1A23CE;--secondary:#0F135C;--adim:rgba(15,19,92,.42);--aglow:rgba(15,19,92,.24);
  --danger:#f04a4a;--ddim:rgba(240,74,74,.1);
  --gold:#f5c842;--gdim:rgba(245,200,66,.12);
  --r:10px;--rsm:8px;--rlg:16px;
  --sbw:232px;--sbc:56px;
  --ease:cubic-bezier(.4,0,.2,1);--d:.15s;
  --shadow:0 1px 3px rgba(0,0,0,.4),0 4px 16px rgba(0,0,0,.3);
  --shadow-sm:0 1px 2px rgba(0,0,0,.3);
}

/* -- LIGHT MODE */
body.light{
  --bg:#f3f3f5;--bg2:#ebebee;
  --panel:#ffffff;--panel2:#f5f5f7;--panel3:#ececef;
  --border:#e4e4e9;--border2:#d2d2da;
  --text:#111116;--text2:#505060;--text3:#a0a0b0;
  --brand:#1A23CE;--accent:#1A23CE;--secondary:#0F135C;--adim:rgba(15,19,92,.12);--aglow:rgba(15,19,92,.06);
  --danger:#e03535;--ddim:rgba(224,53,53,.08);
  --gold:#c49a00;--gdim:rgba(196,154,0,.1);
  --shadow:0 1px 3px rgba(0,0,0,.06),0 4px 16px rgba(0,0,0,.08);
  --shadow-sm:0 1px 2px rgba(0,0,0,.05);
}

*{box-sizing:border-box;margin:0;padding:0;}
img{-webkit-user-drag:none;user-drag:none;user-select:none;}
html,body{height:100%;overflow:hidden;}
body{font-family:'Geist',sans-serif;background:var(--bg);color:var(--text);display:flex;flex-direction:column;}
body.dragging{user-select:none!important;cursor:grabbing!important;}
body.dragging *{cursor:grabbing!important;}
body.boxselecting{user-select:none!important;}

/* LOADER */
#loader{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:99999;opacity:0;pointer-events:none;overflow:hidden;transition:opacity .28s ease;}
#loader::before{content:'';position:absolute;inset:-20%;background:
radial-gradient(circle at center, var(--aglow) 0%, transparent 34%),
radial-gradient(circle at center, rgba(255,255,255,.03) 0%, transparent 58%);
opacity:.95;transition:opacity .35s ease,transform .5s cubic-bezier(.22,.9,.2,1);}
#loader.show{opacity:1;pointer-events:auto;}
#loader.hide{opacity:0;pointer-events:none;}
#loader.launching::before{opacity:0;transform:scale(1.08);}
.loader-mark{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;transform:scale(.92);opacity:0;filter:drop-shadow(0 18px 40px rgba(0,0,0,.34));transition:transform .38s cubic-bezier(.22,.9,.2,1),opacity .24s ease;}
#loader.show .loader-mark{transform:scale(1);opacity:1;}
#loader.launching .loader-mark{transform:scale(.72);opacity:0;transition:transform .26s cubic-bezier(.32,0,.18,1),opacity .18s ease;}
.brand-logo{display:block;color:var(--brand);height:auto;}
.loader-mark .brand-logo{width:min(128px,30vw);filter:drop-shadow(0 0 24px rgba(26,35,206,.18));}
.glogo .brand-logo{width:58px;}
.bicon .brand-logo{width:24px;}
.loader-dots{display:flex;align-items:center;gap:8px;}
.loader-dots span{width:7px;height:7px;border-radius:999px;background:var(--text3);animation:loaderPulse 1s ease-in-out infinite;}
.loader-dots span:nth-child(2){animation-delay:.12s;}
.loader-dots span:nth-child(3){animation-delay:.24s;}
@keyframes loaderPulse{
  0%,80%,100%{transform:translateY(0) scale(.8);opacity:.35;}
  40%{transform:translateY(-3px) scale(1);opacity:1;background:var(--accent);}
}

/* GATE */
#gate{position:fixed;inset:0;background:
radial-gradient(circle at 50% 18%, rgba(15,19,92,.08), transparent 28%),
linear-gradient(180deg, rgba(255,255,255,.015), transparent 26%),
var(--bg);display:none;align-items:center;justify-content:center;z-index:9999;padding:20px;}
#gate.show{display:flex;}
.gi{display:flex;flex-direction:column;align-items:center;gap:18px;animation:fu .4s var(--ease) both;width:min(420px,100%);padding:28px 24px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01)),var(--panel);border:1px solid var(--border);box-shadow:0 30px 80px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.03);}
@keyframes fu{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
.glogo{display:flex;align-items:center;justify-content:center;margin-bottom:6px;}
.glogo svg{color:var(--brand);}
.gtitle{font-size:24px;font-weight:600;letter-spacing:-.05em;text-align:center;}
.gdesc{font-size:12.5px;color:var(--text3);margin-top:-6px;line-height:1.6;text-align:center;max-width:320px;}
.gstate{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--panel2);border:1px solid var(--border);font-size:11px;color:var(--text2);}
.gstate.ok{color:var(--accent);border-color:rgba(15,19,92,.18);background:rgba(15,19,92,.08);}
.gstate svg{flex-shrink:0;}
.giw{position:relative;width:260px;}
.gicon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text3);pointer-events:none;}
.ginput{width:100%;background:var(--panel2);border:1px solid var(--border);border-radius:var(--r);padding:10px 14px 10px 40px;color:var(--text);font-size:13px;font-family:'Geist Mono',monospace;letter-spacing:.1em;outline:none;transition:border-color var(--d);}
.ginput:focus{border-color:var(--accent);}
.gbtn{width:100%;padding:10px 14px;background:var(--accent);color:#ffffff;font-size:13px;font-weight:600;font-family:'Geist',sans-serif;border:none;border-radius:var(--r);cursor:pointer;transition:filter var(--d),transform var(--d);display:flex;align-items:center;justify-content:center;gap:8px;}
.gbtn:hover{filter:brightness(1.08);}
.gbtn:active{transform:translateY(1px);}
.gerr{font-size:11.5px;color:var(--danger);text-align:center;min-height:18px;transition:color var(--d),opacity var(--d);}
.gerr.ok{color:var(--accent);}
.gauth-actions{display:flex;flex-direction:column;gap:10px;width:100%;}
.gauth-row{display:flex;gap:10px;width:100%;}
.gbtn.subtle{background:var(--panel2);color:var(--text);border:1px solid var(--border);}
.gbtn.subtle:hover{filter:none;background:var(--panel3);}
.gacct{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--panel2);border:1px solid var(--border);border-radius:14px;width:100%;}
.gacct img{width:32px;height:32px;border-radius:999px;object-fit:cover;background:var(--panel3);}
.gacct-meta{display:flex;flex-direction:column;min-width:0;}
.gacct-name{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gacct-mail{font-size:10.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gmeta{display:flex;flex-direction:column;gap:10px;width:100%;align-items:center;}
.gmini{font-size:11px;color:var(--text3);text-align:center;line-height:1.5;max-width:320px;}
.access-modal{width:min(860px,calc(100vw - 28px));}
.access-body{display:flex;flex-direction:column;gap:14px;}
.access-intro{font-size:12px;color:var(--text2);line-height:1.6;}
.access-card{background:linear-gradient(180deg, rgba(255,255,255,.018), transparent 65%),var(--panel2);border:1px solid var(--border);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:12px;transition:transform var(--d),border-color var(--d),box-shadow var(--d);}
.access-card:hover{transform:translateY(-1px);border-color:var(--border2);box-shadow:0 12px 28px rgba(0,0,0,.14);}
.access-card.pending{border-style:dashed;border-color:rgba(15,19,92,.18);background:linear-gradient(180deg,rgba(15,19,92,.04),transparent 45%),var(--panel2);}
.access-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.access-user{display:flex;align-items:center;gap:12px;min-width:0;}
.access-user img{width:38px;height:38px;border-radius:999px;object-fit:cover;background:var(--panel3);}
.access-user-meta{min-width:0;display:flex;flex-direction:column;gap:2px;}
.access-user-name{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.access-user-email{font-size:10.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.access-user-sub{font-size:10px;color:var(--text3);}
.access-user-sub strong{color:var(--text2);font-weight:600;}
.access-role{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);padding:5px 8px;border-radius:999px;background:var(--panel3);border:1px solid var(--border);}
.access-role.owner{color:var(--accent);border-color:rgba(15,19,92,.16);background:var(--adim);}
.access-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.access-status select{background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:11.5px;padding:8px 10px;font-family:'Geist',sans-serif;outline:none;}
.access-perms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;}
.access-perm{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:var(--panel);border:1px solid var(--border);}
.access-perm-label{font-size:11px;color:var(--text2);}
.access-toggle{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--text3);}
.access-toggle input{accent-color:var(--accent);}
.access-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.access-pill{font-size:10px;padding:5px 8px;border-radius:999px;border:1px solid var(--border);background:var(--panel3);color:var(--text3);}
.access-pill.request{color:var(--accent);background:var(--adim);border-color:rgba(15,19,92,.16);}
.access-grid{display:flex;flex-direction:column;gap:18px;}
.access-section{display:flex;flex-direction:column;gap:10px;}
.access-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px;}
.access-section-head-right{display:flex;align-items:center;gap:8px;}
.access-section-title{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);font-weight:700;}
.access-section-copy{font-size:11px;color:var(--text3);}
.access-quick{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.access-quickbtn{padding:8px 12px;border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--text2);font-size:11px;font-weight:600;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.access-quickbtn:hover{background:var(--panel3);border-color:var(--border2);}
.access-quickbtn.danger{color:#ff9b94;border-color:rgba(255,107,107,.18);}
.access-quickbtn.danger:hover{background:rgba(255,107,107,.08);border-color:rgba(255,107,107,.26);}
.access-save[disabled],.bsave[disabled]{opacity:.38;filter:none;cursor:default;pointer-events:none;}
.access-empty{font-size:12px;color:var(--text3);padding:12px 0;text-align:center;}
.access-refresh{width:30px;height:30px;border-radius:10px;border:1px solid var(--border);background:var(--panel2);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);}
.access-refresh:hover{background:var(--panel3);border-color:var(--border2);}
.access-refresh.spinning svg,.gbtn.spinning svg{animation:spin 1s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

/* APP */
#app{display:flex;height:100%;transition:opacity .3s var(--ease);}
#app.hide{opacity:0;pointer-events:none;}

/* -- SIDEBAR */
.sb{width:var(--sbw);background:var(--bg);border-right:none;display:flex;flex-direction:column;flex-shrink:0;transition:width .22s var(--ease);overflow:hidden;position:relative;}
.sb.col{width:var(--sbc);}
.sbh{display:flex;align-items:center;padding:10px 12px;flex-shrink:0;height:54px;gap:8px;border-bottom:none;}
.brand{display:flex;align-items:center;gap:9px;flex:1;min-width:0;overflow:hidden;cursor:default;}
.bicon{display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.bicon svg{color:var(--brand);}
.bname{font-size:13.5px;font-weight:600;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;max-width:140px;transition:max-width .22s var(--ease),opacity .18s;}
.sb.col .bname{max-width:0;opacity:0;pointer-events:none;}
.sbtog{width:26px;height:26px;border:none;background:transparent;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0;transition:all var(--d);}
.sbtog:hover{background:var(--panel3);color:var(--text2);}
.sbtog svg{transition:transform .22s var(--ease);}
.sbnav{padding:8px 8px 0;flex:1;overflow-y:auto;overflow-x:hidden;}
.sbnav::-webkit-scrollbar{display:none;}
.sblabel{font-size:9px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);padding:12px 10px 3px;white-space:nowrap;}
.navbtn{display:flex;align-items:center;gap:9px;width:100%;padding:7px 10px;border-radius:7px;border:none;background:transparent;color:var(--text2);font-size:12.5px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);text-align:left;position:relative;white-space:nowrap;overflow:hidden;}
.navbtn:hover{background:var(--panel2);color:var(--text);}
.navbtn.on{background:var(--panel2);color:var(--text);font-weight:500;}
.navbtn.on::after{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--accent);border-radius:0 3px 3px 0;}
.nvi{width:15px;height:15px;flex-shrink:0;opacity:.6;}
.navbtn.on .nvi,.navbtn:hover .nvi{opacity:1;}
.nvlbl{transition:opacity .15s;}
.nvcnt{margin-left:auto;font-size:10px;font-family:'Geist Mono',monospace;color:var(--text3);background:var(--panel3);padding:1px 7px;border-radius:20px;flex-shrink:0;}
.navbtn.on .nvcnt{background:var(--adim);color:var(--accent);}
.nvtip{position:absolute;left:calc(var(--sbc) + 6px);top:50%;transform:translateY(-50%);background:var(--panel2);border:1px solid var(--border2);color:var(--text);font-size:11.5px;padding:4px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .1s;z-index:200;box-shadow:var(--shadow);}
.sbfoot{padding:12px 10px;border-top:none;flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.03);}
.sbaccount{display:flex;align-items:center;gap:10px;min-width:0;min-height:42px;padding:7px 9px;border-radius:14px;background:var(--panel2);border:1px solid var(--border);position:relative;}
.sbaccount-avatar{width:32px;height:32px;border-radius:999px;object-fit:cover;background:var(--panel3);flex-shrink:0;}
.sbaccount-meta{min-width:0;display:flex;flex-direction:column;gap:2px;}
.sbaccount-name{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sbaccount-sub{font-size:10.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px;min-height:14px;}
.sync-dot{width:6px;height:6px;border-radius:999px;background:#6f7178;box-shadow:0 0 0 2px rgba(111,113,120,.12);flex:0 0 auto;transition:background .18s ease,box-shadow .18s ease;}
.sync-dot.syncing{background:#a6a8ad;box-shadow:0 0 0 2px rgba(166,168,173,.13);animation:syncPulse 1.15s ease-in-out infinite;}
.sync-dot.ok{background:#67b57d;box-shadow:0 0 0 2px rgba(103,181,125,.13);}
.sync-dot.offline{background:#d19a55;box-shadow:0 0 0 2px rgba(209,154,85,.13);}
.sync-dot.error{background:#df6565;box-shadow:0 0 0 2px rgba(223,101,101,.13);}
@keyframes syncPulse{0%,100%{opacity:.55}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.sync-dot.syncing{animation:none}}
.sbfoot-actions{display:flex;align-items:center;gap:8px;}
.sbfoot .themetog{width:42px;height:42px;border-radius:14px;border:1px solid var(--border);background:var(--panel2);color:var(--text2);}
.sbfoot .themetog:hover{background:var(--panel3);border-color:var(--border2);color:var(--text);}

/* COLLAPSED SIDEBAR */
aside.sb.col .sbtog{display:none!important;}
aside.sb.col .sbh{padding:0!important;justify-content:center!important;align-items:center!important;}
aside.sb.col .brand{flex:none!important;gap:0!important;cursor:pointer;justify-content:center!important;width:var(--sbc)!important;overflow:visible;}
aside.sb.col .bicon{cursor:pointer;flex-shrink:0;}
aside.sb.col .bname{display:none!important;}
aside.sb.col .sbnav{padding:2px 0 0!important;}
aside.sb.col .sblabel{display:none!important;}
aside.sb.col .navbtn{justify-content:center!important;padding:9px 0!important;width:var(--sbc)!important;gap:0!important;border-radius:0!important;}
aside.sb.col .navbtn.on::after{display:none;}
aside.sb.col .navbtn .nvi{width:17px!important;height:17px!important;opacity:.55;margin:0!important;flex-shrink:0;}
aside.sb.col .navbtn.on .nvi{opacity:1!important;}
aside.sb.col .nvcnt{display:none!important;}
aside.sb.col .nvlbl{display:none!important;}
aside.sb.col .sbfoot{grid-template-columns:1fr!important;justify-items:center!important;padding:10px 0!important;}
aside.sb.col .sbfoot-actions{flex-direction:column!important;gap:6px!important;}
aside.sb.col .sbaccount{width:38px;height:38px;padding:0;justify-content:center;border-radius:999px;}
aside.sb.col .sbaccount-meta{display:none!important;}
aside.sb.col .sbaccount-avatar{width:26px;height:26px;}
aside.sb.col .themetog{margin:0!important;}
aside.sb.col .sbfoot .themetog{width:38px;height:38px;border-radius:999px;}
aside.sb.col .navbtn:hover .nvtip{opacity:1;}

/* MAIN */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg2);}

/* TOPBAR */
.topbar{display:flex;align-items:center;padding:0 20px;height:54px;border-bottom:none;background:var(--panel);flex-shrink:0;gap:12px;}
.tbleft{font-size:14px;font-weight:600;letter-spacing:-.03em;flex-shrink:0;}
.tbcenter{flex:1;display:flex;align-items:center;justify-content:center;}
.tbright{display:flex;align-items:center;gap:6px;flex-shrink:0;justify-content:flex-end;white-space:nowrap;margin-left:auto;}
.sbox{display:flex;align-items:center;gap:8px;background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);padding:7px 12px;width:260px;transition:border-color var(--d),background var(--d);}
.sbox:focus-within{border-color:var(--border2);background:var(--panel);}
.sbox input{background:none;border:none;outline:none;color:var(--text);font-size:12px;font-family:'Geist',sans-serif;width:100%;}
.sbox input::placeholder{color:var(--text3);}
.sbox svg{color:var(--text3);flex-shrink:0;}
.zbtns{display:flex;align-items:center;gap:2px;background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);padding:2px;}
.zbtn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text3);cursor:pointer;border-radius:6px;transition:all var(--d);}
.zbtn:hover{background:var(--panel3);color:var(--text2);}
.zbtn.on{background:var(--panel3);color:var(--text);}
.addbtn{display:flex;align-items:center;gap:5px;background:var(--accent);color:#ffffff;border:none;border-radius:var(--rsm);padding:0 14px;height:32px;font-size:12px;font-weight:600;font-family:'Geist',sans-serif;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:filter var(--d);}
.addbtn:hover{filter:brightness(1.08);}
.reorderbar{display:flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);padding:2px;}
.rctrls{display:flex;align-items:center;gap:4px;flex-wrap:wrap;}
.rbtn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:var(--panel2);color:var(--text3);cursor:pointer;transition:all var(--d);}
.rbtn:hover{background:var(--panel3);color:var(--text2);}
.rbtn:disabled{opacity:.28;cursor:default;pointer-events:none;}
.drag-item{transition:box-shadow 120ms ease,opacity 120ms ease;cursor:grab;}
.drag-item.dragging{opacity:.16;cursor:grabbing;}
.drop-slot{border-radius:14px;border:1.5px dashed rgba(196,255,78,.34);background:linear-gradient(180deg,rgba(196,255,78,.06),rgba(196,255,78,.025));box-shadow:inset 0 0 0 1px rgba(196,255,78,.03),0 0 0 1px rgba(0,0,0,.14);pointer-events:none;transition:height 110ms ease,opacity 110ms ease;opacity:.96;}
.drag-ghost{position:fixed;left:0;top:0;z-index:9999;pointer-events:none;border-radius:16px;overflow:hidden;transform:translate3d(0,0,0) scale(1.02) rotate(.6deg);box-shadow:0 26px 60px rgba(0,0,0,.38),0 8px 22px rgba(0,0,0,.22);opacity:.96;will-change:transform;}
.reorderhint{font-size:11px;color:var(--text3);padding:0 2px;white-space:nowrap;}

/* TAG FILTER BAR */
.tfbar{display:flex;align-items:center;gap:6px;padding:0 20px;height:40px;border-bottom:none;background:var(--panel);flex-shrink:0;overflow-x:auto;}
.tfbar::-webkit-scrollbar{display:none;}
.tpill{padding:3px 11px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text3);font-size:11px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);white-space:nowrap;flex-shrink:0;}
.tpill:hover{border-color:var(--border2);color:var(--text2);}
.tpill.on{background:var(--adim);border-color:var(--accent);color:var(--accent);}

/* CONTENT */
.content{flex:1;min-height:0;overflow-y:auto;padding:18px 20px;background:var(--bg);}
.content::-webkit-scrollbar{width:3px;}
.content::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px;}
.panel{display:none;}
.panel.on{display:block;}

/* GRIDS */
.bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--cm,255px),1fr));gap:10px;}
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--cm,235px),1fr));gap:10px;}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--cm,220px),1fr));gap:12px;}

/* GHOST ADD CARDS */
.gadd{background:transparent;border:1.5px dashed var(--border2);border-radius:var(--rlg);min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--d);color:var(--text3);}
.gadd:hover{border-color:var(--accent);color:var(--accent);background:var(--aglow);}
.gring{width:32px;height:32px;border-radius:50%;border:1.5px dashed currentColor;display:flex;align-items:center;justify-content:center;}
.glbl{font-size:11.5px;font-weight:500;}
.tgadd{border:1.5px dashed var(--border2);border-radius:var(--rlg);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all var(--d);color:var(--text3);}
.tgadd:hover{border-color:var(--accent);color:var(--accent);background:var(--aglow);}

/* CARD */
.card{background:var(--panel);border:none;border-radius:var(--rlg);overflow:hidden;position:relative;display:flex;flex-direction:column;transition:box-shadow var(--d);}
.card,.tcard,.pcard,.bento{contain:layout paint style;}
.card:hover{box-shadow:var(--shadow);}
.cthumb{width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;display:block;flex-shrink:0;background:var(--panel2);}
.cph{width:100%;aspect-ratio:16/9;background:var(--panel2);display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--text3);flex-shrink:0;}
.cbody{padding:12px 13px 12px;flex:1;}
.ctitle{font-size:12.5px;font-weight:600;letter-spacing:-.01em;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:34px;margin-bottom:5px;white-space:normal;}
.cprev{font-size:11px;color:var(--text3);font-family:'Geist Mono',monospace;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ctags{display:flex;flex-wrap:wrap;gap:3px;margin-top:7px;}
.ctag{font-size:9.5px;background:var(--panel2);color:var(--text2);padding:2px 7px;border-radius:20px;border:1px solid var(--border);}
.card.notags .ctags{display:none;}
.cfoot{position:absolute;top:7px;right:7px;display:flex;align-items:center;gap:3px;padding:0;opacity:0;transition:opacity var(--d);z-index:4;}
.card:hover .cfoot{opacity:1;}
.ib{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:var(--text3);cursor:pointer;transition:all var(--d);flex-shrink:0;}
.cfoot .ib{background:rgba(10,10,12,.75);backdrop-filter:blur(8px);}
.ib:hover{background:rgba(10,10,12,.95);color:var(--text2);}
.ib.cp:hover{background:var(--adim);color:var(--accent);}
.ib.fv.on{color:var(--gold);}
.ib.fv:hover{background:var(--gdim);color:var(--gold);}
.ib.dl:hover{background:var(--ddim);color:var(--danger);}
.ib svg{pointer-events:none;}
.cflash{position:absolute;inset:0;border-radius:var(--rlg);background:rgba(15,19,92,.08);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:6;}
.cflash.on{opacity:1;}
.cflash .cpill{transform:translateY(8px) scale(.96);opacity:0;transition:transform .22s cubic-bezier(.22,.9,.2,1),opacity .18s ease;}
.cflash.on .cpill{transform:translateY(0) scale(1);opacity:1;}
.cpill{background:rgba(13,13,14,.92);color:var(--accent);font-size:11.5px;font-weight:600;padding:6px 14px;border-radius:20px;border:1px solid rgba(15,19,92,.22);display:flex;align-items:center;gap:5px;box-shadow:0 10px 24px rgba(0,0,0,.28);}
body.light .cpill{background:rgba(10,10,10,.88);}

/* TOOL CARD */
.tcard{background:var(--panel);border:none;border-radius:var(--rlg);overflow:hidden;cursor:pointer;transition:box-shadow var(--d);}
.tcard:hover{box-shadow:var(--shadow);}
.tprev{width:100%;height:88px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.tprev img.ss{width:100%;height:100%;object-fit:cover;}
.tfavbig{opacity:.35;border-radius:10px;}
.trow{display:flex;align-items:center;gap:9px;padding:10px 12px;}
.tfav{width:24px;height:24px;border-radius:6px;background:var(--panel2);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tfav img{width:100%;height:100%;object-fit:cover;}
.tinfo{flex:1;min-width:0;}
.tname{font-size:12px;font-weight:600;letter-spacing:-.01em;}
.tdom{font-size:10px;color:var(--text3);font-family:'Geist Mono',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tbtns{display:flex;gap:1px;flex-shrink:0;}
.tb2{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:var(--text3);cursor:pointer;transition:all var(--d);}
.tb2:hover{background:var(--panel2);color:var(--text2);}
.tb2.dl:hover{background:var(--ddim);color:var(--danger);}
.tb2.fv.on{color:var(--gold);}
.tb2.fv:hover{color:var(--gold);}

/* THUMBNAIL CARD */
.pcard{background:var(--panel);border:none;border-radius:var(--rlg);overflow:hidden;position:relative;cursor:pointer;display:flex;flex-direction:column;transition:box-shadow var(--d);}
.pcard:hover{box-shadow:var(--shadow);}
.pimgw{width:100%;position:relative;overflow:hidden;background:var(--panel2);flex-shrink:0;}
.pimgw::before{content:'';display:block;padding-top:56.25%;}
.pimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s var(--ease);}
.pcard:hover .pimg{transform:scale(1.02);}
.pflash{position:absolute;inset:0;background:rgba(15,19,92,.1);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:5;}
.pflash.on{opacity:1;}
.pflash .cpill{transform:translateY(8px) scale(.96);opacity:0;transition:transform .22s cubic-bezier(.22,.9,.2,1),opacity .18s ease;}
.pflash.on .cpill{transform:translateY(0) scale(1);opacity:1;}
.pfoot{padding:7px 10px 8px;}
.ptags{display:flex;flex-wrap:wrap;gap:3px;}
.pbtns{position:absolute;top:7px;right:7px;display:flex;gap:3px;opacity:0;transition:opacity var(--d);z-index:4;}
.pcard:hover .pbtns{opacity:1;}
.pbtn{width:26px;height:26px;border-radius:6px;border:none;background:rgba(10,10,12,.75);color:var(--text2);cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:all var(--d);}
.pbtn:hover{background:rgba(10,10,12,.95);color:var(--text);}
.pbtn.dl:hover{background:rgba(240,74,74,.3);color:var(--danger);}
.pbtn svg{pointer-events:none;}
.pcheck{position:absolute;top:8px;left:8px;width:20px;height:20px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:rgba(0,0,0,.35);backdrop-filter:blur(4px);z-index:5;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);opacity:0;}
.pcard:hover .pcheck,.pcard.sel .pcheck{opacity:1;}
.pcard.sel .pcheck{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 2px rgba(255,255,255,.4);}
.pcheck svg{pointer-events:none;opacity:0;transition:opacity .1s;}
.pcard.sel .pcheck svg{opacity:1;}
.pcard.sel{outline:2px solid var(--accent);outline-offset:-1px;box-shadow:0 0 0 4px var(--adim);}
.pcard.selpreview{outline:2px solid var(--accent);outline-offset:-1px;opacity:.85;}
.pcard.notags>div:not(.pimgw){display:none;}

/* LIGHTBOX */
.lbox{position:fixed;inset:0;background:rgba(8,8,10,.94)!important;backdrop-filter:blur(12px);z-index:800;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s var(--ease);}
.lbox.on{opacity:1;pointer-events:all;}
.limg{max-width:100%;max-height:88vh;border-radius:var(--rlg);box-shadow:0 8px 40px rgba(0,0,0,.35);object-fit:contain;transform:scale(.96);transition:transform .25s var(--ease),opacity .15s;display:block;}
.lbox.on .limg{transform:scale(1);}
.lclose{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;background:var(--panel2);border:1px solid var(--border2);color:var(--text2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all var(--d);}
.lclose:hover{background:var(--panel3);color:var(--text);}
.ltags{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:6px;flex-wrap:wrap;justify-content:center;}
.ltag{background:rgba(20,20,22,.85);border:1px solid var(--border2);color:var(--text2);font-size:11px;padding:3px 9px;border-radius:20px;backdrop-filter:blur(4px);}

/* DROP OVERLAY */
.dropov{position:fixed;inset:0;background:rgba(10,10,12,.82);backdrop-filter:blur(6px);z-index:50;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s;border:3px dashed transparent;}
.dropov.on{opacity:1;pointer-events:all;border-color:var(--accent);}
.dropinner{text-align:center;color:var(--accent);}
.dropinner svg{margin-bottom:12px;opacity:.8;}
.dropinner p{font-size:16px;font-weight:600;letter-spacing:-.02em;}
.dropinner span{font-size:12px;color:var(--text3);margin-top:4px;display:block;}

/* DRAG */
.dghostEl{position:fixed;pointer-events:none;z-index:999;border-radius:var(--rlg);box-shadow:0 24px 64px rgba(0,0,0,.7);transform:rotate(1.5deg) scale(1.04);opacity:.95;}
.dsrc{opacity:0!important;pointer-events:none!important;}

/* MODAL */
.ov{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:200;opacity:0;pointer-events:none;transition:opacity var(--d);}
.ov.on{opacity:1;pointer-events:all;}
.modal{background:var(--panel);border:1px solid var(--border2);border-radius:var(--rlg);width:490px;max-width:calc(100vw - 28px);max-height:88vh;overflow-y:auto;transform:translateY(10px) scale(.98);transition:transform var(--d);box-shadow:var(--shadow);}
.ov.on .modal{transform:none;}
.modal::-webkit-scrollbar{width:3px;}
.modal::-webkit-scrollbar-thumb{background:var(--border2);}
.mh{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border);}
.mhtitle{font-size:13.5px;font-weight:600;letter-spacing:-.02em;}
.mclose,.mx{width:26px;height:26px;border:none;background:transparent;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all var(--d);font-size:18px;line-height:1;}
.mclose:hover,.mx:hover{background:var(--panel2);color:var(--text);}
.m-body,.mbody{padding:16px 18px;display:flex;flex-direction:column;gap:14px;}
.mfoot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border);}
.field{display:flex;flex-direction:column;gap:5px;}
.flbl{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text3);}
.field input,.field textarea{background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);color:var(--text);font-family:'Geist',sans-serif;font-size:12.5px;padding:9px 11px;outline:none;transition:border-color var(--d);}
.field input:focus,.field textarea:focus{border-color:var(--accent);}
.field textarea{min-height:90px;resize:none;font-family:'Geist Mono',monospace;font-size:11.5px;line-height:1.65;}
.uz{border:1.5px dashed var(--border2);border-radius:var(--rsm);padding:18px;text-align:center;cursor:pointer;transition:all var(--d);position:relative;overflow:hidden;}
.uz:hover{border-color:var(--accent);background:var(--aglow);}
.uz input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;}
.uzicon{font-size:18px;margin-bottom:3px;}
.uztxt{font-size:11px;color:var(--text3);}
.uzprev{width:100%;height:110px;object-fit:cover;border-radius:var(--rsm);display:none;}
.uzprevw{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--rsm);display:none;}
.tagbox{display:flex;flex-wrap:wrap;gap:4px;background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);padding:6px 8px;min-height:36px;cursor:text;transition:border-color var(--d);}
.tagbox:focus-within{border-color:var(--border2);}
.tchip{display:inline-flex;align-items:center;gap:3px;background:var(--panel3);color:var(--text2);font-size:11px;padding:3px 9px;border-radius:20px;border:1px solid var(--border);line-height:1.4;white-space:nowrap;}
.tchip button{background:none;border:none;color:var(--text3);cursor:pointer;font-size:13px;line-height:1;padding:0;margin-left:1px;opacity:.6;transition:opacity var(--d);}.tchip button:hover{opacity:1;}
.taginp{background:none;border:none;outline:none;color:var(--text);font-size:12px;font-family:'Geist',sans-serif;flex:1;min-width:60px;}
.taghint{font-size:10px;color:var(--text3);}
.rtags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px;}
.rtag{padding:2px 9px;border-radius:20px;border:1px solid var(--border);background:var(--panel2);color:var(--text3);font-size:10.5px;cursor:pointer;transition:all var(--d);}
.rtag:hover{border-color:var(--accent);color:var(--accent);background:var(--adim);}
.steplist{display:flex;flex-direction:column;gap:6px;}
.steprow{display:flex;gap:6px;align-items:center;}
.stepn{width:22px;height:22px;border-radius:50%;background:var(--panel3);border:1px solid var(--border);color:var(--text3);font-size:9.5px;font-family:'Geist Mono',monospace;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.stepinp{flex:1;background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);color:var(--text);font-family:'Geist',sans-serif;font-size:12px;padding:7px 10px;outline:none;transition:border-color var(--d);}
.stepinp:focus{border-color:var(--accent);}
.stepdel{width:22px;height:22px;border-radius:4px;background:none;border:none;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:15px;transition:all var(--d);}
.stepdel:hover{background:var(--ddim);color:var(--danger);}
.addstep{display:flex;align-items:center;justify-content:center;gap:5px;background:none;border:1.5px dashed var(--border2);border-radius:var(--rsm);color:var(--text3);font-size:11.5px;font-family:'Geist',sans-serif;padding:6px 10px;cursor:pointer;transition:all var(--d);width:100%;}
.addstep:hover{border-color:var(--accent);color:var(--accent);}
.bghst{padding:7px 14px;border-radius:var(--rsm);background:var(--panel2);border:1px solid var(--border);color:var(--text2);font-size:12px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.bghst:hover{color:var(--text);border-color:var(--border2);}
.bsave{padding:7px 16px;border-radius:var(--rsm);background:var(--accent);border:none;color:#ffffff;font-size:12px;font-weight:600;font-family:'Geist',sans-serif;cursor:pointer;transition:filter var(--d);}
.bsave:hover{filter:brightness(1.08);}
.boutl{padding:7px 14px;border-radius:var(--rsm);background:transparent;border:1px solid var(--border2);color:var(--text2);font-size:12px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.boutl:hover{color:var(--text);}
.vimg{width:100%;max-height:220px;object-fit:cover;border-radius:var(--rsm);display:none;}
.vprompt{background:var(--panel2);border:1px solid var(--border);border-radius:var(--rsm);padding:12px;font-size:11.5px;font-family:'Geist Mono',monospace;line-height:1.7;color:var(--text2);white-space:pre-wrap;word-break:break-word;}
.svrow{display:flex;gap:9px;align-items:flex-start;}
.svn{width:20px;height:20px;border-radius:50%;background:var(--adim);color:var(--accent);font-size:9.5px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;font-family:'Geist Mono',monospace;}
.svt{font-size:12px;color:var(--text2);line-height:1.6;}
.wfprev{display:flex;flex-direction:column;gap:4px;margin-top:6px;}
.wfl{display:flex;align-items:baseline;gap:6px;}
.wfn{font-size:9px;font-family:'Geist Mono',monospace;color:var(--accent);background:var(--adim);padding:1px 5px;border-radius:3px;flex-shrink:0;font-weight:600;}
.wft{font-size:11px;color:var(--text2);line-height:1.45;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}

/* MULTI MODAL */
.mmod{background:var(--panel);border:1px solid var(--border2);border-radius:var(--rlg);width:510px;max-width:calc(100vw - 28px);max-height:88vh;overflow-y:auto;transform:translateY(10px) scale(.98);transition:transform var(--d);box-shadow:0 8px 48px rgba(0,0,0,.7);}
.ov.on .mmod{transform:none;}
.mmod::-webkit-scrollbar{width:3px;}
.mmod::-webkit-scrollbar-thumb{background:var(--border2);}
.mthumbrow{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;}
.mthumbrow::-webkit-scrollbar{height:3px;}
.mthumbrow::-webkit-scrollbar-thumb{background:var(--border2);}
.mtmini{width:80px;height:45px;object-fit:cover;border-radius:6px;border:2px solid transparent;flex-shrink:0;}
.mtmini.on{border-color:var(--accent);}

/* CONFIRM */
.confov{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:700;opacity:0;pointer-events:none;transition:opacity var(--d);}
.confov.on{opacity:1;pointer-events:all;}
.confbox{background:var(--panel);border:1px solid var(--border);border-radius:var(--rlg);padding:24px;width:300px;box-shadow:0 8px 48px rgba(0,0,0,.7);transform:translateY(6px) scale(.97);transition:transform var(--d);}
.confov.on .confbox{transform:none;}
.conficon{font-size:20px;margin-bottom:8px;}
.conftitle{font-size:13.5px;font-weight:600;margin-bottom:5px;}
.confsub{font-size:11.5px;color:var(--text2);margin-bottom:16px;line-height:1.5;}
.confbtns{display:flex;gap:6px;justify-content:flex-end;}
.bcanc{padding:6px 13px;border-radius:var(--rsm);background:var(--panel2);border:1px solid var(--border);color:var(--text2);font-size:12px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.bcanc:hover{color:var(--text);}
.bdel{padding:6px 13px;border-radius:var(--rsm);background:var(--ddim);border:1px solid rgba(240,74,74,.22);color:var(--danger);font-size:12px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.bdel:hover{background:rgba(240,74,74,.18);}

/* TOAST */
.toast{position:fixed;bottom:20px;right:20px;background:var(--panel2);border:1px solid var(--border2);border-radius:10px;padding:9px 16px;font-size:12px;color:var(--text);display:flex;align-items:center;gap:7px;z-index:900;transform:translateY(8px);opacity:0;pointer-events:none;transition:all .2s var(--ease);box-shadow:0 8px 32px rgba(0,0,0,.5);}
.toast.on{transform:none;opacity:1;}
.tdot{width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0;}

/* BOX SELECT */
#boxsel{position:fixed;border:1.5px solid var(--accent);background:rgba(15,19,92,.07);border-radius:4px;pointer-events:none;z-index:300;display:none;}

/* THUMBNAIL MULTI-SELECT TOOLBAR */
#selbar{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(12px);background:var(--panel);border:1px solid var(--border2);border-radius:14px;padding:8px 12px;display:flex;align-items:center;gap:8px;z-index:600;box-shadow:0 8px 40px rgba(0,0,0,.6);opacity:0;pointer-events:none;transition:opacity .2s var(--ease),transform .2s var(--ease);white-space:nowrap;backdrop-filter:blur(12px);}
#selbar.on{opacity:1;pointer-events:all;transform:translateX(-50%) translateY(0);}
.selcnt{font-size:12px;font-weight:600;color:var(--text2);padding-right:8px;border-right:1px solid var(--border);}
.selbtn{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:8px;border:none;background:var(--panel2);color:var(--text2);font-size:11.5px;font-family:'Geist',sans-serif;cursor:pointer;transition:all var(--d);}
.selbtn.accent-btn{background:var(--adim);border-color:var(--accent);color:var(--accent);}
.selbtn.accent-btn:hover{background:var(--accent);color:#ffffff;}
.selbtn:hover{background:var(--panel3);color:var(--text);}
.selbtn.danger:hover{background:var(--ddim);color:var(--danger);}
.seldeselect{width:28px;height:28px;border-radius:7px;border:none;background:transparent;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--d);}
.seldeselect:hover{background:var(--panel2);color:var(--text2);}

/* THUMB TAG TOGGLE */
.thtogbtn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:var(--rsm);color:var(--text3);cursor:pointer;transition:all var(--d);flex-shrink:0;}
.thtogbtn:hover{border-color:var(--border2);color:var(--text2);background:var(--panel2);}
.thtogbtn.on{background:var(--panel2);border-color:var(--border2);color:var(--text2);}

/* THEME TOGGLE */
.themetog{width:28px;height:28px;border:1px solid var(--border);background:transparent;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:7px;transition:all var(--d);flex-shrink:0;}
.themetog:hover{background:var(--panel2);color:var(--text2);}
.sbfoot{padding:12px 10px;border-top:none;flex-shrink:0;}
aside.sb.col .themetog{margin:0 auto;}

/* -- DASHBOARD */
/* Layout: 3 cols
   Row1: greeting (full width)
   Row2: prompts (col1-2) | stats (col3)
   Row3: tasks-dimcha (col1) | tasks-max (col2) | thumbs (col3)
*/
.dash{display:grid;grid-template-columns:1.08fr 1.08fr .84fr;gap:14px;padding:20px 20px 28px;}

.bento{background:var(--panel);border:none;border-radius:var(--rlg);overflow:hidden;display:flex;flex-direction:column;}
.bento-shared{background:
radial-gradient(circle at 85% 12%, rgba(15,19,92,.18) 0%, rgba(15,19,92,.09) 18%, rgba(15,19,92,.035) 34%, transparent 58%),
radial-gradient(circle at 8% 100%, rgba(15,19,92,.08) 0%, rgba(15,19,92,.025) 20%, transparent 42%),
linear-gradient(180deg, rgba(15,19,92,.022) 0%, rgba(15,19,92,.012) 100%),
linear-gradient(180deg,var(--panel) 0%,var(--panel) 100%);
box-shadow:inset 0 1px 0 rgba(255,255,255,.03), inset 0 0 0 1px rgba(15,19,92,.05);}
.bento-h{display:flex;align-items:center;justify-content:space-between;padding:14px 15px 8px;}
.bento-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);}
.bento-action{font-size:11px;color:var(--text3);background:none;border:none;cursor:pointer;padding:3px 7px;border-radius:6px;font-family:'Geist',sans-serif;transition:all var(--d);}
.bento-action:hover{background:var(--panel2);color:var(--text2);}
.bento-body{padding:0 15px 13px;flex:1;display:flex;flex-direction:column;}

/* Greeting */
.dash-greeting{grid-column:1/-1;display:none;display:flex;align-items:center;justify-content:space-between;padding:4px 2px 0;}
.dash-greeting-text h2{font-size:21px;font-weight:700;letter-spacing:-.04em;}
.dash-greeting-text p{font-size:12px;color:var(--text3);margin-top:2px;}
.dash-time{font-size:11.5px;font-family:'Geist Mono',monospace;color:var(--text3);background:var(--panel2);padding:5px 13px;border-radius:20px;border:1px solid var(--border);}

/* Top Prompts: spans col 1-2 only */

/* Home lower row: prompts + mutual tasks */

.tp-list{display:flex;flex-direction:column;gap:5px;}
.tp-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:9px;background:var(--panel2);cursor:pointer;transition:all var(--d);border:1px solid transparent;position:relative;}
.tp-item:hover{background:var(--panel3);border-color:var(--border);}
.tp-item:active{transform:scale(.99);}
.tp-num{font-size:9.5px;font-family:'Geist Mono',monospace;color:var(--text3);width:14px;flex-shrink:0;text-align:right;}
.tp-text{flex:1;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tp-tag{font-size:9.5px;color:var(--text3);background:var(--panel3);border:1px solid var(--border);padding:1px 6px;border-radius:20px;flex-shrink:0;}
.tp-empty{padding:16px 0;text-align:center;color:var(--text3);font-size:12px;}

/* Stats: col 3, rows 2 */

.dash-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;}
.stat-card{background:var(--panel2);border-radius:10px;padding:11px 13px;display:flex;flex-direction:column;gap:2px;}
.stat-val{font-size:20px;font-weight:700;letter-spacing:-.04em;color:var(--text);}
.stat-lbl{font-size:10px;color:var(--text3);}
.stat-card.accent .stat-val{color:var(--accent);}

/* Tasks */
.dash-tasks-row{display:grid;grid-template-columns:1.08fr 1.08fr .84fr;gap:16px;}
.notes-list{display:flex;flex-direction:column;gap:5px;margin-bottom:8px;min-height:260px;max-height:460px;overflow-y:auto;flex:1;}
.notes-list::-webkit-scrollbar{width:2px;}
.notes-list::-webkit-scrollbar-thumb{background:var(--border2);}
.note-item{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;background:var(--panel2);border:1px solid transparent;transition:all var(--d);cursor:pointer;}
.note-item:hover{border-color:var(--border);}
.note-item.insane{border:1px dashed rgba(255,88,88,.72);background:rgba(255,255,255,.02);box-shadow:inset 0 1px 0 rgba(255,255,255,.05);position:relative;animation:insaneSteady 1.9s ease-in-out infinite;}
.note-item.insane::after{display:none;}
.note-item.insane:hover{border-color:rgba(255,106,106,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(255,88,88,.06);}
.note-cb{width:17px;height:17px;border-radius:5px;border:1.5px solid var(--border2);background:transparent;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .15s;}
.note-cb.done{background:var(--accent);border-color:var(--accent);}
.note-cb.done svg{display:block;}
.note-cb svg{display:none;pointer-events:none;}
.note-body{flex:1;min-width:0;cursor:pointer;}
.note-text{font-size:12.5px;color:var(--text);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.note-text.done{text-decoration:line-through;color:var(--text3);}
.note-meta{display:flex;align-items:center;gap:4px;margin-top:2px;}
.note-badge{font-size:9px;padding:1px 5px;border-radius:20px;border:1px solid var(--border);background:var(--panel3);color:var(--text3);white-space:nowrap;}
.note-badge.has-content{background:var(--adim);border-color:rgba(15,19,92,.3);color:var(--accent);}
.note-item.done .note-badge,
.note-item.done .note-badge.priority-urgent,
.note-item.done .note-badge.priority-insane,
.note-item.done .note-badge.due-overdue,
.note-item.done .note-badge.due-soon,
.note-item.done .note-badge.has-content{background:var(--panel3);border-color:var(--border);color:var(--text3);opacity:.6;}
.note-actions{display:flex;gap:2px;opacity:0;transition:opacity var(--d);flex-shrink:0;}
.note-item:hover .note-actions{opacity:1;}
.note-btn{width:20px;height:20px;border:none;background:transparent;color:var(--text3);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all var(--d);}
.note-btn:hover{background:var(--panel3);color:var(--text2);}
.note-btn.del:hover{background:var(--ddim);color:var(--danger);}
.note-add{display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:8px;border:1.5px dashed var(--border2);transition:all var(--d);margin-top:2px;}
.note-add:focus-within{border-color:var(--accent);background:var(--aglow);}
.note-inp{flex:1;background:none;border:none;outline:none;font-size:12px;color:var(--text);font-family:'Geist',sans-serif;}
.note-inp::placeholder{color:var(--text3);}
.note-submit{width:20px;height:20px;border-radius:5px;background:var(--accent);border:none;color:#ffffff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:filter var(--d);}
.note-submit:hover{filter:brightness(1.08);}
.note-submit.note-submit-subtle{background:var(--adim);color:var(--accent);border:1px dashed rgba(15,19,92,.18);}
.note-submit.note-submit-subtle:hover{filter:none;background:rgba(15,19,92,.12);border-color:rgba(15,19,92,.26);}
.dash-lower-row{grid-column:1/-1;display:grid;grid-template-columns:1.08fr 1.08fr .84fr;gap:16px;}
.dash-lower-row #dash-prompts-box{grid-column:span 2;}
.dash-lower-row .dash-mutual-box{grid-column:span 1;}
.dash-mutual-box .bento-body{padding-bottom:10px;}

/* Recent Thumbnails */

.rth-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;}
.rth-item{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;cursor:pointer;background:var(--panel2);}
.rth-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s var(--ease);display:block;}
.rth-item:hover img{transform:scale(1.05);}
.rth-btns{position:absolute;top:5px;right:5px;display:flex;gap:3px;opacity:0;transition:opacity var(--d);}
.rth-item:hover .rth-btns{opacity:1;}
.rth-btn{width:24px;height:24px;border-radius:6px;border:none;background:rgba(10,10,12,.7);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);transition:background var(--d);}
.rth-btn:hover{background:rgba(10,10,12,.95);}
.rth-empty{font-size:11px;color:var(--text3);padding:10px 0;text-align:center;}


/* Drag */
.note-item.dragging{opacity:.25;background:var(--panel3);transform:scale(.98);}
.note-item.moving-down{transform:translateY(12px);opacity:.72;}
.note-item.moving-up{transform:translateY(-10px);opacity:.72;}
.notes-list.drag-over{border-radius:8px;}
.note-item.drag-over{border-color:var(--accent);background:var(--adim);}

/* TASK DETAIL MODAL */
.task-ov{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:500;opacity:0;pointer-events:none;transition:opacity .2s var(--ease);}
.task-ov.on{opacity:1;pointer-events:all;}
.task-modal{background:var(--panel);border:1px solid var(--border2);border-radius:20px;width:720px;max-width:calc(100vw - 24px);max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;box-shadow:var(--shadow);transform:translateY(10px) scale(.98);transition:transform .2s var(--ease);}
.task-ov.on .task-modal{transform:none;}
.task-mh{display:flex;align-items:center;gap:10px;padding:17px 20px;border-bottom:1px solid var(--border);}
.task-title-inp{flex:1;background:none;border:none;outline:none;font-size:14px;font-weight:600;color:var(--text);font-family:'Geist',sans-serif;letter-spacing:-.02em;}
.task-mclose{width:26px;height:26px;border:none;background:transparent;color:var(--text3);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all var(--d);flex-shrink:0;}
.task-mclose:hover{background:var(--panel2);color:var(--text);}
.task-mbody{padding:18px 20px;display:flex;flex-direction:column;gap:14px;flex:1;}
.task-section{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border);background:var(--panel2);border-radius:16px;}
.task-slbl{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);}
.task-notes-inp{background:transparent;border:none;border-radius:12px;color:var(--text);font-family:'Geist',sans-serif;font-size:12.5px;padding:0;outline:none;min-height:108px;resize:none;transition:border-color var(--d);width:100%;line-height:1.7;}
.task-notes-inp:focus{border-color:var(--accent);}
.task-links{display:flex;flex-direction:column;gap:5px;}
.task-link-item{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--panel);border-radius:12px;border:1px solid var(--border);}
.task-link-url{flex:1;font-size:11.5px;color:var(--accent);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:'Geist Mono',monospace;}
.task-link-url:hover{text-decoration:underline;}
.task-link-del{width:18px;height:18px;border:none;background:transparent;color:var(--text3);cursor:pointer;border-radius:3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--d);}
.task-link-del:hover{background:var(--ddim);color:var(--danger);}
.task-link-add{display:flex;gap:8px;}
.task-link-inp{flex:1;background:var(--panel);border:1px solid var(--border);border-radius:12px;color:var(--text);font-family:'Geist Mono',monospace;font-size:11.5px;padding:11px 12px;outline:none;transition:border-color var(--d);}
.task-link-inp:focus{border-color:var(--accent);}
.task-imgs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.task-img-item{aspect-ratio:16/9;border-radius:12px;overflow:hidden;position:relative;background:var(--panel);}
.task-img-item img{width:100%;height:100%;object-fit:cover;}
.task-img-del{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:8px;background:rgba(10,10,12,.78);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--d),transform var(--d);}
.task-img-item:hover .task-img-del{opacity:1;}
.task-img-tools{position:absolute;top:8px;right:8px;display:flex;gap:6px;}
.task-img-add{aspect-ratio:16/9;border-radius:12px;border:1.5px dashed var(--border2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);color:var(--text3);position:relative;background:linear-gradient(180deg, rgba(255,255,255,.015), transparent);}
.task-img-add:hover{border-color:var(--accent);color:var(--accent);background:var(--aglow);}
.task-img-add input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.task-img-add.empty{grid-column:1/-1;min-height:154px;aspect-ratio:auto;justify-content:center;padding:0;}
.task-img-add-body{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.task-img-add-icon{width:44px;height:44px;border-radius:14px;background:rgba(10,10,12,.5);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.task-mfoot{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-top:1px solid var(--border);gap:14px;}
.task-assignee{display:flex;align-items:center;gap:8px;}
.task-assign-lbl{font-size:11px;color:var(--text3);}
.task-assign-sel{background:var(--panel2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:11.5px;padding:4px 8px;outline:none;cursor:pointer;font-family:'Geist',sans-serif;}
.task-assign-sel:focus{border-color:var(--accent);}
.task-meta-grid{display:flex;gap:10px;flex:1;align-items:center;flex-wrap:wrap;}
.task-meta-field{display:flex;flex-direction:column;gap:5px;min-width:0;position:relative;}
.task-date-wrap{position:relative;}
.task-date-btn{height:40px;min-width:180px;padding:0 40px 0 14px;border-radius:12px;border:1px solid var(--border);background:var(--panel2);color:var(--text);font-size:12px;font-family:'Geist',sans-serif;cursor:pointer;text-align:left;transition:all var(--d);display:inline-flex;align-items:center;gap:10px;position:relative;}
.task-date-btn:hover,.task-date-wrap.open .task-date-btn{border-color:var(--border2);background:var(--panel3);}
.task-date-btn svg{color:var(--text3);flex-shrink:0;transition:color var(--d);}
.task-date-wrap.open .task-date-btn svg,.task-date-btn:hover svg{color:var(--accent);}
.task-date-wrap.has-date .task-date-btn{color:var(--accent);}
.task-date-wrap.has-date .task-date-btn svg{color:var(--accent);}
.task-date-wrap.has-date.open .task-date-btn,.task-date-wrap.has-date .task-date-btn:hover{color:var(--accent);}
.task-date-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:22px;height:22px;border:none;border-radius:999px;background:transparent;color:var(--text3);display:none;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);z-index:2;}
.task-date-wrap.has-date .task-date-clear{display:inline-flex;}
.task-date-clear:hover{background:var(--panel3);color:var(--text);}
.task-date-native{width:100%;height:40px;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);padding:0 12px;font-size:12px;font-family:'Geist',sans-serif;outline:none;}
.task-date-pop{position:absolute;left:0;bottom:calc(100% + 10px);width:288px;padding:14px;border-radius:20px;border:1px solid var(--border2);background:linear-gradient(180deg,var(--panel) 0%,var(--bg2) 100%);box-shadow:0 20px 48px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.03);display:flex;flex-direction:column;gap:12px;z-index:8;opacity:0;transform:translateY(8px) scale(.985);transform-origin:bottom left;pointer-events:none;visibility:hidden;transition:opacity .18s var(--ease),transform .22s var(--ease),visibility .22s;}
.task-date-wrap.open .task-date-pop{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;visibility:visible;}
.task-date-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:2px;}
.task-date-month{font-size:17px;font-weight:600;letter-spacing:-.04em;color:var(--text);}
.task-date-nav{width:30px;height:30px;border:1px solid var(--border);border-radius:999px;background:var(--panel2);color:var(--text2);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--d);}
.task-date-nav:hover{background:var(--panel3);border-color:var(--border2);color:var(--text);}
.task-date-weekdays,.task-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;}
.task-date-grid{min-height:210px;align-content:start;}
.task-date-weekdays span{font-size:10px;font-weight:500;color:var(--text3);text-align:center;padding:2px 0 4px;}
.task-date-cell{aspect-ratio:1/1;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text);font-size:12px;font-weight:500;font-family:'Geist',sans-serif;cursor:pointer;transition:transform .16s var(--ease),background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease),color .16s var(--ease),opacity .16s var(--ease);display:grid;place-items:center;line-height:1;position:relative;}
.task-date-cell:hover{background:var(--panel2);border-color:var(--border);transform:translateY(-1px) scale(1.03);}
.task-date-cell.muted{color:var(--text3);opacity:.38;}
.task-date-cell.active{background:var(--accent);border-color:var(--accent);color:#ffffff;box-shadow:0 0 0 5px var(--adim);}
.task-date-cell.today{border-color:var(--border2);background:rgba(255,255,255,.02);}
.task-date-cell.active.today{border-color:var(--accent);background:var(--accent);color:#ffffff;box-shadow:0 0 0 5px var(--adim);}
.task-priority-toggle{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 4px 0 0;}
.task-priority-toggle input{position:absolute;opacity:0;pointer-events:none;}
.task-priority-switch{width:50px;height:28px;border-radius:999px;background:var(--panel3);border:1px solid var(--border);position:relative;transition:all var(--d);cursor:pointer;display:inline-flex;align-items:center;}
.task-priority-switch::after{content:'';position:absolute;top:2px;left:2px;width:22px;height:22px;border-radius:50%;background:var(--text3);transition:all var(--d);box-shadow:0 2px 8px rgba(0,0,0,.24);}
.task-priority-toggle input:checked + .task-priority-switch{background:var(--ddim);border-color:rgba(255,92,92,.22);}
.task-priority-toggle input:checked + .task-priority-switch::after{left:24px;background:var(--danger);}
.task-priority-pill{font-size:11px;color:var(--text3);letter-spacing:.02em;}
.task-side-actions{display:flex;align-items:flex-end;gap:8px;padding-left:12px;}
.note-badge.priority-urgent{background:rgba(255,92,92,.12);color:var(--danger);border-color:rgba(255,92,92,.25);}
.note-badge.priority-insane{background:rgba(255,88,88,.12);color:#ff8d8d;border-color:rgba(255,88,88,.3);box-shadow:none;}
.note-badge.due-overdue{background:rgba(255,92,92,.12);color:var(--danger);border-color:rgba(255,92,92,.25);}
.note-badge.due-soon{background:var(--gdim);color:var(--gold);border-color:rgba(242,212,107,.24);}
.task-priority-toggle.insane .task-priority-switch{background:rgba(255,88,88,.08);border:1px dashed rgba(255,88,88,.72);box-shadow:none;position:relative;overflow:hidden;animation:insaneSteady 1.7s ease-in-out infinite;}
.task-priority-toggle.insane .task-priority-switch::before{display:none;}
.task-priority-toggle.insane .task-priority-switch::after{left:24px;background:#ff6666;box-shadow:0 0 0 4px rgba(255,88,88,.12);}
.task-priority-toggle.insane .task-priority-pill{color:#ff8d8d;}
.note-actions{opacity:0;transition:opacity var(--d);}
.grid,.bento-grid,#grid-fav,#grid-prompts,#grid-workflows,#grid-tools,#grid-thumbs,#home-grid,#home-grid-2{content-visibility:auto;contain:layout style paint;contain-intrinsic-size:720px;}
.note-item:hover .note-actions{opacity:1;}
@keyframes insaneSteady{
  0%,100%{border-color:rgba(255,88,88,.68);box-shadow:inset 0 1px 0 rgba(255,255,255,.04);}
  50%{border-color:rgba(255,110,110,.92);box-shadow:0 0 0 1px rgba(255,88,88,.08),inset 0 1px 0 rgba(255,255,255,.06);}
}
.ctxmenu{position:fixed;z-index:740;min-width:184px;max-width:240px;padding:6px;border-radius:14px;border:1px solid rgba(255,255,255,.055);background:rgba(12,12,14,.97);backdrop-filter:blur(18px);box-shadow:0 16px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.025);display:none;flex-direction:column;gap:2px;}
.ctxmenu.on{display:flex;}
.ctxmenu-head{padding:4px 7px 6px;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);}
.ctxmenu-item{width:100%;min-height:32px;padding:0 9px;border:none;border-radius:10px;background:transparent;color:var(--text2);font:600 11px 'Geist',sans-serif;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;transition:background var(--d),color var(--d),transform var(--d);}
.ctxmenu-item:hover{background:var(--panel3);color:var(--text);transform:none;}
.ctxmenu-item.danger{color:#ffb7a9;}
.ctxmenu-item.danger:hover{background:rgba(255,120,96,.1);color:#ffd0c3;}
.ctxmenu-item.accent{color:#ff8d8d;}
.ctxmenu-item.accent:hover{background:rgba(255,88,88,.1);}
.ctxmenu-item small{font-size:9px;color:var(--text3);font-weight:600;letter-spacing:.02em;}
.ctxmenu-main{display:flex;align-items:center;gap:8px;min-width:0;flex:1;}
.ctxmenu-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:currentColor;opacity:.92;flex:0 0 auto;}
.ctxmenu-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;}
.ctxmenu-sep{height:1px;margin:3px 0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);}

html.viewport-zooming *,
html.viewport-zooming *::before,
html.viewport-zooming *::after{
  transition:none!important;
  animation:none!important;
}
html.viewport-zooming .topbar,
html.viewport-zooming .tfbar{
  position:relative!important;
  top:auto!important;
}
html.viewport-zooming #app::before,
html.viewport-zooming .lbox,
html.viewport-zooming .dropov,
html.viewport-zooming .ov,
html.viewport-zooming .confov,
html.viewport-zooming .task-ov,
html.viewport-zooming .newtag-ov,
html.viewport-zooming .talent-modal-ov,
html.viewport-zooming .mockups-preview-bar,
html.viewport-zooming .pbtn,
html.viewport-zooming .pcheck,
html.viewport-zooming .lnav,
html.viewport-zooming .ltag,
html.viewport-zooming .rth-btn,
html.viewport-zooming #selbar{
  backdrop-filter:none!important;
}
html.viewport-zooming .card,
html.viewport-zooming .tcard,
html.viewport-zooming .pcard,
html.viewport-zooming .bento,
html.viewport-zooming .grid,
html.viewport-zooming .bento-grid,
html.viewport-zooming #grid-fav,
html.viewport-zooming #grid-prompts,
html.viewport-zooming #grid-workflows,
html.viewport-zooming #grid-tools,
html.viewport-zooming #grid-thumbs,
html.viewport-zooming #home-grid,
html.viewport-zooming #home-grid-2,
html.viewport-zoomed .card,
html.viewport-zoomed .tcard,
html.viewport-zoomed .pcard,
html.viewport-zoomed .bento,
html.viewport-zoomed .grid,
html.viewport-zoomed .bento-grid,
html.viewport-zoomed #grid-fav,
html.viewport-zoomed #grid-prompts,
html.viewport-zoomed #grid-workflows,
html.viewport-zoomed #grid-tools,
html.viewport-zoomed #grid-thumbs,
html.viewport-zoomed #home-grid,
html.viewport-zoomed #home-grid-2{
  content-visibility:visible!important;
  contain:none!important;
}

/* -- LIGHT MODE: white text on blue accent backgrounds */
body.light .addbtn{color:#ffffff;}
body.light .bsave{color:#ffffff;}
body.light .gbtn{color:#ffffff;}
body.light .note-submit{color:#ffffff;}
body.light .tp-flash{color:#1A23CE!important;}
body.light .wfn{color:#1A23CE;background:rgba(15,19,92,.1);}
body.light .svn{background:rgba(15,19,92,.1);color:#1A23CE;}
body.light .ib.cp:hover{background:rgba(15,19,92,.1);color:#1A23CE;}
body.light .navbtn.on .nvcnt{color:#1A23CE;}
body.light .tpill.on{color:#1A23CE;}
body.light .note-badge.has-content{background:rgba(15,19,92,.1);border-color:rgba(15,19,92,.3);color:#1A23CE;}

body.light #boxsel{border-color:#1A23CE;background:rgba(15,19,92,.07);}
body.light .tdot{background:#1A23CE;}
body.light .cflash{background:rgba(15,19,92,.07);}
body.light .cpill{background:rgba(245,245,255,.95);color:#1A23CE;border-color:rgba(15,19,92,.25);}
body.light .rtag:hover{border-color:#1A23CE;color:#1A23CE;background:rgba(15,19,92,.07);}
body.light .addstep:hover{border-color:#1A23CE;color:#1A23CE;}
body.light .gadd:hover{border-color:#1A23CE;color:#1A23CE;}
body.light .tgadd:hover{border-color:#1A23CE;color:#1A23CE;}
body.light .tp-item:hover{background:rgba(15,19,92,.06);border-color:rgba(15,19,92,.2);}
body.light .note-drop-line{background:#1A23CE!important;}
body.light .notes-list.drag-over{background:rgba(15,19,92,.06)!important;}
body.light .pbtn{background:rgba(240,240,248,.88)!important;color:#111116!important;}
body.light .pbtn:hover{background:#fff!important;color:#111116!important;}
body.light .pbtns .pbtn{background:rgba(255,255,255,.92)!important;color:#111116!important;}
body.light .pbtns .pbtn:hover{background:#fff!important;}
body.light .pbtns .pbtn.dl:hover{background:rgba(224,53,53,.12)!important;color:#e03535!important;}
body.light .pcheck{border-color:rgba(0,0,0,.3);background:rgba(240,240,248,.7);}
body.light .pcard.sel .pcheck{background:#1A23CE;border-color:#1A23CE;}
body.light #selbar{background:#fff;border-color:#e2e2e8;}
body.light .selbtn{background:#f4f4f7;color:#111116;}
body.light .selbtn:hover{background:#ebebef;color:#111116;}
body.light .selbtn.danger:hover{background:rgba(224,53,53,.1);color:#e03535;}

body.light .lclose{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.2);color:#fff;}
body.light .lclose:hover{background:rgba(255,255,255,.25);color:#fff;}
body.light .ltag{background:rgba(0,0,0,.55);border-color:rgba(255,255,255,.15);color:rgba(255,255,255,.8);}
body.light .dropov{background:rgba(240,240,248,.9);}
body.light .dropov .dropinner{color:#1A23CE;}
body.light .selcnt{color:#505060;}
body.light .seldeselect{color:#a0a0b0;}
body.light .seldeselect:hover{background:#f4f4f7;color:#505060;}


body.light .pcheck{border-color:rgba(255,255,255,.8);background:rgba(255,255,255,.55);}
body.light .pcard.sel .pcheck{background:#1A23CE;border-color:#1A23CE;}
body.light .pcard.sel .pcheck svg{stroke:#ffffff!important;}

/* LIGHTBOX NAVIGATION */
.limg-wrap{display:flex;align-items:center;justify-content:center;max-width:calc(100vw - 140px);max-height:88vh;}
.lnav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:none;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:background var(--d),opacity var(--d);opacity:0;z-index:10;}
.lbox.on .lnav{opacity:1;}
.lnav:hover{background:rgba(255,255,255,.22);}
.lnav:active{background:rgba(255,255,255,.3);}
.lprev{left:24px;}
.lnext{right:24px;}
.lnav:disabled{opacity:.2!important;cursor:default;}
.lcounter{position:absolute;bottom:70px;left:50%;transform:translateX(-50%);font-size:11.5px;color:rgba(255,255,255,.55);font-family:"Geist Mono",monospace;letter-spacing:.05em;pointer-events:none;}

/* NEW TAG APPROVAL */
.newtag-ov{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:600;opacity:0;pointer-events:none;transition:opacity .2s;}
.newtag-ov.on{opacity:1;pointer-events:all;}
.newtag-box{background:var(--panel);border:1px solid var(--border2);border-radius:var(--rlg);width:440px;max-width:calc(100vw - 24px);box-shadow:var(--shadow);transform:translateY(10px) scale(.98);transition:transform .2s;}
.newtag-ov.on .newtag-box{transform:none;}

/* -- AI CHAT BUTTON */








body.light .bicon svg,body.light .glogo svg,body.light #loader svg{color:var(--brand);}

/* SLEEK REDESIGN */
:root{
  --bg:#050505;
  --bg2:#0a0a0a;
  --panel:#111111;
  --panel2:#181818;
  --panel3:#202020;
  --border:#242424;
  --border2:#2d2d2d;
  --text:#f4f4f1;
  --text2:#b6b6b0;
  --text3:#74746f;
  --accent:#1A23CE;
  --secondary:#0F135C;
  --adim:rgba(15,19,92,.42);
  --aglow:rgba(15,19,92,.24);
  --danger:#ff5c5c;
  --ddim:rgba(255,92,92,.11);
  --gold:#f2d46b;
  --gdim:rgba(242,212,107,.14);
  --r:12px;
  --rsm:10px;
  --rlg:18px;
  --shadow:0 10px 30px rgba(0,0,0,.26);
  --shadow-sm:0 4px 14px rgba(0,0,0,.18);
}

body.light{
  --bg:#f4f2ed;
  --bg2:#ece8e1;
  --panel:#ffffff;
  --panel2:#f7f4ef;
  --panel3:#ede8e0;
  --border:#e3ddd3;
  --border2:#d4cdc1;
  --text:#141412;
  --text2:#56544f;
  --text3:#8f8a81;
  --accent:#1A23CE;
  --secondary:#0F135C;
  --adim:rgba(15,19,92,.12);
  --aglow:rgba(15,19,92,.06);
  --danger:#d94a4a;
  --ddim:rgba(217,74,74,.10);
  --gold:#aa7c12;
  --gdim:rgba(170,124,18,.12);
  --shadow:0 10px 30px rgba(20,18,14,.08);
  --shadow-sm:0 4px 14px rgba(20,18,14,.06);
}

body{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.025), transparent 28%),
    linear-gradient(180deg, var(--bg2) 0%, var(--bg) 100%);
}

.sb,
.main,
.content{
  background:transparent;
}

.sb{
  background:rgba(8,8,8,.94);
}

body.light .sb{
  background:rgba(244,242,237,.9);
}

.topbar,
.tfbar{
  background:rgba(7,7,7,.92);
  backdrop-filter:blur(18px);
}

body.light .topbar,
body.light .tfbar{
  background:rgba(244,242,237,.88);
}

.topbar{
  padding:0 18px;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.04);
}

body.light .topbar{
  box-shadow:inset 0 -1px 0 rgba(20,18,14,.05);
}

.tfbar{
  padding:0 18px 6px;
  height:auto;
  min-height:44px;
  align-items:flex-end;
}

.content{
  padding:16px 18px 22px;
}

.sbox,
.zbtns,
.themetog,
.thtogbtn,
.navbtn.on,
.tpill,
.note-item,
.tp-item,
.stat-card,
.task-link-item,
.task-assign-sel,
.field input,
.field textarea,
.stepinp,
.tagbox,
.task-notes-inp,
.task-link-inp,
.confbox,
.modal,
.mmod,
.task-modal,
.newtag-box,
#selbar{
  border-color:var(--border);
}

.sbox,
.zbtns,
.themetog,
.thtogbtn,
.tpill,
.note-item,
.tp-item,
.stat-card,
.task-link-item,
.task-assign-sel,
.field input,
.field textarea,
.stepinp,
.tagbox,
.task-notes-inp,
.task-link-inp{
  background:var(--panel2);
}

.card,
.tcard,
.pcard,
.bento,
.modal,
.mmod,
.task-modal,
.confbox,
.newtag-box,
#selbar{
  background:var(--panel);
  border:1px solid rgba(255,255,255,.04);
  box-shadow:var(--shadow);
}

body.light .card,
body.light .tcard,
body.light .pcard,
body.light .bento,
body.light .modal,
body.light .mmod,
body.light .task-modal,
body.light .confbox,
body.light .newtag-box,
body.light #selbar{
  border-color:rgba(20,18,14,.06);
}

.card:hover,
.tcard:hover,
.pcard:hover,
.bento:hover{
  box-shadow:0 14px 36px rgba(0,0,0,.32);
}

body.light .card:hover,
body.light .tcard:hover,
body.light .pcard:hover,
body.light .bento:hover{
  box-shadow:0 14px 36px rgba(20,18,14,.1);
}

.bento.bento-shared{
  background:
  radial-gradient(circle at 10% 100%, rgba(15,19,92,.038) 0%, rgba(15,19,92,.014) 18%, transparent 38%),
  linear-gradient(180deg, rgba(15,19,92,.005) 0%, rgba(15,19,92,.0025) 100%),
  linear-gradient(180deg,var(--panel) 0%,var(--panel) 100%);
  border:1px dashed rgba(15,19,92,.13);
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,.03);
}

.bento.bento-shared:hover{
  border-color:rgba(15,19,92,.16);
  box-shadow:0 14px 36px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.03);
}

body.light .bento.bento-shared{
  border-color:rgba(15,19,92,.14);
  box-shadow:0 12px 28px rgba(20,18,14,.08), inset 0 1px 0 rgba(255,255,255,.7);
}

.navbtn,
.sbtog,
.zbtn,
.themetog,
.thtogbtn,
.ib,
.tb2,
.note-btn,
.task-mclose,
.mclose,
.mx,
.bento-action,
.seldeselect{
  border:none;
}

.navbtn{
  border-radius:10px;
  color:var(--text2);
}

.navbtn:hover{
  background:var(--panel2);
}

.navbtn.on{
  background:var(--panel2);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.045);
}

body.light .navbtn.on{
  box-shadow:inset 0 0 0 1px rgba(20,18,14,.06);
}

.navbtn.on::after{
  width:4px;
  height:18px;
  left:2px;
}

.nvcnt,
.note-badge,
.tp-tag,
.ctag,
.rtag,
.ltag{
  background:var(--panel3);
  border-color:transparent;
}

.tpill{
  padding:5px 11px;
  background:var(--panel2);
  color:var(--text2);
  border:1px solid transparent;
}

.tpill:hover{
  background:var(--panel3);
  color:var(--text);
}

.tpill.on{
  background:var(--adim);
  border-color:rgba(15,19,92,.28);
}

body.light .tpill.on{
  border-color:rgba(15,19,92,.24);
}

.sbox,
.zbtns,
.themetog,
.thtogbtn{
  border:1px solid transparent;
}

.sbox:focus-within,
.themetog:hover,
.thtogbtn:hover,
.zbtn:hover{
  background:var(--panel3);
}

.addbtn,
.bsave,
.gbtn,
.note-submit{
  box-shadow:none;
}

.addbtn{
  height:34px;
  padding:0 15px;
  border-radius:11px;
}

.gadd,
.tgadd,
.addstep,
.uz,
.task-img-add,
.note-add{
  background:rgba(255,255,255,.012);
  border-color:var(--border);
}

body.light .gadd,
body.light .tgadd,
body.light .addstep,
body.light .uz,
body.light .task-img-add,
body.light .note-add{
  background:rgba(20,18,14,.018);
}

.note-add:focus-within,
.uz:hover,
.gadd:hover,
.tgadd:hover,
.addstep:hover,
.task-img-add:hover{
  border-color:var(--accent);
  background:var(--aglow);
}

.bento-h,
.mh,
.mfoot,
.task-mh,
.task-mfoot{
  border-color:rgba(255,255,255,.05);
}

body.light .bento-h,
body.light .mh,
body.light .mfoot,
body.light .task-mh,
body.light .task-mfoot{
  border-color:rgba(20,18,14,.06);
}

.bento-h{
  padding:15px 16px 10px;
}

.bento-body{
  padding:0 16px 14px;
}

.dash{
  gap:16px;
  padding:18px 18px 24px;
}

.dash-time{
  background:var(--panel);
  border-color:rgba(255,255,255,.05);
}

body.light .dash-time{
  border-color:rgba(20,18,14,.06);
}

.stat-card{
  border:1px solid transparent;
}

.note-item,
.tp-item,
.task-link-item{
  border:1px solid transparent;
}

.note-item:hover,
.tp-item:hover{
  background:var(--panel3);
  border-color:rgba(255,255,255,.045);
}

body.light .note-item:hover,
body.light .tp-item:hover{
  border-color:rgba(20,18,14,.06);
}

.cbody,
.pfoot{
  padding-left:12px;
  padding-right:12px;
}

.cfoot{
  padding:6px 10px 10px;
}

.pbtn,
.rth-btn{
  background:rgba(8,8,8,.72);
  border:1px solid rgba(255,255,255,.06);
}

body.light .pbtn,
body.light .rth-btn{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(20,18,14,.06);
}

.lclose,
.lnav{
  background:rgba(15,15,15,.8);
  border:1px solid rgba(255,255,255,.08);
}

body.light .lclose,
body.light .lnav{
  background:rgba(255,255,255,.8);
  color:#141412;
  border-color:rgba(20,18,14,.08);
}

.dropov{
  background:rgba(5,5,5,.82);
}

body.light .dropov{
  background:rgba(244,242,237,.88);
}

/* POLISH V2 */
#app{
  position:relative;
}

#app::before{
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 14% 10%, var(--aglow), transparent 26%),
    radial-gradient(circle at 85% 0%, rgba(255,255,255,.03), transparent 24%);
  opacity:.9;
  z-index:0;
}

.sb,
.main,
.topbar,
.tfbar,
.content{
  position:relative;
  z-index:1;
}

.topbar{
  position:sticky;
  top:0;
  z-index:40;
}

.tfbar{
  position:sticky;
  top:54px;
  z-index:35;
}

.tbleft{
  letter-spacing:-.04em;
}

.sbox{
  width:280px;
  min-height:36px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}

body.light .sbox{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

.sbox input{
  font-size:12.5px;
}

.sbox input::placeholder{
  letter-spacing:.01em;
}

.zbtn,
.themetog,
.thtogbtn,
.note-submit,
.addbtn,
.bghst,
.bsave,
.boutl,
.bcanc,
.bdel,
.selbtn,
.seldeselect,
.ib,
.tb2,
.pbtn,
.rth-btn,
.note-btn,
.task-mclose,
.mclose,
.mx,
.navbtn,
.tp-item,
.note-item,
.tcard,
.card,
.pcard,
.bento,
.tpill{
  transition:
    transform .22s var(--ease),
    background .18s var(--ease),
    border-color .18s var(--ease),
    box-shadow .22s var(--ease),
    color .18s var(--ease),
    opacity .18s var(--ease);
}

.addbtn:hover,
.bsave:hover,
.selbtn:hover,
.zbtn:hover,
.themetog:hover,
.thtogbtn:hover,
.bghst:hover,
.boutl:hover,
.bcanc:hover{
  transform:translateY(-1px);
}

.navbtn:hover,
.tp-item:hover,
.note-item:hover,
.ib:hover,
.tb2:hover,
.pbtn:hover,
.rth-btn:hover{
  transform:translateY(-1px);
}

.card:hover,
.tcard:hover,
.pcard:hover,
.bento:hover{
  transform:translateY(-2px);
}

.panel{
  display:none;
  opacity:0;
  transform:translateY(8px);
}

.panel.on{
  display:block;
  opacity:1;
  transform:none;
  animation:panelIn .34s var(--ease);
}

@keyframes panelIn{
  from{opacity:0;transform:translateY(10px);}
  to{opacity:1;transform:none;}
}

@keyframes riseFade{
  from{opacity:0;transform:translateY(14px) scale(.985);}
  to{opacity:1;transform:none;}
}

.animate-in{
  opacity:0;
  animation:riseFade .42s var(--ease) forwards;
  animation-delay:calc(var(--stagger, 0) * 28ms);
}

.empty-state{
  grid-column:1/-1;
  min-height:280px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
}

.empty-card{
  width:min(460px,100%);
  padding:28px 26px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01));
  border:1px solid rgba(255,255,255,.05);
  text-align:center;
  box-shadow:var(--shadow-sm);
}

body.light .empty-card{
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.65));
  border-color:rgba(20,18,14,.06);
}

.empty-icon{
  width:52px;
  height:52px;
  margin:0 auto 16px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--panel2);
  color:var(--accent);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  font-size:22px;
}

body.light .empty-icon{
  box-shadow:inset 0 0 0 1px rgba(20,18,14,.05);
}

.empty-title{
  font-size:15px;
  font-weight:600;
  color:var(--text);
  margin-bottom:6px;
  letter-spacing:-.02em;
}

.empty-copy{
  font-size:12.5px;
  color:var(--text2);
  line-height:1.65;
  max-width:34ch;
  margin:0 auto;
}

.toast{
  min-width:220px;
  border-radius:14px;
  padding:11px 16px;
  backdrop-filter:blur(16px);
  background:rgba(17,17,17,.92);
  border-color:rgba(255,255,255,.06);
}

body.light .toast{
  background:rgba(255,255,255,.88);
  border-color:rgba(20,18,14,.08);
}

.tdot{
  box-shadow:0 0 0 6px var(--aglow);
}

.tp-empty{
  padding:24px 0;
  font-size:12.5px;
}

.note-add,
.tagbox,
.field input,
.field textarea,
.task-link-inp,
.task-notes-inp,
.stepinp,
.task-assign-sel{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}

body.light .note-add,
body.light .tagbox,
body.light .field input,
body.light .field textarea,
body.light .task-link-inp,
body.light .task-notes-inp,
body.light .stepinp,
body.light .task-assign-sel{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

input:focus-visible,
textarea:focus-visible,
button:focus-visible,
select:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px var(--aglow);
}

.content::-webkit-scrollbar{
  width:8px;
}

.content::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.09);
  border-radius:999px;
}

body.light .content::-webkit-scrollbar-thumb{
  background:rgba(20,18,14,.12);
}

.access-role.talent{color:var(--accent);border-color:rgba(15,19,92,.14);background:rgba(15,19,92,.07);}
#panel-mockups{height:calc(100dvh - 132px);min-height:0;overflow:hidden;}
#panel-mockups.on{display:block;}
#mockups-root{height:100%;min-height:0;overflow:hidden;}
.mockups-shell{display:grid;grid-template-columns:minmax(320px,360px) minmax(0,1fr) minmax(260px,300px);gap:20px;height:100%;min-height:0;align-items:stretch;overflow:hidden;}
.mockups-shell>*{min-width:0;min-height:0;}
#mockup-preview-slot{height:100%;min-height:0;overflow:hidden;}
.mockups-panel{background:linear-gradient(180deg,rgba(255,255,255,.015),transparent 24%),var(--panel);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-sm);padding:16px;display:flex;flex-direction:column;gap:14px;min-height:0;overflow:hidden;}
.mockups-panel.preview{padding:0;background:transparent;border:none;box-shadow:none;height:100%;display:flex;flex-direction:column;min-height:0;overflow:hidden;}
.mockups-panel.settings{padding:14px 14px 16px;}
.mockups-controls,.mockups-settings-stack{display:flex;flex-direction:column;gap:14px;min-height:0;height:100%;overflow:auto;scrollbar-width:none;}
.mockups-controls::-webkit-scrollbar,.mockups-settings-stack::-webkit-scrollbar{display:none;}
.mockups-settings-stack{gap:12px;}
.mockups-settings-section{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:18px;background:var(--panel2);border:1px solid var(--border);}
.mockups-settings-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.mockups-settings-kicker,.mockups-field-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);}
.mockups-settings-copy{font-size:11px;line-height:1.55;color:var(--text3);}
.mockups-field{display:flex;flex-direction:column;gap:7px;}
.mockups-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.mockups-limit-note{display:none;font-size:10px;font-weight:600;letter-spacing:.04em;color:#f5c842;white-space:nowrap;flex-shrink:0;}
.mockups-limit-note.on{display:block;}
.mockups-input,.mockups-select,.mockups-textarea,.mockups-mini-input{width:100%;border:1px solid var(--border);background:var(--panel2);color:var(--text);outline:none;transition:border-color var(--d),background var(--d),color var(--d);font-family:'Geist',sans-serif;}
.mockups-input,.mockups-select,.mockups-mini-input{height:44px;border-radius:14px;padding:0 13px;font-size:12px;line-height:1.2;}
.mockups-textarea{min-height:92px;border-radius:16px;padding:13px 13px;font-size:13px;line-height:1.45;resize:none;}
.mockups-input:focus,.mockups-select:focus,.mockups-textarea:focus,.mockups-mini-input:focus{border-color:var(--accent);background:var(--panel);}
.mockups-upload-grid{display:grid;grid-template-columns:1fr;gap:10px;}
.mockups-upload-grid.multi{grid-template-columns:repeat(2,minmax(0,1fr));}
.mockups-upload-grid.dual{grid-template-columns:repeat(2,minmax(0,1fr));}
.mockups-upload-grid.concept{grid-template-columns:repeat(3,minmax(0,1fr));}
.mockups-upload-grid.concept-four{grid-template-columns:repeat(2,minmax(0,1fr));}
.mockups-upload-slot{display:flex;flex-direction:column;gap:7px;}
.mockups-upload-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.mockups-upload-index{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);}
.mockups-upload{position:relative;border:1px solid var(--border);border-radius:18px;aspect-ratio:16/9;min-height:0;background:var(--panel2);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;}
.mockups-upload.drag-over{border-color:rgba(255,255,255,.62);background:var(--panel3);box-shadow:0 0 0 3px rgba(255,255,255,.10),0 14px 28px rgba(0,0,0,.26);}
.mockups-upload.drag-over::after{content:'Drop here';position:absolute;inset:8px;border-radius:14px;border:1px dashed rgba(255,255,255,.46);background:rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;letter-spacing:.02em;backdrop-filter:blur(2px);pointer-events:none;z-index:4;}
.mockups-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.mockups-upload-empty{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text3);text-align:center;padding:22px;}
.mockups-upload-icon{width:40px;height:40px;border-radius:14px;border:1px solid var(--border);background:var(--panel3);display:flex;align-items:center;justify-content:center;color:var(--accent);}
.mockups-upload-title{font-size:12px;font-weight:600;color:var(--text);}
.mockups-upload img{width:100%;height:100%;object-fit:cover;display:block;}
.mockups-upload-clear{position:absolute;right:10px;top:10px;width:34px;height:34px;border:none;border-radius:12px;background:rgba(13,13,15,.86);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3;box-shadow:0 8px 20px rgba(0,0,0,.3);transition:transform var(--d),background var(--d);}
.mockups-upload-clear:hover{transform:translateY(-1px);background:#101012;}
.mockups-row{display:grid;grid-template-columns:108px minmax(0,1fr);gap:10px;}
.mockups-age-row{display:grid;grid-template-columns:72px minmax(94px,1fr);gap:8px;align-items:stretch;}
.mockups-search-wrap{position:relative;}
.mockups-search-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;}
.mockups-search-bar:not(.has-clear){grid-template-columns:minmax(0,1fr) auto;}
.mockups-search-clear{width:42px;height:42px;border-radius:12px;border:1px solid var(--border);background:var(--panel2);color:var(--text3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);}
.mockups-search-clear:hover{background:var(--panel3);border-color:var(--border2);color:var(--text);}
.mockups-channel-rail{display:flex;flex-direction:column;gap:10px;}
.mockups-channel-group{display:flex;flex-direction:column;gap:8px;}
.mockups-channel-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);}
.mockups-channel-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(54px,1fr));justify-content:stretch;gap:12px 10px;padding:2px 0 4px;}
.mockups-channel-pill{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;min-width:0;border:none;background:none;color:var(--text3);cursor:pointer;padding:0;transition:transform var(--d),color var(--d);}
.mockups-channel-pill:hover{transform:translateY(-1px);color:var(--text);}
.mockups-channel-pill.on .mockups-channel-pill-avatar{border-color:rgba(255,255,255,.30);box-shadow:0 0 0 3px rgba(255,255,255,.08);}
.mockups-channel-pill-avatar{width:44px;height:44px;border-radius:999px;object-fit:cover;border:2px solid transparent;background:var(--panel3);}
.mockups-channel-pill-name{max-width:100%;font-size:10px;line-height:1.15;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.mockups-channel-empty{display:flex;align-items:center;justify-content:center;min-height:64px;padding:0 14px;border-radius:16px;border:1px dashed var(--border);background:var(--panel2);font-size:11px;color:var(--text3);}
.mockups-settings-btn,.mockups-search-btn,.mockups-btn,.mockups-template-card,.mockups-count-chip,.mockups-mode-option{min-height:42px;padding:0 15px;border-radius:12px;border:1px solid var(--border);background:var(--panel2);color:var(--text2);font-size:11.5px;font-weight:600;font-family:'Geist',sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;line-height:1;transition:all var(--d);}
.mockups-settings-btn:hover,.mockups-search-btn:hover,.mockups-btn:hover,.mockups-template-card:hover,.mockups-count-chip:hover,.mockups-mode-option:hover{background:var(--panel3);border-color:var(--border2);color:var(--text);}
.mockups-btn.primary{background:var(--accent);border-color:var(--accent);color:#ffffff;}
.mockups-btn.primary:hover{filter:brightness(1.04);}
.mockups-channel-avatar{width:34px;height:34px;border-radius:999px;object-fit:cover;background:var(--panel3);border:1px solid var(--border);}
.mockups-channel-star{width:28px;height:28px;border-radius:999px;border:1px solid var(--border);background:var(--panel3);color:var(--text3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--d);}
.mockups-channel-star:hover{color:var(--accent);border-color:rgba(15,19,92,.22);}
.mockups-channel-star.on{color:var(--text);border-color:rgba(255,255,255,.12);background:var(--panel3);}
.mockups-selected{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:var(--panel2);}
.mockups-selected-meta{display:flex;align-items:center;gap:10px;min-width:0;flex:1;}
.mockups-selected-info{min-width:0;display:flex;align-items:center;justify-content:flex-start;flex:1;}
.mockups-selected-name{display:flex;align-items:center;justify-content:flex-start;gap:6px;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;min-width:0;}
.mockups-selected-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.mockups-verified{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;}
.mockups-age-select{position:relative;min-width:0;}
.mockups-age-btn{width:100%;min-width:0;height:44px;border-radius:14px;border:1px solid var(--border);background:var(--panel2);color:var(--text);padding:0 12px;display:flex;align-items:center;justify-content:space-between;font-family:'Geist',sans-serif;font-size:11.5px;cursor:pointer;gap:8px;}
.mockups-age-btn:hover{border-color:var(--border2);background:var(--panel);}
.mockups-age-menu{position:absolute;right:0;left:auto;width:100%;min-width:0;top:calc(100% + 8px);padding:5px;border-radius:14px;border:1px solid var(--border2);background:linear-gradient(180deg,var(--panel) 0%,var(--bg2) 100%);box-shadow:0 18px 42px rgba(0,0,0,.3);display:flex;flex-direction:column;gap:2px;z-index:18;}
.mockups-age-option{min-height:30px;padding:0 10px;border:none;border-radius:10px;background:transparent;color:var(--text2);font-size:11px;font-family:'Geist',sans-serif;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;}
.mockups-age-option:hover,.mockups-age-option.on{background:var(--panel2);color:var(--text);}
.mockups-actions{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8px;justify-content:stretch;margin-top:auto;padding-top:4px;}
.mockups-actions.single{grid-template-columns:1fr;}
.mockups-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.mockups-template-card{aspect-ratio:1/1;min-height:unset;height:auto;padding:10px;justify-content:center;align-items:center;flex-direction:column;gap:0;text-align:center;border-radius:16px;}
.mockups-template-card.on{border-color:rgba(255,255,255,.10);background:var(--panel3);color:var(--text);}
.mockups-template-title{font-size:11.5px;font-weight:650;color:var(--text);line-height:1.18;white-space:normal;}
.mockups-template-copy{display:none;}
.mockups-count-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.mockups-count-row.concept{grid-template-columns:repeat(3,minmax(0,1fr));}
.mockups-count-chip.on{border-color:rgba(255,255,255,.10);background:var(--panel3);color:var(--text);}
.mockups-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.mockups-subscriber-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:center;}
.mockups-mode-segment{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border-radius:16px;border:1px solid var(--border);background:var(--panel3);}
.mockups-mode-option{min-height:38px;border:none;background:transparent;color:var(--text3);gap:7px;}
.mockups-mode-option.on{background:var(--panel);color:var(--text);box-shadow:0 10px 24px rgba(0,0,0,.18);}
.mockups-mode-option svg{flex-shrink:0;}
.mockups-stage{flex:1 1 0;min-height:0;border-radius:24px;background:transparent;display:flex;align-items:center;justify-content:center;padding:4px 0;overflow:hidden;position:relative;touch-action:none;}
.mockups-stage.space-ready{cursor:grab;}
.mockups-stage.panning{cursor:grabbing;}
.mockups-stage.drag-over::before{content:'';position:absolute;inset:12px;border-radius:22px;border:2px dashed rgba(255,255,255,.42);background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 18px 40px rgba(0,0,0,.18);pointer-events:none;z-index:3;}
.mockups-stage.drag-over::after{content:'Drop to fill the next mockup slot';position:absolute;left:50%;bottom:22px;transform:translateX(-50%);padding:9px 14px;border-radius:999px;background:rgba(18,18,18,.92);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:11.5px;font-weight:700;box-shadow:0 12px 24px rgba(0,0,0,.28);pointer-events:none;z-index:4;}
.mockups-canvas-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0 8px;overflow:hidden;}
.mockups-canvas-frame{width:min(100%,860px);height:auto;display:flex;align-items:center;justify-content:center;flex:0 0 auto;position:relative;transform-origin:center center;will-change:transform;}
.mockups-canvas{width:100%;height:100%;display:block;max-width:none;background:transparent;aspect-ratio:768/620;position:relative;z-index:1;}
.mockups-canvas-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;z-index:0;opacity:1;transition:opacity .14s ease;}
.mockups-canvas-fallback.done{opacity:0;}
.mockups-preview-actions{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:0 18px 14px;margin-top:0;flex-shrink:0;}
.mockups-preview-bar{display:grid;grid-template-columns:auto 1fr 1fr;gap:10px;min-width:min(100%,520px);padding:8px;border-radius:18px;border:1px solid rgba(255,255,255,.06);background:rgba(18,18,18,.9);box-shadow:0 20px 40px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.03);backdrop-filter:blur(10px);}
.mockups-preview-bar .mockups-btn{min-height:44px;border-radius:13px;padding:0 16px;gap:9px;font-size:12px;}
.mockups-preview-bar .mockups-btn svg{flex-shrink:0;}
.mockups-preview-bar .mockups-btn.primary{box-shadow:0 8px 22px rgba(15,19,92,.18);}
.mockups-preview-bar .mockups-btn.view-reset{min-width:44px;padding:0 13px;}
.mockups-preview-bar .mockups-btn:disabled{cursor:default;filter:none;}
.mockups-modal-copy{font-size:12px;line-height:1.65;color:var(--text2);}
.mockups-modal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;}
.mockups-modal-grid .field{gap:7px;}
.mockups-settings-note{font-size:10.5px;color:var(--text3);line-height:1.55;}
.mockups-modal-grid .field input,
.mockups-modal-grid .field select{height:44px;border-radius:14px;padding:0 13px;background:var(--panel2);border:1px solid var(--border);color:var(--text);font-family:'Geist',sans-serif;font-size:12px;outline:none;}
.mockups-modal-grid .field input:focus,
.mockups-modal-grid .field select:focus{border-color:var(--accent);background:var(--panel);}
.mockups-modal-copy{font-size:12px;line-height:1.65;color:var(--text2);}
.mockups-modal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;}
.mockups-modal-grid .field{gap:7px;}
.mockups-settings-note{font-size:10.5px;color:var(--text3);line-height:1.55;}
.mockups-modal-grid .field input,
.mockups-modal-grid .field select{height:44px;border-radius:14px;padding:0 13px;background:var(--panel2);border:1px solid var(--border);color:var(--text);font-family:'Geist',sans-serif;font-size:12px;outline:none;}
.mockups-modal-grid .field input:focus,
.mockups-modal-grid .field select:focus{border-color:var(--accent);background:var(--panel);}
@media (max-width: 1360px){
  .mockups-shell{grid-template-columns:minmax(300px,340px) minmax(0,1fr) minmax(230px,270px);}
}
@media (max-width: 1180px){
  .mockups-shell{grid-template-columns:minmax(0,1fr);height:auto;min-height:auto;overflow:visible;}
  .mockups-panel.preview{min-height:520px;}
  .mockups-upload-grid.dual{grid-template-columns:1fr;}
}
.talent-shell{display:flex;flex-direction:column;gap:14px;height:calc(100dvh - 126px);min-height:calc(100dvh - 126px);overflow:hidden;}
.talent-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;flex-shrink:0;}
.talent-toolbar-group{display:flex;align-items:center;gap:8px;min-width:0;overflow:auto;scrollbar-width:none;}
.talent-toolbar-group::-webkit-scrollbar{display:none;}
.talent-toolbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.talent-filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--text2);font-size:11.5px;font-weight:500;font-family:'Geist',sans-serif;cursor:pointer;transition:border-color var(--d),background var(--d),color var(--d),transform var(--d);white-space:nowrap;}
.talent-filter-chip:hover{border-color:var(--border2);background:var(--panel2);color:var(--text);}
.talent-filter-chip.on{border-color:rgba(255,255,255,.10);background:var(--panel3);color:var(--text);}
.talent-filter-chip-count{font-size:10px;color:var(--text3);padding:2px 6px;border-radius:999px;background:var(--panel2);border:1px solid var(--border);}
.talent-filter-chip.on .talent-filter-chip-count{color:var(--text2);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.10);}
.talent-filter-chip img,.talent-filter-avatar{width:20px;height:20px;border-radius:999px;object-fit:cover;flex-shrink:0;background:var(--panel3);border:1px solid var(--border);display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--accent);}
.talent-stage{display:grid;grid-template-columns:minmax(0,1.36fr) minmax(280px,.8fr);gap:16px;flex:1;min-height:0;}
.talent-queue-sections{display:flex;flex-direction:column;gap:14px;min-height:0;overflow:auto;padding-right:2px;flex:1;}
.talent-queue-sections::-webkit-scrollbar{width:0;height:0;}
.talent-section-block{display:flex;flex-direction:column;gap:10px;}
.talent-section-block .talent-task-list{overflow:visible;flex:0 0 auto;padding-right:0;}
.talent-section-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);padding:0 2px;}
.talent-section-label strong{font-weight:700;color:var(--text3);}
.talent-section-count{font-size:10px;color:var(--text3);padding:2px 6px;border-radius:999px;border:1px solid var(--border);background:var(--panel2);}
.talent-kicker,.talent-pane-kicker{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);}
.talent-pane{background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 65%),var(--panel);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow-sm);padding:16px;display:flex;flex-direction:column;gap:14px;min-height:0;overflow:hidden;}
.talent-pane-head,.talent-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0;}
.talent-pane-head > div{min-width:0;}
.talent-pane-title{font-size:18px;font-weight:600;letter-spacing:-.05em;line-height:1.05;}
.talent-pane-copy{margin-top:4px;font-size:11px;color:var(--text3);line-height:1.55;max-width:42ch;}
.talent-pane-count{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:30px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--panel2);font-size:11px;font-weight:600;color:var(--text2);}
.talent-task-list,.talent-roster-list,.talent-comments,.talent-feedback-list{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto;padding-right:2px;flex:1;}
.talent-task-list::-webkit-scrollbar,.talent-roster-list::-webkit-scrollbar,.talent-comments::-webkit-scrollbar,.talent-feedback-list::-webkit-scrollbar,.talent-toolbar-group::-webkit-scrollbar{width:0;height:0;}
.talent-task-card,.talent-roster-item,.talent-feedback-item{width:100%;border:none;background:var(--panel2);border:1px solid var(--border);border-radius:16px;padding:12px;cursor:pointer;color:var(--text);text-align:left;transition:transform var(--d),border-color var(--d),background var(--d),box-shadow var(--d);}
.talent-task-card:hover,.talent-roster-item:hover,.talent-feedback-item:hover{transform:translateY(-1px);border-color:var(--border2);background:var(--panel);}
.talent-task-card.on,.talent-roster-item.on,.talent-feedback-item.on{border-color:rgba(255,255,255,.09);background:var(--panel2);}
.talent-task-card{display:flex;flex-direction:column;gap:10px;}
.talent-task-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.talent-task-title{font-size:13px;font-weight:600;line-height:1.35;}
.talent-task-copy{font-size:11px;color:var(--text2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.talent-task-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:10.5px;color:var(--text3);}
.talent-meta-pill{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--panel3);font-size:10px;color:var(--text3);}
.talent-roster-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;}
.talent-roster-meta{min-width:0;display:flex;flex-direction:column;gap:3px;}
.talent-roster-name{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.talent-roster-sub{font-size:10.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.talent-roster-badge{min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:var(--panel3);border:1px solid var(--border);display:grid;place-items:center;font-size:10.5px;color:var(--text2);}
.talent-feedback-item{display:flex;flex-direction:column;gap:8px;cursor:pointer;}
.talent-feedback-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10.5px;color:var(--text3);}
.talent-feedback-task{font-size:12px;font-weight:600;color:var(--text);}
.talent-feedback-text{font-size:11px;line-height:1.58;color:var(--text2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.talent-feedback-meta{font-size:10.5px;color:var(--text3);}
.talent-status-row{display:flex;flex-wrap:wrap;gap:8px;}
.talent-status-pill,.talent-priority-pill,.talent-due-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel2);font-size:10.5px;font-weight:600;color:var(--text2);}
.talent-status-pill{cursor:pointer;transition:all var(--d);}
.talent-status-pill:hover{border-color:var(--border2);color:var(--text);}
.talent-status-pill.progress{color:#1A23CE;border-color:rgba(15,19,92,.2);background:rgba(15,19,92,.08);}
.talent-status-pill.submitted{color:var(--accent);border-color:rgba(15,19,92,.18);background:rgba(15,19,92,.08);}
.talent-status-pill.revision{color:#ffb15f;border-color:rgba(255,177,95,.22);background:rgba(255,177,95,.08);}
.talent-status-pill.approved{color:#78e5a1;border-color:rgba(120,229,161,.22);background:rgba(120,229,161,.08);}
.talent-status-pill.on{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 11%,transparent);}
.talent-status-row.static .talent-status-pill{cursor:default;}
.talent-priority-pill{color:#ffb7a9;border-color:rgba(255,151,127,.18);background:rgba(255,120,96,.08);}
.talent-due-pill{color:var(--text3);}
.talent-modal-ov{position:fixed;inset:0;background:rgba(0,0,0,.66);backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;z-index:520;opacity:0;pointer-events:none;transition:opacity .22s var(--ease);}
.talent-modal-ov.on{opacity:1;pointer-events:all;}
.talent-modal{width:min(960px,calc(100vw - 24px));max-height:calc(100vh - 26px);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 26%),var(--panel);border:1px solid var(--border2);border-radius:24px;box-shadow:0 24px 90px rgba(0,0,0,.44);display:flex;flex-direction:column;overflow:hidden;transform:translateY(10px) scale(.985);transition:transform .22s var(--ease);}
.talent-modal-ov.on .talent-modal{transform:none;}
.talent-modal-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border);flex-shrink:0;}
.talent-modal-label{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text3);}
.talent-modal-close{width:30px;height:30px;border:none;border-radius:10px;background:transparent;color:var(--text3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--d);}
.talent-modal-close:hover{background:var(--panel2);color:var(--text);}
.talent-modal-scroll{padding:18px;overflow:auto;display:flex;flex-direction:column;gap:14px;}
.talent-detail-card{display:flex;flex-direction:column;gap:14px;}
.talent-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
.talent-detail-sub{margin-top:6px;font-size:11px;color:var(--text3);}
.talent-detail-actions,.talent-submit-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.talent-create-btn,.talent-save-btn,.talent-delete-btn,.talent-mini-btn{border:none;border-radius:12px;font-family:'Geist',sans-serif;font-size:11.5px;font-weight:600;cursor:pointer;transition:all var(--d);}
.talent-create-btn,.talent-save-btn{height:38px;padding:0 14px;background:var(--accent);color:#ffffff;}
.talent-create-btn:hover,.talent-save-btn:hover{filter:brightness(1.05);}
.talent-delete-btn{height:38px;padding:0 12px;background:transparent;color:#ffb7a9;border:1px solid rgba(255,151,127,.18);}
.talent-delete-btn:hover{background:rgba(255,120,96,.08);}
.talent-save-btn[disabled]{opacity:.36;filter:none;cursor:default;pointer-events:none;}
.talent-mini-btn{height:32px;padding:0 11px;background:var(--panel2);color:var(--text2);border:1px solid var(--border);}
.talent-mini-btn:hover{background:var(--panel3);border-color:var(--border2);color:var(--text);}
.talent-mini-btn.solid{background:var(--panel3);color:var(--text);}
.talent-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.72fr) auto auto;gap:12px;}
.talent-field{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--text3);}
.talent-field.full{grid-column:1/-1;}
.talent-field span{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text3);}
.talent-field input,.talent-field textarea,.talent-field select,.talent-link-add input,.talent-comment-box textarea,.talent-submit-box textarea{width:100%;background:var(--panel2);border:1px solid var(--border);border-radius:14px;color:var(--text);font-family:'Geist',sans-serif;font-size:12px;outline:none;transition:border-color var(--d),background var(--d);}
.talent-field input,.talent-field select,.talent-link-add input{height:42px;padding:0 13px;}
.talent-field textarea,.talent-comment-box textarea,.talent-submit-box textarea{padding:13px;resize:vertical;line-height:1.55;min-height:112px;}
.talent-field input:focus,.talent-field textarea:focus,.talent-field select:focus,.talent-link-add input:focus,.talent-comment-box textarea:focus,.talent-submit-box textarea:focus{border-color:var(--border2);background:var(--panel);}
.talent-check{justify-content:flex-end;min-width:112px;}
.talent-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent);}
.talent-section-card{background:var(--panel2);border:1px solid var(--border);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:12px;}
.talent-section-title{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);}
.talent-section-copy{font-size:11px;color:var(--text3);line-height:1.5;max-width:54ch;}
.talent-empty-inline{font-size:11.5px;color:var(--text3);padding:8px 2px;}
.talent-links-list{display:flex;flex-direction:column;gap:8px;}
.talent-link-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:14px;}
.talent-link-row a{font-size:11.5px;color:var(--text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.talent-link-add{display:flex;gap:8px;}
.talent-reference-grid,.talent-submission-grid,.talent-upload-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;}
.talent-reference-card,.talent-submission-image,.talent-preview-card{display:flex;flex-direction:column;gap:8px;}
.talent-reference-card img,.talent-submission-image img,.talent-preview-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;border:1px solid var(--border);background:var(--panel);}
.talent-upload-tile{border:1.5px dashed var(--border2);border-radius:16px;min-height:120px;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(180deg,rgba(255,255,255,.014),transparent);color:var(--text3);font-size:11.5px;font-weight:600;cursor:pointer;transition:all var(--d);}
.talent-upload-tile:hover{border-color:var(--accent);color:var(--accent);background:var(--aglow);}
.talent-upload-tile.wide{min-height:74px;}
.talent-upload-tile input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.talent-submission-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:10px;}
.talent-submission-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.talent-submission-title{font-size:12px;font-weight:600;}
.talent-submission-copy,.talent-submission-meta,.talent-submission-note{font-size:11px;color:var(--text2);line-height:1.5;}
.talent-comment{padding:12px;border-radius:16px;background:var(--panel);border:1px solid var(--border);display:flex;flex-direction:column;gap:7px;}
.talent-comment.talent{border-color:rgba(15,19,92,.14);background:linear-gradient(180deg,rgba(15,19,92,.04),transparent 70%),var(--panel);}
.talent-comment.system{background:transparent;border-style:dashed;color:var(--text3);}
.talent-comment-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10.5px;color:var(--text3);}
.talent-comment-name{font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.talent-comment-text{font-size:11.5px;line-height:1.6;color:var(--text);}
.talent-comment-box,.talent-submit-box{display:flex;flex-direction:column;gap:10px;}
.talent-empty,.talent-empty-detail{display:grid;place-items:center;min-height:100%;}

.navbtn.on,
.zbtn.on,
.thtogbtn.on,
.tpill.on,
.mtmini.on,
.mockups-template-card.on,
.mockups-count-chip.on,
.mockups-mode-option.on,
.mockups-age-option.on,
.talent-filter-chip.on,
.talent-status-pill.on{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),#242427;
  border-color:rgba(255,255,255,.145);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 10px 22px rgba(0,0,0,.20);
}

.talent-task-card.on,
.talent-roster-item.on,
.talent-feedback-item.on,
.mockups-selected{
  background:#242427;
  border-color:rgba(255,255,255,.13);
  border-style:solid;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(0,0,0,.16);
}

.navbtn.on::after{
  background:rgba(255,255,255,.36);
  box-shadow:none;
}

.navbtn.on .nvcnt,
.talent-filter-chip.on .talent-filter-chip-count{
  background:rgba(255,255,255,.105);
  border-color:rgba(255,255,255,.13);
  color:var(--text);
}

.mockups-mode-option.on{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),#242427;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 24px rgba(0,0,0,.22);
}

.mockups-channel-pill.on .mockups-channel-pill-avatar{
  border-color:rgba(255,255,255,.30);
  box-shadow:0 0 0 3px rgba(255,255,255,.08);
}

.mockups-channel-star.on{
  color:var(--text);
  border-color:rgba(255,255,255,.12);
  background:var(--panel3);
}

.mockups-verified{
  vertical-align:middle;
}

body.light .navbtn.on,
body.light .zbtn.on,
body.light .thtogbtn.on,
body.light .tpill.on,
body.light .mtmini.on,
body.light .mockups-template-card.on,
body.light .mockups-count-chip.on,
body.light .mockups-mode-option.on,
body.light .mockups-age-option.on,
body.light .talent-filter-chip.on,
body.light .talent-status-pill.on{
  background:#ffffff;
  border-color:rgba(20,18,14,.14);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(20,18,14,.08);
}

body.light .talent-task-card.on,
body.light .talent-roster-item.on,
body.light .talent-feedback-item.on,
body.light .mockups-selected{
  background:#ffffff;
  border-color:rgba(20,18,14,.12);
  border-style:solid;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(20,18,14,.07);
}

body.light .navbtn.on .nvcnt,
body.light .talent-filter-chip.on .talent-filter-chip-count{
  background:rgba(20,18,14,.055);
  border-color:rgba(20,18,14,.08);
  color:var(--text2);
}

body.light .mockups-channel-star.on{
  background:#e9e9ec;
  border-color:rgba(20,18,14,.12);
}

@media (max-width: 980px){
  html,body{overflow:auto;}
  #app{height:auto;min-height:100%;}
  .sb{width:var(--sbc);}
  .sbtog{display:none;}
  .bname,.sblabel,.nvlbl,.nvcnt{display:none!important;}
  .brand,.sbh{justify-content:center;}
  .sbnav{padding:6px 0 0;}
  .navbtn{justify-content:center;padding:10px 0;width:var(--sbc);gap:0;border-radius:0;}
  .navbtn.on::after{display:none;}
  .main{min-width:0;}
  .topbar{height:auto;min-height:54px;flex-wrap:wrap;padding:10px 12px;gap:8px;}
  .tbcenter{order:3;flex:1 0 100%;justify-content:stretch;}
  .tbright{flex-wrap:wrap;justify-content:flex-start;width:100%;}
  .sbox{width:100%;}
  .tfbar{padding:0 12px;height:auto;min-height:40px;}
  .content{padding:12px;}
  .dash{grid-template-columns:1fr;padding:8px 0 18px;}
  .dash-tasks-row{grid-template-columns:1fr;gap:12px;}
  .dash-lower-row{grid-template-columns:1fr;gap:12px;}
  .notes-list{max-height:none;min-height:180px;}
  .task-modal,.modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px);}
  .task-mbody{padding:14px;}
  .task-mfoot{padding:12px 14px;flex-direction:column;align-items:stretch;}
  .task-meta-grid{width:100%;}
  .task-side-actions{padding-left:0;justify-content:flex-end;}
  .task-date-pop{left:0;right:auto;width:min(280px,calc(100vw - 32px));}
  .bgrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;}
  .tgrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))!important;}
  .pgrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;}
  .mockups-shell{grid-template-columns:1fr;min-height:auto;}
  .mockups-stage{min-height:520px;padding:2px 0;}
  .mockups-modal-grid{grid-template-columns:1fr;}
  .talent-shell{height:auto;min-height:0;overflow:visible;}
  .talent-stage{grid-template-columns:1fr;}
  .talent-pane{min-height:280px;}
  .talent-form-grid{grid-template-columns:1fr 1fr;}
  .talent-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px);}
  .talent-modal-scroll{padding:16px;}
  .talent-field.full{grid-column:1/-1;}
}

@media (max-width: 640px){
  .topbar{padding:10px;}
  .content{padding:10px;}
  .dash-time{display:none;}
  .bento-h{padding:12px 12px 8px;}
  .bento-body{padding:0 12px 12px;}
  .note-add{padding:8px;}
  .task-imgs{grid-template-columns:1fr;}
  .task-date-btn{min-width:0;width:100%;}
  .task-meta-grid{flex-direction:column;align-items:stretch;}
  .task-priority-toggle{justify-content:flex-start;}
  .zbtns{display:none!important;}
  .addbtn{padding:0 12px;}
  .mockups-panel{padding:14px;}
  .mockups-stage{padding:0;min-height:360px;}
  .mockups-settings-btn,.mockups-search-btn,.mockups-btn{min-height:40px;}
  .mockups-row,.mockups-age-row{grid-template-columns:1fr;}
  .mockups-actions{grid-template-columns:1fr;}
  .talent-toolbar{flex-direction:column;align-items:stretch;}
  .talent-toolbar-actions{justify-content:flex-end;}
  .talent-form-grid,
  .talent-reference-grid,
  .talent-submission-grid,
  .talent-upload-preview{grid-template-columns:1fr;}
  .talent-detail-head,
  .talent-pane-head,
  .talent-link-row,
  .talent-submission-head,
  .talent-modal-bar{flex-direction:column;align-items:flex-start;}
  .talent-link-add{flex-direction:column;}
}

@media (prefers-reduced-motion: reduce){
  .animate-in,
  .panel.on{
    animation:none !important;
    opacity:1 !important;
    transform:none !important;
  }

  .card,
  .tcard,
  .pcard,
  .bento,
  .navbtn,
  .tp-item,
  .note-item,
  .zbtn,
  .themetog,
  .thtogbtn,
  .addbtn,
  .bghst,
  .bsave,
  .selbtn,
  .ib,
  .tb2,
  .pbtn{
    transition:none !important;
    transform:none !important;
  }
}

.note-inp:focus-visible,
.task-title-inp:focus-visible{
  box-shadow:none !important;
}
