: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);
}

/* V18 - performance containment */
#panel-prompts .card,
#panel-workflows .card,
#panel-tools .tcard,
#panel-thumbnails .pcard{
  content-visibility:auto;
  contain:layout style paint;
  contain-intrinsic-size:auto 300px;
}
#panel-thumbnails .pcard{
  contain-intrinsic-size:auto 245px;
}

/* V22 - bounded library rendering */
.library-load-sentinel{
  grid-column:1/-1;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#55555a;
  font-size:10px;
  letter-spacing:0;
}
.library-load-sentinel button{
  height:28px;
  padding:0 11px;
  border:0;
  border-radius:6px;
  background:#171718;
  color:#929297;
  font:550 10px 'Geist',sans-serif;
  cursor:pointer;
  transition:background .12s ease,color .12s ease;
}
.library-load-sentinel button:hover{background:#202021;color:#e7e7e9;}
body.light .library-load-sentinel{color:#929297;}
body.light .library-load-sentinel button{background:#e8e8eb;color:#55555b;}
body.light .library-load-sentinel button:hover{background:#dddde1;color:#171719;}
#panel-prompts .cthumb,
#panel-workflows .cthumb,
#panel-tools .ss,
#panel-thumbnails .pimg{
  backface-visibility:hidden;
}

/* -- 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: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:16px;animation:fu .32s var(--ease) both;width:min(392px,100%);padding:28px 26px;border-radius:18px;background:var(--panel);border:1px solid var(--border);box-shadow:0 24px 64px rgba(0,0,0,.28);}
@keyframes fu{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
.glogo{display:flex;align-items:center;justify-content:center;margin-bottom:4px;}
.glogo svg{color:var(--brand);}
.gtitle{font-size:22px;font-weight:600;letter-spacing:0;text-align:center;}
.gdesc{font-size:12.5px;color:var(--text2);margin-top:-5px;line-height:1.55;text-align:center;max-width:310px;}
.gstate{display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--panel2);border:1px solid var(--border);font-size:11px;color:var(--text2);}
.gstate.ok{color:#78bd8a;border-color:rgba(120,189,138,.2);background:rgba(120,189,138,.07);}
.gstate.attention{color:var(--text2);border-color:var(--border2);background:var(--panel2);}
.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%;min-height:42px;padding:10px 14px;background:var(--accent);color:#ffffff;font-size:13px;font-weight:600;font-family:'Geist',sans-serif;border:1px solid transparent;border-radius:9px;cursor:pointer;transition:filter var(--d),transform var(--d),opacity var(--d),background var(--d),border-color var(--d);display:flex;align-items:center;justify-content:center;gap:8px;}
.gbtn:hover{filter:brightness(1.08);}
.gbtn:active{transform:translateY(1px);}
.gbtn:disabled{cursor:default;opacity:.62;filter:none;transform:none;}
.gbtn.loading::before{content:'';width:13px;height:13px;border-radius:999px;border:1.5px solid rgba(255,255,255,.38);border-top-color:#fff;animation:spin .75s linear infinite;}
.gerr{font-size:11.5px;color:var(--danger);text-align:center;min-height:18px;transition:color var(--d),opacity var(--d);}
.gerr.ok{color:#78bd8a;}
.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(--text2);border-color:var(--border);}
.gbtn.subtle:hover{filter:none;background:var(--panel3);}
.gacct{display:flex;align-items:center;gap:11px;padding:11px 12px;background:var(--panel2);border:1px solid var(--border);border-radius:11px;width:100%;}
.gacct img,.gacct-avatar{width:34px;height:34px;border-radius:999px;object-fit:cover;background:var(--panel3);flex:0 0 auto;}
.gacct-avatar{display:flex;align-items:center;justify-content:center;color:var(--text2);font-size:12px;font-weight:600;}
.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:310px;}
@media(max-width:520px){
  #gate{padding:14px;}
  .gi{padding:24px 18px;border-radius:14px;}
  .gauth-row{flex-direction:column;}
}
.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:var(--panel2);border:1px solid var(--border);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px;transition:border-color var(--d),background var(--d);}
.access-card:hover{border-color:var(--border2);}
.access-card.pending{border-color:var(--border2);background: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(--text2);background:var(--panel);border-color:var(--border2);}
.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;
}

/* V7 PRODUCT SYSTEM ------------------------------------------------------- */
:root{
  --bg:#08090b;
  --bg2:#0c0d10;
  --panel:#111216;
  --panel2:#17181c;
  --panel3:#202126;
  --border:#26272d;
  --border2:#383942;
  --text:#f4f4f5;
  --text2:#a1a1aa;
  --text3:#696a73;
  --adim:rgba(26,35,206,.14);
  --aglow:rgba(26,35,206,.08);
  --r:8px;
  --rsm:7px;
  --rlg:8px;
  --sbw:224px;
  --shadow:0 14px 38px rgba(0,0,0,.28);
  --shadow-sm:0 8px 24px rgba(0,0,0,.18);
}

body.light{
  --bg:#f5f5f6;
  --bg2:#efeff1;
  --panel:#ffffff;
  --panel2:#f5f5f6;
  --panel3:#ebebee;
  --border:#dedee3;
  --border2:#c9c9d0;
  --text:#151519;
  --text2:#555660;
  --text3:#8a8b94;
}

body,
body.light{
  background:var(--bg);
  letter-spacing:0;
}

#app::before{display:none;}
.sb,.main,.content,.topbar,.tfbar{background:var(--bg);}
.sb{
  background:#0a0b0d;
  border-right:1px solid var(--border);
}
body.light .sb{background:#f8f8f9;}
.sbh{
  height:58px;
  padding:12px 14px;
  border-bottom:1px solid var(--border);
}
.bname{font-size:13px;font-weight:600;letter-spacing:0;}
.sbnav{padding:10px 9px 0;}
.sblabel{padding:11px 9px 6px;font-size:9px;font-weight:600;color:var(--text3);}
.navbtn{
  min-height:36px;
  padding:0 10px;
  border-radius:7px;
  color:var(--text2);
}
.navbtn:hover{background:var(--panel2);transform:none;}
.navbtn.on{
  background:var(--panel3);
  color:var(--text);
  box-shadow:inset 0 0 0 1px var(--border2);
}
.navbtn.on::after{display:none;}
.navbtn.on .nvcnt,
.nvcnt{
  background:transparent;
  border:0;
  color:var(--text3);
  padding:0;
}
.navbtn.on .nvcnt{color:var(--text2);}
.sbfoot{
  padding:10px;
  border-top:1px solid var(--border);
  background:#0a0b0d;
}
body.light .sbfoot{background:#f8f8f9;}
.sbaccount{
  min-height:44px;
  padding:6px 8px;
  border-radius:8px;
  background:var(--panel);
}
.sbaccount-avatar{width:30px;height:30px;}
.themetog{border-radius:7px;}

.topbar{
  position:relative;
  height:58px;
  padding:0 18px;
  background:var(--bg2);
  border-bottom:1px solid var(--border);
  box-shadow:none;
  backdrop-filter:none;
}
.tbleft{font-size:14px;font-weight:600;letter-spacing:0;}
.sbox{
  width:min(320px,32vw);
  min-height:34px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--panel);
  box-shadow:none;
}
.sbox:focus-within{border-color:var(--border2);background:var(--panel2);}
.tbright{gap:7px;}
.zbtns{gap:1px;padding:2px;border-radius:7px;background:var(--panel);border-color:var(--border);}
.zbtn,.thtogbtn,.themetog{border-radius:6px;}
.zbtn.on,.thtogbtn.on{
  background:var(--panel3);
  border-color:var(--border2);
  color:var(--text);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.addbtn,.bsave,.gbtn,.mockups-btn.primary{
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
}
.addbtn{height:34px;border-radius:7px;padding:0 13px;}
.addbtn:hover,.bsave:hover,.gbtn:hover{transform:none;filter:brightness(1.08);}
.tfbar{
  position:relative;
  top:auto;
  min-height:42px;
  padding:7px 18px;
  align-items:center;
  background:var(--bg2);
  border-bottom:1px solid var(--border);
}
.tpill{
  min-height:26px;
  padding:0 9px;
  border-radius:6px;
  background:transparent;
  border:1px solid transparent;
  color:var(--text3);
}
.tpill:hover{background:var(--panel2);border-color:var(--border);color:var(--text2);}
.tpill.on{
  background:var(--panel3);
  border-color:var(--border2);
  color:var(--text);
  box-shadow:none;
}

.content{padding:16px 18px 20px;background:var(--bg);}
.panel.on{animation:panelIn .18s ease-out;}
.bgrid{grid-template-columns:repeat(auto-fill,minmax(var(--cm,245px),1fr));gap:10px;}
.tgrid{grid-template-columns:repeat(auto-fill,minmax(var(--cm,220px),1fr));gap:10px;}
.pgrid{gap:10px;}
.card,.tcard,.pcard,.bento{
  border:1px solid var(--border);
  border-radius:8px;
  background:var(--panel);
  box-shadow:none;
}
.card:hover,.tcard:hover,.pcard:hover,.bento:hover{
  transform:none;
  border-color:var(--border2);
  box-shadow:var(--shadow-sm);
}
.gadd,.tgadd{
  min-height:150px;
  border:1px dashed var(--border2);
  border-radius:8px;
  background:transparent;
}
.gadd:hover,.tgadd:hover{background:var(--panel);border-color:var(--text3);color:var(--text2);}
.gring{border-style:solid;border-color:var(--border2);}

/* Compact text-first prompt cards: no empty media block. */
.prompt-card{height:174px;}
.prompt-card.has-media .cthumb{height:92px;aspect-ratio:auto;}
.prompt-card.text-only .cbody{padding:14px;}
.prompt-card.text-only .ctitle{font-size:14px;line-height:1.35;min-height:0;margin-bottom:9px;}
.prompt-card.text-only .ctitle{padding-right:88px;}
.prompt-card.text-only .cprev{
  font-family:'Geist',sans-serif;
  font-size:11.5px;
  line-height:1.55;
  color:var(--text2);
  -webkit-line-clamp:6;
}
.prompt-card.has-media .cbody{padding:11px 12px 12px;}
.cthumb,.cph,.pimgw{border-bottom:1px solid var(--border);}
.cfoot,.pbtns{opacity:1;}
.cfoot{top:8px;right:8px;}
.ib,.tb2{background:transparent;color:var(--text3);}
.cfoot .ib,.pbtn{
  background:rgba(10,11,13,.88);
  border:1px solid rgba(255,255,255,.08);
}
.prompt-card.text-only .cfoot .ib{
  background:var(--panel2);
  border-color:var(--border);
}
.ctag,.note-badge,.tp-tag,.ltag{
  border-radius:5px;
  background:var(--panel2);
  border:1px solid var(--border);
}
.pfoot{padding:7px 9px 9px;}
.ptags{gap:4px;max-height:45px;overflow:hidden;}
.pcard.sel,.pcard.selpreview{
  outline:1px solid var(--text);
  outline-offset:-1px;
  box-shadow:0 0 0 3px rgba(255,255,255,.08);
}
.pcard.sel .pcheck,.note-cb.done{
  background:var(--text);
  border-color:var(--text);
  color:var(--bg);
}
.pcheck{border-radius:5px;}

/* Home: dense operational boards with clear hierarchy. */
.dash{gap:12px;padding:2px 0 8px;}
.dash-tasks-row,.dash-lower-row{gap:12px;}
.bento.bento-shared,
body.light .bento.bento-shared{
  background:var(--panel);
  border:1px solid var(--border);
  box-shadow:none;
}
.bento-h{min-height:42px;padding:0 13px;border-bottom:1px solid var(--border);}
.bento-title{font-size:10px;color:var(--text2);}
.bento-body{padding:10px 10px 11px;}
.notes-list{gap:4px;min-height:240px;max-height:390px;margin-bottom:8px;}
.note-item{
  min-height:34px;
  padding:7px 8px;
  border-radius:6px;
  background:transparent;
  border:1px solid transparent;
}
.note-item:hover{transform:none;background:var(--panel2);border-color:var(--border);}
.note-text{font-size:12px;}
.note-cb{width:16px;height:16px;border-radius:4px;}
.note-add{min-height:36px;padding:6px 8px;border-radius:6px;background:var(--panel2);border:1px solid var(--border);}
.note-add:focus-within{background:var(--panel2);border-color:var(--border2);}
.note-submit{width:22px;height:22px;border-radius:5px;background:var(--panel3);border:1px solid var(--border2);color:var(--text);}
.note-submit.note-submit-subtle{background:var(--panel3);border:1px solid var(--border2);color:var(--text);}
.tp-list{gap:4px;}
.tp-item{min-height:38px;padding:6px 8px;border-radius:6px;background:transparent;}
.tp-item:hover{transform:none;background:var(--panel2);}
.dash-time{border-radius:6px;background:var(--panel);}

/* Task details become a stable right-side working drawer. */
.task-ov{
  align-items:stretch;
  justify-content:flex-end;
  padding:12px;
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(6px);
}
.task-modal{
  width:min(640px,calc(100vw - 24px));
  max-width:none;
  height:calc(100dvh - 24px);
  max-height:none;
  overflow:hidden;
  border-radius:10px;
  border:1px solid var(--border2);
  background:var(--panel);
  box-shadow:-18px 0 54px rgba(0,0,0,.38);
  transform:translateX(24px);
}
.task-ov.on .task-modal{transform:none;}
.task-mh{min-height:64px;padding:0 18px;border-bottom:1px solid var(--border);}
.task-title-inp{font-size:16px;font-weight:600;letter-spacing:0;}
.task-mbody{padding:16px 18px;gap:12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border2) transparent;}
.task-mbody::-webkit-scrollbar{width:6px;}
.task-mbody::-webkit-scrollbar-thumb{background:var(--border2);border-radius:6px;}
.task-section{padding:13px;border-radius:8px;background:var(--panel2);border:1px solid var(--border);}
.task-notes-inp{min-height:92px;line-height:1.6;}
.task-img-item,.task-img-add,.task-link-item,.task-link-inp,.task-date-btn{border-radius:7px;}
.task-mfoot{padding:12px 18px;background:var(--panel);border-top:1px solid var(--border);}
.task-save{border-radius:7px;}

/* Modal and settings surfaces share one restrained language. */
.ov,.confov{background:rgba(0,0,0,.7);backdrop-filter:blur(6px);}
.modal,.mmod,.confbox,.newtag-box{
  border-radius:10px;
  border-color:var(--border2);
  box-shadow:var(--shadow);
}
.mh{min-height:54px;padding:0 16px;}
.mbody{padding:15px 16px;}
.mfoot{padding:11px 16px;}
.field input,.field textarea,.tagbox,.stepinp,.bghst,.bsave,.boutl,.bcanc,.bdel{border-radius:7px;}
.field input:focus,.field textarea:focus,.stepinp:focus,.ginput:focus{
  border-color:var(--border2);
  box-shadow:0 0 0 3px rgba(255,255,255,.04);
}

/* Mockups: fixed workspace geometry, visible neutral states, no decoration. */
#panel-mockups{height:calc(100dvh - 92px);}
.mockups-shell{gap:12px;grid-template-columns:minmax(300px,340px) minmax(360px,1fr) minmax(240px,270px);}
.mockups-panel{
  padding:12px;
  gap:11px;
  border-radius:10px;
  background:var(--panel);
  border:1px solid var(--border);
  box-shadow:none;
}
.mockups-panel.preview{border:0;background:transparent;}
.mockups-settings-section{
  gap:9px;
  padding:10px;
  border-radius:8px;
  background:var(--panel);
  border:1px solid var(--border);
}
.mockups-upload,.mockups-input,.mockups-select,.mockups-textarea,.mockups-mini-input,
.mockups-settings-btn,.mockups-search-btn,.mockups-btn,.mockups-template-card,
.mockups-count-chip,.mockups-mode-option,.mockups-selected,.mockups-age-btn,
.mockups-search-clear,.mockups-channel-empty{
  border-radius:7px;
}
.mockups-upload{background:var(--panel2);}
.mockups-upload-icon{border-radius:7px;color:var(--text2);}
.mockups-template-grid{gap:6px;}
.mockups-template-card{border-color:var(--border);background:var(--panel2);}
.mockups-template-card.on,.mockups-count-chip.on,.mockups-mode-option.on,.mockups-age-option.on{
  background:var(--panel3);
  border-color:var(--border2);
  color:var(--text);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.mockups-mode-segment{padding:3px;gap:3px;border-radius:8px;background:var(--panel2);}
.mockups-mode-option.on{background:var(--panel3);}
.mockups-stage{border-radius:10px;background:#0a0b0d;}
.mockups-preview-actions{padding:0 10px 8px;}
.mockups-preview-bar{
  border-radius:9px;
  border:1px solid var(--border2);
  background:var(--panel);
  box-shadow:var(--shadow-sm);
  backdrop-filter:none;
}
.mockups-preview-bar .mockups-btn{border-radius:7px;}

@media(max-width:1180px){
  .mockups-shell{grid-template-columns:minmax(270px,310px) minmax(320px,1fr) minmax(220px,245px);}
  .mockups-panel{padding:10px;}
  .dash-tasks-row,.dash-lower-row{grid-template-columns:1fr 1fr;}
  .dash-tasks-row>.bento:last-child{grid-column:1/-1;}
  .dash-lower-row #dash-prompts-box,.dash-lower-row .dash-mutual-box{grid-column:span 1;}
}

@media(max-width:980px){
  .topbar{position:relative;}
  .tfbar{position:relative;top:auto;}
  .task-ov{padding:8px;}
  .task-modal{width:min(640px,calc(100vw - 16px));height:calc(100dvh - 16px);}
  #panel-mockups{height:auto;}
  .mockups-shell{grid-template-columns:1fr;overflow:visible;}
  .mockups-panel.preview{min-height:500px;}
}

@media(max-width:640px){
  :root{--sbc:52px;}
  .topbar{padding:8px 10px;}
  .content{padding:10px;}
  .dash-tasks-row,.dash-lower-row{grid-template-columns:1fr;}
  .dash-tasks-row>.bento:last-child,
  .dash-lower-row #dash-prompts-box,
  .dash-lower-row .dash-mutual-box{grid-column:1;}
  .notes-list{min-height:160px;max-height:320px;}
  .task-ov{padding:0;}
  .task-modal{width:100vw;height:100dvh;border-radius:0;border-width:0 0 0 1px;}
  .task-mh{padding:0 13px;}
  .task-mbody{padding:13px;}
  .bgrid{grid-template-columns:1fr!important;}
}

/* V8 SOFT SURFACE REFINEMENT --------------------------------------------- */
:root{
  --bg:#0f1013;
  --bg2:#0f1013;
  --panel:#15161a;
  --panel2:#1a1b20;
  --panel3:#222329;
  --border:rgba(255,255,255,.055);
  --border2:rgba(255,255,255,.10);
  --text:#eeeeef;
  --text2:#9798a1;
  --text3:#60616a;
  --shadow:0 16px 44px rgba(0,0,0,.22);
  --shadow-sm:0 10px 30px rgba(0,0,0,.16);
}

body.light{
  --bg:#f3f3f5;
  --bg2:#f3f3f5;
  --panel:#ffffff;
  --panel2:#f7f7f8;
  --panel3:#ededf0;
  --border:rgba(16,16,20,.055);
  --border2:rgba(16,16,20,.11);
  --text:#18181c;
  --text2:#5c5d65;
  --text3:#92939b;
}

.sb{
  background:#0a0b0d;
  border-right:0;
}
body.light .sb{background:#eaeaed;}
.main,.content,.topbar,.tfbar{background:var(--bg);}

.sbh{
  height:62px;
  padding:14px 15px;
  border-bottom:0;
}
.sbnav{padding:12px 10px 0;}
.sblabel{padding:12px 9px 7px;color:#565861;}
.navbtn{
  min-height:38px;
  padding:0 11px;
  color:#858790;
}
.navbtn:hover{background:rgba(255,255,255,.035);}
.navbtn.on{
  background:#1a1b20;
  box-shadow:none;
  color:#f2f2f3;
}
body.light .navbtn.on{background:#ffffff;color:var(--text);box-shadow:none;}
.nvi{opacity:.52;}
.navbtn.on .nvi,.navbtn:hover .nvi{opacity:.88;}

/* Give the signed-in account and sync state a full-width, calm footer. */
.sbfoot{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  padding:12px 10px 11px;
  border-top:0;
  background:#0a0b0d;
}
body.light .sbfoot{background:#eaeaed;}
.sbaccount{
  width:100%;
  min-height:54px;
  padding:9px 10px;
  gap:11px;
  background:#15161a;
  border:0;
  border-radius:8px;
}
body.light .sbaccount{background:#ffffff;}
.sbaccount-avatar{width:34px;height:34px;}
.sbaccount-meta{gap:3px;flex:1;}
.sbaccount-name{font-size:12.5px;}
.sbaccount-sub{font-size:10.5px;overflow:visible;text-overflow:clip;}
.sbfoot-actions{
  width:100%;
  display:flex;
  justify-content:flex-end;
  gap:6px;
  padding:0 2px;
}
.sbfoot .themetog{
  width:34px;
  height:30px;
  background:transparent;
  border:0;
  color:#666872;
}
.sbfoot .themetog:hover{background:#17181c;color:var(--text2);}

.topbar{
  height:62px;
  padding:0 20px;
  background:var(--bg);
  border-bottom:0;
}
.tfbar{
  min-height:40px;
  padding:3px 20px 7px;
  background:var(--bg);
  border-bottom:0;
}
.content{padding:17px 20px 24px;}
.sbox{
  background:#15161a;
  border-color:transparent;
}
.sbox:focus-within{background:#191a1f;border-color:transparent;box-shadow:0 0 0 1px var(--border2);}
.zbtns,.thtogbtn,.themetog{
  background:transparent;
  border-color:transparent;
}
.zbtns{padding:1px;}
.zbtn:hover,.thtogbtn:hover,.themetog:hover{background:var(--panel2);border-color:transparent;}
.zbtn.on,.thtogbtn.on{
  background:var(--panel3);
  border-color:transparent;
  box-shadow:none;
}
.tpill{color:var(--text3);}
.tpill:hover{border-color:transparent;background:var(--panel2);}
.tpill.on{border-color:transparent;background:var(--panel3);box-shadow:none;}

/* Surfaces separate through tone and spacing, not outlines. */
.card,.tcard,.pcard,.bento{
  background:var(--panel);
  border-color:transparent;
  box-shadow:none;
}
.card:hover,.tcard:hover,.pcard:hover,.bento:hover{
  border-color:transparent;
  box-shadow:0 12px 30px rgba(0,0,0,.15);
}
.bento.bento-shared,
body.light .bento.bento-shared{
  background:var(--panel);
  border-color:transparent;
}
.bento-h{
  min-height:46px;
  padding:2px 15px 0;
  border-bottom:0;
}
.bento-body{padding:8px 12px 13px;}
.dash{gap:14px;padding-top:4px;}
.dash-tasks-row,.dash-lower-row{gap:14px;}
.notes-list{padding:1px 0;}
.note-item{padding:7px 8px;}
.note-item:hover{background:rgba(255,255,255,.035);border-color:transparent;}
.note-add{
  min-height:38px;
  padding:7px 9px;
  background:#191a1f;
  border-color:transparent;
}
.note-add:focus-within{background:#1d1e23;border-color:transparent;box-shadow:0 0 0 1px var(--border2);}
.note-submit,.note-submit.note-submit-subtle{
  background:#24252a;
  border-color:transparent;
}
.tp-item{padding:7px 9px;}
.tp-item:hover{background:rgba(255,255,255,.035);}
.dash-time{background:#15161a;border-color:transparent;}

.gadd,.tgadd{
  border-color:rgba(255,255,255,.085);
  background:transparent;
}
.gadd:hover,.tgadd:hover{
  border-color:rgba(255,255,255,.17);
  background:rgba(255,255,255,.018);
}
.gring{border-color:rgba(255,255,255,.12);}
.cthumb,.cph,.pimgw{border-bottom:0;}
.ctag,.note-badge,.tp-tag,.ltag{
  background:#1d1e23;
  border-color:transparent;
  color:#777983;
}

/* Keep card actions contextual so the gallery stays visually quiet. */
.cfoot,.pbtns,.tbtns{
  opacity:0;
  pointer-events:none;
  transform:translateY(-2px);
  transition:opacity .16s ease,transform .16s ease;
}
.card:hover .cfoot,.card:focus-within .cfoot,
.pcard:hover .pbtns,.pcard:focus-within .pbtns,
.tcard:hover .tbtns,.tcard:focus-within .tbtns{
  opacity:1;
  pointer-events:auto;
  transform:none;
}
.cfoot .ib,.pbtn,.prompt-card.text-only .cfoot .ib{
  background:rgba(13,14,17,.82);
  border-color:rgba(255,255,255,.07);
  box-shadow:0 5px 14px rgba(0,0,0,.18);
}
body.light .cfoot .ib,
body.light .pbtn,
body.light .prompt-card.text-only .cfoot .ib{
  background:rgba(255,255,255,.9);
  border-color:rgba(16,16,20,.06);
}

.pcard.sel,.pcard.selpreview{
  outline:0;
  box-shadow:0 0 0 2px rgba(255,255,255,.13),0 12px 30px rgba(0,0,0,.15);
}

/* Dialogs and the task drawer retain structure without stacked boxes. */
.task-modal,.modal,.mmod,.confbox,.newtag-box{
  background:#131418;
  border-color:rgba(255,255,255,.07);
}
.task-mh,.task-mfoot,.mh,.mfoot{border-color:rgba(255,255,255,.045);}
.task-section{
  background:#18191e;
  border-color:transparent;
}
.task-link-item,.task-link-inp,.task-date-btn{border-color:transparent;}
.task-img-add{border-color:rgba(255,255,255,.09);background:#18191e;}

.mockups-panel{
  background:#141519;
  border-color:transparent;
  box-shadow:none;
}
.mockups-settings-section{
  background:#191a1f;
  border-color:transparent;
}
.mockups-template-card,.mockups-count-chip,.mockups-selected,
.mockups-input,.mockups-select,.mockups-textarea,.mockups-mini-input,
.mockups-age-btn,.mockups-search-clear{
  border-color:transparent;
  background:#1d1e23;
}
.mockups-template-card.on,.mockups-count-chip.on,.mockups-mode-option.on,.mockups-age-option.on{
  background:#27282e;
  border-color:transparent;
  box-shadow:none;
}
.mockups-preview-bar{
  background:rgba(20,21,25,.92);
  border-color:rgba(255,255,255,.06);
  box-shadow:0 15px 36px rgba(0,0,0,.22);
}

@media(hover:none){
  .cfoot,.pbtns,.tbtns{opacity:1;pointer-events:auto;transform:none;}
}

@media(max-width:980px){
  .sbfoot{padding:10px 7px;}
  .sb.col .sbaccount{justify-content:center;padding:7px;}
  .sb.col .sbaccount-meta,.sb.col .sbfoot-actions{display:none;}
}

/* V9 DARK, CENTERED AND PERFORMANCE-FOCUSED ------------------------------ */
:root{
  --bg:#0B0D11;
  --bg2:#0B0D11;
  --panel:#11141a;
  --panel2:#161a21;
  --panel3:#1d222b;
  --border:rgba(255,255,255,.045);
  --border2:rgba(255,255,255,.085);
  --text:#f0f1f2;
  --text2:#9297a1;
  --text3:#5c626d;
  --sbw:244px;
  --sbc:58px;
  --shadow:0 18px 50px rgba(0,0,0,.28);
  --shadow-sm:0 8px 22px rgba(0,0,0,.14);
}

body,.main,.content,.topbar,.tfbar{background:#0B0D11;}
.sb,.sbfoot{background:#07090d;}
.topbar,.tfbar{background:#0B0D11;}

/* A useful, compact footer in both sidebar states. */
.sbfoot{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  padding:10px 11px;
}
.sbaccount{
  width:100%;
  min-width:0;
  min-height:48px;
  padding:7px 8px;
  gap:9px;
  background:#11141a;
  border:0;
}
.sbaccount-avatar{width:32px;height:32px;}
.sbaccount-meta{min-width:0;}
.sbaccount-sub{overflow:hidden;text-overflow:ellipsis;}
.sbfoot-actions{width:auto;gap:3px;padding:0;}
.sbfoot .themetog{width:30px;height:30px;border-radius:7px;}

aside.sb.col .sbfoot{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:7px!important;
  padding:10px 0!important;
}
aside.sb.col .sbaccount{
  width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:5px!important;
  border-radius:8px!important;
  background:#11141a!important;
}
aside.sb.col .sbaccount-avatar{width:30px!important;height:30px!important;}
aside.sb.col .sbfoot-actions{
  display:flex!important;
  flex-direction:column!important;
  width:auto!important;
  gap:3px!important;
  padding:0!important;
}
aside.sb.col .sbfoot .themetog{
  display:flex!important;
  width:34px!important;
  height:30px!important;
  border-radius:7px!important;
}

/* Task create and edit return to a centered, stable dialog. */
.task-ov{
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(3,4,6,.72);
  backdrop-filter:none;
}
.task-modal{
  width:720px;
  max-width:calc(100vw - 40px);
  height:auto;
  max-height:90vh;
  overflow-y:auto;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.075);
  box-shadow:0 24px 70px rgba(0,0,0,.44);
  transform:translateY(8px) scale(.985);
  scrollbar-width:thin;
  scrollbar-color:#303640 transparent;
}
.task-modal::-webkit-scrollbar{width:6px;}
.task-modal::-webkit-scrollbar-track{background:transparent;}
.task-modal::-webkit-scrollbar-thumb{background:#2b3039;border-radius:999px;}
.task-modal::-webkit-scrollbar-thumb:hover{background:#3a414d;}
.task-ov.on .task-modal{transform:none;}
.task-mbody{overflow:visible;}

/* Every prompt keeps the same genuine 16:9 media area. */
.prompt-card{height:auto;}
.prompt-card.has-media .cthumb,
.prompt-card .cph{
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  object-fit:cover;
  flex:0 0 auto;
}
.prompt-card.text-only .cbody,
.prompt-card.has-media .cbody{padding:11px 12px 12px;}
.prompt-card.text-only .ctitle{
  padding-right:0;
  font-size:12.5px;
  min-height:34px;
  margin-bottom:5px;
}
.prompt-card.text-only .cprev{-webkit-line-clamp:2;}
.prompt-placeholder{
  background:#151922;
  color:#3d4552;
}

/* Remove paint-heavy effects from the interactions used all day. */
.card:hover,.tcard:hover,.pcard:hover,.bento:hover{box-shadow:none;}
.pcard:hover .pimg,.rth-item:hover img{transform:none;}
.cfoot .ib,.pbtn,.pcheck,.rth-btn,
.ctxmenu,.lbox,.dropov,.ov,.confov,#selbar,
.mockups-preview-bar,.task-ov{
  backdrop-filter:none!important;
}
.drag-ghost{
  border-radius:8px;
  transform:translate3d(0,0,0);
  box-shadow:0 14px 34px rgba(0,0,0,.32);
  opacity:.92;
}
body.dragging *,body.boxselecting *{transition:none!important;animation:none!important;}
.card,.tcard,.pcard,.bento,.note-item,.tp-item,.pimg,.rth-item img{
  will-change:auto;
}
.card,.tcard,.pcard,.bento{transition:background .12s ease,border-color .12s ease;}
.note-item,.tp-item{transition:background .12s ease,color .12s ease;}
.sb{transition:width .18s cubic-bezier(.2,.8,.2,1);}

@media(max-width:640px){
  .task-ov{padding:0;}
  .task-modal{
    width:100vw;
    max-width:none;
    height:100dvh;
    max-height:none;
    border:0;
    border-radius:0;
  }
}

@media(max-width:980px){
  aside.sb.col .sbfoot-actions{display:flex!important;}
}

/* V10 NEUTRAL SURFACES AND COMPACT ACCOUNT FOOTER ----------------------- */
:root{
  --panel:#111216;
  --panel2:#15161a;
  --panel3:#1a1b20;
  --text:#f1f1f2;
  --text2:#9699a1;
  --text3:#626670;
  --border:rgba(255,255,255,.05);
  --border2:rgba(255,255,255,.09);
}

/* Keep the task workspace neutral and avoid nested blue-tinted inputs. */
.task-modal,
.task-mh,
.task-mbody,
.task-mfoot{background:#111216;}
.task-mh,.task-mfoot{border-color:rgba(255,255,255,.055);}
.task-section{
  background:#15161a;
  border-color:transparent;
}
.task-notes-inp{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}
.task-link-inp,
.task-link-item,
.task-date-btn,
.task-date-native{
  background:#111216;
  border-color:rgba(255,255,255,.055);
  box-shadow:none;
}
.task-link-inp:focus,
.task-notes-inp:focus,
.task-date-btn:hover,
.task-date-wrap.open .task-date-btn{
  background:#121317;
  border-color:rgba(255,255,255,.11);
  box-shadow:none;
}
.task-img-add{
  background:#121316;
  border-color:rgba(255,255,255,.105);
}
.task-img-add-icon{background:#0d0e11;border-color:rgba(255,255,255,.055);}
.task-title-inp::placeholder,
.task-notes-inp::placeholder,
.task-link-inp::placeholder{color:#666972;}

/* The creation tile follows the grid row instead of overflowing its column. */
.pgrid>.tgadd{
  width:100%;
  height:auto;
  min-height:176px;
  aspect-ratio:auto;
  align-self:stretch;
  justify-self:stretch;
  box-sizing:border-box;
}

/* Thumbnail metadata should support the image, not compete with it. */
.pcard .ctag{
  background:#17181c;
  color:#5d6068;
  opacity:.72;
}
.pcard:hover .ctag,.pcard:focus-within .ctag{opacity:.84;}
.prompt-placeholder{background:#15161a;color:#41444b;}

/* One flat account row; collapsed mode keeps only the identity anchor. */
.sbfoot{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:4px;
  min-height:64px;
  padding:8px 10px;
  background:#08090c;
}
.sbaccount{
  min-width:0;
  min-height:44px;
  padding:6px;
  gap:9px;
  background:transparent;
  border-radius:7px;
}
.sbaccount:hover{background:rgba(255,255,255,.025);}
.sbaccount-avatar{width:30px;height:30px;}
.sbaccount-meta{gap:2px;}
.sbaccount-name{font-size:12px;}
.sbaccount-sub{
  max-width:112px;
  overflow:hidden;
  color:#5f626a;
  font-size:9.5px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sync-dot{width:5px;height:5px;box-shadow:none;}
.sbfoot-actions{
  display:flex;
  width:auto;
  gap:1px;
  padding:0;
  opacity:.58;
  transition:opacity .14s ease;
}
.sbfoot:hover .sbfoot-actions,.sbfoot:focus-within .sbfoot-actions{opacity:1;}
.sbfoot .themetog{
  width:27px;
  height:27px;
  border-radius:6px;
  background:transparent;
  color:#656871;
}
.sbfoot .themetog:hover{background:#15161a;color:#c5c7cc;}

aside.sb.col .sbfoot{
  display:flex!important;
  min-height:58px!important;
  padding:9px 0!important;
  justify-content:center!important;
}
aside.sb.col .sbaccount{
  width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:3px!important;
  border-radius:7px!important;
  background:transparent!important;
}
aside.sb.col .sbaccount-avatar{width:30px!important;height:30px!important;}
aside.sb.col .sbaccount-meta,
aside.sb.col .sbfoot-actions{display:none!important;}

/* V11 MATCHED LIBRARY GEOMETRY AND CATEGORY EMPHASIS -------------------- */
#grid-prompts{gap:12px;}
.prompt-card .cprev{
  color:#5d6068;
  opacity:.72;
}
.prompt-card:hover .cprev,.prompt-card:focus-within .cprev{opacity:.84;}

.tpill.tpill-primary{border-color:transparent;}
.tpill.tpill-realistic{
  color:#6f9fe8;
  background:rgba(63,144,236,.1);
}
.tpill.tpill-docu{
  color:#6fa98a;
  background:rgba(74,166,112,.11);
}
.tpill.tpill-cartoony{
  color:#d8925d;
  background:rgba(223,132,61,.11);
}
.pcard .ctag.ctag-realistic{
  color:#6f9fe8;
  background:rgba(63,144,236,.1);
  opacity:.9;
}
.pcard .ctag.ctag-docu{
  color:#6fa98a;
  background:rgba(74,166,112,.11);
  opacity:.9;
}
.pcard .ctag.ctag-cartoony{
  color:#d8925d;
  background:rgba(223,132,61,.11);
  opacity:.9;
}
.tpill.tpill-realistic:hover,.tpill.tpill-realistic.on{background:rgba(63,144,236,.18);color:#87b4ef;}
.tpill.tpill-docu:hover,.tpill.tpill-docu.on{background:rgba(74,166,112,.19);color:#85bd9b;}
.tpill.tpill-cartoony:hover,.tpill.tpill-cartoony.on{background:rgba(223,132,61,.19);color:#e2a171;}

/* V12 MONOCHROME PRODUCT SYSTEM ----------------------------------------- */
:root{
  color-scheme:dark;
  --bg:#000000;
  --bg2:#050505;
  --panel:#101010;
  --panel2:#151515;
  --panel3:#1b1b1c;
  --border:rgba(255,255,255,.045);
  --border2:rgba(255,255,255,.09);
  --text:#f4f4f5;
  --text2:#a0a0a5;
  --text3:#626267;
  --brand:#1A23CE;
  --accent:#1A23CE;
  --secondary:#0F135C;
  --adim:rgba(26,35,206,.12);
  --aglow:rgba(26,35,206,.055);
  --danger:#ef6666;
  --ddim:rgba(239,102,102,.09);
  --r:8px;
  --rsm:6px;
  --rlg:10px;
  --sbw:236px;
  --sbc:58px;
  --d:.14s;
  --ease:cubic-bezier(.2,.8,.2,1);
  --shadow:0 24px 64px rgba(0,0,0,.48);
  --shadow-sm:0 12px 32px rgba(0,0,0,.28);
}

html,body,#app,.main,.content,.topbar,.tfbar{background:#000;}
body{letter-spacing:0;}
*{scrollbar-color:#28282a transparent;}
*::-webkit-scrollbar{width:7px;height:7px;}
*::-webkit-scrollbar-track{background:transparent;}
*::-webkit-scrollbar-thumb{background:#28282a;border-radius:999px;}
::selection{background:rgba(255,255,255,.16);color:#fff;}

button,input,textarea,select{letter-spacing:0;}
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(255,255,255,.075)!important;
}

/* Entry, loading, and account access. */
#loader,#gate{background:#000;}
#loader::before{display:none;}
.loader-mark .brand-logo{filter:none;}
.loader-dots span{background:#4f4f53;}
.gi{
  gap:15px;
  width:min(380px,100%);
  padding:28px 26px;
  border:0;
  border-radius:10px;
  background:#0d0d0e;
  box-shadow:0 28px 80px rgba(0,0,0,.56);
}
.gtitle{font-size:21px;font-weight:650;}
.gdesc{color:#8a8a90;}
.gstate,.gacct{border:0;background:#151515;border-radius:7px;}
.ginput{
  background:#151515;
  border:1px solid transparent;
  border-radius:7px;
}
.ginput:focus{border-color:rgba(255,255,255,.1);background:#181818;}
.gbtn,.addbtn,.bsave,.mockups-btn.primary{
  background:#1A23CE;
  border-color:#1A23CE;
  color:#fff;
  box-shadow:none;
}
.gbtn:hover,.addbtn:hover,.bsave:hover,.mockups-btn.primary:hover{
  background:#2029dc;
  border-color:#2029dc;
  filter:none;
}
.gbtn:active,.addbtn:active,.bsave:active,.mockups-btn.primary:active{transform:translateY(1px);}
.gbtn.subtle{background:#171717;border-color:transparent;color:var(--text2);}
.gbtn.subtle:hover{background:#1d1d1e;color:var(--text);}

.access-card,.access-perm{
  background:#151515;
  border:0;
  border-radius:8px;
}
.access-card:hover{background:#171717;border-color:transparent;}
.access-status select,.access-quickbtn,.access-refresh,.access-pill{
  background:#1b1b1c;
  border-color:transparent;
  border-radius:6px;
}
.access-role.owner{color:#c7c7cc;background:#1b1b1c;border-color:transparent;}
.access-quickbtn:hover,.access-refresh:hover{background:#222223;border-color:transparent;color:var(--text);}

/* Sidebar and global navigation. */
.sb,.sbfoot{background:#070707;}
.sb{border:0;transition:width .17s var(--ease);}
.sbh{height:60px;padding:13px 14px;border:0;}
.bname{font-size:13px;font-weight:650;}
.sbtog{width:28px;height:28px;border-radius:6px;color:#5f5f64;}
.sbtog:hover{background:#151515;color:#b4b4b9;}
.sbnav{padding:9px 9px 0;}
.sblabel{padding:11px 10px 6px;color:#4f4f53;font-size:9px;font-weight:650;}
.navbtn{
  min-height:38px;
  padding:0 10px;
  gap:10px;
  border-radius:7px;
  color:#85858b;
  font-size:12px;
  transition:background .12s ease,color .12s ease;
}
.navbtn:hover{background:#111111;color:#c5c5c9;}
.navbtn.on{background:#171717;color:#f4f4f5;font-weight:550;box-shadow:none;}
.navbtn.on::after{display:none;}
.nvi{opacity:.56;}
.navbtn:hover .nvi,.navbtn.on .nvi{opacity:.92;}
.nvcnt,.navbtn.on .nvcnt{background:transparent;color:#55555a;padding:0;}
.navbtn.on .nvcnt{color:#8c8c91;}
.nvtip{background:#171717;border:0;border-radius:6px;box-shadow:var(--shadow-sm);}

.sbfoot{
  min-height:62px;
  padding:8px 10px;
  border:0;
}
.sbaccount{background:transparent;border:0;border-radius:7px;}
.sbaccount:hover{background:#101010;}
.sbaccount-name{font-weight:600;}
.sbaccount-sub{color:#55555a;}
.sbfoot .themetog{background:transparent;border:0;color:#5e5e63;}
.sbfoot .themetog:hover{background:#171717;color:#bdbdc1;}
aside.sb.col .sbfoot{background:#070707;}

/* Top bar and compact controls. */
.topbar{height:58px;padding:0 20px;border:0;box-shadow:none;}
.tbleft{font-size:14px;font-weight:650;}
.tbright{gap:6px;}
.sbox{
  width:min(320px,32vw);
  min-height:36px;
  background:#101010;
  border:1px solid transparent;
  border-radius:7px;
  box-shadow:none;
}
.sbox:focus-within{background:#151515;border-color:rgba(255,255,255,.075);box-shadow:none;}
.sbox input{color:#d8d8db;}
.sbox input::placeholder{color:#505055;}
.zbtns{gap:2px;padding:2px;background:#101010;border:0;border-radius:7px;}
.zbtn,.thtogbtn,.themetog{
  border:0;
  border-radius:6px;
  background:transparent;
  color:#646469;
}
.zbtn:hover,.thtogbtn:hover,.themetog:hover{background:#171717;color:#b8b8bd;}
.zbtn.on,.thtogbtn.on{background:#1d1d1e;color:#f0f0f2;box-shadow:none;}
.addbtn{height:34px;padding:0 13px;border-radius:7px;font-weight:650;}
.tfbar{min-height:40px;padding:2px 20px 7px;border:0;gap:5px;}
.tpill{
  min-height:26px;
  padding:0 9px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#5f5f64;
  transition:background .12s ease,color .12s ease;
}
.tpill:hover{background:#111111;color:#aaaab0;}
.tpill.on{background:#1a1a1b;color:#e9e9eb;box-shadow:none;}

/* Main workspace and repeated content. */
.content{padding:17px 20px 24px;}
.panel.on{animation:panelIn .14s ease-out;}
.bgrid,.tgrid,.pgrid{gap:12px;}
.card,.tcard,.pcard,.bento,
.bento.bento-shared,body.light .bento.bento-shared{
  border:0;
  border-radius:8px;
  background:#101010;
  box-shadow:none;
  transition:background .13s ease,transform .13s ease;
}
.card:hover,.tcard:hover,.pcard:hover,.bento:hover{
  border:0;
  background:#121212;
  box-shadow:none;
  transform:none;
}
.cthumb,.cph,.pimgw{background:#0b0b0b;border:0;}
.cbody{padding:11px 12px 12px;}
.ctitle,.tname{color:#ededee;font-weight:620;}
.cprev{color:#606065;}
.gadd,.tgadd{
  border:0;
  border-radius:8px;
  background:#0b0b0b;
  color:#626267;
}
.gadd:hover,.tgadd:hover{border:0;background:#111111;color:#a5a5aa;}
.gring{border:1px solid #2a2a2c;background:#111111;color:#8a8a8f;}
.ctag,.note-badge,.tp-tag,.ltag{
  background:#181818;
  border:0;
  border-radius:5px;
  color:#646469;
}
.cfoot .ib,.pbtn,.prompt-card.text-only .cfoot .ib,.tbtns .tb2{
  background:rgba(12,12,12,.92);
  border:0;
  color:#aaaab0;
  box-shadow:0 8px 18px rgba(0,0,0,.3);
}
.ib:hover,.pbtn:hover,.tb2:hover{background:#222223;color:#fff;}
.cpill{background:#171717;color:#e7e7e9;border:0;border-radius:999px;}
.pcard.sel,.pcard.selpreview{
  outline:1px solid rgba(255,255,255,.22);
  outline-offset:-1px;
  box-shadow:0 0 0 3px rgba(255,255,255,.055);
}
.pcard.sel .pcheck,.note-cb.done{background:#ededee;border-color:#ededee;color:#0b0b0b;}

/* Home is dense, calm, and optimized for daily scanning. */
.dash{gap:14px;padding:3px 0 8px;}
.dash-tasks-row,.dash-lower-row{gap:14px;}
.dash-time{background:#101010;border:0;border-radius:6px;color:#77777c;}
.bento-h{min-height:46px;padding:2px 14px 0;border:0;}
.bento-title{color:#8c8c91;font-size:10px;font-weight:700;}
.bento-body{padding:8px 11px 12px;}
.notes-list{gap:3px;}
.note-item{min-height:34px;padding:7px 8px;border:0;border-radius:6px;background:transparent;}
.note-item:hover{background:#171717;border:0;}
.note-cb{border-color:#2b2b2d;background:#0c0c0c;}
.note-add{
  min-height:38px;
  padding:7px 9px;
  background:#151515;
  border:1px solid transparent;
  border-radius:7px;
}
.note-add:focus-within{background:#181818;border-color:rgba(255,255,255,.075);box-shadow:none;}
.note-submit,.note-submit.note-submit-subtle{
  background:#202021;
  border:0;
  color:#b8b8bd;
}
.note-submit:hover,.note-submit.note-submit-subtle:hover{background:#29292b;color:#fff;}
.note-badge.has-content{background:#1b1b1c;border:0;color:#88888e;}
.tp-item{border-radius:6px;}
.tp-item:hover{background:#171717;}

/* Dialogs, tasks, inputs, and menus. */
.ov,.confov,.task-ov{background:rgba(0,0,0,.78);backdrop-filter:none;}
.modal,.mmod,.confbox,.newtag-box,.task-modal{
  background:#0e0e0f;
  border:0;
  border-radius:10px;
  box-shadow:var(--shadow);
}
.mh,.mfoot,.task-mh,.task-mfoot{border:0;background:#0e0e0f;}
.mh,.task-mh{min-height:58px;padding-left:18px;padding-right:18px;}
.mbody,.task-mbody{padding:15px 18px;}
.mfoot,.task-mfoot{padding:12px 18px;}
.mclose,.task-mclose{color:#5d5d62;}
.mclose:hover,.task-mclose:hover{background:#1a1a1b;color:#d8d8db;}
.field{gap:6px;}
.field label,.task-slbl{color:#66666b;font-weight:650;}
.field input,.field textarea,.tagbox,.stepinp,
.task-link-inp,.task-date-btn,.task-date-native,
.mockups-modal-grid .field input,.mockups-modal-grid .field select{
  background:#151515;
  border:1px solid transparent;
  border-radius:7px;
  color:#e6e6e8;
  box-shadow:none;
}
.field input:focus,.field textarea:focus,.stepinp:focus,.ginput:focus,
.task-link-inp:focus,.task-date-btn:hover,.task-date-wrap.open .task-date-btn,
.mockups-modal-grid .field input:focus,.mockups-modal-grid .field select:focus{
  background:#181818;
  border-color:rgba(255,255,255,.085);
  box-shadow:none;
}
.bghst,.boutl,.bcanc{
  background:#181818;
  border:0;
  color:#a6a6ab;
  border-radius:7px;
}
.bghst:hover,.boutl:hover,.bcanc:hover{background:#212122;color:#f2f2f3;}
.bdel{border:0;border-radius:7px;}

.task-section{padding:13px;background:#141414;border:0;border-radius:8px;}
.task-notes-inp{background:transparent;border:0;color:#e2e2e4;box-shadow:none;}
.task-link-item{background:#181818;border:0;}
.task-link-url{color:#a6a6ac;}
.task-link-url:hover{color:#fff;}
.task-img-add{background:#111111;border:1px dashed #2d2d2f;}
.task-img-add:hover{background:#151515;border-color:#49494d;color:#bdbdc1;}
.task-img-add-icon{background:#0b0b0b;border:0;color:#77777c;}
.task-date-wrap.has-date .task-date-btn,
.task-date-wrap.has-date .task-date-btn svg,
.task-date-wrap.open .task-date-btn svg,.task-date-btn:hover svg{color:#c8c8cc;}
.task-date-pop{background:#151515;border:0;border-radius:9px;box-shadow:var(--shadow);}
.task-date-nav{background:#1c1c1d;border:0;color:#96969b;}
.task-date-cell:hover{background:#222223;border-color:transparent;transform:none;}
.task-date-cell.active,.task-date-cell.active.today{
  background:#ededee;
  border-color:#ededee;
  color:#090909;
  box-shadow:none;
}
.task-priority-switch{background:#202021;border:0;}
.task-priority-switch::after{background:#707076;box-shadow:none;}

.ctxmenu{
  padding:5px;
  border:0;
  border-radius:9px;
  background:#111111;
  box-shadow:0 18px 48px rgba(0,0,0,.5);
}
.ctxmenu-head{color:#56565b;}
.ctxmenu-item{min-height:32px;border-radius:6px;color:#99999f;font-weight:550;}
.ctxmenu-item:hover{background:#1c1c1d;color:#f1f1f2;}
.ctxmenu-sep{height:4px;margin:1px 0;background:transparent;}

/* Mockups uses the same product language without decorative framing. */
#panel-mockups{height:calc(100dvh - 98px);}
.mockups-shell{gap:12px;height:100%;min-height:0;grid-template-rows:minmax(0,1fr);overflow:hidden;}
#mockup-preview-slot{height:100%;min-width:0;min-height:0;overflow:hidden;}
.mockups-panel{
  padding:12px;
  gap:11px;
  background:#0d0d0e;
  border:0;
  border-radius:9px;
  box-shadow:none;
}
.mockups-panel.preview{background:transparent;border:0;}
.mockups-settings-section{
  gap:9px;
  padding:10px;
  background:#131313;
  border:0;
  border-radius:8px;
}
.mockups-settings-kicker,.mockups-field-label{color:#5f5f64;font-size:9.5px;}
.mockups-input,.mockups-select,.mockups-textarea,.mockups-mini-input,
.mockups-settings-btn,.mockups-search-btn,.mockups-btn,.mockups-template-card,
.mockups-count-chip,.mockups-mode-option,.mockups-selected,.mockups-age-btn,
.mockups-search-clear,.mockups-channel-empty{
  background:#191919;
  border:1px solid transparent;
  border-radius:7px;
  color:#a0a0a5;
  box-shadow:none;
}
.mockups-input,.mockups-select,.mockups-mini-input{height:40px;}
.mockups-textarea{border-radius:7px;}
.mockups-input:focus,.mockups-select:focus,.mockups-textarea:focus,.mockups-mini-input:focus{
  background:#1c1c1d;
  border-color:rgba(255,255,255,.085);
}
.mockups-settings-btn:hover,.mockups-search-btn:hover,.mockups-btn:hover,
.mockups-template-card:hover,.mockups-count-chip:hover,.mockups-mode-option:hover{
  background:#202021;
  border-color:transparent;
  color:#ededee;
}
.mockups-template-card.on,.mockups-count-chip.on,.mockups-mode-option.on,.mockups-age-option.on{
  background:#252526;
  border-color:transparent;
  color:#f2f2f3;
  box-shadow:none;
}
.mockups-mode-segment{background:#141414;border:0;border-radius:8px;}
.mockups-upload{background:#151515;border:0;border-radius:8px;}
.mockups-upload:hover{background:#181818;}
.mockups-upload-icon{background:#202021;border:0;border-radius:7px;color:#929297;}
.mockups-upload.drag-over{background:#1d1d1e;border-color:rgba(255,255,255,.32);box-shadow:0 0 0 3px rgba(255,255,255,.065);}
.mockups-selected{background:#171717;border:0;}
.mockups-stage{background:#000;border-radius:8px;}
.mockups-preview-bar{
  padding:7px;
  border:0;
  border-radius:9px;
  background:#111111;
  box-shadow:0 16px 40px rgba(0,0,0,.42);
  backdrop-filter:none;
}
.mockups-preview-bar .mockups-btn{min-height:40px;border-radius:7px;}
.mockups-preview-bar .mockups-btn.primary{box-shadow:none;}

@media(max-width:1180px) and (min-width:981px){
  .mockups-shell{grid-template-columns:minmax(210px,220px) minmax(300px,1fr) minmax(174px,194px);}
  .mockups-panel{padding:9px;gap:9px;}
  .mockups-settings-section{padding:8px;gap:7px;}
  .mockups-channel-strip{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:9px 7px;}
  .mockups-channel-pill-avatar{width:40px;height:40px;}
}

/* Neutralize leftover blue interaction states; brand commands remain blue. */
.tpill.on:not(.tpill-primary),
.ib.cp:hover,.rtag:hover,.addstep:hover,
.gadd:hover,.tgadd:hover,
.note-add:focus-within,.note-item.drag-over{
  color:#d0d0d3;
  background:#191919;
  border-color:transparent;
}
.access-role.owner,.access-role.talent,.wfn,.svn,.note-badge.has-content{
  color:#9b9ba1;
  background:#1b1b1c;
  border-color:transparent;
}
#boxsel{border-color:rgba(255,255,255,.52);background:rgba(255,255,255,.055);}
.dropov.on{border-color:rgba(255,255,255,.28);}
.dropinner{color:#d2d2d5;}
.selbtn.accent-btn{background:#202021;border-color:transparent;color:#e7e7e9;}
.selbtn.accent-btn:hover{background:#29292b;color:#fff;}

@media(max-width:980px){
  #panel-mockups{height:auto;}
  .mockups-panel.preview{min-height:500px;}
}

@media(max-width:640px){
  .topbar{height:auto;min-height:56px;padding:8px 10px;}
  .content{padding:10px;}
  .tfbar{padding-left:10px;padding-right:10px;}
  .modal,.task-modal{border-radius:0;}
}

/* V13 AUTH AND TASK DIALOG CORRECTIONS --------------------------------- */
.task-modal,.task-mh,.task-mbody,.task-mfoot{background:#0e0e0f;}
.task-mbody{color:#e7e7e9;}
.task-section{background:#141414;}
.task-link-inp,.task-date-btn,.task-date-native{background:#181818;}
.task-link-inp:focus,.task-date-btn:hover,.task-date-wrap.open .task-date-btn{background:#1c1c1d;}
.task-img-add{background:#111111;}

/* V14 HOME AND INTERACTION FOUNDATION ---------------------------------- */
:root{
  --bg:#000;
  --bg2:#050505;
  --panel:#111112;
  --panel2:#161617;
  --panel3:#1d1d1f;
  --border:rgba(255,255,255,.045);
  --border2:rgba(255,255,255,.085);
  --text:#f2f2f3;
  --text2:#9a9a9f;
  --text3:#626267;
  --shadow:0 24px 64px rgba(0,0,0,.52);
  --shadow-sm:0 12px 28px rgba(0,0,0,.3);
}

html,body,#app{min-height:100dvh;}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
.main,.content,.topbar,.tfbar{background:#000;}

/* Navigation stays quiet, but every state remains legible. */
.sb,.sbfoot{background:#080808;}
.sb{
  border:0;
  transition:width .16s cubic-bezier(.2,.8,.2,1);
  contain:layout style;
}
.sbh{height:58px;padding:12px 11px 10px 13px;}
.brand{gap:9px;}
.bicon{width:25px;height:25px;}
.bname{font-size:13px;font-weight:620;}
.sbtog{width:30px;height:30px;}
.sbnav{padding:8px 8px 0;}
.sblabel{padding:10px 10px 7px;font-size:9px;color:#505055;}
.navbtn{
  min-height:40px;
  padding:0 10px;
  border-radius:7px;
  color:#85858a;
  transition:background-color .12s ease,color .12s ease;
}
.navbtn:hover{background:#121212;color:#cacace;}
.navbtn.on{background:#191919;color:#f4f4f5;font-weight:560;}
.navbtn .nvi{opacity:.58;}
.navbtn:hover .nvi,.navbtn.on .nvi{opacity:.94;}
.nvcnt,.navbtn.on .nvcnt{color:#606065;}
.navbtn.on .nvcnt{color:#929297;}

/* Account identity and actions read as one deliberate footer control. */
.sbfoot{
  position:relative;
  display:block;
  min-height:66px;
  padding:8px;
}
.sbaccount{
  width:100%;
  min-height:50px;
  padding:7px 68px 7px 8px;
  gap:10px;
  border-radius:8px;
  background:#101010;
  transition:background-color .12s ease;
}
.sbaccount:hover{background:#141414;}
.sbaccount-avatar{width:32px;height:32px;}
.sbaccount-meta{gap:3px;}
.sbaccount-name{font-size:12px;font-weight:620;line-height:1.15;}
.sbaccount-sub{
  max-width:none;
  color:#6d6d72;
  font-size:9.5px;
  line-height:1.2;
}
.sbfoot-actions{
  position:absolute;
  right:15px;
  top:50%;
  width:auto;
  padding:0;
  gap:2px;
  opacity:.58;
  transform:translateY(-50%);
  transition:opacity .12s ease;
}
.sbfoot:hover .sbfoot-actions,.sbfoot:focus-within .sbfoot-actions{opacity:1;}
.sbfoot .themetog{width:27px;height:27px;border-radius:6px;color:#747479;}
.sbfoot .themetog:hover{background:#202020;color:#ededee;}
.sync-dot{width:5px;height:5px;}

aside.sb.col .sbfoot{
  display:flex!important;
  min-height:60px!important;
  padding:9px 0!important;
  align-items:center!important;
  justify-content:center!important;
}
aside.sb.col .sbaccount{
  width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:3px!important;
  background:#101010!important;
}
aside.sb.col .sbaccount-avatar{width:32px!important;height:32px!important;}
aside.sb.col .sbaccount-meta,
aside.sb.col .sbfoot-actions{display:none!important;}

/* Workspace chrome uses compact, stable dimensions. */
.topbar{height:56px;padding:0 18px;}
.tbleft{font-size:13.5px;font-weight:620;}
.content{padding:14px 18px 22px;}
.sbox{min-height:34px;background:#111111;}
.sbox:focus-within{background:#171717;border-color:rgba(255,255,255,.09);}
.zbtns{background:#111111;}
.zbtn,.thtogbtn,.themetog{transition:background-color .12s ease,color .12s ease;}
.zbtn.on,.thtogbtn.on{background:#232323;color:#f1f1f2;}

/* Home keeps useful information in the first viewport. */
.dash{gap:12px;padding:2px 0 16px;}
.dash-greeting{min-height:54px;padding:2px 1px 4px;}
.dash-greeting-text h2{font-size:19px;font-weight:640;letter-spacing:0;}
.dash-greeting-text p{margin-top:4px;color:#68686d;}
.dash-time{
  padding:5px 10px;
  border-radius:6px;
  background:#111111;
  color:#747479;
}
.dash-tasks-row,.dash-lower-row{gap:12px;}
.dash-tasks-row{align-items:stretch;}
.dash-tasks-row>.bento{
  height:clamp(320px,calc(100dvh - 330px),410px);
  min-height:0;
}
.bento,.bento.bento-shared,body.light .bento.bento-shared{
  background:#111112;
  border-radius:8px;
}
.bento-h{min-height:44px;padding:1px 13px 0;}
.bento-title{font-size:9.5px;color:#77777c;letter-spacing:.08em;}
.bento-body{min-height:0;padding:7px 10px 10px;}
.dash-tasks-row .bento-body{overflow:hidden;}
.dash-tasks-row .notes-list{
  min-height:0;
  max-height:none;
  margin-bottom:7px;
  padding-right:2px;
}
.note-item{
  min-height:35px;
  padding:7px 8px;
  background:transparent;
  border-radius:6px;
  transition:background-color .11s ease,opacity .11s ease;
}
.note-item:hover{background:#181818;}
.note-text{font-size:12px;line-height:1.35;}
.note-cb{width:16px;height:16px;border-radius:4px;background:#0d0d0e;border-color:#303033;}
.note-cb.done{background:#ececee;border-color:#ececee;color:#0a0a0a;}
.note-actions{transition:opacity .1s ease;}
.note-add{
  min-height:38px;
  margin-top:auto;
  padding:7px 8px;
  border:1px solid transparent;
  border-radius:7px;
  background:#171717;
}
.note-add:hover{background:#1a1a1a;}
.note-add:focus-within{background:#1c1c1c;border-color:rgba(255,255,255,.1);}
.note-inp{font-size:11.5px;}
.note-submit,.note-submit.note-submit-subtle{
  width:22px;
  height:22px;
  border-radius:5px;
  background:#252525;
  color:#b8b8bc;
}
.note-submit:hover,.note-submit.note-submit-subtle:hover{background:#303030;color:#fff;}
.note-badge{background:#1b1b1c;color:#6e6e73;border:0;}
.dash-lower-row>.bento{min-height:210px;}
.tp-list{gap:3px;}
.tp-item{min-height:36px;padding:6px 8px;background:transparent;border-radius:6px;}
.tp-item:hover{background:#181818;border-color:transparent;}

/* The task dialog is compact, neutral, and visually continuous. */
.task-ov{padding:20px;background:rgba(0,0,0,.8);}
.task-modal{
  width:680px;
  max-width:calc(100vw - 40px);
  max-height:min(88dvh,760px);
  background:#101011;
  border:1px solid rgba(255,255,255,.07);
  border-radius:10px;
  box-shadow:0 28px 80px rgba(0,0,0,.62);
  transition:transform .16s cubic-bezier(.2,.8,.2,1),opacity .16s ease;
}
.task-mh,.task-mbody,.task-mfoot{background:#101011;}
.task-mh{min-height:58px;padding:0 16px;gap:8px;}
.task-title-inp{font-size:14px;font-weight:620;letter-spacing:0;}
.task-mbody{padding:12px 14px;gap:10px;overflow-y:auto;}
.task-section{padding:12px;background:#161617;border-radius:8px;gap:7px;}
.task-slbl{font-size:9.5px;color:#6f6f74;letter-spacing:.08em;}
.task-notes-inp{min-height:92px;font-size:12.5px;line-height:1.6;}
.task-link-inp,.task-date-btn,.task-date-native{background:#1b1b1c;}
.task-link-inp{min-height:40px;border-radius:7px;padding:9px 11px;}
.task-link-add .bghst{min-width:58px;}
.task-img-add{border-color:#303033;background:#131314;border-radius:8px;}
.task-img-add.empty{min-height:132px;}
.task-img-add-icon{width:40px;height:40px;border-radius:8px;}
.task-mfoot{min-height:64px;padding:10px 14px;gap:10px;}
.task-date-btn{height:38px;min-width:168px;border-radius:7px;}
.task-priority-switch{height:30px;}
.task-side-actions .bsave{min-width:86px;height:38px;}

@media(max-width:1120px) and (min-width:641px){
  .dash-tasks-row>.bento{height:360px;}
}

@media(max-width:640px){
  .content{padding:10px;}
  .dash{gap:10px;}
  .dash-greeting{min-height:48px;}
  .dash-tasks-row>.bento{height:auto;min-height:310px;}
  .task-ov{padding:0;}
  .task-modal{width:100vw;max-width:none;height:100dvh;max-height:none;border:0;border-radius:0;}
}

@media(prefers-reduced-motion:reduce){
  .sb,.task-modal,.panel.on,.note-item{transition:none!important;animation:none!important;}
}

/* Workspace activity and recovery */
.workspace-label{margin-top:14px;}
#panel-activity{height:100%;overflow:hidden;}
#activity-root{height:100%;min-height:0;}
.activity-shell{
  width:min(1080px,100%);
  height:100%;
  min-height:0;
  margin:0 auto;
  padding:28px 32px 34px;
  display:flex;
  flex-direction:column;
  color:var(--text);
}
.activity-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px;}
.activity-header h1{margin:0 0 6px;font-size:22px;line-height:1.2;font-weight:570;letter-spacing:0;color:#f0f0f2;}
.activity-header p{margin:0;font-size:12px;line-height:1.5;color:#6f6f74;}
.activity-metrics{display:flex;align-items:flex-start;gap:28px;flex-shrink:0;padding-top:1px;}
.activity-metrics>div{display:flex;flex-direction:column;gap:3px;min-width:72px;}
.activity-metrics strong{font-size:17px;line-height:1.1;font-weight:560;color:#d9d9dc;font-variant-numeric:tabular-nums;}
.activity-metrics span{font-size:10px;color:#59595e;white-space:nowrap;}
.activity-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;}
.activity-tabs{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:8px;background:#111112;}
.activity-tabs button{
  min-width:88px;height:32px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:#6e6e73;
  font:500 11.5px 'Geist',sans-serif;cursor:pointer;transition:background .14s ease,color .14s ease;
}
.activity-tabs button:hover{color:#bdbdc1;}
.activity-tabs button.on{background:#202021;color:#f0f0f2;box-shadow:0 1px 2px rgba(0,0,0,.24);}
.activity-tabs button span{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;margin-left:5px;padding:0 4px;border-radius:999px;background:#2b2b2d;color:#9b9ba0;font-size:9px;}
.activity-search{width:min(260px,34vw);height:36px;display:flex;align-items:center;gap:8px;padding:0 11px;border-radius:8px;background:#141415;color:#59595e;transition:background .14s ease,color .14s ease;}
.activity-search:focus-within{background:#1a1a1b;color:#8d8d92;}
.activity-search svg{width:14px;height:14px;flex:0 0 auto;}
.activity-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#d8d8db;font:400 11.5px 'Geist',sans-serif;letter-spacing:0;}
.activity-search input::placeholder{color:#55555a;}
.activity-filters{display:flex;align-items:center;gap:5px;margin-bottom:18px;}
.activity-filters button{height:27px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#626267;font:500 10.5px 'Geist',sans-serif;cursor:pointer;transition:background .14s ease,color .14s ease;}
.activity-filters button:hover{background:#141415;color:#aaaab0;}
.activity-filters button.on{background:#1b1b1c;color:#d5d5d8;}
.activity-content{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:0 3px 28px 0;scrollbar-gutter:stable;}
.activity-day{padding:15px 0 8px;font-size:10px;line-height:1;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#505055;}
.activity-day:first-child{padding-top:4px;}
.activity-event{position:relative;min-height:58px;display:grid;grid-template-columns:28px 32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 9px 7px 0;border-radius:8px;transition:background .14s ease;}
.activity-event:hover{background:#111112;}
.activity-event-rail{position:relative;width:28px;height:100%;display:grid;place-items:center;}
.activity-event-rail::after{content:'';position:absolute;top:36px;bottom:-22px;left:13px;width:1px;background:#19191a;}
.activity-event-icon{position:relative;z-index:1;width:27px;height:27px;display:grid;place-items:center;border-radius:7px;background:#171718;color:#77777c;}
.activity-event-icon svg{width:13px;height:13px;}
.activity-avatar,.trash-mini-avatar{display:grid;place-items:center;border-radius:999px;object-fit:cover;background:#222224;color:#bcbcc1;font-weight:600;flex:0 0 auto;}
.activity-avatar{width:32px;height:32px;font-size:10px;}
.activity-avatar-fallback{border:1px solid rgba(255,255,255,.04);}
.activity-event-copy{min-width:0;display:flex;flex-direction:column;gap:4px;}
.activity-event-line{min-width:0;font-size:11.5px;line-height:1.35;color:#747479;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.activity-event-line strong{font-weight:550;color:#d5d5d8;}
.activity-event-line b{font-weight:500;color:#aaaab0;}
.activity-event-meta{display:flex;align-items:center;gap:6px;min-width:0;font-size:9.5px;color:#505055;white-space:nowrap;overflow:hidden;}
.activity-event-meta span{overflow:hidden;text-overflow:ellipsis;}
.activity-event-meta span+span::before{content:'·';margin-right:6px;color:#39393c;}
.activity-event time{padding-left:10px;font-size:9.5px;color:#4f4f54;font-variant-numeric:tabular-nums;white-space:nowrap;}
.activity-state{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#606065;}
.activity-state-icon{width:38px;height:38px;margin-bottom:12px;display:grid;place-items:center;border-radius:9px;background:#161617;color:#77777c;font-size:14px;}
.activity-state strong{font-size:12.5px;font-weight:550;color:#b8b8bc;margin-bottom:5px;}
.activity-state span{max-width:360px;font-size:11px;line-height:1.5;color:#5e5e63;}
.activity-state-spinner{width:24px;height:24px;margin-bottom:14px;border:2px solid #252527;border-top-color:#77777c;border-radius:999px;animation:spin .8s linear infinite;}
.trash-list{display:flex;flex-direction:column;gap:7px;padding-top:6px;}
.trash-row{min-height:72px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:9px 10px;border-radius:9px;background:#111112;transition:background .14s ease;}
.trash-row:hover{background:#151516;}
.trash-preview{width:54px;height:54px;border-radius:7px;object-fit:cover;background:#181819;}
.trash-preview-empty{display:grid;place-items:center;color:#55555a;}
.trash-preview-empty svg{width:19px;height:19px;}
.trash-copy{min-width:0;display:flex;flex-direction:column;gap:7px;}
.trash-title{font-size:12px;font-weight:540;color:#d1d1d4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.trash-meta{display:flex;align-items:center;gap:6px;min-width:0;font-size:9.5px;color:#5c5c61;white-space:nowrap;overflow:hidden;}
.trash-meta>span{overflow:hidden;text-overflow:ellipsis;}
.trash-dot{width:2px;height:2px;border-radius:999px;background:#3d3d40;flex:0 0 auto;}
.trash-mini-avatar{width:17px;height:17px;font-size:6px;}
.trash-actions{display:flex;align-items:center;gap:5px;}
.activity-button{height:31px;padding:0 12px;border:0;border-radius:6px;background:#202021;color:#bcbcc0;font:550 10.5px 'Geist',sans-serif;cursor:pointer;transition:background .14s ease,color .14s ease;}
.activity-button:hover{background:#29292b;color:#fff;}
.activity-button.primary{background:#e6e6e8;color:#111112;}
.activity-button.primary:hover{background:#fff;color:#0b0b0c;}
.activity-icon-button{width:31px;height:31px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#5e5e63;cursor:pointer;transition:background .14s ease,color .14s ease;}
.activity-icon-button svg{width:14px;height:14px;}
.activity-icon-button:hover{background:#222223;color:#bdbdc1;}
.activity-icon-button.danger:hover{background:rgba(196,83,83,.10);color:#cf7777;}
.activity-button:disabled,.activity-icon-button:disabled{cursor:default;opacity:.58;pointer-events:none;}
.activity-spinner{width:12px;height:12px;display:block;border:1.5px solid rgba(17,17,18,.28);border-top-color:#111112;border-radius:50%;animation:activity-spin .65s linear infinite;}
@keyframes activity-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.activity-spinner{animation:none;border-color:rgba(17,17,18,.5)}}

/* System health */
.health-refresh{height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:0;border-radius:7px;background:#171718;color:#85858a;font:500 10.5px 'Geist',sans-serif;cursor:pointer;transition:background .14s ease,color .14s ease;}
.health-refresh:hover{background:#202021;color:#d4d4d7;}
.health-refresh svg{width:13px;height:13px;}
.health-view{display:flex;flex-direction:column;gap:23px;padding-top:6px;}
.health-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.health-service{min-width:0;min-height:102px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:16px;border-radius:8px;background:#121213;}
.health-service-label{display:flex;align-items:center;gap:7px;font-size:9.5px;font-weight:550;text-transform:uppercase;color:#55555a;}
.health-service strong{font-size:14px;line-height:1.2;font-weight:560;color:#d5d5d8;}
.health-service>span{font-size:9.5px;line-height:1.4;color:#56565b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.health-dot{width:6px;height:6px;border-radius:50%;background:#55555a;box-shadow:0 0 0 3px rgba(255,255,255,.025);}
.health-dot.healthy{background:#6eaa84;}.health-dot.issue{background:#c56d6d;}.health-dot.checking{background:#b19962;}
.health-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:0 2px;}
.health-section-head>div{display:flex;flex-direction:column;gap:4px;}
.health-section-head strong{font-size:12px;font-weight:550;color:#c9c9cc;}
.health-section-head span{font-size:9.5px;color:#55555a;}
.health-list{display:flex;flex-direction:column;gap:5px;}
.health-row{min-height:66px;display:grid;grid-template-columns:34px minmax(140px,1.2fr) 72px 72px minmax(180px,1.4fr) auto;align-items:center;gap:12px;padding:9px 11px;border-radius:8px;background:#111112;transition:background .14s ease;}
.health-row:hover{background:#151516;}
.health-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;object-fit:cover;background:#222224;color:#bcbcc1;font-size:10px;font-weight:600;}
.health-person,.health-detail,.health-report-state{min-width:0;display:flex;flex-direction:column;gap:4px;}
.health-person strong{font-size:11.5px;font-weight:550;color:#d4d4d7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.health-person span,.health-detail span,.health-report-state time{font-size:9px;color:#525257;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.health-detail strong{font-size:10.5px;font-weight:500;color:#88888d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.health-report-state{align-items:flex-end;}
.health-status{height:23px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border-radius:6px;background:#1a1a1b;color:#7a7a7f;font-size:9.5px;font-weight:550;white-space:nowrap;}
.health-status i{width:5px;height:5px;border-radius:50%;background:#66666b;}
.health-status.healthy{background:rgba(77,133,96,.12);color:#80ad8f;}.health-status.healthy i{background:#6eaa84;}
.health-status.issue{background:rgba(162,71,71,.12);color:#c57a7a;}.health-status.issue i{background:#c56d6d;}
.health-status.stale,.health-status.checking{background:rgba(148,120,62,.12);color:#ab9669;}.health-status.stale i,.health-status.checking i{background:#b19962;}

@media(max-width:900px){
  .activity-shell{padding:24px 22px 28px;}
  .activity-header{gap:18px;}
  .activity-metrics{gap:18px;}
  .activity-metrics>div{min-width:62px;}
  .health-row{grid-template-columns:34px minmax(130px,1fr) 70px 70px auto;}
  .health-counters{display:none;}
}
@media(max-width:700px){
  #panel-activity{overflow:auto;}
  #activity-root{height:auto;min-height:100%;}
  .activity-shell{height:auto;min-height:100%;padding:18px 14px 28px;}
  .activity-header{flex-direction:column;margin-bottom:18px;}
  .activity-metrics{width:100%;justify-content:space-between;gap:10px;}
  .activity-toolbar{align-items:stretch;flex-direction:column;}
  .activity-tabs{align-self:flex-start;}
  .activity-search{width:100%;max-width:none;}
  .health-refresh{align-self:flex-end;}
  .health-services{grid-template-columns:1fr;}
  .health-service{min-height:82px;}
  .health-row{grid-template-columns:34px minmax(0,1fr) auto;gap:10px;}
  .health-detail{display:none;}
  .activity-event{grid-template-columns:27px 30px minmax(0,1fr);padding-right:6px;}
  .activity-event time{grid-column:3;padding:0;margin-top:-6px;font-size:9px;}
  .trash-row{grid-template-columns:46px minmax(0,1fr) auto;gap:10px;padding:8px;}
  .trash-preview{width:46px;height:46px;}
  .trash-meta .trash-mini-avatar,.trash-meta .trash-mini-avatar+span,.trash-meta .trash-mini-avatar+span+.trash-dot{display:none;}
}
@media(max-width:430px){
  .activity-header h1{font-size:19px;}
  .activity-metrics span{font-size:9px;}
  .activity-tabs{width:100%;}
  .activity-tabs button{flex:1;}
  .trash-row{grid-template-columns:42px minmax(0,1fr);}
  .trash-preview{width:42px;height:42px;}
  .trash-actions{grid-column:2;justify-self:start;}
}

/* V15 LIBRARY CARDS AND RESPONSIVE TOOLBAR ----------------------------- */
#grid-prompts,#grid-thumbs{gap:12px;align-items:start;}
#grid-prompts>.card,#grid-thumbs>.pcard,
#grid-prompts>.gadd,#grid-thumbs>.tgadd{width:100%;box-sizing:border-box;}

/* Prompt and thumbnail media share one exact visual frame. */
.prompt-card,.pcard{
  border-radius:8px;
  background:#111112;
  box-shadow:none;
  transition:background-color .12s ease,outline-color .12s ease;
}
.prompt-card:hover,.prompt-card:focus-within,
.pcard:hover,.pcard:focus-within{background:#141415;}
.prompt-card.has-media .cthumb,
.prompt-card .cph,.pimgw{
  width:100%;
  aspect-ratio:16/9;
  height:auto;
  background:#0c0c0d;
}
.prompt-placeholder{
  color:#5b5b60;
  background:#0d0d0e;
}
.prompt-placeholder svg{opacity:.82;}
.prompt-card .cbody{
  min-height:102px;
  padding:11px 12px 12px;
  display:flex;
  flex-direction:column;
}
.prompt-card .ctitle{
  min-height:34px;
  margin:0 0 5px;
  padding:0;
  color:#ececee;
  font-size:12.5px;
  font-weight:620;
  line-height:1.35;
  letter-spacing:0;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.prompt-card .cprev{
  min-height:31px;
  color:#707075;
  font-size:10.75px;
  line-height:1.45;
  opacity:1;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.prompt-card .ctags{margin-top:auto;padding-top:8px;max-height:28px;overflow:hidden;}

/* Thumbnail metadata supports the image and keeps every card stable. */
.pimg{transition:none;}
.pfoot{
  min-height:50px;
  padding:8px 10px 9px;
  background:#111112;
}
.pcard:hover .pfoot,.pcard:focus-within .pfoot{background:#141415;}
.ptags{
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:4px;
  max-height:38px;
  overflow:hidden;
}
.pcard .ctag{
  padding:2px 7px;
  border-radius:5px;
  background:#1a1a1b;
  color:#66666b;
  font-size:9px;
  line-height:1.35;
  opacity:.78;
}
.pcard:hover .ctag,.pcard:focus-within .ctag{opacity:.9;}
.pcard .ctag.ctag-realistic{color:#78a7ea;background:rgba(63,144,236,.11);opacity:.92;}
.pcard .ctag.ctag-docu{color:#77ae8d;background:rgba(74,166,112,.12);opacity:.92;}
.pcard .ctag.ctag-cartoony{color:#db9865;background:rgba(223,132,61,.12);opacity:.92;}

/* Contextual controls stay hidden until they are useful. */
.cfoot,.pbtns{
  top:8px;
  right:8px;
  gap:4px;
  opacity:0;
  pointer-events:none;
  transform:translateY(-2px);
  transition:opacity .13s ease,transform .13s ease;
}
.prompt-card:hover .cfoot,.prompt-card:focus-within .cfoot,
.pcard:hover .pbtns,.pcard:focus-within .pbtns{
  opacity:1;
  pointer-events:auto;
  transform:none;
}
.cfoot .ib,.pbtn,.prompt-card.text-only .cfoot .ib{
  width:27px;
  height:27px;
  border-radius:6px;
  background:rgba(18,18,19,.94);
  color:#a0a0a5;
  border:1px solid rgba(255,255,255,.065);
  box-shadow:0 8px 18px rgba(0,0,0,.32);
}
.cfoot .ib:hover,.pbtn:hover{background:#29292a;color:#fff;}
.pcheck{
  width:20px;
  height:20px;
  border-radius:5px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(12,12,13,.78);
  box-shadow:none;
  backdrop-filter:none;
}
.pcard.sel,.pcard.selpreview{
  outline:1px solid rgba(255,255,255,.5);
  outline-offset:-1px;
  box-shadow:0 0 0 3px rgba(255,255,255,.06);
}
.pcard.sel .pcheck{background:#ededee;border-color:#ededee;color:#0b0b0c;box-shadow:none;}

/* Copy confirmation is neutral and readable instead of tinting the card. */
.cflash,.pflash{background:rgba(0,0,0,.42);}
.cpill{
  padding:6px 11px;
  border:0;
  border-radius:999px;
  background:#202021;
  color:#ededee;
  box-shadow:0 10px 24px rgba(0,0,0,.32);
}

/* Creation tiles feel available without competing with real content. */
#grid-prompts>.gadd,#grid-thumbs>.tgadd{
  min-height:100%;
  aspect-ratio:auto;
  align-self:stretch;
  border:1px dashed #303033;
  border-radius:8px;
  background:#0b0b0c;
  color:#6d6d72;
}
#grid-prompts>.gadd:hover,#grid-thumbs>.tgadd:hover{
  border-color:#515156;
  background:#111112;
  color:#b8b8bc;
}
.gring{width:38px;height:38px;border-color:#333336;background:#111112;}
.glbl{font-size:11px;color:inherit;}

/* Filter and search states use the same neutral hierarchy. */
.tfbar{gap:4px;}
.tpill{border-radius:6px;color:#65656a;}
.tpill:hover{background:#151516;color:#b0b0b5;}
.tpill.on{background:#202021;color:#efeff0;}
.thtogbtn.on,.zbtn.on{background:#232324;color:#f0f0f1;}

@media(max-width:980px){
  .topbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    height:auto;
    min-height:54px;
    padding:9px 12px;
    gap:8px 10px;
  }
  .tbleft{grid-column:1;grid-row:1;align-self:center;}
  .tbright{
    grid-column:2;
    grid-row:1;
    width:auto;
    margin:0;
    flex-wrap:nowrap;
    justify-content:flex-end;
  }
  .tbcenter{
    grid-column:1/-1;
    grid-row:2;
    order:initial;
    width:100%;
  }
  .sbox{width:100%;}
  .tfbar{padding:0 12px 7px;}
}

@media(max-width:640px){
  #grid-prompts,#grid-thumbs{gap:10px;}
  #grid-prompts>.gadd{
    min-height:calc((100vw - var(--sbc) - 20px) * .5625 + 94px);
  }
  .prompt-card .cbody{min-height:94px;padding:10px;}
  .prompt-card .ctitle{font-size:12px;}
  .pfoot{min-height:46px;padding:7px 8px 8px;}
  .cfoot,.pbtns{top:6px;right:6px;gap:3px;}
}

@media(hover:none){
  .cfoot,.pbtns{opacity:1;pointer-events:auto;transform:none;}
}

/* V16 WORKFLOW AND TOOL LIBRARIES --------------------------------------- */
#grid-workflows,#grid-tools{
  gap:12px;
  align-items:stretch;
  grid-auto-rows:1fr;
}
#grid-workflows>.workflow-card,#grid-tools>.tool-card,
#grid-workflows>.gadd,#grid-tools>.gadd{
  width:100%;
  box-sizing:border-box;
}

/* Workflows use the same stable media rhythm as the visual libraries. */
.workflow-card{
  min-height:100%;
  border-radius:8px;
  background:#111112;
  box-shadow:none;
  transition:background-color .12s ease;
}
.workflow-card:hover,.workflow-card:focus-within{background:#141415;}
.workflow-card .cthumb,.workflow-card .cph{
  width:100%;
  aspect-ratio:16/9;
  height:auto;
  background:#0c0c0d;
}
.workflow-placeholder{
  flex-direction:column;
  gap:8px;
  color:#55555a;
  font-family:'Geist Mono',monospace;
  font-size:10px;
}
.workflow-placeholder svg{opacity:.82;}
.workflow-card .cbody{
  height:166px;
  min-height:166px;
  padding:11px 12px 12px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.workflow-head{display:flex;align-items:flex-start;gap:8px;}
.workflow-card .ctitle{
  flex:1;
  min-width:0;
  min-height:34px;
  margin:0 0 5px;
  color:#ececee;
  font-size:12.5px;
  font-weight:620;
  line-height:1.35;
  letter-spacing:0;
}
.workflow-count{
  min-width:21px;
  height:20px;
  padding:0 6px;
  border-radius:5px;
  background:#1a1a1b;
  color:#727277;
  font:600 9px/20px 'Geist Mono',monospace;
  text-align:center;
  flex-shrink:0;
}
.workflow-card .wfprev{gap:4px;margin:1px 0 0;}
.workflow-card .wfl{align-items:center;gap:7px;min-width:0;}
.workflow-card .wfn{
  width:18px;
  height:18px;
  padding:0;
  border-radius:5px;
  background:#1a1a1b;
  color:#77777c;
  line-height:18px;
  text-align:center;
}
.workflow-card .wft{color:#77777c;font-size:10.75px;line-height:1.45;}
.workflow-card .wfmore{margin:2px 0 0 25px;color:#55555a;font-size:9.5px;}
.workflow-card .ctags{margin-top:auto;padding-top:9px;max-height:28px;overflow:hidden;}

/* Tools share the same card frame, with a quiet useful fallback. */
.tool-card{
  position:relative;
  display:flex;
  flex-direction:column;
  border-radius:8px;
  background:#111112;
  box-shadow:none;
  transition:background-color .12s ease;
}
.tool-card:hover,.tool-card:focus-within{background:#141415;}
.tool-card .tprev{
  width:100%;
  aspect-ratio:16/9;
  height:auto;
  background:#0c0c0d;
}
.tool-card .tprev img.ss{width:100%;height:100%;object-fit:cover;}
.tool-fallback{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tool-card .tfavbig{
  width:44px;
  height:44px;
  border-radius:10px;
  opacity:.72;
  box-shadow:0 8px 24px rgba(0,0,0,.2);
}
.tool-fallback-icon{
  display:none;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#161617;
  color:#5c5c61;
}
.tool-card .trow{
  height:76px;
  min-height:76px;
  padding:10px 12px 11px;
  align-items:flex-start;
  gap:9px;
}
.tool-card .tfav{width:25px;height:25px;border-radius:6px;background:#1a1a1b;}
.tool-card .tname{
  padding-right:4px;
  color:#ececee;
  font-size:12.5px;
  font-weight:620;
  line-height:1.35;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tool-card .tdom{margin-top:1px;color:#67676c;font-size:9.75px;line-height:1.35;}
.tool-card .tdesc{
  margin-top:4px;
  color:#77777c;
  font-size:10.25px;
  line-height:1.35;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tool-card .tbtns{
  position:absolute;
  top:8px;
  right:8px;
  gap:4px;
  z-index:4;
}
.tool-card .tb2{
  width:27px;
  height:27px;
  border-radius:6px;
  background:rgba(18,18,19,.94);
  color:#a0a0a5;
  border:1px solid rgba(255,255,255,.065);
  box-shadow:0 8px 18px rgba(0,0,0,.32);
}
.tool-card .tb2:hover{background:#29292a;color:#fff;}

/* New-item tiles occupy the same visual footprint as real cards. */
#grid-workflows>.gadd,#grid-tools>.gadd{
  min-height:100%;
  align-self:stretch;
  border:1px dashed #303033;
  border-radius:8px;
  background:#0b0b0c;
  color:#6d6d72;
}
#grid-workflows>.gadd:hover,#grid-tools>.gadd:hover{
  border-color:#515156;
  background:#111112;
  color:#b8b8bc;
}

@media(max-width:640px){
  #grid-workflows,#grid-tools{gap:10px;}
  .workflow-card .cbody{height:164px;min-height:164px;padding:10px;}
  .tool-card .trow{height:70px;min-height:70px;padding:9px 10px 10px;}
  .workflow-card .cfoot,.tool-card .tbtns{top:6px;right:6px;gap:3px;}
}

@media(hover:none){
  .tool-card .tbtns{opacity:1;pointer-events:auto;transform:none;}
}

/* V17 SHARED INTERACTION SYSTEM ----------------------------------------- */
.ov,.confov,.task-ov,.newtag-ov{
  padding:16px;
  background:rgba(0,0,0,.82);
  backdrop-filter:none;
}
.modal,.mmod,.newtag-box{
  width:min(520px,calc(100vw - 32px));
  max-width:none;
  max-height:calc(100dvh - 32px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.075);
  border-radius:10px;
  background:#101011;
  box-shadow:0 28px 80px rgba(0,0,0,.64);
  transform:translateY(8px) scale(.992);
  transition:transform .15s cubic-bezier(.2,.8,.2,1),opacity .15s ease;
}
.ov.on .modal,.ov.on .mmod,.newtag-ov.on .newtag-box{transform:none;}
.modal:focus,.mmod:focus,.newtag-box:focus,.confbox:focus,.task-modal:focus{outline:none;}
.mh{
  min-height:56px;
  padding:0 16px;
  flex:0 0 auto;
  border:0;
  background:#101011;
}
.mhtitle{
  color:#ededee;
  font-size:13px;
  font-weight:650;
  line-height:1.3;
  letter-spacing:0;
}
.mx,.mclose,.task-mclose{
  width:30px;
  height:30px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:#6c6c71;
  transition:background-color .11s ease,color .11s ease;
}
.mx:hover,.mclose:hover,.task-mclose:hover{background:#1c1c1d;color:#ededee;}
.mbody,.m-body{
  min-height:0;
  padding:14px 16px 16px;
  gap:14px;
  overflow-y:auto;
  overscroll-behavior:contain;
  background:#101011;
}
.mbody::-webkit-scrollbar,.m-body::-webkit-scrollbar{width:6px;}
.mbody::-webkit-scrollbar-thumb,.m-body::-webkit-scrollbar-thumb{background:#2a2a2c;border-radius:999px;}
.mfoot{
  min-height:60px;
  padding:11px 16px;
  flex:0 0 auto;
  gap:7px;
  border:0;
  background:#101011;
}

.field{gap:6px;}
.flbl,.field label,.task-slbl{
  color:#707075;
  font-size:9.5px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.07em;
}
.field input,.field textarea,.stepinp,.tagbox,
.mockups-modal-grid .field input,.mockups-modal-grid .field select{
  width:100%;
  border:1px solid transparent;
  border-radius:7px;
  background:#181819;
  color:#ededee;
  box-shadow:none;
  transition:background-color .11s ease,border-color .11s ease,box-shadow .11s ease;
}
.field input,.stepinp,.mockups-modal-grid .field input,.mockups-modal-grid .field select{min-height:40px;padding:9px 11px;}
.field textarea{min-height:110px;padding:10px 11px;resize:vertical;}
.field input::placeholder,.field textarea::placeholder,.stepinp::placeholder{color:#55555a;opacity:1;}
.field input:hover,.field textarea:hover,.stepinp:hover,.tagbox:hover,
.mockups-modal-grid .field input:hover,.mockups-modal-grid .field select:hover{background:#1b1b1c;}
.field input:focus,.field textarea:focus,.stepinp:focus,.tagbox:focus-within,
.mockups-modal-grid .field input:focus,.mockups-modal-grid .field select:focus{
  border-color:rgba(255,255,255,.15);
  background:#1d1d1e;
  box-shadow:0 0 0 3px rgba(255,255,255,.045);
}
.tagbox{min-height:40px;padding:6px 8px;}
.taginp{min-height:26px;color:#ededee;}
.taghint{color:#5f5f64;font-size:9.5px;}
.tchip,.rtag{
  border:0;
  border-radius:5px;
  background:#222223;
  color:#9a9a9f;
}
.tchip{padding:3px 7px;}
.tchip button{color:#7a7a7f;}
.rtag{padding:3px 8px;}
.rtag:hover{border:0;background:#2a2a2b;color:#ededee;}
.steplist{gap:7px;}
.steprow{gap:7px;}
.stepn{
  width:24px;
  height:24px;
  border:0;
  border-radius:6px;
  background:#202021;
  color:#85858a;
}
.stepdel{width:28px;height:28px;border-radius:6px;color:#68686d;}
.stepdel:hover{background:rgba(240,74,74,.1);color:#ff8f8f;}
.addstep{
  min-height:36px;
  margin-top:7px!important;
  border:1px dashed #323235;
  border-radius:7px;
  color:#77777c;
  background:#141415;
}
.addstep:hover{border-color:#505054;background:#19191a;color:#c8c8cc;}

.uz{
  min-height:132px;
  padding:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px dashed #353538;
  border-radius:8px;
  background:#131314;
  color:#77777c;
}
.uz:hover,.uz:focus-within{border-color:#55555a;background:#171718;}
.uzicon{color:#85858a;font-size:16px;}
.uztxt{color:#6c6c71;font-size:10.5px;}
.uzprev,.uzprevw{border-radius:7px;background:#0b0b0c;}

.bghst,.boutl,.bcanc,.bdel,.bsave{
  min-height:36px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:0;
  border-radius:7px;
  font-size:11.5px;
  font-weight:620;
  line-height:1;
  transition:background-color .11s ease,color .11s ease,opacity .11s ease;
}
.bghst,.boutl,.bcanc{background:#1b1b1c;color:#a0a0a5;}
.bghst:hover,.boutl:hover,.bcanc:hover{background:#242425;color:#f0f0f1;}
.bsave{background:#1A23CE;color:#fff;}
.bsave:hover{background:#242EDC;filter:none;}
.bdel{background:rgba(240,74,74,.11);color:#ff9292;}
.bdel:hover{background:rgba(240,74,74,.17);}
.bghst:disabled,.boutl:disabled,.bcanc:disabled,.bdel:disabled,.bsave:disabled{cursor:default;opacity:.62;}
.is-busy::before{
  content:'';
  width:12px;
  height:12px;
  border:2px solid rgba(255,255,255,.28);
  border-top-color:currentColor;
  border-radius:50%;
  animation:dialogSpin .7s linear infinite;
}
@keyframes dialogSpin{to{transform:rotate(360deg);}}

.vimg{max-height:300px;border-radius:8px;background:#0b0b0c;}
.vprompt{
  max-height:42dvh;
  overflow:auto;
  padding:12px;
  border:0;
  border-radius:7px;
  background:#171718;
  color:#b0b0b5;
  font-size:11.5px;
  line-height:1.65;
}
.svrow{gap:9px;}
.svn{border-radius:5px;background:#202021;color:#9a9a9f;}
.svt{color:#aaaab0;}

.confov{z-index:700;}
.confbox{
  width:min(340px,calc(100vw - 32px));
  padding:20px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:10px;
  background:#111112;
  box-shadow:0 24px 70px rgba(0,0,0,.65);
  transform:translateY(6px) scale(.992);
}
.conficon{
  width:34px;
  height:34px;
  margin:0 0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  background:rgba(240,74,74,.1);
  color:#ff9292;
  font-size:15px;
  font-weight:700;
}
.conftitle{margin-bottom:5px;color:#ededee;font-size:14px;font-weight:650;}
.confsub{margin-bottom:18px;color:#85858a;font-size:11.5px;line-height:1.55;}
.confbtns{gap:7px;}

.toast{
  right:18px;
  bottom:18px;
  min-width:0;
  max-width:min(380px,calc(100vw - 36px));
  padding:10px 13px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:8px;
  background:#19191a;
  color:#d8d8db;
  box-shadow:0 16px 42px rgba(0,0,0,.5);
  backdrop-filter:none;
  font-size:11.5px;
}
.toast .tdot{width:6px;height:6px;background:#88888d;box-shadow:none;}
.toast.is-progress .tdot{background:#9a9a9f;animation:toastPulse 1s ease-in-out infinite;}
.toast.is-success .tdot{background:#6eb487;}
.toast.is-error .tdot{background:#ef7777;}
@keyframes toastPulse{50%{opacity:.35;}}

.ctxmenu{
  min-width:190px;
  max-width:240px;
  padding:5px;
  border:1px solid rgba(255,255,255,.065);
  border-radius:8px;
  background:#121213;
  box-shadow:0 20px 54px rgba(0,0,0,.58);
}
.ctxmenu-head{padding:5px 8px 6px;color:#606065;font-size:8.5px;letter-spacing:.1em;}
.ctxmenu-item{min-height:34px;padding:0 9px;border-radius:6px;color:#9b9ba0;font-weight:550;}
.ctxmenu-item:hover,.ctxmenu-item:focus-visible{background:#202021;color:#f1f1f2;box-shadow:none!important;}
.ctxmenu-item.danger{color:#d98787;}
.ctxmenu-item.danger:hover,.ctxmenu-item.danger:focus-visible{background:rgba(240,74,74,.1);color:#ffaaaa;}
.ctxmenu-sep{height:4px;margin:1px 0;background:transparent;}

.task-ov{align-items:center;justify-content:center;}
.task-modal{
  width:680px;
  max-width:calc(100vw - 40px);
  height:auto;
  max-height:min(88dvh,760px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.075);
  border-radius:10px;
  background:#101011;
  box-shadow:0 28px 80px rgba(0,0,0,.64);
}
.task-mh,.task-mbody,.task-mfoot{background:#101011;border:0;}
.task-mbody{min-height:0;overflow-y:auto;overscroll-behavior:contain;}
.task-section{background:#171718;border:0;}
.task-title-inp::placeholder,.task-notes-inp::placeholder,.task-link-inp::placeholder{color:#55555a;opacity:1;}
.task-link-inp,.task-date-btn,.task-date-native{border:1px solid transparent;background:#1c1c1d;}
.task-link-inp:focus{border-color:rgba(255,255,255,.15);background:#202021;}
.task-img-add{border-color:#353538;background:#131314;}
.task-img-add:hover{border-color:#55555a;background:#171718;}
.task-mfoot{border-top:1px solid rgba(255,255,255,.045);}

#selbar{
  padding:7px;
  gap:5px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:9px;
  background:#151516;
  box-shadow:0 18px 50px rgba(0,0,0,.56);
  backdrop-filter:none;
}
.selcnt{border:0;color:#85858a;padding:0 7px;}
.selbtn{min-height:34px;padding:0 10px;border-radius:6px;background:#1d1d1e;color:#aaaab0;}
.selbtn:hover{background:#272728;color:#fff;}
.selbtn.accent-btn{background:#252526;color:#ededee;}
.selbtn.danger{color:#d98787;}

.panel:not(#panel-favorites) .empty-state{min-height:240px;padding:22px;}
.panel:not(#panel-favorites) .empty-card{
  width:min(380px,100%);
  padding:22px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.panel:not(#panel-favorites) .empty-icon{
  width:40px;
  height:40px;
  margin-bottom:12px;
  border-radius:8px;
  background:#151516;
  color:#717176;
  box-shadow:none;
}
.panel:not(#panel-favorites) .empty-title{color:#d8d8db;font-size:13px;letter-spacing:0;}
.panel:not(#panel-favorites) .empty-copy{color:#68686d;font-size:11.5px;line-height:1.55;}

@media(max-width:640px){
  .ov,.confov,.task-ov,.newtag-ov{padding:0;align-items:stretch;}
  .modal,.mmod,.newtag-box,.task-modal{
    width:100vw;
    max-width:none;
    height:100dvh;
    max-height:none;
    border:0;
    border-radius:0;
  }
  .mh,.task-mh{min-height:54px;padding-left:13px;padding-right:13px;}
  .mbody,.m-body,.task-mbody{flex:1;padding:12px 13px 16px;}
  .mfoot,.task-mfoot{min-height:58px;padding:10px 13px;}
  .mfoot .bghst,.mfoot .boutl,.mfoot .bcanc,.mfoot .bdel,.mfoot .bsave{flex:1;}
  .confov{align-items:center;padding:16px;}
  .confbox{width:100%;padding:18px;}
  .toast{left:12px;right:12px;bottom:12px;max-width:none;}
  #selbar{max-width:calc(100vw - 16px);overflow-x:auto;}
}

@media(prefers-reduced-motion:reduce){
  .modal,.mmod,.newtag-box,.confbox,.toast,.ctxmenu,.task-modal{transition:none!important;animation:none!important;}
  .is-busy::before,.toast.is-progress .tdot{animation-duration:1.4s;}
}

/* V1 GOALS ------------------------------------------------------------ */
#panel-goals{height:100%;overflow:hidden;}
#goals-root{height:100%;min-height:0;}
.goals-shell{
  width:min(1180px,100%);
  height:100%;
  min-height:0;
  margin:0 auto;
  padding:28px 32px 34px;
  display:flex;
  flex-direction:column;
  color:var(--text);
}
.goals-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px;}
.goals-kicker{display:block;margin:0 0 7px;color:#5d5d62;font-size:9px;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:0;}
.goals-header h1{margin:0 0 6px;color:#f0f0f2;font-size:24px;font-weight:580;line-height:1.15;letter-spacing:0;}
.goals-header p{margin:0;color:#6b6b70;font-size:11.5px;line-height:1.5;}
.goals-metrics{display:flex;align-items:flex-start;gap:28px;padding-top:4px;flex-shrink:0;}
.goals-metrics>div{min-width:62px;display:flex;flex-direction:column;gap:3px;}
.goals-metrics strong{color:#d9d9dc;font-size:17px;font-weight:560;line-height:1.1;font-variant-numeric:tabular-nums;}
.goals-metrics span{color:#56565b;font-size:9.5px;white-space:nowrap;}
.goals-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;}
.goals-tabs{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:8px;background:#111112;}
.goals-tabs button{height:32px;min-width:90px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:#68686d;font:500 11px 'Geist',sans-serif;cursor:pointer;transition:background .13s ease,color .13s ease;}
.goals-tabs button:hover{color:#bcbcc0;}
.goals-tabs button.on{background:#202021;color:#efeff1;box-shadow:0 1px 2px rgba(0,0,0,.3);}
.goals-actions{display:flex;align-items:center;gap:7px;}
.goal-search{width:210px;height:34px;display:flex;align-items:center;gap:7px;padding:0 10px;border-radius:7px;background:#141415;color:#59595e;transition:background .13s ease,color .13s ease;}
.goal-search:focus-within{background:#1a1a1b;color:#8e8e93;}
.goal-search svg{width:13px;height:13px;flex:0 0 auto;}
.goal-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#d8d8db;font:400 11px 'Geist',sans-serif;letter-spacing:0;}
.goal-search input::placeholder{color:#55555a;}
.goal-add,.goal-primary{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:0;border-radius:7px;background:#e8e8ea;color:#111112;font:600 10.5px 'Geist',sans-serif;cursor:pointer;transition:background .13s ease,transform .13s ease;}
.goal-add:hover,.goal-primary:hover{background:#fff;}
.goal-add:active,.goal-primary:active{transform:translateY(1px);}
.goal-add svg{width:13px;height:13px;}
.goals-content{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:0 3px 30px 0;scrollbar-gutter:stable;}
.goals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start;}
.goal-card{min-width:0;min-height:268px;padding:17px;border:0;outline:1px solid transparent;border-radius:8px;background:#111112;cursor:pointer;transition:background .13s ease,outline-color .13s ease;}
.goal-card:hover,.goal-card:focus-visible{background:#151516;outline-color:#252527;}
.goal-card:focus-visible{outline-color:#4a4a4f;}
.goal-card-top,.goal-card-foot,.goal-progress-head,.goal-detail-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.goal-category{display:inline-flex;align-items:center;min-height:21px;padding:0 7px;border-radius:5px;background:#1b1b1c;color:#747479;font-size:8.5px;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:0;white-space:nowrap;}
.goal-status{display:inline-flex;align-items:center;gap:6px;color:#8c8c91;font-size:9.5px;font-weight:550;line-height:1;white-space:nowrap;}
.goal-status i{width:5px;height:5px;border-radius:50%;background:#77777c;}
.goal-status.good{color:#82a68e}.goal-status.good i{background:#6f9d7f;}
.goal-status.risk{color:#ad986b}.goal-status.risk i{background:#aa8d55;}
.goal-status.bad{color:#bd7777}.goal-status.bad i{background:#b76262;}
.goal-status.done{color:#8e8e93}.goal-status.done i{background:#77777c;}
.goal-card-copy{min-height:78px;padding:17px 0 12px;}
.goal-card-copy h2{margin:0;color:#e7e7e9;font-size:15px;font-weight:570;line-height:1.35;letter-spacing:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.goal-card-copy p{margin:7px 0 0;color:#68686d;font-size:10.5px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.goal-progress-head{margin-bottom:7px;color:#5d5d62;font-size:9px;}
.goal-progress-head strong{color:#8d8d92;font-size:9.5px;font-weight:550;font-variant-numeric:tabular-nums;}
.goal-progress{height:4px;overflow:hidden;border-radius:999px;background:#242426;}
.goal-progress i{display:block;height:100%;border-radius:inherit;background:#8d8d92;transition:width .18s ease;}
.goal-progress.large{height:5px;}
.goal-milestones{display:flex;flex-direction:column;gap:4px;padding-top:14px;}
.goal-milestone{min-width:0;height:23px;display:flex;align-items:center;gap:7px;padding:0;border:0;background:transparent;color:#717176;font:400 9.5px 'Geist',sans-serif;text-align:left;cursor:pointer;}
.goal-milestone:disabled{cursor:default;}
.goal-milestone>span,.goal-check{width:15px;height:15px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #3b3b3e;border-radius:4px;background:#171718;color:#111112;font-size:9px;}
.goal-milestone b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:450;}
.goal-milestone:hover:not(:disabled)>span{border-color:#68686d;}
.goal-milestone.done{color:#55555a;}
.goal-milestone.done>span,.goal-check.done{border-color:#b9b9bd;background:#b9b9bd;}
.goal-milestone.done b{text-decoration:line-through;text-decoration-thickness:1px;}
.goal-more{padding:2px 0 0 22px;color:#505055;font-size:8.5px;}
.goal-card-foot{margin-top:15px;padding-top:13px;border-top:1px solid rgba(255,255,255,.045);}
.goal-owner{min-width:0;display:flex;align-items:center;gap:7px;}
.goal-avatar{width:23px;height:23px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;object-fit:cover;background:#242426;color:#bcbcc1;font-size:7px;font-weight:600;}
.goal-avatar.small{width:20px;height:20px;font-size:6px;}
.goal-avatar-fallback{border:1px solid rgba(255,255,255,.04);}
.goal-owner>span{max-width:130px;overflow:hidden;text-overflow:ellipsis;color:#747479;font-size:9.5px;white-space:nowrap;}
.goal-foot-meta{display:flex;align-items:center;gap:9px;color:#55555a;font-size:8.5px;white-space:nowrap;}
.goal-due{color:#67676c;font-weight:500;}
.goal-due.soon{color:#aa9160;}.goal-due.overdue{color:#bb6d6d;}
.goals-empty,.goal-state{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;}
.goals-empty-icon{width:42px;height:42px;margin-bottom:13px;display:grid;place-items:center;border-radius:8px;background:#151516;color:#66666b;}
.goals-empty-icon svg{width:19px;height:19px;}
.goals-empty strong,.goal-state strong{color:#aaaab0;font-size:12px;font-weight:550;}
.goals-empty button{height:31px;margin-top:13px;padding:0 12px;border:0;border-radius:6px;background:#202021;color:#c7c7cb;font:550 10px 'Geist',sans-serif;cursor:pointer;}
.goals-empty button:hover{background:#29292b;color:#fff;}

.goal-overlay{position:fixed;inset:0;z-index:10080;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.72);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;}
.goal-overlay.on{opacity:1;visibility:visible;pointer-events:auto;}
.goal-modal{width:min(680px,calc(100vw - 32px));max-height:min(88dvh,820px);overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:#101011;box-shadow:0 28px 80px rgba(0,0,0,.66);transform:translateY(8px);transition:transform .16s ease;}
.goal-overlay.on .goal-modal{transform:none;}
#goal-modal-content,.goal-editor{max-height:inherit;display:flex;flex-direction:column;min-height:0;}
.goal-modal-head{min-height:68px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 20px 12px;}
.goal-modal-head h2{margin:7px 0 0;color:#ededee;font-size:20px;font-weight:570;line-height:1.3;letter-spacing:0;}
.goal-close,.goal-remove{display:grid;place-items:center;border:0;background:transparent;color:#66666b;cursor:pointer;transition:background .13s ease,color .13s ease;}
.goal-close{width:30px;height:30px;border-radius:6px;flex:0 0 auto;}
.goal-close:hover,.goal-remove:hover{background:#202021;color:#d5d5d8;}
.goal-close svg,.goal-remove svg{width:14px;height:14px;}
.goal-detail-body,.goal-editor-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px 20px 22px;}
.goal-detail-description{max-width:600px;margin:0 0 22px;color:#85858a;font-size:11.5px;line-height:1.65;white-space:pre-wrap;}
.goal-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:25px;}
.goal-detail-meta>div{min-height:62px;padding:12px;border-radius:7px;background:#171718;display:flex;flex-direction:column;justify-content:center;gap:8px;}
.goal-detail-meta>div>span{color:#55555a;font-size:8.5px;font-weight:550;text-transform:uppercase;letter-spacing:0;}
.goal-detail-meta strong{font-size:10.5px;font-weight:520;}
.goal-detail-owner{display:flex;align-items:center;gap:7px;color:#b9b9bd;}
.goal-detail-progress{margin-bottom:26px;}
.goal-detail-progress>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;color:#747479;font-size:10px;}
.goal-detail-progress strong{color:#bcbcc0;font-weight:550;font-variant-numeric:tabular-nums;}
.goal-detail-section-head{margin-bottom:10px;}
.goal-detail-section-head>strong{color:#bdbdc1;font-size:11px;font-weight:550;}
.goal-detail-section-head>span{color:#59595e;font-size:9.5px;}
.goal-detail-section-head>button{height:27px;display:flex;align-items:center;gap:5px;padding:0 8px;border:0;border-radius:5px;background:#1b1b1c;color:#8b8b90;font:500 9.5px 'Geist',sans-serif;cursor:pointer;}
.goal-detail-section-head>button:hover{background:#232324;color:#d5d5d8;}
.goal-detail-section-head>button svg{width:11px;height:11px;}
.goal-detail-milestones{display:flex;flex-direction:column;gap:5px;}
.goal-detail-milestone{min-height:38px;display:flex;align-items:center;gap:9px;padding:0 11px;border:0;border-radius:6px;background:#171718;color:#929297;font:450 10.5px 'Geist',sans-serif;text-align:left;cursor:pointer;}
.goal-detail-milestone:hover:not(:disabled){background:#1c1c1d;color:#bdbdc1;}
.goal-detail-milestone:disabled{cursor:default;}
.goal-detail-milestone>span{width:17px;height:17px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #414144;border-radius:4px;color:#111112;font-size:9px;}
.goal-detail-milestone b{font-weight:450;}
.goal-detail-milestone.done{color:#5e5e63;}
.goal-detail-milestone.done>span{border-color:#b9b9bd;background:#b9b9bd;}
.goal-detail-milestone.done b{text-decoration:line-through;}
.goal-detail-empty{min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#151516;color:#55555a;font-size:9.5px;}
.goal-modal-foot{min-height:58px;display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:10px 20px;border-top:1px solid rgba(255,255,255,.045);}
.goal-secondary{height:34px;padding:0 13px;border:0;border-radius:7px;background:#202021;color:#aaaab0;font:550 10.5px 'Geist',sans-serif;cursor:pointer;}
.goal-secondary:hover{background:#29292b;color:#fff;}
.goal-secondary.quiet{margin-right:auto;background:transparent;color:#68686d;}
.goal-secondary.quiet:hover{background:rgba(177,87,87,.08);color:#bd7474;}
.goal-primary{min-width:96px;}
.goal-primary:disabled{opacity:.55;cursor:default;transform:none;}
.goal-editor-body{display:flex;flex-direction:column;gap:14px;}
.goal-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.goal-field{min-width:0;display:flex;flex-direction:column;gap:7px;}
.goal-field>span,.goal-progress-editor span{color:#626267;font-size:8.5px;font-weight:600;text-transform:uppercase;letter-spacing:0;}
.goal-field input,.goal-field textarea,.goal-field select{width:100%;border:1px solid transparent;outline:0;border-radius:7px;background:#19191a;color:#d9d9dc;font:400 11px 'Geist',sans-serif;letter-spacing:0;transition:background .13s ease,border-color .13s ease;}
.goal-field input,.goal-field select{height:36px;padding:0 11px;}
.goal-field textarea{height:72px;min-height:72px;padding:9px 11px;resize:vertical;line-height:1.5;}
.goal-field input:focus,.goal-field textarea:focus,.goal-field select:focus{border-color:#3b3b3e;background:#1d1d1e;}
.goal-field input::placeholder,.goal-field textarea::placeholder{color:#515156;}
.goal-progress-editor{padding:10px 12px;border-radius:7px;background:#171718;}
.goal-progress-editor>div{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
.goal-progress-editor output{color:#bcbcc0;font-size:10px;font-weight:550;font-variant-numeric:tabular-nums;}
.goal-progress-editor input{width:100%;height:4px;margin:0;accent-color:#bcbcc0;cursor:pointer;}
.goal-milestone-editor{padding-top:2px;}
#goal-milestone-editor-list{display:flex;flex-direction:column;gap:5px;}
.goal-milestone-edit{height:38px;display:flex;align-items:center;gap:8px;padding:0 8px;border-radius:6px;background:#171718;}
.goal-check{padding:0;cursor:pointer;}
.goal-milestone-edit input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#bdbdc1;font:400 10.5px 'Geist',sans-serif;letter-spacing:0;}
.goal-milestone-edit input::placeholder{color:#505055;}
.goal-remove{width:26px;height:26px;border-radius:5px;flex:0 0 auto;}

@media(max-width:900px){
  .goals-shell{padding:24px 22px 28px;}
  .goals-header{gap:18px;}
  .goals-metrics{gap:16px;}
  .goals-metrics>div{min-width:55px;}
}
@media(max-width:760px){
  #panel-goals{overflow:auto;}
  #goals-root{height:auto;min-height:100%;}
  .goals-shell{height:auto;min-height:100%;padding:18px 14px 28px;}
  .goals-header{flex-direction:column;margin-bottom:18px;}
  .goals-metrics{width:100%;justify-content:space-between;gap:8px;}
  .goals-toolbar{align-items:stretch;flex-direction:column;}
  .goals-tabs{align-self:flex-start;}
  .goals-actions{width:100%;}
  .goal-search{width:auto;flex:1;}
  .goals-grid{grid-template-columns:1fr;}
  .goal-card{min-height:0;}
}
@media(max-width:560px){
  .goals-tabs{width:100%;}
  .goals-tabs button{min-width:0;flex:1;padding:0 7px;}
  .goal-add{width:36px;padding:0;}
  .goal-add span{display:none;}
  .goal-overlay{align-items:stretch;padding:0;}
  .goal-modal{width:100vw;max-height:none;height:100dvh;border:0;border-radius:0;}
  .goal-modal-head{min-height:70px;padding:16px 14px 12px;}
  .goal-modal-head h2{font-size:18px;}
  .goal-detail-body,.goal-editor-body{padding-left:14px;padding-right:14px;}
  .goal-detail-meta{grid-template-columns:1fr;}
  .goal-detail-meta>div{min-height:52px;}
  .goal-field-grid{grid-template-columns:1fr;}
  .goal-modal-foot{padding:10px 14px;}
  .goal-modal-foot .goal-secondary:not(.quiet),.goal-modal-foot .goal-primary{flex:1;}
}
@media(prefers-reduced-motion:reduce){
  .goal-card,.goal-overlay,.goal-modal,.goal-progress i{transition:none!important;}
}
