/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 01 · RESET, VARIABLES & ANIMACIONES                       ║
   ╚══════════════════════════════════════════════════════════════════╝ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{
  min-height:100%;
  font-family:'Nunito','SF Pro Display','Segoe UI',sans-serif;
  color:var(--txt);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}
a{text-decoration:none;color:inherit}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-thumb{background:rgba(0,0,0,.14);border-radius:10px}

@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes notifSlideIn{from{opacity:0;transform:translateX(110%) scale(.9)}to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes notifSlideOut{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(110%)}}
@keyframes notifBar{from{width:100%}to{width:0}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
@keyframes slideR{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:none}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes uiFloat{0%{opacity:0;transform:translateY(16px) scale(.985)}100%{opacity:1;transform:none}}
@keyframes uiFade{0%{opacity:0}100%{opacity:1}}
@keyframes uiPop{0%{opacity:0;transform:translateY(10px) scale(.94)}100%{opacity:1;transform:translateY(0) scale(1)}}
.fade-up{animation:uiFloat .42s cubic-bezier(.22,1,.36,1) both}
.fade-in{animation:uiFade .3s ease both}
.pop-in{animation:uiPop .34s cubic-bezier(.22,1,.36,1) both}
.slide-r{animation:slideR .34s cubic-bezier(.22,1,.36,1) both}
.spin-a{animation:spin .8s linear infinite}
.ch{transition:transform .24s cubic-bezier(.22,1,.36,1),box-shadow .24s cubic-bezier(.22,1,.36,1)}
.ch:hover{transform:translateY(-3px) scale(1.003);box-shadow:0 16px 36px rgba(0,0,0,.13)!important}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 02 · TEMAS                                               ║
   ║  studio  — Forest dark (verde oscuro, acento lima)              ║
   ║  aurora  — Stellar Night (paleta: Hēi Sè · Strawberry · Eggplant) ║
   ╚══════════════════════════════════════════════════════════════════╝ */

/* ════════════════════════════════════════════════════════
   TEMA 1 · STUDIO  (defecto · variables base en :root)
   ════════════════════════════════════════════════════════ */
:root {
  color-scheme: dark;

  /* ── Sidebar ── */
  --sb: linear-gradient(170deg,#061008 0%,#091a0c 35%,#0d2314 65%,#102b17 100%);

  /* ── Fondos ── */
  --wrap:    #0b0d09;
  --main-bg: #0b0d09;

  /* ── Acento verde lima ── */
  --acc:   #4ade80;
  --acc2:  #86efac;
  --acc-g: linear-gradient(135deg,#22c55e,#4ade80);

  /* ── Superficies ── */
  --shell: #10160d;
  --card:  #181f13;
  --inp:   #10160d;
  --inp-c: #d8e8d0;

  /* ── Texto ── */
  --txt:  #d8e8d0;
  --txt2: #6a916a;

  /* ── Bordes ── */
  --bdr: #202e1a;

  /* ── Sidebar UI ── */
  --sb-txt:   rgba(216,232,208,.78);
  --sb-act:   rgba(216,232,208,.97);
  --sb-act-c: #4ade80;
  --sb-card:  rgba(255,255,255,.07);
  --sb-name:  #d8e8d0;
  --sb-sub:   rgba(216,232,208,.5);

  /* ── Estructura ── */
  --hdr:    #10160d;
  --hdr-b:  #202e1a;
  --footer: #10160d;

  /* ── Login ── */
  --login-grad: linear-gradient(135deg,#061008,#0d2314,#22c55e);

  /* ── Timing & sombras ── */
  --ui-fast: .14s;
  --ui-med:  .22s;
  --ui-slow: .42s;
  --ui-ease: cubic-bezier(.22,1,.36,1);
  --ui-shadow-soft: 0 10px 28px rgba(0,0,0,.35);
  --ui-shadow-pop:  0 18px 42px rgba(0,0,0,.42);
  --ui-shadow-dark: 0 16px 42px rgba(0,0,0,.55);

  /* ── Shell sizing ── */
  --sidebar-shell-w: 220px;
  --sidebar-shell-w-tablet: 204px;
  --sidebar-shell-w-overlay: min(84vw,320px);
}

/* ════════════════════════════════════════════════════════
   APLICACIÓN DE VARIABLES — elementos compartidos
   ════════════════════════════════════════════════════════ */
#app              { background: var(--wrap)    !important }
.shell            { background: var(--shell)   !important }
.sidebar          { background: var(--sb)      !important }
.main, .content   { background: var(--main-bg) !important }
html.booting #ls,
html.booting #app{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
html.booting body{
  background: var(--wrap) !important;
}

/* Nav sidebar */
.nb               { color: var(--sb-txt) !important }
.nb.active        {
  background: rgba(74,222,128,.14) !important;
  color: var(--acc) !important;
  font-weight: 800 !important;
  box-shadow: inset 3px 0 0 var(--acc), 0 4px 16px rgba(74,222,128,.15) !important;
}
.nb:hover:not(.active) { background: rgba(255,255,255,.09) !important; color: rgba(255,255,255,.9) !important }

/* Botones */
.bp               { background: var(--acc-g) !important; box-shadow: 0 8px 24px rgba(34,197,94,.28) }

/* Sidebar card & user block */
.site-card        { background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.11) !important }
.site-card h4, .logo-text { color: var(--sb-name) !important }
.site-card p, .logo-ver   { color: var(--sb-sub)  !important }
.ub               { background: rgba(255,255,255,.06) !important; border-color: rgba(255,255,255,.11) !important }

/* Header & Footer */
.hdr              { background: var(--hdr)    !important; border-color: var(--hdr-b) !important }
.hdr h1           { color: var(--txt)  !important }
.hdr p            { color: var(--txt2) !important }
.footer           { background: var(--footer) !important; border-color: var(--hdr-b) !important }

/* Tarjetas y superficies */
.card             { background: var(--card) !important; border-color: var(--bdr) !important }
.tcard            { background: var(--card) !important; border-color: var(--bdr) !important }
.tcard:hover      { border-color: var(--acc) !important }
.sc, .cc          { background: var(--card) !important; border-color: var(--bdr) !important }

/* Paneles y modales — usa variable para compatibilidad con todos los temas */
.cp, .srch-box, .modal, .np { background: var(--card) !important; border-color: var(--bdr) !important }
.um                          { background: var(--card) !important; border-color: var(--bdr) !important }

.cp-body, .comment-bubble { background: var(--inp) !important }

/* Inputs */
.fi               { background: var(--inp)   !important; border-color: var(--bdr) !important; color: var(--inp-c) !important }
.fi::placeholder  { color: var(--txt2) !important; opacity: .7 }

/* Botones icono y secundarios */
.ib               { background: rgba(255,255,255,.04) !important; border-color: var(--bdr) !important; color: var(--txt2) !important }
.ib:hover         { border-color: var(--acc) !important; color: var(--acc) !important; box-shadow: 0 8px 20px rgba(74,222,128,.15) }
.bs               { background: rgba(255,255,255,.06) !important; color: var(--txt) !important }
.bw               { background: rgba(255,255,255,.04) !important; color: var(--txt) !important }
.ntb              { background: var(--card) !important; border-color: var(--bdr) !important; color: var(--txt) !important }
.ntb:hover        { border-color: var(--acc) !important; color: var(--acc) !important }

/* Tabs */
.tabs             { background: rgba(255,255,255,.04) !important }
.tab              { color: var(--txt2) !important }
.tab.active       { background: var(--card) !important; color: var(--acc) !important; box-shadow: 0 4px 12px rgba(0,0,0,.3) }

/* Misc */
.mh, .cp-head, .cp-foot { border-color: var(--bdr) !important }
.mh span          { color: var(--txt) !important }
.settings-hero    { background: var(--card) !important; border: 1px solid var(--bdr) !important }
.settings-soft-panel { background: var(--inp) !important; border: 1px solid var(--bdr) !important }
.rb               { background: var(--inp) !important; border-color: var(--bdr) !important }
.spl .stl         { color: var(--txt2) !important }
.ver-badge        { background: rgba(255,255,255,.06) !important; color: var(--txt2) !important }
.email-method-btn { padding:12px;border-radius:12px;border:2px solid var(--bdr);background:var(--inp);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .18s,background .18s,box-shadow .18s }
.email-method-btn .em-title { font-size:13px;font-weight:800;color:var(--txt) !important }
.email-method-btn .em-sub   { font-size:11px;color:var(--txt2) !important }
.email-method-btn.active    { border-color:var(--acc) !important;background:var(--card) !important;box-shadow:0 6px 18px rgba(0,0,0,.25) !important }

/* Status badges — Studio */
.ct.ov3 { background: rgba(239,68,68,.15)    !important; color: #fca5a5 !important }
.ct.dn  { background: rgba(74,222,128,.12)   !important; color: #86efac !important }
.ct.pd  { background: rgba(74,222,128,.08)   !important; color: #6ee7b7 !important }

/* Coach 2.0 Light - CoachPro design system */
[data-theme="coach2light"]{
  color-scheme: light;

  --sb: linear-gradient(180deg,#f6fbfb 0%,#f3f8fb 100%);

  --wrap:    linear-gradient(135deg,#9fd4d0 0%,#b8cce8 52%,#c4b8e0 100%);
  --main-bg: linear-gradient(160deg,#e8f6f4 0%,#eef3fb 52%,#eff2ff 100%);

  --acc:   #0b9e8e;
  --acc2:  #0dc5af;
  --acc-g: linear-gradient(135deg,#0b9e8e,#0dc5af);

  --shell: rgba(255,255,255,.76);
  --card:  #ffffff;
  --inp:   #f8fbff;
  --inp-c: #111827;

  --txt:  #111827;
  --txt2: #6b7280;

  --bdr: #eef0f5;

  --sb-txt:   #6b7280;
  --sb-act:   #ffffff;
  --sb-act-c: #0b9e8e;
  --sb-card:  rgba(255,255,255,.74);
  --sb-name:  #111827;
  --sb-sub:   #6b7280;
  --dash-filter-bg:#f5f9fb;
  --dash-filter-border:#d7e3ea;
  --dash-filter-color:#607186;
  --dash-filter-hover-border:#1E6E72;
  --dash-filter-hover-color:#114f58;
  --dash-filter-active-bg:#1E6E72;
  --dash-filter-active-border:#1E6E72;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(30,110,114,.18);
  --dash-filter-pill-bg:rgba(255,255,255,.24);

  --hdr:    rgba(255,255,255,.72);
  --hdr-b:  rgba(238,240,245,.92);
  --footer: rgba(255,255,255,.72);

  --login-grad: linear-gradient(135deg,#9fd4d0,#b8cce8,#c4b8e0);

  --ui-shadow-soft: 0 4px 20px rgba(15,23,42,.06);
  --ui-shadow-pop:  0 10px 30px rgba(15,23,42,.09);
  --ui-shadow-dark: 0 18px 42px rgba(15,23,42,.12);
}
[data-theme="coach2light"] #app{background:var(--wrap)!important}
[data-theme="coach2light"] .shell{
  background:rgba(255,255,255,.72)!important;
  backdrop-filter:blur(20px)!important;
  border:1px solid rgba(255,255,255,.58)!important;
  box-shadow:0 20px 44px rgba(15,23,42,.10)!important;
}
[data-theme="coach2light"] .main,
[data-theme="coach2light"] .content{background:transparent!important}
[data-theme="coach2light"] .main{position:relative}
[data-theme="coach2light"] .main::before{
  content:'';
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 8% 12%, rgba(11,158,142,.12), transparent 28%),
    radial-gradient(circle at 88% 14%, rgba(167,139,250,.18), transparent 24%),
    radial-gradient(circle at 84% 72%, rgba(248,250,252,.42), transparent 30%);
  pointer-events:none;
  z-index:0;
}
[data-theme="coach2light"] .content{position:relative;z-index:1}
[data-theme="coach2light"] .sidebar{
  background:rgba(255,255,255,.56)!important;
  border-right:1px solid #eef0f5!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.62)!important;
}
[data-theme="coach2light"] .nb.active{
  background:linear-gradient(135deg,#0b9e8e,#0dc5af)!important;
  color:#ffffff!important;
  box-shadow:0 10px 22px rgba(11,158,142,.20)!important;
}
[data-theme="coach2light"] .nb:hover:not(.active){
  background:rgba(11,158,142,.08)!important;
  color:#111827!important;
}
[data-theme="coach2light"] .card,
[data-theme="coach2light"] .tcard,
[data-theme="coach2light"] .sc,
[data-theme="coach2light"] .cc{
  background:linear-gradient(180deg,#ffffff 0%,#fcfdff 100%)!important;
  border-color:#eef0f5!important;
  box-shadow:0 4px 20px rgba(15,23,42,.06)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2light"] .hdr,
[data-theme="coach2light"] .footer{
  background:rgba(255,255,255,.64)!important;
  border-color:#eef0f5!important;
  backdrop-filter:blur(12px)!important;
}
[data-theme="coach2light"] .hdr h1,
[data-theme="coach2light"] .mh span,
[data-theme="coach2light"] .card h3,
[data-theme="coach2light"] .card h4,
[data-theme="coach2light"] .sc h3,
[data-theme="coach2light"] .sc h4,
[data-theme="coach2light"] .cc h3,
[data-theme="coach2light"] .cc h4,
[data-theme="coach2light"] .tcard h4,
[data-theme="coach2light"] .sb-brand-name,
[data-theme="coach2light"] .sb-username,
[data-theme="coach2light"] .sb-fab-label,
[data-theme="coach2light"] .dash-mini-task-title,
[data-theme="coach2light"] .dash-card-title,
[data-theme="coach2light"] .dash-kpi-label,
[data-theme="coach2light"] .dash-project-name,
[data-theme="coach2light"] .dash-activity-title,
[data-theme="coach2light"] .ub-name,
[data-theme="coach2light"] .logo-text{color:#111827!important}
[data-theme="coach2light"] .hdr p,
[data-theme="coach2light"] .footer,
[data-theme="coach2light"] .ver-badge,
[data-theme="coach2light"] .card p,
[data-theme="coach2light"] .sc p,
[data-theme="coach2light"] .cc p,
[data-theme="coach2light"] .tcard p,
[data-theme="coach2light"] .sb-greeting,
[data-theme="coach2light"] .sb-mini-heading,
[data-theme="coach2light"] .sb-section-label,
[data-theme="coach2light"] .sb-cta-note,
[data-theme="coach2light"] .dash-kpi-sub,
[data-theme="coach2light"] .dash-card-sub,
[data-theme="coach2light"] .dash-project-meta,
[data-theme="coach2light"] .dash-activity-meta,
[data-theme="coach2light"] .ub-greeting,
[data-theme="coach2light"] .logo-ver,
[data-theme="coach2light"] .nb:not(.active){color:#6b7280!important}
[data-theme="coach2light"] .bp{
  background:linear-gradient(135deg,#0b9e8e 0%,#0d5a6a 100%)!important;
  box-shadow:0 14px 26px rgba(11,158,142,.24)!important;
}
[data-theme="coach2light"] .ib,
[data-theme="coach2light"] .bw,
[data-theme="coach2light"] .ntb{
  background:rgba(255,255,255,.94)!important;
  border-color:#eef0f5!important;
  color:#0b9e8e!important;
}
[data-theme="coach2light"] .ib:hover,
[data-theme="coach2light"] .bw:hover,
[data-theme="coach2light"] .ntb:hover{
  border-color:#0b9e8e!important;
  color:#08706a!important;
  box-shadow:0 10px 20px rgba(11,158,142,.12)!important;
}
[data-theme="coach2light"] .bs{
  background:#ffffff!important;
  border-color:#eef0f5!important;
  color:#111827!important;
}
[data-theme="coach2light"] .fi{
  background:#f8fbff!important;
  border-color:#eef0f5!important;
  color:#111827!important;
}
[data-theme="coach2light"] .fi::placeholder{color:#8b95a7!important;opacity:1}
[data-theme="coach2light"] .tabs{background:rgba(255,255,255,.72)!important}
[data-theme="coach2light"] .tab{color:#6b7280!important}
[data-theme="coach2light"] .tab.active{
  background:#ffffff!important;
  color:#0b9e8e!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
}
[data-theme="coach2light"] .cp,
[data-theme="coach2light"] .srch-box,
[data-theme="coach2light"] .modal,
[data-theme="coach2light"] .np{
  background:rgba(255,255,255,.96)!important;
  border-color:#eef0f5!important;
  box-shadow:0 16px 36px rgba(15,23,42,.12)!important;
  backdrop-filter:blur(16px)!important;
}
[data-theme="coach2light"] .um{
  background:#123b48!important;
  border-color:rgba(255,255,255,.10)!important;
}
[data-theme="coach2light"] .cp-body,
[data-theme="coach2light"] .comment-bubble,
[data-theme="coach2light"] .rb,
[data-theme="coach2light"] .settings-hero,
[data-theme="coach2light"] .settings-soft-panel{
  background:#ffffff!important;
  border-color:#eef0f5!important;
}
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(247,250,255,.92))!important;
  border-color:#eef0f5!important;
  box-shadow:0 8px 22px rgba(15,23,42,.08)!important;
}
[data-theme="coach2light"] .logo-ver{
  background:rgba(11,158,142,.08)!important;
  color:#6b7280!important;
  border:1px solid rgba(11,158,142,.10)!important;
}
[data-theme="coach2light"] .sb-brand-mark{
  background:linear-gradient(180deg,rgba(11,158,142,.12),rgba(13,197,175,.08))!important;
  color:#0b9e8e!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 8px 18px rgba(11,158,142,.10)!important;
}
[data-theme="coach2light"] .nb-icon,
[data-theme="coach2light"] .ib{color:#0b9e8e!important}
[data-theme="coach2light"] .nb.active .nb-icon{
  background:rgba(255,255,255,.14)!important;
  color:#ffffff!important;
}
[data-theme="coach2light"] .nb-icon{opacity:.84!important}
[data-theme="coach2light"] .sb-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.70),rgba(250,252,255,.58))!important;
  border-color:#eef0f5!important;
  box-shadow:0 10px 24px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
[data-theme="coach2light"] .sb-cta-card{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(244,249,255,.66))!important;
  border-color:#eef0f5!important;
}
[data-theme="coach2light"] .sb-tools-card{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(246,250,255,.64))!important;
  border-color:#eef0f5!important;
}
[data-theme="coach2light"] .sb-tools-card .sb-mini-heading{color:#6b7280!important}
[data-theme="coach2light"] #qt-cycle{
  background:#ffffff!important;
  border-color:#eef0f5!important;
  color:#4d5b70!important;
  box-shadow:0 8px 18px rgba(15,23,42,.06)!important;
}
[data-theme="coach2light"] #qt-label{color:#4d5b70!important}
[data-theme="coach2light"] #sb-theme-row button:last-child{
  background:#ffffff!important;
  border-color:#eef0f5!important;
  color:#6b7280!important;
}
[data-theme="coach2light"] .sb-fab-btn{
  background:linear-gradient(135deg,#0b9e8e 0%,#0d5a6a 100%)!important;
  box-shadow:0 18px 32px rgba(11,158,142,.22)!important;
}
[data-theme="coach2light"] .dash-role-shell .card::before{
  background:linear-gradient(90deg,rgba(11,158,142,.72),rgba(167,139,250,.18) 72%)!important;
}
[data-theme="coach2light"] .ct.ov3{background:#fff1f2!important;border-left-color:#f87171;color:#ef4444!important}
[data-theme="coach2light"] .ct.dn{background:#ecfdf5!important;border-left-color:#10b981;color:#059669!important}
[data-theme="coach2light"] .ct.pd{background:#f5f3ff!important;border-left-color:#a78bfa;color:#7c3aed!important}
[data-theme="coach2light"] .srch-item:hover{background:#f6fbfb!important}
[data-theme="coach2light"] .srch-overlay{background:rgba(148,163,184,.20)!important}
[data-theme="coach2light"] .fi:focus,
[data-theme="coach2light"] .fi:focus-visible,
[data-theme="coach2light"] button:focus-visible{box-shadow:0 0 0 3px rgba(13,197,175,.18)!important}

/* Coach 2.0 Dark - CoachPro design system counterpart */
[data-theme="coach2dark"]{
  color-scheme: dark;

  --sb: linear-gradient(180deg,#131d2e 0%,#162235 100%);

  --wrap:    linear-gradient(140deg,#0d1628 0%,#13213a 52%,#1a1535 100%);
  --main-bg: linear-gradient(160deg,#101b31 0%,#15233b 52%,#1a1535 100%);

  --acc:   #0dc5af;
  --acc2:  #5eead4;
  --acc-g: linear-gradient(135deg,#0b9e8e,#0dc5af);

  --shell: rgba(19,29,46,.82);
  --card:  #1e2d45;
  --inp:   #18263d;
  --inp-c: #e2e8f0;

  --txt:  #e2e8f0;
  --txt2: #94a3b8;

  --bdr: rgba(255,255,255,.08);

  --sb-txt:   #94a3b8;
  --sb-act:   #ffffff;
  --sb-act-c: #0dc5af;
  --sb-card:  rgba(255,255,255,.04);
  --sb-name:  #f8fafc;
  --sb-sub:   #94a3b8;
  --dash-filter-bg:#1a2f4b;
  --dash-filter-border:rgba(255,255,255,.10);
  --dash-filter-color:#d3ddeb;
  --dash-filter-hover-border:#4ECDC4;
  --dash-filter-hover-color:#efffff;
  --dash-filter-active-bg:#2fa6a0;
  --dash-filter-active-border:#2fa6a0;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(47,166,160,.22);
  --dash-filter-pill-bg:rgba(255,255,255,.18);

  --hdr:    rgba(19,29,46,.78);
  --hdr-b:  rgba(255,255,255,.08);
  --footer: rgba(19,29,46,.78);

  --login-grad: linear-gradient(135deg,#0d1628,#15233b,#1a1535);

  --ui-shadow-soft: 0 10px 24px rgba(2,8,23,.28);
  --ui-shadow-pop:  0 16px 34px rgba(2,8,23,.38);
  --ui-shadow-dark: 0 22px 52px rgba(2,8,23,.50);
}
[data-theme="coach2dark"] #app{background:var(--wrap)!important}
[data-theme="coach2dark"] .shell{
  background:rgba(19,29,46,.78)!important;
  border:1px solid rgba(255,255,255,.06)!important;
  backdrop-filter:blur(16px)!important;
  box-shadow:0 22px 44px rgba(2,8,23,.36)!important;
}
[data-theme="coach2dark"] .main,
[data-theme="coach2dark"] .content{background:transparent!important}
[data-theme="coach2dark"] .main{position:relative}
[data-theme="coach2dark"] .main::before{
  content:'';
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 12% 14%, rgba(13,197,175,.12), transparent 28%),
    radial-gradient(circle at 86% 16%, rgba(167,139,250,.12), transparent 24%),
    radial-gradient(circle at 82% 76%, rgba(248,113,113,.08), transparent 24%);
  pointer-events:none;
  z-index:0;
}
[data-theme="coach2dark"] .content{position:relative;z-index:1}
[data-theme="coach2dark"] .sidebar{
  background:rgba(19,29,46,.94)!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.02)!important;
}
[data-theme="coach2dark"] .nb.active{
  background:linear-gradient(135deg,#0b9e8e,#0dc5af)!important;
  color:#ffffff!important;
  box-shadow:0 10px 24px rgba(13,197,175,.18)!important;
}
[data-theme="coach2dark"] .nb:hover:not(.active){
  background:rgba(255,255,255,.05)!important;
  color:#e2e8f0!important;
}
[data-theme="coach2dark"] .card,
[data-theme="coach2dark"] .tcard,
[data-theme="coach2dark"] .sc,
[data-theme="coach2dark"] .cc{
  background:linear-gradient(180deg,rgba(30,45,69,.96),rgba(25,38,58,.96))!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 12px 28px rgba(2,8,23,.28)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2dark"] .tcard:hover{
  border-color:rgba(13,197,175,.34)!important;
  box-shadow:0 14px 30px rgba(13,197,175,.10)!important;
}
[data-theme="coach2dark"] .hdr,
[data-theme="coach2dark"] .footer{
  background:rgba(19,29,46,.88)!important;
  border-color:rgba(255,255,255,.08)!important;
  backdrop-filter:blur(10px)!important;
}
[data-theme="coach2dark"] .hdr h1,
[data-theme="coach2dark"] .mh span,
[data-theme="coach2dark"] .card h3,
[data-theme="coach2dark"] .card h4,
[data-theme="coach2dark"] .sc h3,
[data-theme="coach2dark"] .sc h4,
[data-theme="coach2dark"] .cc h3,
[data-theme="coach2dark"] .cc h4,
[data-theme="coach2dark"] .tcard h4,
[data-theme="coach2dark"] .sb-brand-name,
[data-theme="coach2dark"] .sb-username,
[data-theme="coach2dark"] .sb-fab-label,
[data-theme="coach2dark"] .dash-mini-task-title,
[data-theme="coach2dark"] .dash-card-title,
[data-theme="coach2dark"] .dash-kpi-label,
[data-theme="coach2dark"] .dash-project-name,
[data-theme="coach2dark"] .dash-activity-title,
[data-theme="coach2dark"] .ub-name,
[data-theme="coach2dark"] .logo-text{color:#e2e8f0!important}
[data-theme="coach2dark"] .hdr p,
[data-theme="coach2dark"] .footer,
[data-theme="coach2dark"] .ver-badge,
[data-theme="coach2dark"] .card p,
[data-theme="coach2dark"] .sc p,
[data-theme="coach2dark"] .cc p,
[data-theme="coach2dark"] .tcard p,
[data-theme="coach2dark"] .sb-greeting,
[data-theme="coach2dark"] .sb-mini-heading,
[data-theme="coach2dark"] .sb-section-label,
[data-theme="coach2dark"] .sb-cta-note,
[data-theme="coach2dark"] .dash-kpi-sub,
[data-theme="coach2dark"] .dash-card-sub,
[data-theme="coach2dark"] .dash-project-meta,
[data-theme="coach2dark"] .dash-activity-meta,
[data-theme="coach2dark"] .ub-greeting,
[data-theme="coach2dark"] .logo-ver,
[data-theme="coach2dark"] .nb:not(.active){color:#94a3b8!important}
[data-theme="coach2dark"] #ver-badge{
  color:#e2e8f0!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}
[data-theme="coach2dark"] .bp{
  background:linear-gradient(135deg,#0b9e8e 0%,#0d5a6a 100%)!important;
  box-shadow:0 14px 28px rgba(13,197,175,.18)!important;
}
[data-theme="coach2dark"] .ib,
[data-theme="coach2dark"] .bw,
[data-theme="coach2dark"] .ntb{
  background:#1e2d45!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#cbd5e1!important;
}
[data-theme="coach2dark"] .ib:hover,
[data-theme="coach2dark"] .bw:hover,
[data-theme="coach2dark"] .ntb:hover{
  border-color:#0dc5af!important;
  color:#e2e8f0!important;
  box-shadow:0 8px 20px rgba(13,197,175,.10)!important;
}
[data-theme="coach2dark"] .bs{
  background:#1e2d45!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#e2e8f0!important;
}
[data-theme="coach2dark"] .fi{
  background:#18263d!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#e2e8f0!important;
}
[data-theme="coach2dark"] .fi::placeholder{color:#7f8ca3!important;opacity:1}
[data-theme="coach2dark"] .tabs{background:rgba(255,255,255,.03)!important}
[data-theme="coach2dark"] .tab{color:#94a3b8!important}
[data-theme="coach2dark"] .tab.active{
  background:#1e2d45!important;
  color:#ffffff!important;
  box-shadow:0 8px 18px rgba(2,8,23,.20)!important;
}
[data-theme="coach2dark"] .cp,
[data-theme="coach2dark"] .srch-box,
[data-theme="coach2dark"] .modal,
[data-theme="coach2dark"] .np,
[data-theme="coach2dark"] .um{
  background:linear-gradient(180deg,rgba(30,45,69,.98),rgba(23,35,55,.98))!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 20px 40px rgba(2,8,23,.42)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2dark"] .site-card,
[data-theme="coach2dark"] .ub,
[data-theme="coach2dark"] .sb-panel{
  background:linear-gradient(180deg,rgba(38,55,82,.92),rgba(26,40,61,.92))!important;
  border-color:rgba(255,255,255,.07)!important;
  box-shadow:0 14px 28px rgba(2,8,23,.24)!important;
}
[data-theme="coach2dark"] .logo-ver{
  background:rgba(255,255,255,.05)!important;
  color:#94a3b8!important;
  border:1px solid rgba(255,255,255,.06)!important;
}
[data-theme="coach2dark"] .sb-brand-mark{
  background:linear-gradient(180deg,rgba(13,197,175,.16),rgba(13,197,175,.08))!important;
  color:#0dc5af!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 18px rgba(13,197,175,.10)!important;
}
[data-theme="coach2dark"] .nb-icon,
[data-theme="coach2dark"] .ib{color:#0dc5af!important}
[data-theme="coach2dark"] .nb.active .nb-icon{
  background:rgba(255,255,255,.14)!important;
  color:#ffffff!important;
}
[data-theme="coach2dark"] .sb-panel{
  box-shadow:0 16px 32px rgba(2,8,23,.24),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
[data-theme="coach2dark"] .sb-cta-card,
[data-theme="coach2dark"] .sb-tools-card{
  background:linear-gradient(180deg,rgba(31,45,69,.96),rgba(24,37,56,.96))!important;
  border-color:rgba(255,255,255,.07)!important;
}
[data-theme="coach2dark"] .sb-tools-card .sb-mini-heading{color:#94a3b8!important}
[data-theme="coach2dark"] #qt-cycle{
  background:#243552!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#e2e8f0!important;
  box-shadow:0 8px 18px rgba(2,8,23,.16)!important;
}
[data-theme="coach2dark"] #qt-label{color:#e2e8f0!important}
[data-theme="coach2dark"] #sb-theme-row button:last-child{
  background:#243552!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#94a3b8!important;
}
[data-theme="coach2dark"] .sb-fab-btn{
  background:linear-gradient(135deg,#0b9e8e 0%,#0d5a6a 100%)!important;
  box-shadow:0 18px 34px rgba(13,197,175,.18)!important;
}
[data-theme="coach2dark"] .dash-role-shell .card::before{
  background:linear-gradient(90deg,rgba(13,197,175,.54),rgba(167,139,250,.18) 72%)!important;
}
[data-theme="coach2dark"] .ct.ov3{background:rgba(248,113,113,.12)!important;border-left-color:#f87171;color:#fca5a5!important}
[data-theme="coach2dark"] .ct.dn{background:rgba(16,185,129,.12)!important;border-left-color:#10b981;color:#86efac!important}
[data-theme="coach2dark"] .ct.pd{background:rgba(167,139,250,.14)!important;border-left-color:#a78bfa;color:#c4b5fd!important}
[data-theme="coach2dark"] .srch-item:hover{background:rgba(255,255,255,.04)!important}
[data-theme="coach2dark"] .srch-overlay{background:rgba(2,8,23,.42)!important}
[data-theme="coach2dark"] .fi:focus,
[data-theme="coach2dark"] .fi:focus-visible,
[data-theme="coach2dark"] button:focus-visible{box-shadow:0 0 0 3px rgba(13,197,175,.18)!important}

/* Shared flat fallback pass */
html:not([data-theme]) .shell{
  background:
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02)),
    var(--shell)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  backdrop-filter:blur(20px)!important;
}
html:not([data-theme]) .hdr,
html:not([data-theme]) .footer,
html:not([data-theme]) .card,
html:not([data-theme]) .tcard,
html:not([data-theme]) .sc,
html:not([data-theme]) .cc,
html:not([data-theme]) .cp,
html:not([data-theme]) .srch-box,
html:not([data-theme]) .modal,
html:not([data-theme]) .np,
html:not([data-theme]) .um,
html:not([data-theme]) .site-card,
html:not([data-theme]) .ub,
html:not([data-theme]) .sb-panel{
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022)),
    var(--card)!important;
  border-color:rgba(255,255,255,.08)!important;
  backdrop-filter:blur(18px)!important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.04)!important;
}
html:not([data-theme]) .sidebar{
  border-right:1px solid rgba(255,255,255,.08)!important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.03)!important;
}
html:not([data-theme]) .dash-role-shell .card::before{
  opacity:.95!important;
}
html:not([data-theme]) .sb-fab-btn{
  box-shadow:0 22px 38px rgba(0,0,0,.28)!important;
}

/* Legacy fallback accents for no-theme state */
html:not([data-theme]) .main::before{
  content:'';
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 8% 12%, rgba(74,222,128,.10), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(134,239,172,.08), transparent 26%);
  pointer-events:none;
  z-index:0;
}
html:not([data-theme]) .content{position:relative;z-index:1}
html:not([data-theme]) .nb.active{
  box-shadow:0 12px 26px rgba(34,197,94,.16), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html:not([data-theme]) .sb-panel{
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04)),
    rgba(16,22,13,.56)!important;
}
html:not([data-theme]) .nb-icon,
html:not([data-theme]) .sb-brand-mark,
html:not([data-theme]) .ib{
  color:#9ae6b4!important;
}
html:not([data-theme]) .nb.active .nb-icon{
  background:rgba(74,222,128,.18)!important;
}
/* ── Flat UI foundation — backdrop-filter eliminado de los elementos UI ── */
.shell,.sidebar,.hdr,.footer,
.card,.tcard,.sc,.cc,
.cp,.modal,.np,.srch-box,.um,
.ub,.site-card,.sb-panel,.sb-cta-card,.sb-tools-card,
.kb-toolbar,.task-toolbar,.task-peek,.kb-col-head,
.comment-bubble,.cp-body,
.mobile-pc-badge,
[data-theme] .shell,
[data-theme] .sidebar,
[data-theme] .card,[data-theme] .tcard,[data-theme] .sc,[data-theme] .cc,
[data-theme] .cp,[data-theme] .modal,[data-theme] .np,[data-theme] .srch-box,
[data-theme] .ub,[data-theme] .site-card,[data-theme] .sb-panel,
[data-theme] .hdr,[data-theme] .footer {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Sombras globales */
.card, .sc, .pc, .tcard, .cc, .srch-box, .modal, .np, .cp {
  box-shadow: var(--ui-shadow-soft);
}
.card:hover, .sc:hover, .tcard:hover, .cc:hover {
  box-shadow: var(--ui-shadow-pop);
}

/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 03 · APP LAYOUT (shell, main, sidebar, header, footer)  ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── App wrapper ── */
#app{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;
  background:linear-gradient(135deg,#f9a8d4 0%,#c084fc 18%,#818cf8 40%,#60a5fa 60%,#34d399 80%,#fde68a 100%);padding:16px}
.shell{width:100%;max-width:1320px;min-height:calc(100vh - 40px);height:auto;background:var(--card);border-radius:28px;display:flex;
  overflow:hidden;box-shadow:0 48px 128px rgba(0,0,0,.28);position:relative;align-self:flex-start}

/* ── Sidebar ── */
.sidebar{
  width:var(--sidebar-shell-w);background:
  radial-gradient(circle at top left,rgba(255,255,255,.10),transparent 24%),
  radial-gradient(circle at bottom right,rgba(249,115,22,.10),transparent 28%),
  linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,0)),
  var(--sb);
  display:flex;flex-direction:column;flex-shrink:0;
  position:relative;overflow:hidden;z-index:10;
  transition:width .28s cubic-bezier(.4,0,.2,1),transform .3s;
  padding:12px 10px 10px;
}

.orb{position:absolute;border-radius:50%;pointer-events:none}
.sb-brand{display:flex;align-items:center;gap:10px;padding:6px 6px 12px;position:relative;z-index:1;flex-shrink:0}
.sb-brand-mark{width:40px;height:40px;border-radius:14px;background:rgba(255,255,255,.11);display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 18px rgba(0,0,0,.08)}
.sb-brand-copy{min-width:0;display:flex;align-items:center;gap:7px;flex:1}
.sb-brand-name{color:#fff;font-weight:900;font-size:18px;letter-spacing:-.5px;white-space:nowrap}
.sb-panel{background:var(--card);border:1px solid var(--bdr);border-radius:22px;box-shadow:0 10px 24px rgba(15,23,42,.08)}
.sb-nav-card{padding:10px 9px 9px;display:flex;flex-direction:column;gap:6px;min-height:0;flex:1;position:relative;z-index:1}
.sb-tools-card{padding:9px;display:flex;flex-direction:column;gap:8px;position:relative;z-index:1;margin-top:8px}
.sb-mini-heading{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.42);padding:0 4px}
.sb-cta-card{margin-top:8px;padding:10px 10px 12px;position:relative;z-index:1}
.sb-cta-note{font-size:10.5px;color:rgba(255,255,255,.60);text-align:center;margin-top:8px;font-weight:700;line-height:1.4}

/* ── Sidebar top: user profile ── */
.sb-profile{display:flex;align-items:center;gap:10px;padding:18px 14px 14px;position:relative;z-index:1;flex-shrink:0}
.sb-profile-info{flex:1;min-width:0;overflow:hidden}
.sb-greeting{font-size:10px;color:rgba(255,255,255,.56);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-username{font-size:14px;font-weight:900;color:#fff;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}



/* ── Collapse button ── */
.sb-collapse-btn{
  position:absolute;top:18px;right:10px;
  width:24px;height:24px;border-radius:8px;
  background:rgba(255,255,255,.1);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.5);transition:background .18s,color .18s;
  flex-shrink:0;font-family:inherit;z-index:2
}
.sb-collapse-btn:hover{background:rgba(255,255,255,.2);color:#fff}

.sb-collapse-btn svg{transition:transform .28s cubic-bezier(.4,0,.2,1)}

/* ── Section labels ── */
.sb-section{padding:2px 4px 2px;flex-shrink:0}
.sb-section-label{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:1.2px;color:rgba(255,255,255,.42);white-space:nowrap;overflow:hidden}



/* ── Nav items ── */
nav.nav{flex:1;min-height:0;position:relative;z-index:1;padding:0 2px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:2px}
nav.nav::-webkit-scrollbar{width:3px}
nav.nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}
.nb{
  width:100%;display:flex;align-items:center;gap:11px;
  padding:10px 11px;border-radius:15px;border:none;cursor:pointer;
  margin-bottom:0;background:transparent;
  color:rgba(255,255,255,.62);font-weight:800;font-size:13.25px;
  transition:background .15s,color .15s,transform .1s;
  letter-spacing:.005em;position:relative;white-space:nowrap;overflow:hidden;
  font-family:inherit;
}
.nb-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:8px;opacity:.94;transition:opacity .18s,background .18s,transform .18s,box-shadow .18s,color .18s;background:rgba(255,255,255,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.10)}
.nb-label{transition:opacity .18s;flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis}
.nb:hover .nb-icon{transform:translateY(-1px);background:rgba(255,255,255,.10)}
.nb.active .nb-icon{opacity:1;background:rgba(255,255,255,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 10px 18px rgba(0,0,0,.10)}
.nb:hover{background:rgba(255,255,255,.08);color:rgba(255,255,255,.94)}
.nb:hover .nb-icon{background:rgba(255,255,255,.08)}
.nb:hover .nb-icon{opacity:1}
.nb.active{background:linear-gradient(90deg,rgba(249,115,22,.24),rgba(255,255,255,.1));color:#fff;font-weight:800;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 0 0 1px rgba(249,115,22,.18) inset,0 14px 30px rgba(249,115,22,.16),0 0 28px rgba(255,92,141,.18),inset 0 1px 0 rgba(255,255,255,.05)}
.nb.active .nb-icon{background:rgba(249,115,22,.14);color:#ffd4b3}
.nb.active .nb-icon{opacity:1}
.nb.active::before{content:none!important;display:none!important}
.nb:active{transform:scale(.97)}
/* Collapsed nav: center icons, hide labels */








/* ── Bottom FAB (create task) ── */
.sb-fab{
  margin:0;display:flex;flex-direction:column;align-items:center;
  gap:4px;flex-shrink:0;position:relative;z-index:1
}
.sb-fab-btn{
  width:100%;height:58px;border-radius:18px;
  background:var(--acc);border:none;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:24px;font-weight:300;
  box-shadow:0 10px 22px rgba(15,23,42,.12);
  transition:transform .18s,box-shadow .18s;font-family:inherit
}
.sb-fab-btn:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(15,23,42,.18)}
.sb-fab-btn:active{transform:scale(.95)}
.sb-fab-label{font-size:16px;color:#fff;font-weight:900;letter-spacing:-.03em;white-space:nowrap;margin-top:10px}

/* Desktop: compact FAB as inline button */
@media(min-width:901px){
  .sb-fab{margin:0;flex-direction:column;gap:0;justify-content:center;width:100%}
  .sb-fab-btn{width:100%;height:74px;border-radius:22px;font-size:24px}
  .sb-fab-label{display:block}
}




/* ── User menu at bottom ── */
.ub-wrap{position:relative;flex-shrink:0;padding:0 10px 12px}
.ub{width:100%;min-height:72px;display:flex;align-items:center;gap:11px;padding:13px 12px;border-radius:18px;
  border:1px solid var(--bdr);background:var(--card);
  cursor:pointer;position:relative;z-index:1;font-family:inherit;overflow:hidden;
  box-shadow:0 8px 20px rgba(15,23,42,.07);
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease,background .18s ease}
.ub::before{content:none}
.ub:hover,.ub.open{border-color:color-mix(in srgb,var(--acc) 22%, var(--bdr));background:var(--card);box-shadow:0 14px 30px rgba(15,23,42,.12)}
.ub.open{transform:translateY(-1px)}
.ub-info{min-width:0;display:flex;flex-direction:column;gap:3px;overflow:visible}
.ub-name{font-size:14px;font-weight:950;color:#fff;line-height:1.1;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ub-greeting{font-size:10px;color:rgba(255,255,255,.64);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ub-role{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;max-width:100%;
  font-size:9px;font-weight:900;letter-spacing:.38px;text-transform:uppercase;
  margin-top:5px;padding:5px 10px;border-radius:999px;border:1px solid transparent;
  color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.18);white-space:nowrap}
.ub-role::before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0;background:rgba(255,255,255,.82);opacity:1}
.ub-role.role-admin{background:#d84b5f;border-color:#d84b5f;color:#fff}
.ub-role.role-team{background:#39b772;border-color:#39b772;color:#fff}
.ub-role.role-client{background:#4a8de8;border-color:#4a8de8;color:#fff}
.ub .av{width:42px!important;height:42px!important;border:2px solid rgba(255,255,255,.18);
  box-shadow:0 8px 18px rgba(0,0,0,.18),0 0 0 4px rgba(255,255,255,.04)}
.ub-chevron{flex-shrink:0;transition:transform .18s ease,opacity .18s ease;opacity:.7;margin-left:2px}
.ub.open .ub-chevron{transform:rotate(180deg);opacity:1}
.sb-profile{display:none!important}
#hav.hdr-avatar-desktop{display:none!important}
#sb-theme-row{display:flex;align-items:center;gap:8px}
#qt-cycle{min-height:40px!important;padding:9px 12px!important;border-radius:14px!important}
#qt-shortcuts{width:40px!important;height:40px!important;border-radius:14px!important}


.um{position:absolute;left:0;right:0;top:calc(100% + 10px);bottom:auto;width:auto;background:var(--card);border-radius:18px;
  border:1px solid var(--bdr);overflow:hidden;z-index:9999;display:none;
  box-shadow:0 16px 36px rgba(15,23,42,.14)}
.um.open{display:block;animation:popIn .2s ease both}
.um button{width:100%;display:flex;align-items:center;gap:10px;padding:13px 15px;border:none;background:transparent;cursor:pointer;font-size:13px;font-weight:800;font-family:inherit;transition:background .16s ease,color .16s ease}
.um button:hover{background:rgba(255,255,255,.06)}

/* ── Theme cycle btn ── */
#sb-theme-row{display:flex;align-items:center;gap:8px;padding:0;flex-shrink:0}



#quick-themes{margin:2px 0 10px}
#quick-themes .ts{justify-content:flex-start;gap:8px;flex-wrap:wrap}
.site-card{background:var(--card);border-radius:16px;padding:12px;
  margin-bottom:10px;position:relative;z-index:1;border:1px solid var(--bdr);box-shadow:0 8px 18px rgba(15,23,42,.08)}
.logo-ver{font-size:9px;color:var(--txt2);font-weight:700;background:var(--inp);padding:2px 6px;border-radius:20px}

/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · CLIENT PORTAL · WEEKLY BOARD                            ║
   ╚══════════════════════════════════════════════════════════════════╝ */
.c-portal-wrap{display:flex;flex-direction:column;gap:16px;min-height:0}

/* Stats row */
.c-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.c-stat-card{background:var(--card);border:1px solid var(--bdr);border-radius:14px;padding:12px 16px;text-align:center;transition:border-color .2s}
.c-stat-card.c-stat-danger{border-color:#ef444440;background:rgba(239,68,68,.05)}
.c-stat-card.c-stat-warn{border-color:#f59e0b40;background:rgba(245,158,11,.05)}
.c-stat-num{font-size:26px;font-weight:900;color:var(--txt);line-height:1}
.c-stat-label{font-size:11px;color:var(--txt2);font-weight:700;margin-top:4px}
.c-stat-danger .c-stat-num{color:#ef4444}
.c-stat-warn .c-stat-num{color:#d97706}

/* Main layout */
.c-main-layout{display:grid;grid-template-columns:216px 1fr;gap:14px;min-height:0}

/* Unscheduled sidebar */
.c-unscheduled{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));border:1px solid var(--bdr);border-radius:20px;display:flex;flex-direction:column;overflow:hidden;min-height:0;box-shadow:0 16px 34px rgba(15,23,42,.07)}
.c-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid var(--bdr);font-size:12px;font-weight:800;color:var(--txt);flex-shrink:0;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0))}
.c-uncount{background:var(--acc);color:#fff;border-radius:99px;font-size:10px;font-weight:900;padding:2px 7px;min-width:20px;text-align:center}
.c-unsched-drop{flex:1;overflow-y:auto;padding:10px;min-height:80px;transition:background .15s}
.c-unsched-drop.c-col-over{background:rgba(var(--acc-rgb,147,51,234),.07)}
.c-new-req-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:12px;border:none;border-top:1px solid var(--bdr);background:linear-gradient(180deg,rgba(var(--acc-rgb,147,51,234),.03),rgba(var(--acc-rgb,147,51,234),.075));color:var(--acc);font-size:12px;font-weight:900;cursor:pointer;transition:background .15s,letter-spacing .15s;font-family:inherit;flex-shrink:0}
.c-new-req-btn:hover{background:rgba(var(--acc-rgb,147,51,234),.09);letter-spacing:.01em}

/* Week panel */
.c-week-panel{display:flex;flex-direction:column;gap:10px;min-width:0}
.c-week-nav{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--bdr);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));box-shadow:0 14px 28px rgba(15,23,42,.05)}
.c-week-label{flex:1;text-align:center;font-size:13px;font-weight:800;color:var(--txt)}
.c-week-btn{background:var(--inp);border:1px solid var(--bdr);border-radius:12px;padding:6px 11px;color:var(--txt2);font-size:12px;font-weight:800;cursor:pointer;display:flex;align-items:center;gap:4px;font-family:inherit;transition:border-color .15s,color .15s,transform .15s,box-shadow .15s}
.c-week-btn:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.08)}
.c-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;min-width:0}

/* Column */
.c-col{display:flex;flex-direction:column;min-width:0;min-height:200px}
.c-col-head{text-align:center;padding:10px 6px 7px;border-radius:16px 16px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border:1px solid var(--bdr);border-bottom:none;position:relative}
.c-col-head-today{background:var(--acc-g)!important;border-color:transparent!important}
.c-col-head-today .c-col-dayname,.c-col-head-today .c-col-daynum{color:#fff!important}
.c-col-head-past .c-col-dayname,.c-col-head-past .c-col-daynum{opacity:.45}
.c-col-dayname{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--txt2)}
.c-col-daynum{font-size:19px;font-weight:900;color:var(--txt);line-height:1.2}
.c-col-daynum-today{color:#fff}
.c-col-badge-ov{position:absolute;top:6px;right:6px;background:#ef4444;color:#fff;border-radius:99px;font-size:9px;font-weight:900;padding:1px 5px;min-width:16px;text-align:center;box-shadow:0 8px 18px rgba(239,68,68,.24)}
.c-col-drop{flex:1;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.008));border:1px solid var(--bdr);border-radius:0 0 16px 16px;padding:6px 5px;display:flex;flex-direction:column;gap:5px;transition:background .15s,border-color .15s;min-height:80px;max-height:420px;overflow-y:auto}
.c-col-drop.c-col-over{background:rgba(var(--acc-rgb,147,51,234),.07);border-color:var(--acc)!important}
.c-col-empty{font-size:10px;color:var(--txt2);text-align:center;padding:16px 0;opacity:.4;border:1.5px dashed var(--bdr);border-radius:8px;margin:4px}

/* Task card */
.c-card{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid var(--bdr);border-radius:12px;padding:7px 7px;cursor:grab;transition:transform .15s,box-shadow .15s,opacity .2s,border-color .15s;user-select:none;box-shadow:0 10px 20px rgba(15,23,42,.05)}
.c-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.14);border-color:var(--acc)}
.c-card:active{cursor:grabbing;transform:scale(.97)}
.c-card-ov{border-color:#ef444450!important;background:rgba(239,68,68,.06)!important}
.c-card-done{opacity:.5}
.c-card-top{display:flex;align-items:flex-start;gap:5px;margin-bottom:4px}
.c-card-prio-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:4px}
.c-card-title{flex:1;font-size:10.5px;font-weight:900;color:var(--txt);line-height:1.28;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.c-card-edit{display:none!important}
.c-card-footer{display:flex;align-items:center;justify-content:space-between;gap:5px;flex-wrap:nowrap;min-width:0}
.c-card-proj{display:inline-flex;align-items:center;max-width:54%;font-size:8.5px;font-weight:900;padding:2px 6px;border-radius:999px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(147,51,234,.12)}
.c-card-status{display:inline-flex;align-items:center;gap:4px;max-width:46%;font-size:8.5px;font-weight:900;padding:2px 6px;border-radius:999px;border:1px solid transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:rgba(255,255,255,.05)}
.c-prio-btn{font-size:9px;font-weight:800;padding:2px 7px;border-radius:5px;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:transform .12s;white-space:nowrap}
.c-prio-btn:hover{transform:scale(1.06)}
.c-prio-btn:active{transform:scale(.95)}

/* Responsive */
@media(max-width:1100px){
  .c-week-grid{grid-template-columns:repeat(7,minmax(84px,1fr));overflow-x:auto}
  .c-main-layout{grid-template-columns:176px 1fr}
}
@media(max-width:768px){
  .c-stats-row{grid-template-columns:repeat(2,1fr)}
  .c-main-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .c-week-grid{display:flex;flex-direction:column;gap:10px;overflow:visible;padding-bottom:0}
  .c-col{min-height:0;border:1px solid var(--bdr);border-radius:18px;overflow:hidden;background:var(--card)}
  .c-col-head{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px 16px;border:none;border-radius:0;background:var(--inp);cursor:pointer}
  .c-col-head-wrap{display:flex;align-items:center;gap:12px;min-width:0}
  .c-col-head-meta{display:flex;flex-direction:column;gap:2px;min-width:0}
  .c-col-dayname{font-size:11px}
  .c-col-daynum{font-size:26px;line-height:1}
  .c-col-drop{min-height:0;border:none;border-top:1px solid var(--bdr);border-radius:0;padding:0;display:none;background:transparent;max-height:none}
  .c-col.open .c-col-drop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
  .c-col.open .c-col-drop.c-col-empty-state{display:flex;padding:14px}
  .c-col-empty{width:100%;margin:0;padding:18px 12px}
  .c-col-chevron{width:18px;height:18px;flex-shrink:0;color:var(--txt2);transition:transform .18s ease,opacity .18s ease;opacity:.8}
  .c-col.open .c-col-chevron{transform:rotate(180deg);opacity:1}
  .c-card{min-width:0;padding:8px 7px}
  .c-card-title{-webkit-line-clamp:2;font-size:11px}
  .c-card-proj,.c-card-status{font-size:8px}
  .c-card-footer{gap:5px}
  .c-unscheduled{max-height:220px}
}
@media(max-width:480px){
  .c-stats-row{grid-template-columns:repeat(2,1fr);gap:6px}
  .c-stat-num{font-size:20px}
  .c-stat-label{font-size:10px}
  .c-col-head{padding:12px 14px}
  .c-col-dayname{font-size:10px}
  .c-col-daynum{font-size:22px}
  .c-col.open .c-col-drop{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px}
  .c-card{padding:6px 6px}
  .c-card-title{font-size:11px;-webkit-line-clamp:1}
  .c-card-footer{gap:3px}
  .c-card-proj,.c-card-status{font-size:8px;padding:2px 5px}
  .c-prio-btn{font-size:8px;padding:2px 5px}
}

/* ── Main area ── */
.main{flex:1;display:flex;flex-direction:column;overflow:visible;min-width:0}
.hdr{background:#fff;padding:0 24px;height:64px;display:flex;align-items:center;
  justify-content:space-between;border-bottom:1px solid var(--bdr);flex-shrink:0;position:relative;z-index:950;overflow:visible}
.hdr h1{font-size:21px;font-weight:900;letter-spacing:-.04em;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hdr p{font-size:11.5px;color:var(--txt2);font-weight:700;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hr{display:flex;align-items:center;gap:8px;flex-shrink:0}
.hdr-notif-wrap{position:relative;display:flex;align-items:center;flex-shrink:0;z-index:6002}
.ib{width:38px;height:38px;border-radius:12px;border:1.5px solid #e2e8f0;background:#fff;
  display:flex;align-items:center;justify-content:center;color:var(--txt2);position:relative;cursor:pointer;flex-shrink:0;
  backdrop-filter:none}
.hdr-notif-btn[aria-expanded="true"]{
  border-color:var(--acc)!important;
  color:var(--acc)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
}
.ib svg,.nb-icon svg,.sb-fab-btn svg,.mt svg{filter:drop-shadow(0 1px 4px rgba(0,0,0,.12))}

/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 04 · HEADER, BÚSQUEDA & NOTIFICACIONES                  ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* Hamburger — mobile only */
.ham{display:none}
.mob-search-btn{display:none}
/* Search overlay */
.srch-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:800;display:none;align-items:flex-start;justify-content:center;padding-top:80px}
.srch-overlay.open{display:flex}
@media(max-width:900px){.srch-overlay{padding:16px 12px!important;align-items:flex-start!important}.srch-box{max-width:100%!important;width:100%!important}.mob-search-btn{display:flex!important}}
.kb-shell{display:flex;flex-direction:column;gap:12px}
.kb-toolbar,
.task-toolbar{
  position:relative;top:auto;z-index:2;
  display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-radius:20px;
}
.kb-toolbar{border:1px solid var(--bdr);background:var(--card);box-shadow:0 8px 18px rgba(15,23,42,.06)}
.toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.toolbar-grid{display:flex;gap:10px;align-items:center;min-width:0;width:100%}
.toolbar-grid-primary{flex-wrap:wrap}
.toolbar-grid-secondary{flex-wrap:wrap}
.toolbar-grid > *{min-width:0;flex:0 0 auto}
.toolbar-search{flex:1 1 280px;min-width:240px}
.toolbar-account{flex:1 1 170px}
.toolbar-campaign{flex:1 1 152px}
.toolbar-priority{flex:0 0 108px}
.toolbar-owned{flex:0 0 auto}
.toolbar-more{flex:0 0 auto;margin-left:auto}
.toolbar-row-meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:nowrap;flex:0 0 auto}
.toolbar-row-secondary{padding-top:2px;border-top:1px solid color-mix(in srgb,var(--bdr) 72%, transparent)}
.toolbar-row-secondary.collapsed{display:none}
.toolbar-row-secondary.expanded{display:flex}
.task-filter-toggle{
  height:42px;padding:0 14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--bdr) 86%, transparent);
  background:color-mix(in srgb,var(--inp) 92%, transparent);color:var(--txt);font-size:11.5px;font-weight:900;cursor:pointer;white-space:nowrap;flex:0 0 auto;
  display:inline-flex;align-items:center;gap:8px;letter-spacing:.01em
}
.task-filter-toggle.active{background:color-mix(in srgb,var(--acc) 10%, var(--card));border-color:color-mix(in srgb,var(--acc) 28%, var(--bdr));color:var(--acc)}
.toolbar-count-pill{
  min-width:20px;height:20px;border-radius:999px;padding:0 6px;
  display:inline-flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--acc) 14%, transparent);color:inherit;font-size:10px;font-weight:900
}
.kb-toolbar .fi{min-width:180px}
.kb-toolbar-count{font-size:12px;color:var(--txt2);font-weight:800;white-space:nowrap}
.kb-mobile-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:2px;scrollbar-width:none}
.kb-mobile-tabs::-webkit-scrollbar{display:none}
.kb-tab{border:none;border-radius:999px;padding:8px 12px;background:var(--inp);color:var(--txt2);font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:7px;cursor:pointer;border:1px solid var(--bdr);white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.kb-tab.active{color:#fff;background:var(--acc-g);border-color:transparent;box-shadow:0 10px 24px color-mix(in srgb,var(--acc) 18%, transparent)}
.kb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.kb-grid.tablet{grid-auto-flow:column;grid-auto-columns:minmax(calc((100% - 14px)/2),1fr);grid-template-columns:none;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.kb-col{background:var(--inp);border-radius:20px;padding:14px;border:2px solid var(--bdr);transition:border-color .2s,box-shadow .2s;min-height:240px;display:flex;flex-direction:column;scroll-snap-align:start}
.kb-col-head{display:flex;align-items:center;gap:8px;margin:-14px -14px 12px;padding:14px 14px 10px;border-bottom:1px solid var(--bdr);position:sticky;top:0;background:var(--inp);border-radius:18px 18px 0 0;z-index:2}
.kb-col-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.kb-col-title{font-weight:900;font-size:13px;color:var(--txt)}
.kb-col-count{margin-left:auto;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;border-radius:999px;padding:0 7px}
.kb-col-body{display:flex;flex-direction:column;gap:8px;min-height:48px;max-height:calc(100vh - 290px);overflow:auto;padding-right:2px}
.kb-col-empty{text-align:center;padding:22px 12px;color:var(--txt2);font-size:12px;font-weight:700;opacity:.7}
.kb-add-btn{width:100%;padding:9px;margin-top:8px;border:1.5px dashed var(--bdr);border-radius:11px;background:transparent;color:var(--txt2);cursor:pointer;font-size:12px;font-weight:700;transition:border-color .15s,color .15s}
.kb-card{background:var(--card);border-radius:16px;padding:10px 11px 10px 13px;cursor:grab;border:1px solid var(--bdr);border-left:3px solid var(--acc);transition:transform .15s,box-shadow .15s,border-color .15s;user-select:none;-webkit-user-select:none;position:relative;touch-action:pan-y}
.kb-card-head{display:flex;align-items:flex-start;gap:8px;margin-bottom:7px}
.kb-card-title{font-weight:800;font-size:13px;color:var(--txt);line-height:1.35;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kb-card-actions{display:flex;gap:4px;flex-shrink:0}
.kb-card-meta,.kb-card-foot{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.kb-card-context{margin-top:6px;font-size:11px;color:var(--txt2);line-height:1.45}
.kb-card-foot{margin-top:7px}
.kb-card-side{margin-left:auto;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.kb-card-ghost-btn{width:24px;height:24px;border-radius:7px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--txt2);padding:0;transition:background .15s,color .15s}
.task-shell{display:flex;flex-direction:column;gap:12px}
.task-toolbar{
  border:1px solid color-mix(in srgb,var(--bdr) 88%, transparent);
  background:color-mix(in srgb,var(--card) 94%, #101216);
  box-shadow:0 10px 24px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.02)
}
.task-toolbar .fi{min-width:0}
.task-toolbar-count{font-size:12px;color:var(--txt2);font-weight:900;white-space:nowrap;letter-spacing:.01em}
.task-tool{
  display:flex;align-items:center;gap:8px;height:46px;padding:0 12px;
  border:1px solid color-mix(in srgb,var(--bdr) 86%, transparent);
  border-radius:16px;background:color-mix(in srgb,var(--inp) 92%, transparent);flex:0 0 auto;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
  min-width:0;
  overflow:hidden;
}
.task-tool .task-tool-ic{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--txt2) 92%, var(--acc) 8%);flex-shrink:0}
.task-tool .task-tool-ic svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.task-tool input,.task-tool select{
  border:none!important;box-shadow:none!important;background:transparent!important;padding:0!important;height:auto!important;min-height:0!important;color:var(--txt)!important;font-size:12.5px!important;font-weight:700!important;
  width:100%!important;max-width:100%!important;min-width:0!important;flex:1 1 auto;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.task-tool input::placeholder{color:var(--txt2);font-weight:600}
.task-tool.task-tool-search{width:min(176px,100%)}
.task-tool.task-tool-status{width:126px}
.task-tool.task-tool-project{width:132px}
.task-tool.task-tool-priority{width:94px}
.task-tool.task-tool-location{width:134px}
.task-tool.task-tool-channel{width:126px}
.task-tool.task-tool-piece{width:118px}
.task-tool.task-tool-campaign{width:138px}
.task-filter-btn{
  height:42px;padding:0 12px;border-radius:16px;border:1px solid color-mix(in srgb,var(--bdr) 86%, transparent);
  background:transparent;color:var(--txt2);font-size:11.5px;font-weight:900;cursor:pointer;white-space:nowrap;flex:0 0 auto;
  letter-spacing:.01em
}
.task-filter-btn.active{background:color-mix(in srgb,var(--acc) 18%, var(--card));border-color:color-mix(in srgb,var(--acc) 44%, var(--bdr));color:var(--acc)}
.task-view-toggle{display:flex;border:1px solid color-mix(in srgb,var(--bdr) 86%, transparent);border-radius:16px;overflow:hidden;flex-shrink:0;background:color-mix(in srgb,var(--inp) 92%, transparent)}
.task-view-toggle button{min-width:54px;padding:8px 10px;background:transparent;border:none;cursor:pointer;color:var(--txt2);font-size:13px;font-weight:800}
.task-view-toggle button.active{background:color-mix(in srgb,var(--acc) 18%, var(--card));color:var(--acc)}
.task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.task-list{display:flex;flex-direction:column;gap:9px}
.task-section{display:flex;flex-direction:column;gap:10px;--section-color:var(--acc);position:relative;z-index:2}
.task-section-head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:4px 2px 2px;border:none;background:transparent;cursor:pointer;
  color:var(--txt);text-align:left;border-bottom:1px solid transparent;position:relative;z-index:3;
  pointer-events:auto
}
.task-section-meta{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.task-section-side{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}
.task-section-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--section-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--section-color) 16%, transparent)}
.task-section-title{
  color:var(--section-color);font-size:13px;font-weight:900;text-transform:uppercase;
  letter-spacing:.08em;line-height:1.1;display:inline-flex;align-items:center;gap:6px
}
.task-section-count{
  display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;
  padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--section-color) 14%, var(--card));
  color:var(--section-color);font-size:11px;font-weight:900;border:1px solid color-mix(in srgb,var(--section-color) 24%, var(--bdr))
}
.section-chevron{width:16px;height:16px;color:var(--section-color);flex-shrink:0;transition:transform .16s ease,opacity .16s ease;opacity:.9}
.task-section.open .section-chevron{transform:rotate(180deg)}
.task-section.collapsed .section-chevron{transform:rotate(0deg)}
.task-section-head:hover .task-section-title,
.task-section-head:hover .section-chevron{opacity:1;filter:brightness(1.02)}
.task-section-body{display:flex;flex-direction:column;gap:10px}
.task-section.collapsed .task-section-body{display:none}
.task-section-body[hidden]{display:none!important}
.task-section.state-overdue .task-section-head{border-bottom-color:rgba(239,68,68,.18)}
.task-section.state-review .task-section-head{border-bottom-color:rgba(124,58,237,.18)}
.task-section.state-active .task-section-head{border-bottom-color:color-mix(in srgb,var(--acc) 24%, transparent)}
.task-section.state-done .task-section-head{border-bottom-color:rgba(16,185,129,.18)}
.tcard.compact-card{padding:12px 12px 11px;border-radius:16px;margin-bottom:0;min-height:0}
.tcard.compact-card.bulk-selected{border-color:var(--acc)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--acc) 22%, transparent),var(--ui-shadow-pop)}
.task-title-row{display:flex;gap:10px;align-items:flex-start}
.task-title-stack{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.task-title-line{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}
.task-title-text{font-weight:800;font-size:13px;color:var(--txt);line-height:1.35;word-break:break-word}
.task-actions{display:flex;gap:3px;align-items:center;flex-shrink:0}
.task-desc{margin:0;font-size:11.5px;color:var(--txt2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.task-subtasks{margin-top:1px}
.task-subtasks-head{display:flex;justify-content:space-between;margin-bottom:3px}
.task-subtasks-head span{font-size:10px;color:var(--txt2);font-weight:600}
.task-subtasks-bar{height:4px;background:var(--bdr);border-radius:99px;overflow:hidden}
.tasksv2-wrap{display:flex;flex-direction:column;gap:22px}
.tasksv2-section{display:flex;flex-direction:column;gap:12px;--section-color:var(--acc)}
.tasksv2-head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:4px 2px 2px;border:none;background:transparent;color:var(--txt);cursor:pointer;text-align:left
}
.tasksv2-head:focus-visible{outline:2px solid color-mix(in srgb,var(--section-color) 55%, white);outline-offset:4px;border-radius:10px}
.tasksv2-head-left,.tasksv2-head-right{display:flex;align-items:center;gap:12px}
.tasksv2-head-left{min-width:0;flex:1}
.tasksv2-head-right{margin-left:auto;flex-shrink:0}
.tasksv2-dot{
  width:12px;height:12px;border-radius:999px;flex-shrink:0;
  background:var(--section-color);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--section-color) 18%, transparent)
}
.tasksv2-title{
  display:inline-flex;align-items:center;gap:7px;
  color:var(--section-color);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;line-height:1.1
}
.tasksv2-icon{font-size:13px;line-height:1}
.tasksv2-count{
  display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 8px;border-radius:999px;
  background:color-mix(in srgb,var(--section-color) 14%, var(--card));
  color:var(--section-color);font-size:11px;font-weight:900;border:1px solid color-mix(in srgb,var(--section-color) 24%, var(--bdr))
}
.tasksv2-chevron{
  width:16px;height:16px;color:var(--section-color);flex-shrink:0;
  transition:transform .16s ease,opacity .16s ease;opacity:.92
}
.tasksv2-head:hover .tasksv2-chevron,.tasksv2-head:hover .tasksv2-title{opacity:1;filter:brightness(1.04)}
.tasksv2-section.open .tasksv2-chevron{transform:rotate(180deg)}
.tasksv2-section.collapsed .tasksv2-chevron{transform:rotate(0deg)}
.tasksv2-body{display:flex;flex-direction:column;gap:10px}
.tasksv2-section.collapsed .tasksv2-body,
.tasksv2-body[hidden]{display:none!important}
.tasksv2-grid{padding:4px 0}
.tasksv2-list{display:flex;flex-direction:column;gap:10px}
.tasksv2-section.state-overdue{--section-color:#ef4444}
.tasksv2-section.state-review{--section-color:#8b5cf6}
.tasksv2-section.state-active{--section-color:var(--acc)}
.tasksv2-section.state-done{--section-color:#10b981}
.task-subtasks-fill{height:100%;border-radius:99px;transition:width .3s}
.task-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:1px}
.task-meta-side{margin-left:auto;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.task-assignee-mini,.task-comment-mini{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--txt2);font-weight:700}
.task-bulkbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--bdr)}
.task-bulk-count{font-size:12px;font-weight:900;color:var(--txt)}
.task-bulk-meta{font-size:11px;color:var(--txt2);font-weight:700}
.task-bulk-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-left:auto}
.task-bulk-btn{padding:7px 10px;border-radius:10px;border:1px solid var(--bdr);background:var(--inp);color:var(--txt2);font-size:11px;font-weight:800;cursor:pointer}
.task-bulk-btn.danger{color:#ef4444;border-color:rgba(239,68,68,.24);background:rgba(239,68,68,.08)}
.task-bulk-btn.primary{color:var(--acc);border-color:color-mix(in srgb,var(--acc) 22%, var(--bdr));background:color-mix(in srgb,var(--acc) 10%, transparent)}
.task-bulk-indicator{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:2px solid var(--bdr);font-size:10px;font-weight:900;color:#fff;flex-shrink:0;background:transparent}
.task-bulk-indicator.on{background:var(--acc);border-color:var(--acc)}
.task-peek-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.36);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:none;z-index:1490}
.task-peek-backdrop.open{display:block;animation:fadeIn .18s ease both}
.task-peek{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(408px,calc(100vw - 24px));max-height:min(calc(100vh - 64px),660px);display:none;flex-direction:column;background:var(--card);border:1px solid var(--bdr);border-radius:22px;box-shadow:0 24px 54px rgba(15,23,42,.22);z-index:1500;overflow:hidden}
.task-peek.open{display:flex;animation:peekPop .22s ease both}
.task-peek-head{padding:14px 16px 10px;border-bottom:1px solid var(--bdr);display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.task-peek-body{padding:12px 16px 16px;overflow:auto;display:flex;flex-direction:column;gap:10px}
.task-peek-title{font-size:15px;font-weight:900;color:var(--txt);line-height:1.2}
.task-peek-sub{font-size:11px;color:var(--txt2);margin-top:4px}
.task-peek-copy{font-size:12px;color:var(--txt2);line-height:1.55}
.task-peek-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.task-peek-stat{padding:9px 10px;border-radius:14px;background:var(--inp);border:1px solid var(--bdr)}
.task-peek-stat .k{font-size:9.5px;font-weight:800;color:var(--txt2);text-transform:uppercase;letter-spacing:.04em}
.task-peek-stat .v{font-size:11.5px;font-weight:800;color:var(--txt);margin-top:4px}
.task-peek-actions{display:flex;gap:8px;flex-wrap:wrap}
.task-peek-actions .btn{flex:1 1 120px;justify-content:center}
.task-actions button{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:8px}
@keyframes peekPop{
  from{opacity:0;transform:translate(-50%,-46%) scale(.96)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
.tcard.compact-card.is-grid .task-desc,
.tcard.compact-card.is-grid .task-subtasks{display:none}
.tcard.compact-card.is-grid .task-title-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.push-settings-panel{display:flex;flex-direction:column;gap:14px}
.push-settings-warning{display:none;border-radius:16px;padding:14px 16px;border:1px solid #facc15;background:#fffbeb;color:#854d0e;font-size:12px}
.push-settings-warning-title{font-size:13px;font-weight:900;color:#713f12;margin-bottom:6px}
.push-settings-warning-copy{font-size:12px;line-height:1.55;color:#854d0e;margin-bottom:12px}
.push-settings-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(240px,.95fr);gap:14px}
.push-settings-status-card,.push-settings-guide-card{background:var(--inp);border:1px solid var(--bdr);border-radius:16px;padding:14px 16px}
.push-settings-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.push-settings-status-main{display:flex;align-items:flex-start;gap:12px;min-width:0;flex:1}
.push-settings-status-icon{width:42px;height:42px;border-radius:14px;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.push-settings-status-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.push-settings-status-title{font-size:13px;font-weight:900;color:var(--txt)}
.push-settings-status-sub{font-size:11.5px;color:var(--txt2);line-height:1.5}
.push-settings-guide-title{font-size:12px;font-weight:900;color:var(--txt);margin-bottom:10px}
.push-settings-list{display:grid;grid-template-columns:1fr;gap:8px}
.push-settings-item{display:flex;align-items:flex-start;gap:10px;padding:9px 10px;border-radius:12px;background:var(--card);border:1px solid var(--bdr)}
.push-settings-item-mark{width:18px;height:18px;border-radius:50%;background:rgba(16,185,129,.12);color:#10b981;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;flex-shrink:0;margin-top:1px}
.push-settings-item span:last-child{font-size:12px;color:var(--txt2);line-height:1.45}
.push-settings-action{justify-content:center}
.push-mobile-status,.push-mobile-guide{margin-top:10px}
/* ── Dashboard Command Center ── */
.dash-cc-grid{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}
@media(max-width:1180px){.dash-cc-grid{grid-template-columns:1fr 280px}}
@media(max-width:860px){.dash-cc-grid{grid-template-columns:1fr}}
.dash-filter-btn{
  padding:6px 13px;
  border-radius:99px;
  border:1.5px solid var(--dash-filter-border,var(--bdr));
  background:var(--dash-filter-bg,var(--inp));
  color:var(--dash-filter-color,var(--txt2));
  font-size:12px;
  font-weight:800;
  cursor:pointer;
  transition:.15s;
  white-space:nowrap;
}
.dash-filter-btn:hover{
  border-color:var(--dash-filter-hover-border,var(--acc));
  color:var(--dash-filter-hover-color,var(--acc));
}
.dash-filter-btn.active{
  background:var(--dash-filter-active-bg,var(--acc));
  border-color:var(--dash-filter-active-border,var(--acc));
  color:var(--dash-filter-active-color,#fff);
  box-shadow:0 10px 22px var(--dash-filter-active-shadow, rgba(15,23,42,.08));
  font-weight:900;
}
.dash-pill{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.25);border-radius:99px;padding:1px 5px;font-size:10px;font-weight:800;min-width:16px}
.dash-filter-btn.active .dash-pill{background:var(--dash-filter-pill-bg,rgba(255,255,255,.24));color:inherit}
.dash-filter-btn.active .fi{color:inherit}
.dash-pill-red{background:rgba(239,68,68,.2);color:#ef4444}
.dash-filter-btn:not(.active) .dash-pill-red{color:#ef4444}
.dash-filter-btn.active .dash-pill-red{
  background:var(--dash-filter-pill-bg,rgba(255,255,255,.24));
  color:inherit;
}
.dash-task-row{display:flex;align-items:center;gap:10px;padding:9px 18px;border-bottom:1px solid var(--bdr);cursor:pointer;transition:background .12s}
.dash-task-row:hover{background:var(--inp)}
.dash-task-row:last-child{border-bottom:none}
.dash-row-ov{border-left:3px solid #ef4444}
.dash-row-today{border-left:3px solid #9333ea}
.dash-section-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--txt2);padding:10px 18px 4px;background:var(--inp)}
.dash-radar-section{display:flex;flex-direction:column}
.dash-radar-head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 18px 8px;border:none;background:var(--inp);cursor:pointer;text-align:left;
  border-top:1px solid color-mix(in srgb,var(--bdr) 72%, transparent)
}
.dash-radar-section:first-of-type .dash-radar-head{border-top:none}
.dash-radar-title{
  font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--txt2);
  display:inline-flex;align-items:center;gap:6px
}
.dash-radar-side{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
.dash-radar-count{
  display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 8px;
  border-radius:999px;background:rgba(148,163,184,.12);color:var(--txt2);font-size:11px;font-weight:900
}
.dash-radar-chevron{width:16px;height:16px;color:var(--txt2);transition:transform .16s ease,opacity .16s ease;opacity:.9}
.dash-radar-section.open .dash-radar-chevron{transform:rotate(180deg)}
.dash-radar-body{display:flex;flex-direction:column}
.dash-radar-section.collapsed .dash-radar-body,
.dash-radar-body[hidden]{display:none!important}
.dash-radar-section.tone-danger .dash-radar-title,
.dash-radar-section.tone-danger .dash-radar-count{color:#ef4444}
.dash-radar-section.tone-danger .dash-radar-count{background:rgba(239,68,68,.12)}
.dash-radar-section.tone-today .dash-radar-title,
.dash-radar-section.tone-today .dash-radar-count{color:#9333ea}
.dash-radar-section.tone-today .dash-radar-count{background:rgba(147,51,234,.12)}
.dash-radar-section.tone-week .dash-radar-title,
.dash-radar-section.tone-week .dash-radar-count{color:#0f766e}
.dash-radar-section.tone-week .dash-radar-count{background:rgba(15,118,110,.12)}
.dash-role-shell{display:flex;flex-direction:column;gap:16px}
.dash-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.dash-kpi{position:relative;padding:15px 16px 14px;border-radius:18px;border:1px solid var(--bdr);background:var(--card);overflow:hidden;min-width:0;box-shadow:var(--ui-shadow-soft)}
.dash-kpi::before{content:"";position:absolute;inset:0;background:linear-gradient(118deg,rgba(255,255,255,0) 28%,var(--dash-accent-soft) 100%);opacity:.72;pointer-events:none}
.dash-kpi::after{display:none}
.dash-kpi-label{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--txt2)}
.dash-kpi-value{font-size:28px;font-weight:900;line-height:1;color:var(--dash-accent,var(--acc));margin-top:8px}
.dash-kpi-sub{font-size:11.5px;color:var(--txt2);margin-top:7px;line-height:1.5}
.dash-tone-violet{--dash-accent:#f472b6;--dash-accent-soft:rgba(244,114,182,.22)}
.dash-tone-danger{--dash-accent:#ef4444;--dash-accent-soft:rgba(239,68,68,.22)}
.dash-tone-amber{--dash-accent:#f59e0b;--dash-accent-soft:rgba(245,158,11,.22)}
.dash-tone-sky{--dash-accent:#38bdf8;--dash-accent-soft:rgba(56,189,248,.22)}
.dash-tone-green{--dash-accent:#22c55e;--dash-accent-soft:rgba(34,197,94,.22)}
.dash-main-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:16px;align-items:start}
.dash-main-grid.team{grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)}
.dash-stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.dash-main-grid>.dash-stack:last-child{position:sticky;top:14px;align-self:start}
.dash-split-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dash-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.dash-card-title{font-weight:900;font-size:14.5px;color:var(--txt);line-height:1.2;letter-spacing:-.02em}
.dash-card-sub{font-size:11.5px;color:var(--txt2);margin-top:4px;line-height:1.5}
.dash-role-shell .card{position:relative;overflow:hidden;background:var(--card);box-shadow:var(--ui-shadow-soft)}
.dash-role-shell .card::before{display:none}
.dash-mini-list{display:flex;flex-direction:column;gap:10px}
.dash-mini-task{background:var(--card);border:1px solid var(--bdr);border-radius:14px;padding:12px 13px;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s}
.dash-mini-task:hover{transform:translateY(-1px);border-color:var(--acc);box-shadow:var(--ui-shadow-soft)}
.dash-mini-task-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.dash-mini-task-title{font-size:13.5px;font-weight:900;color:var(--txt);line-height:1.35;min-width:0;letter-spacing:-.015em}
.dash-mini-task-copy{font-size:11.5px;color:var(--txt2);line-height:1.5;margin-top:6px}
.dash-mini-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}
.dash-inline-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:800;border:1px solid transparent}
.dash-inline-chip.project{background:rgba(var(--acc-rgb,79,150,255),.12);color:var(--acc)}
.dash-inline-chip.soft{background:rgba(148,163,184,.12);color:var(--txt2);border-color:rgba(148,163,184,.18)}
.dash-inline-chip.warn{background:rgba(245,158,11,.12);color:#d97706;border-color:rgba(245,158,11,.18)}
.dash-inline-chip.danger{background:rgba(239,68,68,.12);color:#ef4444;border-color:rgba(239,68,68,.18)}
.dash-inline-chip.good{background:rgba(34,197,94,.12);color:#16a34a;border-color:rgba(34,197,94,.18)}
.dash-inline-chip.info{background:rgba(56,189,248,.12);color:#0284c7;border-color:rgba(56,189,248,.18)}
.dash-project-list{display:flex;flex-direction:column;gap:10px}
.dash-project-item{padding:12px 0;border-bottom:1px solid var(--bdr);transition:transform .14s ease}
.dash-project-item:hover{transform:translateX(2px)}
.dash-project-item:last-child{border-bottom:none;padding-bottom:0}
.dash-project-item:first-child{padding-top:0}
.dash-project-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.dash-project-name{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:800;color:var(--txt)}
.dash-project-name span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-project-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.dash-project-dot-logo{
  width:28px;height:28px;border-radius:10px;color:#fff;font-size:11px;font-weight:900;
  display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2)
}
.dash-company-logo{
  width:28px;height:28px;border-radius:10px;overflow:hidden;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--inp);border:1px solid var(--bdr);font-size:11px;font-weight:900;color:var(--txt)
}
.dash-company-logo img{width:100%;height:100%;object-fit:cover;display:block}
.dash-progress{height:6px;background:var(--inp);border-radius:999px;overflow:hidden}
.dash-progress > span{display:block;height:100%;border-radius:999px}
.dash-project-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;font-size:11px;color:var(--txt2);flex-wrap:wrap}
.dash-empty-lite{padding:18px 14px;border-radius:16px;border:1px dashed var(--bdr);background:rgba(255,255,255,.02);text-align:center}
.dash-empty-lite strong{display:block;font-size:13px;color:var(--txt);margin-top:4px}
.dash-empty-lite span{display:block;font-size:11px;color:var(--txt2);margin-top:4px;line-height:1.45}
.dash-stat-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dash-stat-box{border-radius:14px;background:var(--card);border:1px solid var(--bdr);padding:12px 13px}
.dash-stat-box .v{font-size:22px;font-weight:900;color:var(--txt)}
.dash-stat-box .t{font-size:11px;font-weight:700;color:var(--txt2);margin-top:4px}
@media(max-width:1220px){
  .dash-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dash-main-grid,.dash-main-grid.team,.dash-split-grid{grid-template-columns:1fr}
  .dash-main-grid>.dash-stack:last-child{position:static}
}
@media(max-width:900px){
  .dash-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .dash-kpi-grid{grid-template-columns:1fr}
  .dash-kpi-value{font-size:26px}
}
@media(max-width:1180px){
  .task-shell{gap:12px}
  .task-toolbar,
  .kb-toolbar{padding:10px 11px;gap:9px;border-radius:18px}
  .toolbar-row{flex-direction:column;align-items:stretch}
  .toolbar-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .toolbar-grid .task-tool,
  .toolbar-grid .task-filter-btn,
  .toolbar-grid .task-filter-toggle{
    width:100%;
    min-width:0;
  }
  .toolbar-grid .task-tool-search{
    grid-column:1 / -1;
    width:100%;
  }
  .toolbar-grid .task-tool{
    height:42px;
  }
  .toolbar-more{margin-left:0}
  .toolbar-row-meta{
    width:100%;
    justify-content:space-between;
    gap:8px;
    flex-wrap:wrap;
  }
  .task-toolbar-count{
    font-size:11px;
  }
  .task-view-toggle button{
    min-width:52px;
    padding:7px 9px;
    font-size:12px;
  }
  .task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .push-settings-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .dash-kpi-grid.dash-kpi-grid-5{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi{
    padding:11px 12px 11px;
    min-height:108px;
    border-radius:20px;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi:last-child{
    grid-column:1 / -1;
    min-height:94px;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi::before{
    background:linear-gradient(108deg,rgba(255,255,255,0) 34%,var(--dash-accent-soft) 100%);
    opacity:.9;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi-label{
    font-size:10px;
    letter-spacing:.055em;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi-value{
    font-size:21px;
    margin-top:6px;
  }
  .dash-kpi-grid.dash-kpi-grid-5 .dash-kpi-sub{
    font-size:10.5px;
    line-height:1.3;
    margin-top:5px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    text-wrap:balance;
    max-width:19ch;
  }
  .task-peek,.task-peek-backdrop{display:none!important}
  .kb-grid.tablet{grid-auto-columns:minmax(calc((100% - 10px)/2),1fr)}
}
@media(max-width:680px){
  .task-shell{gap:14px}
  .task-toolbar,.kb-toolbar{position:static;top:auto;z-index:auto;padding:10px 11px;margin-bottom:2px}
  .toolbar-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .toolbar-grid .task-tool,
  .toolbar-grid .task-filter-btn,
  .toolbar-grid .task-filter-toggle{width:100%;min-width:0}
  .toolbar-grid .task-tool{height:42px}
  .toolbar-grid .task-tool-search{grid-column:1 / -1;width:100%}
  .toolbar-grid .task-tool-status,
  .toolbar-grid .task-tool-project,
  .toolbar-grid .task-tool-priority,
  .toolbar-grid .task-tool-location,
  .toolbar-grid .task-tool-channel,
  .toolbar-grid .task-tool-piece,
  .toolbar-grid .task-tool-campaign{width:100%}
  .toolbar-row-meta{justify-content:space-between;gap:8px}
  .task-toolbar-count{font-size:11px}
  .task-view-toggle button{min-width:56px;padding:8px 10px;font-size:13px}
  .task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .task-grid .tcard.compact-card{padding:11px 10px 10px}
  .kb-col-body{max-height:none}
  .task-bulk-actions{margin-left:0}
  .work-type-picker{grid-template-columns:1fr}
  .push-settings-panel{gap:12px}
  .push-settings-status-row{align-items:stretch}
  .push-settings-status-main{width:100%}
  .push-settings-status-row #push-btn{width:100%}
}
.srch-box{background:var(--card);border-radius:20px;width:100%;max-width:560px;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.18)}
.srch-input{width:100%;padding:18px 20px;border:none;font-size:16px;font-weight:600;outline:none;color:var(--txt)}
.srch-res{max-height:380px;overflow:auto}
.srch-item{display:flex;align-items:center;gap:12px;padding:12px 20px;cursor:pointer;transition:background .12s}
.srch-item:hover{background:var(--inp)}
/* Notif panel */
.np{position:fixed;width:320px;background:var(--card);border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.55);border:1px solid var(--bdr);z-index:2000;
  visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-8px) scale(.96);
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
.np.open{visibility:visible;pointer-events:all;opacity:1;transform:translateY(0) scale(1);
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear 0s}
/* Content */
.content{flex:1 1 auto;overflow:visible;padding:20px 24px 28px;display:flex;flex-direction:column;min-height:0}
/* Footer */
.footer{background:#fff;border-top:1px solid #f1f5f9;padding:9px 24px;display:flex;align-items:center;
  justify-content:space-between;flex-shrink:0;margin-top:auto}
.footer a{font-size:11px;color:var(--txt2);font-weight:600}
.footer a span{color:#9333ea;font-weight:800}
.ver-badge{font-size:10px;color:var(--txt2);background:#f1f5f9;padding:3px 9px;border-radius:20px;font-weight:800;border:1px solid rgba(148,163,184,.18);display:inline-flex;align-items:center;justify-content:center;line-height:1}
#ver-badge{font-size:10px;padding:4px 9px;border-radius:999px;font-weight:800;letter-spacing:.01em}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 05 · BOTONES & FORMULARIOS                              ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Buttons ── */
.btn{border-radius:12px;padding:10px 18px;font-size:14px;font-weight:900;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:7px;transition:all .18s cubic-bezier(.22,1,.36,1);border:none;cursor:pointer}
.bp{background:linear-gradient(135deg,#9333ea,#ec4899);color:#fff;box-shadow:0 4px 14px rgba(147,51,234,.3)}
.bp:hover{filter:brightness(1.08);transform:translateY(-1px)}.bp:disabled{opacity:.6;cursor:not-allowed;transform:none}
.bs{background:#f1f5f9;color:var(--txt2)}.bs:hover{background:#e2e8f0}
.bw{background:#fff;color:var(--txt);border:1.5px solid #e2e8f0}.bw:hover{border-color:#9333ea;color:#9333ea}
.bred{background:#fef2f2;color:#ef4444;border:1px solid #fecaca}
.bred:hover{background:#fee2e2}
.ntb{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:13px;border:1.5px solid #e2e8f0;
  background:#fff;font-weight:800;font-size:13px;color:var(--txt);cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.04);transition:all .15s}
.ntb:hover{border-color:#9333ea;color:#9333ea}

/* ── Forms ── */
.card{background:var(--card);border-radius:20px;padding:20px;border:1.5px solid var(--bdr);box-shadow:0 2px 8px rgba(0,0,0,.04)}
.fg{margin-bottom:13px}
.fg label{display:block;font-size:10.5px;font-weight:900;color:var(--txt2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.fi{width:100%;padding:10px 13px;border:1.5px solid #e2e8f0;border-radius:11px;font-size:14px;font-weight:600;
  background:#f8fafc;color:var(--txt);outline:none;transition:border .15s,box-shadow .15s}
.fi:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(147,51,234,.1)}
.fi:disabled{opacity:.5}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:11px}

.shell,.hdr,.footer,.card,.sc,.pc,.tcard,.cc,.srch-box,.site-card,.ub,.sb-panel,.ib,.btn,.ntb,.tab{position:relative}
.shell::after,.hdr::after,.footer::after,.card::after,.sc::after,.pc::after,.tcard::after,.cc::after,.srch-box::after,.site-card::after,.ub::after,.sb-panel::after,.ib::after,.btn::before,.ntb::before,.tab::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
}
.shell::after,.hdr::after,.footer::after,.card::after,.sc::after,.pc::after,.tcard::after,.cc::after,.srch-box::after,.site-card::after,.ub::after,.sb-panel::after{
  background:
    linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0) 30%),
    radial-gradient(circle at top right,rgba(255,255,255,.14),transparent 34%);
  opacity:.58;
}
/* Portal overlays keep their own positioning; do not inherit shared surface positioning */
.np,.modal,.cp{position:fixed!important}
.np{
  position:fixed!important;
  top:auto;
  left:auto;
  right:auto;
  bottom:auto;
}
.btn::before,.ntb::before,.tab::before,.ib::after{
  background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(255,255,255,0) 42%);
  opacity:.42;
}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 06 · MODALES & PANEL COMENTARIOS                        ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Modals ── */
.ov{position:fixed;inset:0;background:rgba(15,23,42,.56);z-index:1000;
  display:none;align-items:center;justify-content:center;padding:14px}
.ov.open{display:flex}
.modal{background:var(--card);border-radius:22px;width:100%;max-width:520px;max-height:92vh;overflow:auto;
  box-shadow:0 32px 80px rgba(0,0,0,.22)}
.modal.wide{max-width:640px}
.modal.xwide{max-width:720px}
.modal.pm-modal{max-width:1180px}
.modal.pm-child-modal{
  max-width:680px;
  border-radius:24px;
  box-shadow:0 36px 88px rgba(15,23,42,.28);
}
.ov.pm-overlay-child{
  z-index:1120;
  background:rgba(15,23,42,.68);
  backdrop-filter:blur(10px);
}
.fi-color{padding:8px 10px;min-height:46px}
.pm-layout{display:block}
.pm-main-stack,.pm-bottom-stack,.pm-collection-stack{display:flex;flex-direction:column;gap:14px}
.pm-collection-stack{margin-top:18px}
.pm-bottom-stack{margin-top:14px}
.pm-surface{
  padding:18px;
  border:1px solid color-mix(in srgb,var(--bdr) 86%, transparent);
  border-radius:22px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 98%, #fff),color-mix(in srgb,var(--card) 94%, var(--inp)));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
.pm-surface-wide{padding:20px 20px 18px}
.pm-section-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pm-company-preview{
  --company-brand:#9333ea;
  display:flex;align-items:center;gap:12px;
  padding:16px 16px 15px;margin-bottom:0;border-radius:20px;
  border:1px solid color-mix(in srgb,var(--company-brand) 24%, var(--bdr));
  background:color-mix(in srgb,var(--company-brand) 9%, var(--card));
}
.pm-company-mark{
  width:58px;height:58px;border-radius:18px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--company-brand) 18%, #fff);
  border:1px solid color-mix(in srgb,var(--company-brand) 22%, var(--bdr));
  color:var(--company-brand);font-size:20px;font-weight:900;overflow:hidden;
}
.pm-company-mark img{width:100%;height:100%;object-fit:cover}
.pm-company-name{font-size:16px;font-weight:900;color:var(--txt);line-height:1.15}
.pm-company-meta{font-size:12px;color:var(--txt2);margin-top:6px;line-height:1.4}
.pm-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}
.pm-section-head-tight{margin-bottom:12px}
.pm-section-title{font-size:13px;font-weight:900;color:var(--txt);letter-spacing:-.01em}
.pm-section-sub{font-size:12px;line-height:1.55;color:var(--txt2);margin-top:5px;max-width:540px}
.pm-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pm-contact-list,.pm-channel-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pm-location-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pm-contact-empty{padding:14px 15px;border:1px dashed var(--bdr);border-radius:16px;background:var(--inp);font-size:12px;line-height:1.5;color:var(--txt2)}
.pm-channel-empty{padding:14px 15px;border:1px dashed var(--bdr);border-radius:16px;background:var(--inp);font-size:12px;line-height:1.5;color:var(--txt2)}
.pm-location-empty{padding:14px 15px;border:1px dashed var(--bdr);border-radius:16px;background:var(--inp);font-size:12px;line-height:1.5;color:var(--txt2)}
.pm-contact-empty,.pm-channel-empty,.pm-location-empty{grid-column:1 / -1}
.pm-summary-card{
  min-height:188px;
  padding:15px 15px 14px;
  border:1px solid var(--bdr);
  border-radius:20px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 97%, #fff),color-mix(in srgb,var(--card) 93%, var(--inp)));
  cursor:pointer;
  transition:border-color .18s,transform .18s,box-shadow .18s;
}
.pm-summary-card:hover{border-color:color-mix(in srgb,var(--acc) 54%, var(--bdr));transform:translateY(-1px);box-shadow:0 16px 32px rgba(15,23,42,.08)}
.pm-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.pm-summary-copy{min-width:0;flex:1}
.pm-summary-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pm-contact-title,.pm-channel-title,.pm-location-title{font-size:14px;font-weight:900;color:var(--txt);line-height:1.2;letter-spacing:-.01em}
.pm-contact-sub,.pm-channel-sub,.pm-location-sub{font-size:11px;color:var(--txt2);margin-top:5px;line-height:1.45}
.pm-summary-meta{margin-top:12px;font-size:12px;color:var(--txt);line-height:1.55;min-height:48px}
.pm-summary-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px}
.pm-summary-chip-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.pm-summary-chip{
  padding:6px 10px;border-radius:999px;
  background:var(--inp);border:1px solid var(--bdr);
  font-size:10px;font-weight:800;color:var(--txt2);
}
.pm-summary-link{
  border:none;background:none;color:var(--acc);
  font-size:11px;font-weight:900;cursor:pointer;padding:0;
  text-transform:uppercase;letter-spacing:.08em;
}
.pm-compact-list{display:block}
.pm-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pm-compact-card{
  padding:13px 14px;border-radius:18px;border:1px solid var(--bdr);
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 98%, #fff),color-mix(in srgb,var(--card) 93%, var(--inp)));
  cursor:pointer;display:flex;flex-direction:column;gap:10px;
  transition:border-color .18s,transform .18s,box-shadow .18s;
}
.pm-compact-card:hover{border-color:color-mix(in srgb,var(--acc) 54%, var(--bdr));transform:translateY(-1px);box-shadow:0 14px 28px rgba(15,23,42,.08)}
.pm-compact-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.pm-compact-copy{min-width:0;display:flex;flex-direction:column;gap:5px}
.pm-compact-copy strong{font-size:13px;font-weight:900;color:var(--txt);line-height:1.2}
.pm-compact-copy span{font-size:11px;color:var(--txt2);line-height:1.45}
.pm-compact-meta{font-size:12px;color:var(--txt);line-height:1.55;min-height:38px}
.pm-compact-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.pm-compact-empty{
  padding:14px 16px;border-radius:16px;border:1px dashed var(--bdr);
  background:var(--inp);font-size:12px;line-height:1.6;color:var(--txt2);
}
.pm-summary-badge{
  padding:5px 8px;border-radius:999px;
  font-size:10px;font-weight:900;line-height:1;
}
.pm-summary-badge.primary{background:#ede9fe;color:#7c3aed}
.pm-summary-badge.live{background:#dcfce7;color:#15803d}
.pm-summary-badge.muted{background:#fef3c7;color:#b45309}
.pm-summary-trash{
  width:34px;height:34px;flex-shrink:0;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid color-mix(in srgb,#ef4444 20%, var(--bdr));
  border-radius:12px;
  background:color-mix(in srgb,#ef4444 7%, var(--card));
  color:#dc2626;
  cursor:pointer;
  transition:transform .18s,border-color .18s,background .18s;
}
.pm-summary-trash:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,#ef4444 48%, var(--bdr));
  background:color-mix(in srgb,#ef4444 12%, var(--card));
}
.pm-summary-trash svg{width:15px;height:15px;fill:currentColor}
.pm-contact-grid{align-items:end}
.pm-channel-grid{align-items:end}
.pm-location-grid{align-items:end}
.pm-primary-toggle{display:flex;align-items:center;gap:8px;min-height:46px;padding:0 2px;font-size:12px;font-weight:700;color:var(--txt);cursor:pointer}
.pm-primary-toggle input{width:16px;height:16px;accent-color:#7c3aed}
.pm-child-intro{
  padding:16px 16px 15px;margin-bottom:16px;border-radius:18px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 97%, #fff),color-mix(in srgb,var(--card) 92%, var(--inp)));
  border:1px solid var(--bdr);
}
.pm-child-kicker{
  font-size:11px;font-weight:900;color:var(--txt2);
  text-transform:uppercase;letter-spacing:.08em;
}
.pm-child-copy{font-size:12px;line-height:1.6;color:var(--txt);margin-top:6px}
.pm-child-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.pm-section-action{
  min-height:42px!important;
  padding:0 16px!important;
  border-radius:14px!important;
  font-size:12px!important;
  box-shadow:0 10px 18px rgba(15,23,42,.08);
}
.chk-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chk-group label{display:flex;align-items:center;gap:5px;font-size:13px;cursor:pointer;
  background:var(--inp);border:1px solid var(--bdr);border-radius:10px;padding:6px 12px;transition:border .15s}
.chk-group label:hover{border-color:var(--acc)}
.chk-group input[type=checkbox]{accent-color:#7c3aed;width:16px;height:16px}
.briefing-divider{border-top:1px solid var(--bdr);margin-top:14px;padding-top:14px}
.briefing-header{font-weight:800;color:#7c3aed;font-size:13px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.work-type-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.work-type-btn{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;border:1.5px solid var(--bdr);background:var(--card);cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s,background .15s;color:var(--txt);text-align:left}
.work-type-btn:hover{border-color:var(--acc);transform:translateY(-1px)}
.work-type-btn.active{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%, #fff);box-shadow:0 6px 18px color-mix(in srgb,var(--acc) 14%, transparent)}
.work-type-icon{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;background:var(--inp);flex-shrink:0}
.work-type-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.work-type-title{font-size:13px;font-weight:900;color:var(--txt);line-height:1.1}
.work-type-sub{font-size:11px;color:var(--txt2);line-height:1.25}
.sr-only-select{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html.modal-open,body.modal-open{overflow:hidden!important;overscroll-behavior:none}
body.modal-open{position:fixed;left:0;right:0;width:100%}
.cp-desc{padding:14px 20px;border-bottom:1px solid var(--bdr)}
.cp-desc-box{background:var(--inp);border:1px solid var(--bdr);border-radius:16px;padding:14px 15px}
.cp-desc-title{font-size:11px;font-weight:800;color:var(--txt2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}
.cp-desc-text{font-size:13px;line-height:1.6;color:var(--txt);white-space:pre-wrap;word-break:break-word}
.cp-desc-empty{font-size:12px;color:var(--txt2);font-style:italic}
.cp-actions{
  padding:16px 20px;
  border-bottom:1px solid var(--bdr);
  background:color-mix(in srgb,var(--card) 95%, var(--inp));
}
.cp-actions-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.cp-actions-title{
  font-size:11px;
  font-weight:900;
  color:var(--txt2);
  text-transform:uppercase;
  letter-spacing:.09em;
}
.cp-actions-sub{
  margin-top:6px;
  font-size:12px;
  line-height:1.45;
  color:var(--txt);
  max-width:420px;
}
.cp-actions-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
}
.cp-actions .fg{
  margin:0!important;
  padding:12px;
  border:1px solid var(--bdr);
  border-radius:16px;
  background:var(--inp);
}
.cp-actions .fg > span{
  display:block;
  margin-bottom:8px!important;
  font-size:10.5px!important;
  font-weight:900!important;
  letter-spacing:.1em!important;
}
.cp-actions-save{
  display:flex;
  justify-content:flex-end;
}
.cp-actions-save .btn{
  min-height:42px;
  white-space:nowrap;
  padding-inline:18px;
}
.mh{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid var(--bdr);flex-shrink:0}
.mh span{font-weight:900;font-size:17px;color:var(--txt)}
.mb{padding:22px 26px}

/* ── Comment panel ── */
.cp-backdrop{position:fixed;inset:0;background:rgba(8,15,28,.52);display:none;z-index:899}
.cp-backdrop.open{display:block;animation:fadeIn .18s ease both}
.cp{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 72px));max-height:min(calc(100vh - 72px),760px);background:#fff;box-shadow:0 28px 74px rgba(2,6,23,.24),0 0 0 1px rgba(15,23,42,.06);
  z-index:900;display:none;flex-direction:column;transition:transform .3s;border-radius:24px;overflow:hidden;border:1px solid var(--bdr)}
.cp.open{display:flex;animation:cpPop .24s ease both}
.cp-head{padding:16px 18px;border-bottom:1px solid var(--bdr);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0;background:color-mix(in srgb,var(--card) 97%, var(--inp))}
.cp-tabs{
  display:flex;
  gap:8px;
  padding:10px 14px;
  border-bottom:1px solid var(--bdr);
  background:color-mix(in srgb,var(--card) 98%, var(--inp));
  overflow-x:auto;
  scrollbar-width:none;
}
.cp-tabs::-webkit-scrollbar{display:none}
.cp-tab{
  min-height:38px;
  padding:0 13px;
  border:1px solid var(--bdr);
  border-radius:999px;
  background:var(--inp);
  color:var(--txt2);
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.cp-tab:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--acc) 28%,var(--bdr))}
.cp-tab.active{
  background:var(--acc-g);
  border-color:transparent;
  color:#fff;
  box-shadow:0 10px 24px rgba(124,58,237,.18);
}
.cp-tab span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  margin-left:6px;
  padding:0 6px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:10px;
}
.cp-tab:not(.active) span{background:var(--card);color:var(--txt2);border:1px solid var(--bdr)}
.cp-body{flex:1;overflow:auto;padding:14px 18px}
.cp-foot{padding:14px 18px;border-top:1px solid var(--bdr);flex-shrink:0;background:color-mix(in srgb,var(--card) 97%, var(--inp))}
.cp[data-tab="summary"] #cp-files,
.cp[data-tab="summary"] #cp-subtasks,
.cp[data-tab="summary"] .cp-body,
.cp[data-tab="summary"] .cp-foot,
.cp[data-tab="assets"] #cp-desc,
.cp[data-tab="assets"] #cp-briefing,
.cp[data-tab="assets"] #cp-actions,
.cp[data-tab="assets"] #cp-subtasks,
.cp[data-tab="assets"] .cp-body,
.cp[data-tab="assets"] .cp-foot,
.cp[data-tab="subtasks"] #cp-desc,
.cp[data-tab="subtasks"] #cp-briefing,
.cp[data-tab="subtasks"] #cp-actions,
.cp[data-tab="subtasks"] #cp-files,
.cp[data-tab="subtasks"] .cp-body,
.cp[data-tab="subtasks"] .cp-foot,
.cp[data-tab="comments"] #cp-desc,
.cp[data-tab="comments"] #cp-briefing,
.cp[data-tab="comments"] #cp-actions,
.cp[data-tab="comments"] #cp-files,
.cp[data-tab="comments"] #cp-subtasks{
  display:none!important;
}
.cp #cp-desc,.cp #cp-briefing,.cp #cp-files,.cp #cp-subtasks{padding-left:14px!important;padding-right:14px!important}
.cp .cp-desc-box{padding:12px 13px;border-radius:14px}
.cp .cp-desc-title{font-size:9.5px;letter-spacing:.12em;margin-bottom:6px}
.cp .cp-desc-text{font-size:11.5px;line-height:1.5}
.cp #cp-files,
.cp #cp-subtasks{
  background:color-mix(in srgb,var(--card) 98%, var(--inp));
}
.cp-assets-wrap{padding:14px 20px;border-bottom:1px solid var(--bdr)}
.cp-assets-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.cp-assets-head p{margin:0;font-size:11px;font-weight:900;color:var(--txt2);text-transform:uppercase;letter-spacing:.1em}
.cp-assets-head span{display:block;margin-top:4px;font-size:11px;line-height:1.4;color:var(--txt2)}
.cp-drive-status{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;border:1px solid var(--bdr);font-size:10px;font-weight:900;color:var(--txt2);white-space:nowrap;background:var(--inp)}
.cp-drive-status.connected{color:#15803d;background:color-mix(in srgb,#22c55e 12%,var(--card));border-color:color-mix(in srgb,#22c55e 36%,var(--bdr))}
.cp-upload-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(145px,1fr) auto;gap:8px;margin-bottom:10px}
.cp-asset-stage{height:38px;font-size:11px;font-weight:800;border-radius:12px}
.cp-upload-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 12px;border-radius:12px;background:var(--acc-g);color:#fff;cursor:pointer;font-size:11px;font-weight:900;white-space:nowrap}
.cp-asset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;width:100%}
.cp-asset-card{padding:11px;border:1px solid var(--bdr);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--card) 92%, var(--inp)),var(--inp));cursor:pointer;min-width:0;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.cp-asset-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--acc) 28%,var(--bdr));box-shadow:0 12px 26px rgba(15,23,42,.08)}
.cp-asset-main{display:flex;align-items:flex-start;gap:9px;min-width:0}
.cp-asset-icon{width:30px;height:30px;border-radius:10px;background:var(--card);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cp-asset-copy{min-width:0;flex:1}
.cp-asset-copy strong{display:block;font-size:12px;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-asset-copy div{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:5px;font-size:10px;font-weight:800;color:var(--txt2)}
.asset-drive-mark{display:inline-flex;align-items:center;gap:4px;color:#15803d}
.cp-asset-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}
.cp-asset-stage{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;background:var(--card);color:var(--txt2);border:1px solid var(--bdr)}
.cp-asset-stage.review{color:#7c3aed;background:#f3e8ff;border-color:#ddd6fe}
.cp-asset-stage.final{color:#15803d;background:#dcfce7;border-color:#bbf7d0}
.cp-asset-stage.editable{color:#0369a1;background:#e0f2fe;border-color:#bae6fd}
.cp-asset-stage.draft{color:#b45309;background:#fef3c7;border-color:#fde68a}
.cp-asset-empty{width:100%;padding:12px;border:1px dashed var(--bdr);border-radius:14px;font-size:11px;color:var(--txt2);background:var(--inp)}
.cp .file-chip{
  background:var(--inp);
  border:1px solid var(--bdr);
}
.cp .comment{
  align-items:flex-start;
}
.cp .comment-bubble{
  border:1px solid var(--bdr);
}
@keyframes cpPop{
  from{opacity:0;transform:translate(-50%,-46%) scale(.97)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
html.cp-open,body.cp-open{overflow:hidden}
@media(max-width:1100px){
  .cp{width:min(680px,calc(100vw - 28px));max-height:min(calc(100vh - 28px),82vh)}
}
@media(max-width:900px){
  .cp{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%)!important;width:min(560px,calc(100vw - 22px));max-height:min(calc(100vh - 22px),82vh);border-radius:20px;box-shadow:0 24px 64px rgba(2,6,23,.24),0 0 0 1px rgba(15,23,42,.08)}
  .cp.open{animation:cpPop .22s ease both}
  .cp-head{padding:12px 13px}
  .cp-tabs{padding:9px 13px;gap:7px}
  .cp-tab{min-height:36px;padding:0 12px;font-size:11px}
  .cp-body{padding:11px 13px}
  .cp-foot{padding:11px 13px calc(11px + env(safe-area-inset-bottom))}
  .cp-actions{padding:12px 13px}
  .cp-actions-grid{grid-template-columns:1fr 1fr}
  .cp-actions-save{grid-column:1/-1}
  .cp-actions-save .btn{width:100%}
  .cp #cp-desc,.cp #cp-briefing,.cp #cp-files,.cp #cp-subtasks{padding-left:13px!important;padding-right:13px!important}
}
@media(max-width:680px){
  .cp{width:calc(100vw - 12px);max-height:min(calc(100vh - 14px),82vh);border-radius:16px}
  .cp-head{padding:11px 11px}
  .cp-tabs{padding:8px 11px}
  .cp-tab{min-height:35px;padding:0 11px}
  .cp-actions{padding:11px 11px}
  .cp-actions-grid{grid-template-columns:1fr}
  .cp-actions-save{grid-column:auto}
  .cp #cp-desc,.cp #cp-briefing,.cp #cp-files,.cp #cp-subtasks,.cp-body,.cp-foot{padding-left:11px!important;padding-right:11px!important}
  .cp-head > div:first-child{min-width:0}
  .cp-head > div:first-child > div:first-child{font-size:13px!important}
  .cp-head > div:first-child > div:last-child{font-size:10px!important}
  .cp-foot > div{gap:6px!important}
  .cp-upload-row{grid-template-columns:1fr}
  .cp-asset-grid{grid-template-columns:1fr}
}
.cp-section-card{
  background:var(--inp);
  border:1px solid var(--bdr);
  border-radius:16px;
  padding:14px;
}
.cp-section-stack{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.comment{display:flex;gap:10px;margin-bottom:14px}
.comment-bubble{flex:1;background:var(--inp);border-radius:12px;padding:10px 13px;min-width:0}
.comment-meta{font-size:11px;color:var(--txt2);margin-top:5px;display:flex;justify-content:space-between}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 07 · GRADIENT PICKER & TABS                             ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Gradient picker ── */
.grad-grid{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.gp{width:36px;height:36px;border-radius:10px;cursor:pointer;border:3px solid transparent;transition:border .15s,transform .15s}
.gp:hover{transform:scale(1.1)}.gp.sel{border-color:var(--txt);transform:scale(1.08)}

/* ── Tabs ── */
.tabs{display:flex;gap:4px;background:var(--inp);border-radius:12px;padding:3px;margin-bottom:20px}
.tab{flex:1;padding:8px;border-radius:9px;border:none;background:transparent;font-weight:700;font-size:13px;cursor:pointer;color:var(--txt2);transition:all .15s}
.tab.active{background:var(--card);color:var(--acc);box-shadow:0 2px 6px rgba(0,0,0,.08)}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 08 · BADGES                                             ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Badges ── */
.badge{border-radius:7px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:3px}
.bh{background:#fef2f2;color:#ef4444}.bm{background:#fffbeb;color:#f59e0b}.bl{background:#f0fdf4;color:#10b981}
.bd2{background:#ecfdf5;color:#10b981}.bi{background:#dbeafe;color:#2563eb}.brev{background:#f5f3ff;color:#7c3aed}.bpend{background:#fffbeb;color:#f59e0b}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 09 · ELEMENTOS DE TAREA                                 ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Task elements ── */
.tcard{background:var(--card);border:1.5px solid var(--bdr);border-radius:13px;padding:14px;margin-bottom:9px;position:relative;cursor:pointer;display:flex;flex-direction:column;overflow:hidden}
.tcard:hover{border-color:#e9d5ff}
.tcard.ov2{border-color:#fecaca}
.tcard .top-bar{position:absolute;top:0;left:0;right:0;height:4px;border-radius:13px 13px 0 0;pointer-events:none;opacity:.96}
.tcard.tone-active{border-color:color-mix(in srgb,var(--acc) 18%, var(--bdr))}
.tcard.tone-review{border-color:rgba(124,58,237,.26)}
.tcard.tone-request{border-color:rgba(245,158,11,.22)}
.tcard.tone-active:hover{border-color:color-mix(in srgb,var(--acc) 38%, var(--bdr))}
.tcard.tone-review:hover{border-color:rgba(124,58,237,.42)}
.tcard.tone-request:hover{border-color:rgba(245,158,11,.36)}
.tr{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--bdr)}
.tr:last-child{border:none}
.tc{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2.5px solid #d1d5db;background:transparent;
  display:flex;align-items:center;justify-content:center;margin-top:1px;color:#fff;transition:all .2s;cursor:pointer}
.tc.done{border-color:var(--txt);background:#1e293b}
.tm{display:flex;align-items:center;gap:6px;margin-top:7px;flex-wrap:wrap}
.av{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;flex-shrink:0;user-select:none}
.avs{display:flex;align-items:center}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 10 · TARJETAS DE PROYECTO                               ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Project card ── */
.pc{border-radius:20px;padding:20px;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.15);transition:transform .2s,box-shadow .2s}
.pc:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,0,0,.2)}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 11 · TARJETAS ESTADÍSTICAS                              ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Stat card ── */
.sc{background:var(--card);border-radius:16px;padding:16px 18px;display:flex;align-items:center;gap:12px;
  box-shadow:0 2px 8px rgba(0,0,0,.04);border:1.5px solid var(--bdr)}
.si{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 12 · CALENDARIO                                         ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Calendar ── */
.cal-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}
.cg{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:4px;min-width:700px}
.cc{min-height:clamp(80px,10vw,120px);background:var(--card);border:1.5px solid var(--bdr);border-radius:12px;padding:7px;transition:border .15s;overflow:hidden}
.cc:hover{border-color:var(--acc)!important;cursor:pointer}
.cc.tod{border-color:var(--acc)!important;box-shadow:0 0 0 2px rgba(147,51,234,.13)}
.cn{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--txt);margin-bottom:4px;flex-shrink:0}
.cn.tn{background:var(--acc-g);color:#fff;box-shadow:0 2px 8px rgba(147,51,234,.35)}
.ct{border-radius:5px;padding:3px 6px;font-size:10px;font-weight:700;margin-bottom:2px;cursor:pointer;
  overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transition:all .12s;display:flex;align-items:center;gap:3px;min-width:0}
.ct:hover{opacity:.8;transform:translateX(1px)}
.ct.ov3{background:#fef2f2;border-left:3px solid #ef4444;color:#ef4444}
.ct.dn{background:#ecfdf5;border-left:3px solid #10b981;color:#059669}
.ct.pd{background:#f5f3ff;border-left:3px solid #9333ea;color:#7c3aed}
/* aurora ct overrides now in CSS·02 */
@media(max-width:1100px){.cg{grid-template-columns:repeat(7,minmax(88px,1fr))}}
@media(max-width:900px){.cg{grid-template-columns:repeat(7,minmax(80px,1fr));gap:3px}.cc{padding:5px;border-radius:9px}}

/* ── Misc ── */
.spl{display:flex;align-items:center;gap:8px;padding:14px 0 6px}
.stl{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
.spn{border:3px solid var(--bdr,#e2e8f0);border-top-color:var(--acc,#9333ea);border-radius:50%}
.rb{background:linear-gradient(135deg,#f5f3ff,#fdf2f8);border:1px solid #e9d5ff;border-radius:12px;padding:14px;margin-bottom:16px}
.empty{text-align:center;padding:40px;color:var(--txt2)}
.empty .ei{font-size:38px;margin-bottom:10px}
.file-chip{display:inline-flex;align-items:center;gap:5px;background:#f5f3ff;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:700;color:#7c3aed;margin:2px;cursor:pointer;transition:background .12s}
.file-chip:hover{background:#ede9fe}
.file-chip .del-f{color:#ef4444;background:none;border:none;padding:0;cursor:pointer;font-size:14px;line-height:1}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 13 · LOGIN                                              ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ── Login ── */
#ls{
  position:fixed;inset:0;
  background:
    radial-gradient(circle at top left, rgba(111,197,194,.18), transparent 32%),
    radial-gradient(circle at top right, rgba(196,184,224,.20), transparent 28%),
    linear-gradient(135deg,#d9eaf3 0%,#d3e6ef 38%,#d7dff4 100%);
  display:none;align-items:center;justify-content:center;padding:32px 18px;overflow:auto;z-index:9999
}
#ls.show{display:flex}
.lc.login-shell{
  width:100%;max-width:820px;min-height:520px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(255,255,255,.72);
  border-radius:30px;overflow:hidden;
  box-shadow:0 26px 72px rgba(61,81,122,.18);
  display:grid;grid-template-columns:minmax(260px,.88fr) minmax(0,1fr)
}
.lh.login-hero{
  background:var(--login-grad,linear-gradient(135deg,#9fd4d0,#b8cce8,#c4b8e0));
  padding:24px 24px 20px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:space-between;gap:20px;
  border-right:1px solid rgba(255,255,255,.34)
}
.lh.login-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(160deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(circle at 16% 78%, rgba(255,255,255,.18), transparent 24%),
    radial-gradient(circle at 84% 12%, rgba(255,255,255,.16), transparent 18%);
}
.login-brand,.login-hero-copy{position:relative;z-index:1}
.login-brand{display:flex;align-items:center;gap:12px}
.login-mark{
  width:44px;height:44px;border-radius:15px;
  background:rgba(255,255,255,.32);
  color:#ff8b2c;font-size:20px;font-weight:900;
  display:flex;align-items:center;justify-content:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35)
}
.login-brand-copy{display:flex;flex-direction:column;gap:4px}
.login-wordmark{color:#fff;font-weight:900;font-size:28px;letter-spacing:-1.1px;line-height:1}
.login-brand-copy p{margin:0;color:rgba(255,255,255,.9);font-size:14px;font-weight:700}
.login-kicker{
  display:inline-block;margin-bottom:10px;
  font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.78)
}
.login-hero-copy h1{
  margin:0 0 10px;color:#fff;font-size:29px;line-height:1.06;
  font-weight:900;letter-spacing:-1.25px;max-width:320px
}
.login-hero-copy p{
  margin:0;max-width:310px;
  color:rgba(255,255,255,.88);font-size:14px;line-height:1.55;font-weight:600
}
.login-body{
  background:linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgba(252,253,255,.98) 100%);
  padding:28px 28px;display:flex;align-items:center;justify-content:center
}
.login-pane{width:100%;max-width:380px}
.login-form{display:flex;flex-direction:column;gap:14px}
.login-copy{display:flex;flex-direction:column;gap:8px;margin-bottom:4px}
.login-copy h2{
  margin:0;color:#1b2138;font-size:25px;line-height:1.04;font-weight:900;letter-spacing:-.9px
}
.login-copy p{
  margin:0;color:#667085;font-size:13px;line-height:1.5;font-weight:600
}
.login-field{margin:0!important}
.login-field label{
  color:#6b7487;font-size:11.5px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px
}
#ls .fi{
  min-height:50px;border-radius:15px;
  border:1px solid #d8deea;background:#fff;color:#172033;
  box-shadow:0 1px 0 rgba(255,255,255,.8), inset 0 1px 0 rgba(255,255,255,.75);
  padding:0 15px;font-size:15px;font-weight:700
}
#ls .fi::placeholder{color:#98a2b3;font-weight:600}
#ls .fi:focus{
  border-color:#2f7e78;box-shadow:0 0 0 4px rgba(47,126,120,.12), inset 0 1px 0 rgba(255,255,255,.9)
}
.eb{
  background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:12px 14px;margin-bottom:0;
  display:none;align-items:center;gap:8px;font-size:13px;color:#dc2626;font-weight:700
}
.eb.show{display:flex}
.ok-box{
  background:#ecfdf3;border:1px solid #bbf7d0;border-radius:14px;padding:12px 14px;margin-bottom:0;
  display:none;align-items:center;gap:8px;font-size:13px;color:#15803d;font-weight:700
}
.ok-box.show{display:flex}
.pw{position:relative}
.pw input{padding-right:56px!important}
.pt{
  position:absolute;right:16px;top:50%;transform:translateY(-50%);
  width:32px;height:32px;border-radius:11px;border:none;background:transparent;
  color:#6b7487;padding:0;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center;
  transition:background .18s ease,color .18s ease
}
.pt:hover,.pt:focus-visible{background:#eef2f8;color:#1f2937;outline:none}
.pt svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-actions-row{display:flex;justify-content:flex-end;margin-top:-4px}
.login-link-btn,.login-inline-link,.login-back-btn{background:none;border:none;cursor:pointer;text-decoration:none}
.login-link-btn{color:#2f7e78;font-size:12.5px;font-weight:800;letter-spacing:-.1px}
.login-link-btn:hover,.login-inline-link:hover,.login-back-btn:hover{opacity:.82}
.login-submit{
  width:100%!important;justify-content:center!important;min-height:50px;
  padding:0 20px!important;border-radius:15px!important;font-size:15px!important;font-weight:900!important;
  letter-spacing:-.2px;margin-top:2px;box-shadow:0 12px 28px rgba(47,126,120,.16)
}
.login-meta{margin:2px 0 0;color:#8a93a6;font-size:11.5px;line-height:1.5;text-align:center;font-weight:700}
.login-back-btn{display:inline-flex;align-items:center;gap:8px;margin:0 0 2px;padding:0;color:#667085;font-size:13px;font-weight:800}
.login-inline-link{color:#2f7e78;font-weight:900;padding:0}

@media (max-width: 1100px) {
  #ls{padding:24px 16px}
  .lc.login-shell{max-width:700px;min-height:auto;border-radius:28px;grid-template-columns:1fr}
  .lh.login-hero{padding:20px 22px 16px;gap:16px;border-right:none;border-bottom:1px solid rgba(255,255,255,.28)}
  .login-hero-copy h1{font-size:22px;max-width:none}
  .login-hero-copy p{font-size:12.5px;max-width:none;line-height:1.45}
  .login-body{padding:24px 20px 22px}
}

/* ── Mobile overlay for sidebar ── */
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(2,8,23,.48);z-index:109}
.sidebar-close{display:none}

/* ── Toast ── */


/* ╔══════════════════════════════════════════════════════════════════╗
   ╚══════════════════════════════════════════════════════════════════╝ */

/* (cleaned empty media query) */
@media(max-width:900px){
  .stat-grid{grid-template-columns:1fr 1fr!important}
  #ls{padding:18px 14px}
  .lc.login-shell{border-radius:26px}
  .lh.login-hero{padding:18px 20px 14px;gap:14px}
  .login-hero-copy h1{font-size:20px}
  .login-hero-copy p{font-size:12.5px;line-height:1.45}
  .login-body{padding:22px 18px 20px}
}

.toast{position:fixed;top:18px;right:18px;background:#0f172a;color:#fff;padding:11px 18px;
  border-radius:13px;font-size:13px;font-weight:800;z-index:2000;box-shadow:0 8px 24px rgba(0,0,0,.2);
  display:none;animation:popIn .25s ease both;max-width:300px}
.toast.show{display:block}

.proj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.proj-grid.dashboard-projects{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.dash-grid{display:grid;grid-template-columns:minmax(280px,320px) minmax(0,1fr);gap:18px;align-items:start}
.page-stack{display:flex;flex-direction:column;gap:18px}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 15 · RESPONSIVE / MOBILE                                ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ══════════ RESPONSIVE ══════════ */
@media (max-width: 768px) {
  #app{padding:0}
  .shell{height:100vh;border-radius:0;box-shadow:none}
  .sidebar{position:fixed;left:0;top:0;bottom:0;transform:translateX(-100%);z-index:110;border-radius:0;width:var(--sidebar-shell-w)!important}
  .sidebar.open{transform:translateX(0)}
  .sidebar-overlay{display:none}
  .sidebar.open ~ .sidebar-overlay{display:block}
  
  .sb-collapse-btn{display:none}
  .ham{display:flex}
  .hdr{padding:0 14px}
  .content{padding:14px}
  .g2,.g3{grid-template-columns:1fr}
  .proj-grid{grid-template-columns:1fr 1fr!important}
  .proj-grid.dashboard-projects{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #ls{padding:18px 14px}
  .lc.login-shell{max-width:100%;min-height:auto;border-radius:26px;grid-template-columns:1fr}
  .lh.login-hero{padding:20px 22px 16px;gap:16px;border-right:none;border-bottom:1px solid rgba(255,255,255,.34)}
  .login-hero-copy h1{font-size:22px;max-width:none}
  .login-hero-copy p{max-width:none}
  .login-body{padding:24px 20px 22px}
}

@media (max-width: 580px) {
  /* Layout */
  .proj-grid{grid-template-columns:1fr 1fr!important}
  .proj-grid.dashboard-projects{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .pc{padding:16px;border-radius:16px}
  .pc > div:first-child{font-size:13px!important}
  .stat-grid{grid-template-columns:1fr 1fr!important}
  .g2{grid-template-columns:1fr!important}
  .footer p{display:none}

  /* Modals — slide up from bottom */
  .modal{border-radius:18px 18px 0 0;position:fixed;bottom:0;left:0;right:0;
         max-height:92vh;max-width:100%!important;width:100%!important}
  .ov{align-items:flex-end;padding:0}
  .cp{width:100%}

  /* Header */
  .hdr{padding:10px 12px!important;gap:8px!important}
  .hdr h1{font-size:16px!important}
  .hdr p{font-size:11px!important;display:none}
  .hdr-actions{gap:6px!important}

  /* Settings tabs — horizontal scroll */
  #settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap!important;
                  padding-bottom:4px}
  #settings-tabs button{min-width:70px!important;padding:8px 6px!important;font-size:11px!important}
  #settings-tabs button div:first-child{font-size:16px!important}

  /* Settings cards */
  .stab-content{padding:0 2px}
  .card{padding:16px!important;border-radius:14px!important}

  /* Buttons */
  .btn{padding:10px 14px!important;font-size:13px!important}
  .hdr .btn{padding:8px 12px!important;font-size:12px!important}

  /* Email method selector */
  #em-method-grid{grid-template-columns:1fr!important}

  /* Notifications push status */
  #push-status{flex-direction:column!important;align-items:flex-start!important;gap:10px}

  /* System stats */
  #sys-stats{grid-template-columns:repeat(3,1fr)!important}

  /* Timeline */
  .tl-row{font-size:10px!important}

  /* Inputs */
  .fi{font-size:16px!important} /* prevents iOS zoom */
  #ls{padding:16px 12px}
  .lc.login-shell{border-radius:24px}
  .lh.login-hero{padding:16px 16px 12px;gap:12px}
  .login-brand{gap:10px}
  .login-mark{width:40px;height:40px;border-radius:13px;font-size:18px}
  .login-wordmark{font-size:24px}
  .login-brand-copy p{font-size:13px}
  .login-kicker{margin-bottom:8px;font-size:10px}
  .login-hero-copy h1{font-size:18px}
  .login-hero-copy p{font-size:11.5px;line-height:1.4}
  .login-body{padding:18px 16px 16px}
  .login-pane{max-width:none}
  .login-copy h2{font-size:22px}
  .login-copy p{font-size:13px}
  #ls .fi{min-height:48px;border-radius:14px;font-size:15px}
.login-submit{min-height:48px!important;border-radius:14px!important;font-size:14px!important}
}

@media (max-width: 400px) {
  #settings-tabs button{min-width:60px!important;font-size:10px!important}
  #sys-stats{grid-template-columns:1fr 1fr!important}
  .lh.login-hero{padding:16px 16px 12px}
  .login-wordmark{font-size:24px}
  .login-hero-copy h1{font-size:18px}
  .login-hero-copy p{display:none}
  .login-body{padding:18px 14px 16px}
  .login-copy h2{font-size:22px}
}

@media (max-width: 1120px){
  .pm-contact-list,.pm-channel-list,.pm-location-list,.pm-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width: 920px){
  .pm-section-head{flex-direction:column;align-items:flex-start}
  .pm-section-action{width:100%;justify-content:center}
}

@media (max-width: 760px){
  .pm-contact-list,.pm-channel-list,.pm-location-list,.pm-summary-grid{grid-template-columns:1fr}
  .pm-surface{padding:16px}
  .pm-surface-wide{padding:16px}
  .pm-summary-card{min-height:0}
}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 16 · ACCESIBILIDAD & MOTION                             ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ══ ACCESSIBILITY + MOTION TUNING PATCH ═══════════════════════ */
@keyframes uiSheen{0%{transform:translateX(-140%) skewX(-22deg)}100%{transform:translateX(220%) skewX(-22deg)}}
@keyframes uiGradientShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes uiRise{from{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:none}}

.shell,.hdr,.footer,.card,.sc,.pc,.tcard,.cc,.np,.modal,.cp,.srch-box,.site-card,.ub,.btn,.ntb,.ib,.nb,.tab,.gp,.file-chip,.ct,.srch-item{
  transition:
    transform var(--ui-med) var(--ui-ease),
    box-shadow var(--ui-med) var(--ui-ease),
    background-color var(--ui-fast) ease,
    border-color var(--ui-fast) ease,
    color var(--ui-fast) ease,
    opacity var(--ui-fast) ease,
    filter var(--ui-fast) ease;
  will-change:transform;
}

.btn,.ntb,.ib,.ub,.site-card a,.tab,.file-chip{
  position:relative;
  overflow:hidden;
}

.btn::after,.ntb::after,.ib::after,.ub::after,.site-card a::after,.tab::after{
  content:"";
  position:absolute;
  inset:-30% auto -30% -45%;
  width:38%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-160%) skewX(-22deg);
  pointer-events:none;
  opacity:0;
}
.btn:hover::after,.ntb:hover::after,.ib:hover::after,.ub:hover::after,.site-card a:hover::after,.tab:hover::after{
  opacity:1;
  animation:uiSheen .8s var(--ui-ease) both;
}

.btn:hover,.ntb:hover,.ib:hover,.ub:hover,.tab:hover,.file-chip:hover,.btn:active,.ntb:active,.ib:active,.nb:active,.ub:active,.tab:active,.gp:active,.file-chip:active{
  transform:translateY(0) scale(.97)!important;
}

.nb{position:relative;overflow:hidden}
.nb:hover{transform:translateX(4px)}
.nb.active{transform:translateX(2px)}
.ib:hover{
  border-color:var(--acc)!important;
  color:var(--acc)!important;
  box-shadow:var(--ui-shadow-soft);
}
.bp{
  background:var(--acc-g)!important;
  background-size:180% 180%!important;
  animation:uiGradientShift 8s ease infinite;
  box-shadow:0 10px 26px rgba(0,0,0,.18), 0 6px 20px rgba(147,51,234,.22);
}
.bp:hover{
  filter:brightness(1.06);
  box-shadow:0 18px 36px rgba(0,0,0,.22);
}
.ntb:hover,.bw:hover,.bs:hover{
  box-shadow:var(--ui-shadow-soft);
}
.site-card a:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}
.card,.sc,.pc,.tcard,.cc,.srch-box,.modal,.np,.cp,.card:hover,.sc:hover,.tcard:hover,.cc:hover{
  box-shadow:var(--ui-shadow-pop);
}
.pc:hover{
  transform:translateY(-5px) scale(1.01);
}
.tab.active{
  box-shadow:0 8px 18px rgba(0,0,0,.08);
}
.tcard:hover{
  transform:translateY(-2px);
}
.tc{
  transition:transform var(--ui-fast) ease, background-color var(--ui-fast) ease, border-color var(--ui-fast) ease, box-shadow var(--ui-fast) ease;
}
.tc:hover{
  transform:scale(1.08);
  box-shadow:0 0 0 4px rgba(255,255,255,.08);
}
.fi:focus,
.fi:focus-visible,
button:focus-visible,
a:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:none!important;
  border-color:var(--acc)!important;
  box-shadow:0 0 0 3px rgba(147,51,234,.18)!important;
}
#dashboard,#tasks,#calendar,#insights,#clients,#settings{
  animation:uiRise .28s var(--ui-ease) both;
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 17 · MOBILE SHELL — fases 1-4                           ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ══ MOBILE SHELL PHASE 1 ═══════════════════════════════════════ */
.hdr-title{min-width:0}
.header-primary-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.header-primary-actions:empty{display:none}
@media (max-width: 768px){
  html,body,#app{min-height:100dvh}
  html,body,#app,.shell,.main{max-width:100%;overflow-x:hidden}
  html.mobile-nav-open,body.mobile-nav-open{overflow:hidden!important;overscroll-behavior:none;height:100dvh}
  #app{padding:0!important;align-items:stretch;justify-content:stretch}
  .shell{
    min-height:100dvh!important;
    display:flex!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .main{
    min-height:100dvh;
    background:var(--main-bg);
  }
  .sidebar{
    width:min(88vw,332px)!important;
    padding:calc(14px + env(safe-area-inset-top)) 14px calc(18px + env(safe-area-inset-bottom))!important;
    box-shadow:0 34px 90px rgba(0,0,0,.42);
    z-index:120!important;
    overflow-y:auto;
    overscroll-behavior:contain;
    display:flex!important;
    flex-direction:column!important;
    gap:12px;
    border-radius:0 28px 28px 0!important;
  }
  .sb-brand{padding:4px 6px 8px!important}
  .sb-brand-mark{width:38px!important;height:38px!important;border-radius:14px!important}
  .sb-brand-name{font-size:19px!important}
  .ub-wrap{padding:0!important;order:1}
  .ub{
    min-height:88px!important;
    border-radius:24px!important;
    padding:16px 15px!important;
    gap:12px!important;
    align-items:flex-start!important;
    margin-top:0!important;
  }
  .ub .av{width:44px!important;height:44px!important}
  .ub-info{gap:4px!important;padding-top:2px}
  .ub-name{font-size:18px!important;line-height:1.05!important}
  .ub-greeting{font-size:11px!important}
  .ub-role{font-size:10px!important;padding:5px 10px!important;margin-top:6px!important}
  .um{top:calc(100% + 12px)!important;border-radius:20px!important}
  .sb-nav-card{
    order:2;
    border-radius:26px!important;
    padding:14px 12px 12px!important;
  }
  .sb-tools-card{
    order:3;
    border-radius:24px!important;
    padding:12px!important;
    gap:12px!important;
  }
  .sb-cta-card{
    order:4;
    border-radius:28px!important;
    padding:14px!important;
    margin-top:auto!important;
  }
  .sb-mini-heading,
  .sb-section-label{font-size:11px!important;letter-spacing:.9px!important}
  .sidebar-close{
    display:flex!important;align-items:center;justify-content:center;
    position:absolute;top:calc(12px + env(safe-area-inset-top));right:12px;
    width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.08);color:#fff;font-size:18px;font-weight:900;
    z-index:2;box-shadow:0 12px 24px rgba(0,0,0,.18)
  }
  .nav{flex:1 1 auto;min-height:0;overflow:auto;padding:0 2px 8px!important}
  .logo{padding-right:48px}
  .sidebar-overlay{
    display:block!important;
    position:fixed;inset:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    background:rgba(2,8,23,.48)!important;
    transition:opacity .22s ease, visibility .22s ease;
    z-index:110!important;
  }
  body.mobile-nav-open .sidebar-overlay{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .logo{margin-bottom:22px!important}
  .nav{padding-bottom:12px}
  .nb{
    min-height:54px!important;
    font-size:15px!important;
    border-radius:18px!important;
    padding:14px 14px!important;
    margin-bottom:6px!important;
  }
  .nb-icon{width:24px!important;height:24px!important;border-radius:10px!important}
  .site-card{margin-top:6px;margin-bottom:8px;padding:14px!important;border-radius:18px!important}
  .hdr{
    position:sticky;
    top:0;
    z-index:80;
    height:auto!important;
    min-height:0!important;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr);
    align-items:start;
    gap:10px;
    background:var(--hdr)!important;
  }
  .ham{
    display:flex!important;
    width:46px!important;
    height:46px!important;
    margin-right:0!important;
    border-radius:15px!important;
    grid-column:1;
    grid-row:1 / span 2;
  }
  .hdr-title{
    grid-column:2;
    grid-row:1;
    padding-top:2px;
  }
  .hdr-title h1{
    font-size:clamp(22px,6vw,28px)!important;
    line-height:1.05;
    letter-spacing:-.03em;
  }
  .hdr-title p{display:none!important}
  .hdr-actions{
    grid-column:2;
    grid-row:2;
    width:100%;
    min-width:0;
    display:flex!important;
    align-items:center;
    gap:8px!important;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    padding-bottom:2px;
  }
  .hdr-actions::-webkit-scrollbar{display:none}
  .header-primary-actions{
    display:flex!important;
    align-items:center;
    gap:8px;
    min-width:max-content;
    flex-wrap:nowrap;
    margin-right:2px;
  }
  .header-primary-actions .btn,
  .header-primary-actions .ntb,
  #ha .btn,
  #ha .ntb{
    min-height:46px!important;
    height:46px!important;
    border-radius:15px!important;
    padding:0 16px!important;
    white-space:nowrap;
    font-size:14px!important;
    font-weight:900!important;
    box-shadow:0 14px 28px rgba(0,0,0,.16);
  }
  .hdr-actions .ib,
  .hdr-actions > div > .ib,
  .hdr-actions > .av{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:15px!important;
    flex:0 0 auto;
  }
  .hdr-actions > .av{font-size:14px!important}
  /* Hide desktop-only search (second search btn) & avatar on mobile */
  .hdr-search-desktop{display:none!important}
  .hdr-avatar-desktop{display:none!important}
  .mob-hide{display:none!important}
  .content{
    padding:14px 14px calc(112px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
  }
  #sb-theme-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 44px;
    gap:8px!important;
  }
  #sb-theme-row button{min-height:44px!important;border-radius:16px!important}
  .sb-fab{width:100%!important}
  .sb-fab-btn{height:82px!important;border-radius:24px!important}
  .sb-fab-label{font-size:20px!important;margin-top:14px!important}
  .sb-cta-note{font-size:12px!important;margin-top:6px!important}
  .content > *{max-width:100%}
  .footer{display:none!important}
  .modal{
    width:100%!important;
    max-width:100%!important;
    border-radius:20px 20px 0 0!important;
  }
  .ov{padding:0!important;align-items:flex-end!important}
  .cp{width:100%!important;max-width:100%!important}
}
@media (max-width: 580px){
  .hdr{padding:calc(8px + env(safe-area-inset-top)) 10px 10px!important;gap:8px!important}
  .hdr-title h1{font-size:clamp(19px,7vw,24px)!important}
  .header-primary-actions .btn,
  .header-primary-actions .ntb,
  #ha .btn,
  #ha .ntb{padding:0 14px!important;font-size:13px!important}
  .content{padding:12px 12px calc(108px + env(safe-area-inset-bottom))!important}
}


/* ══════════ PHASE 2/3/4 — MOBILE-SPECIFIC COMPONENTS ══════════ */
.mobile-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.mobile-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mobile-pc{min-height:184px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.mobile-pc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.mobile-pc-title{font-weight:900;font-size:15px;color:#fff;line-height:1.15}
.mobile-pc-meta{font-size:11px;color:rgba(255,255,255,.78);font-weight:700;margin-top:4px}
.mobile-pc-badges{display:flex;flex-wrap:wrap;gap:6px}
.mobile-pc-badge{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18);font-size:10px;font-weight:800;color:#fff}
.mobile-pc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mobile-pc-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.mobile-link-btn,.mobile-ghost-btn{height:34px;padding:0 12px;border-radius:10px;border:none;font-family:inherit;font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.mobile-link-btn{background:rgba(255,255,255,.95);color:#0f172a}
.mobile-ghost-btn{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.22)}
.mobile-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mobile-stat{background:var(--inp);border:1px solid var(--bdr);border-radius:14px;padding:12px}
.mobile-stat .num{font-size:20px;font-weight:900;color:var(--txt);line-height:1}
.mobile-stat .lbl{font-size:11px;color:var(--txt2);font-weight:800;margin-top:5px}
.mobile-card-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mobile-client-card,.mobile-member-card{background:var(--card);border:1.5px solid var(--bdr);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.mobile-client-card .head,.mobile-member-card .head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.mobile-client-card .name,.mobile-member-card .name{font-weight:900;font-size:15px;color:var(--txt);line-height:1.2}
.mobile-client-card .sub,.mobile-member-card .sub{font-size:12px;color:var(--txt2);margin-top:4px;line-height:1.4}
.mobile-client-card .stats,.mobile-member-card .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mobile-client-card .stat-box,.mobile-member-card .stat-box{border-radius:12px;padding:10px 8px;text-align:center;border:1px solid var(--bdr);background:var(--inp)}
.mobile-client-card .stat-box .v,.mobile-member-card .stat-box .v{font-size:18px;font-weight:900;line-height:1}
.mobile-client-card .stat-box .t,.mobile-member-card .stat-box .t{font-size:10px;font-weight:800;color:var(--txt2);margin-top:4px}
.mobile-inline-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.mobile-inline-actions .right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.mobile-cal-shell{display:flex;flex-direction:column;gap:14px}
.mobile-cal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.mobile-cal-nav{display:flex;align-items:center;gap:8px}
.mobile-cal-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.mobile-chip{padding:7px 10px;border-radius:999px;background:var(--inp);border:1px solid var(--bdr);font-size:11px;font-weight:800;color:var(--txt2)}
.mobile-cal-day{border-left:4px solid var(--acc);padding-left:12px}
.mobile-cal-date{font-size:13px;font-weight:900;color:var(--txt);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.mobile-cal-items{display:flex;flex-direction:column;gap:8px}
.mobile-cal-task{background:var(--inp);border:1px solid var(--bdr);border-radius:14px;padding:12px 12px 10px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s}
.mobile-cal-task:hover{transform:translateY(-1px);border-color:var(--acc);box-shadow:0 8px 20px rgba(0,0,0,.08)}
.mobile-cal-task-title{font-weight:800;font-size:13px;color:var(--txt);line-height:1.25}
.mobile-cal-task-sub{font-size:11px;color:var(--txt2);margin-top:4px;line-height:1.35}
.mobile-status-pill{padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}
.mobile-status-pill.done{background:#dcfce7;color:#15803d}
.mobile-status-pill.review{background:#f3e8ff;color:#7e22ce}
.mobile-status-pill.pending{background:#ede9fe;color:#7c3aed}
.mobile-status-pill.progress{background:#dbeafe;color:#1d4ed8}
.mobile-status-pill.overdue{background:#fee2e2;color:#dc2626}
.mobile-settings-shell{display:flex;flex-direction:column;gap:14px;max-width:760px}
.mobile-settings-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:2px;scrollbar-width:none}
.mobile-settings-tab{min-width:120px;padding:10px 12px;border-radius:14px;border:1.5px solid var(--bdr);background:var(--card);color:var(--txt2);font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;gap:6px}
.mobile-settings-tab.active{background:var(--acc-g);color:#fff;border-color:transparent;box-shadow:0 8px 18px rgba(147,51,234,.25)}
.mobile-profile-hero{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:var(--inp);border:1px solid var(--bdr)}
.mobile-profile-meta{min-width:0;flex:1}
.mobile-profile-name{font-size:18px;font-weight:900;color:var(--txt);line-height:1.15}
.mobile-profile-role{font-size:12px;font-weight:800;color:var(--txt2);margin-top:4px}
.mobile-profile-email{font-size:12px;color:var(--acc);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-profile-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.mobile-avatar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.mobile-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mobile-theme-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px}
.mobile-theme-btn,.mobile-font-btn{padding:14px 10px;border-radius:16px;border:1.5px solid var(--bdr);background:var(--card);color:var(--txt);font-weight:800;display:flex;flex-direction:column;align-items:flex-start;gap:6px;transition:transform .18s,border-color .18s,box-shadow .18s}
.mobile-theme-btn.active,.mobile-font-btn.active{border-color:var(--acc);background:var(--inp);box-shadow:0 8px 18px rgba(0,0,0,.08)}
.mobile-theme-btn:hover,.mobile-font-btn:hover{transform:translateY(-1px)}
.mobile-stack{display:flex;flex-direction:column;gap:12px}
.mobile-surface{background:var(--card);border:1.5px solid var(--bdr);border-radius:18px;padding:14px}
.mobile-surface h3{font-size:14px;font-weight:900;color:var(--txt);margin-bottom:10px}
.mobile-surface p{font-size:12px;color:var(--txt2);line-height:1.45}

.company-shell{display:flex;flex-direction:column;gap:16px}
.company-hero{
  --company-accent:#9333ea;
  --company-accent-soft:rgba(147,51,234,.12);
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:18px;
  padding:20px;
  border-radius:24px;
  border:1px solid color-mix(in srgb,var(--company-accent) 18%, var(--bdr));
  background:
    radial-gradient(circle at top right, color-mix(in srgb,var(--company-accent) 13%, #fff), transparent 38%),
    linear-gradient(180deg, color-mix(in srgb,var(--card) 98%, #fff), color-mix(in srgb,var(--card) 92%, var(--inp)));
}
.company-hero-main{display:flex;align-items:flex-start;gap:16px}
.company-hero-mark{
  width:72px;height:72px;border-radius:24px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--company-accent) 14%, #fff);
  border:1px solid color-mix(in srgb,var(--company-accent) 22%, var(--bdr));
  color:var(--company-accent);font-size:30px;font-weight:900;overflow:hidden;
}
.company-hero-mark img{width:100%;height:100%;object-fit:cover}
.company-hero-topline{
  font-size:11px;font-weight:900;color:var(--company-accent);
  text-transform:uppercase;letter-spacing:.09em;
}
.company-hero-copy h2{margin:6px 0 0;font-size:28px;line-height:1.08;color:var(--txt);letter-spacing:-.03em}
.company-hero-copy p{margin:10px 0 0;font-size:13px;line-height:1.65;color:var(--txt2);max-width:640px}
.company-hero-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.company-pill{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:30px;padding:0 11px;border-radius:999px;
  background:var(--inp);border:1px solid var(--bdr);
  font-size:11px;font-weight:900;color:var(--txt);
}
.company-pill.primary{background:#ede9fe;color:#7c3aed;border-color:#ddd6fe}
.company-pill.live{background:#dcfce7;color:#15803d;border-color:#bbf7d0}
.company-pill.muted{background:#fef3c7;color:#b45309;border-color:#fde68a}
.company-pill.subtle{background:color-mix(in srgb,var(--card) 85%, var(--inp));color:var(--txt2)}
.company-hero-side{display:flex;flex-direction:column;gap:14px}
.company-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.company-stat{
  padding:14px;border-radius:18px;border:1px solid var(--bdr);
  background:color-mix(in srgb,var(--card) 95%, var(--inp));
}
.company-stat strong{display:block;font-size:24px;line-height:1;font-weight:900;color:var(--txt)}
.company-stat span{display:block;margin-top:6px;font-size:11px;font-weight:800;color:var(--txt2)}
.company-hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.company-team-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.company-team-copy{font-size:12px;color:var(--txt2);font-weight:700}
.company-inline-empty{font-size:12px;color:var(--txt2)}
.company-nav{padding:14px 16px;border-radius:22px}
.company-nav-row{display:flex;gap:10px;flex-wrap:wrap}
.company-nav-chip{
  min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--bdr);
  background:var(--inp);display:inline-flex;align-items:center;gap:10px;
  font:inherit;font-size:12px;font-weight:800;color:var(--txt2);cursor:pointer;
  transition:background .18s,border-color .18s,color .18s,transform .18s;
}
.company-nav-chip strong{font-size:11px;color:inherit}
.company-nav-chip.active{
  background:color-mix(in srgb,var(--company-accent, var(--acc)) 12%, var(--card));
  border-color:color-mix(in srgb,var(--company-accent, var(--acc)) 26%, var(--bdr));
  color:var(--txt);
  transform:translateY(-1px);
}
.company-section{padding:18px;border-radius:22px}
.company-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.company-section-head h3{margin:0;font-size:17px;font-weight:900;color:var(--txt);letter-spacing:-.02em}
.company-section-head h3 span{font-size:12px;color:var(--txt2);font-weight:800}
.company-section-head p{margin:6px 0 0;font-size:12px;line-height:1.55;color:var(--txt2);max-width:540px}
.company-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.company-card-grid.compact{grid-template-columns:1fr}
.company-card-grid.company-card-grid-tight{grid-template-columns:repeat(3,minmax(0,1fr))}
.company-card-grid.company-card-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}
.company-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.company-overview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.company-overview-card{
  min-height:156px;padding:16px;border-radius:20px;border:1px solid var(--bdr);
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 97%, #fff),color-mix(in srgb,var(--card) 93%, var(--inp)));
}
.company-overview-card.accent{
  border-color:color-mix(in srgb,var(--company-accent, var(--acc)) 24%, var(--bdr));
  background:linear-gradient(180deg,color-mix(in srgb,var(--company-accent, var(--acc)) 10%, var(--card)),color-mix(in srgb,var(--card) 94%, var(--inp)));
}
.company-overview-kicker{display:block;font-size:11px;font-weight:900;color:var(--txt2);text-transform:uppercase;letter-spacing:.08em}
.company-overview-card strong{display:block;margin-top:10px;font-size:20px;line-height:1.1;color:var(--txt)}
.company-overview-card p{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--txt2)}
.company-activity-list{display:flex;flex-direction:column;gap:10px}
.company-activity-item{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:14px;border-radius:18px;border:1px solid var(--bdr);background:var(--inp);
}
.company-activity-copy{min-width:0}
.company-activity-copy strong{display:block;font-size:13px;color:var(--txt)}
.company-activity-copy p{margin:6px 0 0;font-size:12px;line-height:1.55;color:var(--txt2)}
.company-editorial-section{grid-column:1 / -1}
.company-editorial-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:14px;align-items:start}
.company-editorial-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.company-editorial-item{
  display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center;
  padding:12px;border:1px solid var(--bdr);border-radius:18px;background:var(--inp);
}
.company-editorial-date{
  min-height:58px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;
  border:1px solid var(--bdr);background:var(--card);text-align:center;
}
.company-editorial-date strong{font-size:13px;color:var(--txt);line-height:1.1}
.company-editorial-date span{margin-top:5px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--txt2)}
.company-editorial-date.live{border-color:color-mix(in srgb,#10b981 32%,var(--bdr));background:color-mix(in srgb,#10b981 10%,var(--card))}
.company-editorial-date.danger{border-color:color-mix(in srgb,#ef4444 36%,var(--bdr));background:color-mix(in srgb,#ef4444 10%,var(--card))}
.company-editorial-copy{min-width:0}
.company-editorial-copy strong{display:block;font-size:13px;line-height:1.25;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.company-editorial-copy p{margin:6px 0 0;font-size:12px;color:var(--txt2);line-height:1.45}
.company-editorial-side{display:grid;gap:10px}
.company-editorial-panel{
  padding:13px;border:1px solid var(--bdr);border-radius:18px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 95%,#fff),var(--inp));
}
.company-editorial-panel>span{display:block;margin-bottom:10px;font-size:11px;font-weight:900;color:var(--txt2);letter-spacing:.08em;text-transform:uppercase}
.company-editorial-panel p{margin:0;font-size:12px;line-height:1.5;color:var(--txt2)}
.company-editorial-chip{padding:10px 0;border-top:1px solid var(--bdr)}
.company-editorial-chip:first-of-type{border-top:0;padding-top:0}
.company-editorial-chip strong{display:block;font-size:13px;color:var(--txt);line-height:1.2}
.company-editorial-chip small{display:block;margin-top:5px;font-size:11px;color:var(--txt2);line-height:1.35}
.company-editorial-meter{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--bdr)}
.company-editorial-meter:first-of-type{border-top:0;padding-top:0}
.company-editorial-meter strong{font-size:12px;color:var(--txt)}
.company-editorial-meter em{font-style:normal;font-size:12px;font-weight:900;color:var(--acc);padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--acc) 12%,transparent)}
.company-mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.company-mini-metric{
  padding:14px;border-radius:18px;border:1px solid var(--bdr);
  background:var(--inp);display:flex;flex-direction:column;gap:6px;
}
.company-mini-metric strong{font-size:22px;line-height:1;color:var(--txt)}
.company-mini-metric span{font-size:11px;font-weight:800;color:var(--txt2)}
.company-mini-metric.empty strong{opacity:.55}
.company-inline-stat{
  display:flex;align-items:center;justify-content:space-between;padding:14px;border-radius:16px;
  border:1px solid var(--bdr);background:var(--inp);
}
.company-inline-stat strong{font-size:20px;line-height:1;color:var(--txt)}
.company-inline-stat span{font-size:12px;color:var(--txt2);font-weight:800}
.company-brand-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px}
.company-brand-copy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.company-brand-copy-card,
.company-brand-stat{
  padding:14px;border-radius:18px;border:1px solid var(--bdr);
  background:var(--inp);display:flex;flex-direction:column;gap:6px;
}
.company-brand-copy-card strong,
.company-brand-stat strong{font-size:16px;color:var(--txt)}
.company-brand-copy-card span,
.company-brand-stat span{font-size:11px;font-weight:800;color:var(--txt2)}
.company-brand-guidelines{
  padding:14px 16px;border-radius:18px;border:1px solid var(--bdr);
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 97%, #fff),color-mix(in srgb,var(--card) 93%, var(--inp)));
}
.company-brand-guidelines h4{margin:0 0 8px;font-size:13px;font-weight:900;color:var(--txt)}
.company-brand-guidelines p{margin:0;font-size:12px;line-height:1.7;color:var(--txt2)}
.company-brand-assets-wrap{margin-top:18px;display:flex;flex-direction:column;gap:12px}
.company-section-subgrid-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.company-section-subgrid-head h4{margin:0;font-size:14px;font-weight:900;color:var(--txt)}
.company-section-subgrid-head span{font-size:11px;font-weight:800;color:var(--txt2);text-transform:uppercase;letter-spacing:.08em}
.company-inline-link{color:var(--acc);font-weight:800;word-break:break-word}
.company-inline-link:hover{text-decoration:underline}
.company-detail-card{
  padding:15px;border-radius:20px;border:1px solid var(--bdr);
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 97%, #fff),color-mix(in srgb,var(--card) 93%, var(--inp)));
  min-height:176px;display:flex;flex-direction:column;
}
.company-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.company-detail-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.company-detail-head h4{margin:0;font-size:15px;line-height:1.2;color:var(--txt);font-weight:900}
.company-detail-head p{margin:6px 0 0;font-size:12px;color:var(--txt2);line-height:1.45}
.company-detail-body{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.company-detail-line{font-size:13px;color:var(--txt);line-height:1.55}
.company-detail-note{font-size:12px;color:var(--txt2);line-height:1.55}

/* Google Drive assets */
.drive-icon{display:inline-block;vertical-align:-.18em;flex-shrink:0}
.drive-settings-card{display:flex;flex-direction:column;gap:14px}
.drive-settings-hero{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--bdr);border-radius:18px;background:var(--inp)}
.drive-settings-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:18px;background:var(--card);border:1px solid var(--bdr);flex-shrink:0}
.drive-settings-title{font-size:17px;font-weight:950;color:var(--txt);letter-spacing:-.02em}
.drive-settings-copy{margin-top:4px;font-size:12px;line-height:1.55;color:var(--txt2)}
.drive-status-box{display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:16px;border:1px solid var(--bdr);background:var(--inp);font-size:12px;color:var(--txt2)}
.drive-status-box strong{color:var(--txt);font-size:13px}
.drive-status-box span{line-height:1.45}
.drive-status-box.connected{border-color:color-mix(in srgb,#22c55e 35%,var(--bdr));background:color-mix(in srgb,#22c55e 10%,var(--card))}
.drive-status-box.pending{border-color:color-mix(in srgb,#f59e0b 38%,var(--bdr));background:color-mix(in srgb,#f59e0b 10%,var(--card))}
.drive-status-box.error{color:#dc2626;border-color:#fecaca;background:#fef2f2}
.drive-actions-row{display:flex;gap:10px;flex-wrap:wrap}
.drive-actions-row .btn{flex:1;justify-content:center;min-width:150px}
.drive-help-card{display:flex;flex-direction:column;gap:8px;padding:13px;border:1px dashed var(--bdr);border-radius:16px;background:var(--inp)}
.drive-help-card strong{font-size:12px;color:var(--txt)}
.drive-help-card code{display:block;padding:10px;border-radius:12px;background:var(--card);border:1px solid var(--bdr);font-size:11px;color:var(--txt);word-break:break-all}
.drive-help-card span{font-size:11px;color:var(--txt2)}

/* v4.1.0: inbox operativo */
.inbox-shell{display:flex;flex-direction:column;gap:14px}
.inbox-hero{display:flex;align-items:stretch;justify-content:space-between;gap:18px;padding:22px;border-radius:24px;overflow:hidden;position:relative}
.inbox-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 0%,color-mix(in srgb,var(--acc) 18%,transparent),transparent 36%);pointer-events:none}
.inbox-hero>div{position:relative;z-index:1}
.inbox-eyebrow{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin-bottom:6px}
.inbox-hero h2{margin:0;font-size:30px;line-height:1.05;color:var(--txt);letter-spacing:-.04em}
.inbox-hero p{max-width:620px;margin:8px 0 0;color:var(--txt2);font-size:14px;line-height:1.55}
.inbox-stats{display:grid;grid-template-columns:repeat(3,minmax(86px,1fr));gap:10px;min-width:300px}
.inbox-stats div{background:var(--inp);border:1px solid var(--bdr);border-radius:18px;padding:14px;text-align:center}
.inbox-stats strong{display:block;font-size:24px;color:var(--txt);font-weight:950}
.inbox-stats span{display:block;margin-top:3px;font-size:11px;color:var(--txt2);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.inbox-filters{display:flex;gap:8px;flex-wrap:wrap;padding:10px;border-radius:20px}
.inbox-filter{border:1px solid var(--bdr);background:var(--inp);color:var(--txt2);border-radius:999px;padding:10px 14px;display:inline-flex;align-items:center;gap:8px;font-weight:900}
.inbox-filter strong{font-size:11px;min-width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--card) 80%,var(--inp));color:var(--txt)}
.inbox-filter.active{background:var(--acc-g);color:#fff;border-color:transparent;box-shadow:0 12px 24px color-mix(in srgb,var(--acc) 18%,transparent)}
.inbox-filter.active strong{background:rgba(255,255,255,.2);color:#fff}
.inbox-list{padding:0;overflow:hidden;border-radius:22px}
.inbox-row,.np-row{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid var(--bdr);cursor:pointer;transition:background .15s ease,transform .15s ease}
.np-row{padding:12px 14px}
.inbox-row:hover,.np-row:hover{background:var(--inp)}
.inbox-row.unread,.np-row.unread{background:color-mix(in srgb,var(--acc) 7%,transparent)}
.inbox-icon{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:var(--inp);border:1px solid var(--bdr);color:var(--acc);font-size:11px;font-weight:950;flex-shrink:0}
.inbox-copy{flex:1;min-width:0}
.inbox-title{font-size:14px;font-weight:900;color:var(--txt);line-height:1.3}
.np-row .inbox-title{font-size:13px}
.inbox-body{font-size:12px;color:var(--txt2);line-height:1.45;margin-top:3px}
.inbox-meta{font-size:10px;color:var(--txt2);font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-top:8px}
.inbox-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;max-width:180px}
.inbox-actions .btn{height:30px;padding:0 10px;font-size:11px}
.inbox-dot{width:8px;height:8px;border-radius:50%;background:#f43f5e;box-shadow:0 0 0 4px rgba(244,63,94,.12)}
.inbox-empty,.np-empty{padding:34px 20px;text-align:center;color:var(--txt2)}
.inbox-empty div,.np-empty div{font-weight:900;color:var(--txt);font-size:15px}
.inbox-empty p,.np-empty p{margin:6px 0 0;font-size:12px}

@media(max-width:820px){
  .inbox-hero{flex-direction:column;padding:18px}
  .inbox-stats{min-width:0;grid-template-columns:repeat(3,1fr)}
  .inbox-row{flex-wrap:wrap}
  .inbox-actions{width:100%;max-width:none;justify-content:flex-start;padding-left:46px}
}
.company-brand-box{display:flex;flex-direction:column;gap:14px}
.company-brand-colors{display:flex;gap:10px}
.company-brand-colors span{width:44px;height:44px;border-radius:14px;border:1px solid rgba(15,23,42,.08)}
.company-brand-notes{font-size:13px;line-height:1.65;color:var(--txt2)}
.company-access-list{display:flex;flex-direction:column;gap:10px}
.company-access-item{
  display:flex;align-items:center;gap:12px;padding:12px;
  border-radius:16px;background:var(--inp);border:1px solid var(--bdr);
}
.company-access-item strong{display:block;font-size:13px;color:var(--txt)}
.company-access-item span{display:block;margin-top:4px;font-size:11px;color:var(--txt2)}
.company-empty{
  padding:18px;border-radius:18px;border:1px dashed var(--bdr);
  background:var(--inp);font-size:12px;line-height:1.6;color:var(--txt2);
}

@media (max-width: 900px){
  .mobile-card-grid,.mobile-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mobile-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .company-hero,.company-overview-grid,.company-brand-layout,.company-editorial-grid{grid-template-columns:1fr}
  .company-card-grid,.company-card-grid.company-card-grid-tight,.company-card-grid.company-card-grid-wide,.company-overview-cards,.pm-compact-grid,.company-mini-metrics,.company-brand-copy-grid,.company-editorial-list{grid-template-columns:1fr}
}
@media (max-width: 680px){
  .mobile-card-grid,.mobile-card-list,.mobile-mini-grid,.mobile-settings-grid{grid-template-columns:1fr}
  .mobile-summary-grid,.mobile-client-card .stats,.mobile-member-card .stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mobile-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .mobile-profile-hero{align-items:flex-start}
  .mobile-profile-name{font-size:16px}
  .mobile-pc{min-height:174px;padding:16px}
  .mobile-pc-title{font-size:14px}
  .mobile-link-btn,.mobile-ghost-btn{height:32px;padding:0 10px;font-size:11px}
  .company-hero{padding:16px;border-radius:20px}
  .company-hero-main{flex-direction:column}
  .company-hero-copy h2{font-size:24px}
  .company-section{padding:16px}
  .company-section-head{flex-direction:column;align-items:flex-start}
  .company-nav-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .company-nav-chip{justify-content:space-between}
}


@media (max-width: 768px) {
/* --- Mobile cleanup round 3 --- */
  .dash-grid{grid-template-columns:1fr!important;gap:14px!important}
  .page-stack{gap:14px!important}
  .content{padding:12px!important}
  .hdr{padding:0 12px!important}
  .proj-grid.dashboard-projects{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mobile-pc{min-height:auto!important;padding:15px!important;gap:10px!important}
  .mobile-pc-badges{gap:5px!important}
  .mobile-pc-badge{font-size:10px!important;padding:5px 8px!important}
  .mobile-pc-foot{align-items:center!important;gap:10px!important}
  .mobile-pc-actions{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:8px!important;width:100%!important}
  .mobile-link-btn{width:100%!important;justify-content:center!important;height:36px!important}
  .mobile-ghost-btn.action-mini{width:36px!important;height:36px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .timeline-mobile-stack,.tasks-today-body{max-height:none!important;overflow:visible!important}
  .mobile-insight-list,.team-load-mobile{grid-template-columns:1fr!important}
}
@media (max-width: 680px){
  .proj-grid,.proj-grid.dashboard-projects{grid-template-columns:1fr!important}
}


/* ── Mobile sidebar polish — round 5 ─────────────────────────── */
@media (max-width: 768px){
  .sidebar{
    width:min(84vw,308px)!important;
    padding:calc(12px + env(safe-area-inset-top)) 12px calc(14px + env(safe-area-inset-bottom))!important;
    gap:8px!important;
  }
  .logo{
    margin-bottom:14px!important;
    padding-right:54px!important;
    min-height:42px;
    align-items:center!important;
  }
  .logo-text{font-size:17px!important}
  .logo-ver{font-size:9px!important}
  .sidebar-close{
    top:calc(10px + env(safe-area-inset-top))!important;
    right:10px!important;
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
  }
  .nav{
    flex:0 0 auto!important;
    overflow:visible!important;
    padding-bottom:6px!important;
  }
  .nb{
    min-height:42px!important;
    padding:10px 12px!important;
    margin-bottom:0!important;
    border-radius:14px!important;
    gap:11px!important;
    font-size:14px!important;
  }
  .site-card{
    margin-top:2px!important;
    margin-bottom:8px!important;
    padding:12px!important;
    border-radius:16px!important;
  }
  .site-card h4{font-size:11px!important;margin-bottom:2px!important}
  .site-card p{font-size:10px!important;line-height:1.35!important;margin-bottom:8px!important}
  .site-card a{padding:8px 0!important;font-size:11px!important}
  .ub{
    min-height:50px!important;
    padding:8px 10px!important;
    margin-top:0!important;
  }
  #quick-themes{
    display:flex!important;
    gap:8px!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    padding:2px 4px 8px!important;
    margin:0 0 2px!important;
    position:relative!important;
    z-index:3!important;
  }
  #quick-themes button{
    width:17px!important;
    height:17px!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.22) inset, 0 4px 10px rgba(0,0,0,.14);
  }

  .hdr{
    grid-template-columns:44px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
  }
  .ham{
    grid-column:1!important;
    grid-row:1!important;
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
    align-self:center!important;
    justify-self:start!important;
  }
  .hdr-title{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    padding-top:0!important;
  }
  .hdr-actions{
    grid-column:2!important;
    grid-row:2!important;
    margin-top:2px!important;
  }
}
@media (max-width: 580px){
  .sidebar{
    width:min(85vw,300px)!important;
    padding:calc(10px + env(safe-area-inset-top)) 10px calc(12px + env(safe-area-inset-bottom))!important;
  }
  .logo{
    margin-bottom:12px!important;
    gap:8px!important;
  }
  .nb{
    min-height:40px!important;
    padding:9px 12px!important;
    font-size:13.5px!important;
  }
  .site-card{
    padding:11px!important;
    margin-bottom:7px!important;
  }
  .ub{
    min-height:48px!important;
  }
  #quick-themes{
    gap:7px!important;
    padding:0 4px 7px!important;
  }
  #quick-themes button{
    width:16px!important;
    height:16px!important;
  }
}


/* ── Round 6 extra fixes ───────────────────────────────────────── */
.footer{margin-top:auto}
#content{min-height:0}
.hdr,.hdr-actions{overflow:visible}

/* ── Desktop/mobile polish — round 6 ───────────────────────────── */
.hdr{position:relative;z-index:220;overflow:visible}
.hdr-actions > div[style*="position:relative"]{z-index:6000}
.nav{display:flex;flex-direction:column;gap:4px}
.main{min-height:100%}
@media (max-width: 768px){
  .nav{gap:2px!important}
  #quick-themes{
    display:flex!important;
    justify-content:flex-start!important;
    gap:8px!important;
    margin:2px 0 8px!important;
    padding:0 2px 0!important;
  }
  .sidebar{
    justify-content:flex-start!important;
  }
  .site-card{
    margin-bottom:10px!important;
  }
}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 18 · SIDEBAR & SHELL — overrides definitivos            ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* ══ FINAL DEFINITIVE SIDEBAR + SHELL OVERRIDES ═══════════════════ */
@media (min-width:1181px){
  #app{padding:10px 14px!important;align-items:flex-start!important}
  .shell{
    min-height:calc(100dvh - 20px)!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:var(--sidebar-shell-w) minmax(0,1fr)!important;
    align-items:start!important;
    overflow:visible!important;
  }
  .sidebar-overlay{display:none!important}
  .sidebar{
    width:var(--sidebar-shell-w)!important;
    position:sticky!important;
    top:10px!important;
    align-self:start!important;
    height:auto!important;
    max-height:calc(100dvh - 20px)!important;
    min-height:0!important;
    padding:16px 10px 12px!important;
    gap:8px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border-radius:24px!important;
  }
  .sidebar-close{display:none!important}
  .logo{margin-bottom:14px!important;padding-right:0!important}
  .nav{
    flex:0 0 auto!important;
    min-height:auto!important;
    overflow:visible!important;
    padding-bottom:4px!important;
  }
  .nb{min-height:40px!important;padding:10px 12px!important;margin-bottom:4px!important;font-size:14px!important}
  .sidebar .site-card{margin:8px 0 6px!important;padding:12px!important}
  #quick-themes{margin:4px 0 8px!important;padding:0 2px!important;justify-content:flex-start!important;gap:8px!important}
  #quick-themes button{width:18px!important;height:18px!important}
  .sidebar > div[style*="position:relative"]{margin-top:0!important}
  .ub{min-height:54px!important;padding:9px 10px!important}
  .main{
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    min-width:0!important;
  }
  .content{padding:18px 20px 22px!important;flex:1 1 auto!important;min-height:0!important}
  .footer{margin-top:14px!important;flex-shrink:0!important}
}

@media (max-width:768px){
  #app{padding:0!important}
  .shell{min-height:100dvh!important;display:block!important;border-radius:0!important;box-shadow:none!important}
  .sidebar{
    position:fixed!important;
    top:8px!important;
    left:8px!important;
    bottom:8px!important;
    width:var(--sidebar-shell-w-overlay)!important;
    height:auto!important;
    max-height:none!important;
    transform:translateX(-115%)!important;
    border-radius:24px!important;
    padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    gap:10px!important;
  }
  body.mobile-nav-open .sidebar{transform:translateX(0)!important}
  .sidebar-close{display:flex!important}
  .logo{padding-right:54px!important;margin-bottom:16px!important}
  .nav{flex:0 1 auto!important;min-height:0!important;overflow:auto!important;padding-bottom:2px!important}
  .nb{min-height:44px!important;padding:10px 12px!important;margin-bottom:3px!important;font-size:15px!important}
  .sidebar .site-card{order:3;margin:6px 0!important;padding:12px!important}
  #quick-themes{order:4!important;margin:4px 0 6px!important;padding:0 2px!important;justify-content:flex-start!important}
  .sidebar > div[style*="position:relative"]{order:5!important}
  .ub{min-height:52px!important}
  .sidebar-overlay{display:block!important}
  .main{min-height:100dvh!important}
  .content{padding:14px 14px calc(22px + env(safe-area-inset-bottom))!important}
}

.hdr{z-index:1500!important}


/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 19 · SHELL LAYOUT (overrides finales, z-index, wrappers) ║
   ╚══════════════════════════════════════════════════════════════════╝ */
@media (min-width:1181px) {
/* ===== Shell/layout rebuild ===== */
html,body{min-height:100%;}
body{background:var(--wrap);}
#app{padding:18px!important;align-items:flex-start!important;justify-content:center!important;background:var(--wrap)!important;}
.shell{
  width:100%!important;
  max-width:1380px!important;
  min-height:0!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:var(--sidebar-shell-w) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
  overflow:visible!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.sidebar{
  width:var(--sidebar-shell-w)!important;
  min-height:0!important;
  height:auto!important;
  max-height:calc(100dvh - 36px)!important;
  position:sticky!important;
  top:18px!important;
  border-radius:26px!important;
  padding:16px 10px 12px!important;
  box-shadow:0 28px 72px rgba(0,0,0,.24)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.logo{margin-bottom:14px!important;}
.logo-icon{width:28px!important;height:28px!important;border-radius:9px!important;}
.logo-text{font-size:16px!important;}
.logo-ver{font-size:8px!important;padding:2px 5px!important;}
.nav{flex:1 1 auto!important;overflow:auto!important;min-height:0!important;padding-right:2px!important;margin-bottom:8px!important;}
.nb{padding:8px 10px!important;font-size:13px!important;min-height:40px!important;border-radius:12px!important;margin-bottom:2px!important;}
.site-card{padding:12px!important;border-radius:16px!important;margin-bottom:10px!important;}
.site-card h4{font-size:11px!important;margin-bottom:3px!important;}
.site-card p{font-size:10px!important;line-height:1.45!important;margin-bottom:10px!important;}
.site-card a{padding:8px 0!important;font-size:11px!important;border-radius:10px!important;}
#quick-themes{margin:0 0 10px!important;padding:0 2px!important;justify-content:flex-start!important;gap:7px!important;}
#quick-themes button{width:18px!important;height:18px!important;}
.ub{padding:8px 10px!important;min-height:56px!important;border-radius:14px!important;}
.ub > div:first-child img,.ub .av{width:28px!important;height:28px!important;}
.main{
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border-radius:26px!important;
  background:var(--card)!important;
  box-shadow:0 28px 72px rgba(0,0,0,.18)!important;
}
.hdr{height:auto!important;min-height:68px!important;padding:14px 18px!important;}
.content{
  flex:1 1 auto!important;
  display:block!important;
  min-height:0!important;
  padding:16px 18px 20px!important;
}
.footer{margin-top:18px!important;flex-shrink:0!important;}
/* keep notifications above */
.hdr,.np,.srch-overlay,.modal,.cp{z-index:1200;} /* individual overrides below */
.np{z-index:2000!important;}
/* page-specific spacing */
.dash-grid,.dashboard-grid,.ins-grid,.projects-grid,.pr-grid{align-items:start!important;}
/* Desktop only adjustments */
}
@media (min-width: 1181px){
  .shell{grid-template-columns:var(--sidebar-shell-w) minmax(0,1fr)!important;}
  .sidebar-close{display:none!important;}
}
/* Mobile keeps overlay shell */
@media (max-width: 768px){
  #app{padding:0!important;}
  .shell{display:flex!important;gap:0!important;background:transparent!important;box-shadow:none!important;}
  .main{border-radius:0!important;box-shadow:none!important;}
}


/* ── Mobile: sidebar y overlay SIEMPRE encima del header ── */
@media (max-width:1180px){
  .sidebar{
    z-index:2000!important;
  }
  .sidebar-overlay{
    z-index:1900!important;
  }
  /* Botón cerrar visible sobre todo */
  .sidebar-close{
    z-index:2001!important;
    position:absolute!important;
    top:16px!important;
    right:14px!important;
  }
  /* Header baja cuando el drawer está abierto para no interferir */
  body.mobile-nav-open .hdr{
    z-index:1400!important;
  }
  /* Modals and overlays ABOVE tab bar on mobile */
  .ov{z-index:1800!important}
  .modal{z-index:1801!important}
  .cp{z-index:1802!important}
}
@media (max-width:768px){
  body.mobile-nav-open .mob-tab-bar{
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .2s ease;
  }
}
/* ╔══════════════════════════════════════════════════════════════════╗
   ║  CSS · 20 · MOBILE BOTTOM TAB BAR                               ║
   ╚══════════════════════════════════════════════════════════════════╝ */
/* Hidden on desktop */
.mob-tab-bar{display:none}

@media (max-width:768px){
  .mob-tab-bar{
    display:flex!important;
    position:fixed;
    width:min(calc(100vw - 20px), 440px);
    left:50%;
    right:auto;
    transform:translateX(-50%);
    bottom:calc(10px + env(safe-area-inset-bottom));
    z-index:1600;
    background:var(--mob-tab-bg, var(--card));
    backdrop-filter:none;-webkit-backdrop-filter:none;
    border:1px solid var(--mob-tab-border, var(--bdr));
    border-radius:24px;
    box-shadow:var(--mob-tab-shadow, 0 16px 38px rgba(15,23,42,.14));
    padding:8px 8px 10px;
    align-items:center;
    justify-content:space-around;
    gap:4px;
    isolation:isolate;
    overflow:visible;
  }
  .mob-tab-bar::before{
    content:'';
    position:absolute;
    inset:1px;
    border-radius:23px;
    background:var(--mob-tab-surface, rgba(255,255,255,.94));
    pointer-events:none;
    z-index:-1;
  }
  .mob-tab-bar .mt{
    flex:1;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:4px;
    min-height:52px;
    padding:8px 0 6px;
    border:none;background:transparent;cursor:pointer;
    font-family:inherit;
    position:relative;
    border-radius:16px;
    transition:background .15s,color .15s,transform .15s;
    color:var(--mob-tab-icon, var(--txt2));
    -webkit-tap-highlight-color:transparent;
  }
  .mob-tab-bar .mt svg{
    width:22px;height:22px;stroke-width:2;
    transition:transform .18s,color .18s,opacity .18s;
    opacity:.98;
  }
  .mob-tab-bar .mt .mt-label{
    font-size:10.5px;
    font-weight:900;
    letter-spacing:.012em;
    line-height:1.05;
    white-space:nowrap;
  }
  .mob-tab-bar .mt.active{
    color:var(--mob-tab-active-color, var(--acc));
    background:var(--mob-tab-active-bg, rgba(30,110,114,.10));
    box-shadow:
      inset 0 0 0 1px var(--mob-tab-active-border, rgba(30,110,114,.10)),
      0 8px 18px var(--mob-tab-active-glow, rgba(15,23,42,.06));
  }
  .mob-tab-bar .mt.active svg{transform:scale(1.06);opacity:1}
  .mob-tab-bar .mt.active .mt-label{font-weight:900}
  .mob-tab-bar .mt.active::before{display:none}
  .mob-tab-bar .mt:active{background:var(--mob-tab-active-bg, rgba(30,110,114,.08));transform:scale(.96)}

  /* FAB center button */
  .mob-tab-bar .mt-fab{
    flex:0 0 auto;
    width:58px;height:58px;
    border-radius:50%;
    background:var(--mob-fab-bg, var(--acc));
    border:1px solid var(--mob-fab-border, transparent);
    cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    color:var(--mob-fab-icon, #fff);
    box-shadow:var(--mob-fab-shadow, 0 14px 28px rgba(15,23,42,.24));
    margin:-22px 4px 0;
    position:relative;
    z-index:2;
    transition:transform .15s,box-shadow .15s;
    -webkit-tap-highlight-color:transparent;
  }
  .mob-tab-bar .mt-fab::before{
    content:'';
    position:absolute;
    inset:5px;
    border-radius:50%;
    background:transparent;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
    pointer-events:none;
  }
  .mob-tab-bar .mt-fab:active{transform:scale(.93)}
  .mob-tab-bar .mt-fab svg{width:26px;height:26px;stroke:currentColor}

  /* Hide sidebar CTA on mobile — primary action lives in the tab bar */
  .sb-cta-card{display:none!important}
  .sb-fab{display:none!important}
  /* Hide keyboard shortcuts button on mobile */
  #sb-theme-row button[title="Atajos de teclado"]{display:none!important}

  /* Adjust content bottom padding for tab bar (approx 70px + safe area) */
  .content{
    padding-bottom:calc(80px + env(safe-area-inset-bottom))!important;
  }

  /* Prevent footer from showing (tab bar replaces it) */
  .footer{display:none!important}
}

/* Mobile drawer: keep bottom cards visible and make nav the scrollable region */
@media (max-width:768px){
  .sidebar{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    height:calc(100dvh - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y!important;
  }
  .sb-nav-card{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:10px!important;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y!important;
  }
  .sb-tools-card{
    flex:0 0 auto!important;
    margin-top:8px!important;
  }
}

/* Tablet shell: single consistent tablet behavior */
@media (max-width:1180px) and (min-width:769px){
  #app{padding:12px!important}
  .shell{
    min-height:100dvh!important;
    display:block!important;
    border-radius:28px!important;
    box-shadow:0 22px 56px rgba(15,23,42,.12)!important;
    background:transparent!important;
  }
  .main{
    min-height:calc(100dvh - 24px)!important;
    border-radius:28px!important;
    box-shadow:0 18px 44px rgba(15,23,42,.10)!important;
  }
  .ham{display:flex!important}
  .sidebar-overlay{
    display:block!important;
    position:fixed;
    inset:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    background:rgba(2,8,23,.48)!important;
    transition:opacity .22s ease, visibility .22s ease;
    z-index:1900!important;
  }
  body.mobile-nav-open .sidebar-overlay{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .sidebar{
    position:fixed!important;
    top:12px!important;
    left:12px!important;
    bottom:12px!important;
    width:min(34vw,320px)!important;
    min-width:286px!important;
    max-height:calc(100dvh - 24px)!important;
    height:auto!important;
    transform:translateX(-118%)!important;
    border-radius:26px!important;
    padding:18px 14px 16px!important;
    gap:12px!important;
    z-index:2000!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    box-shadow:0 36px 90px rgba(0,0,0,.36)!important;
  }
  body.mobile-nav-open .sidebar{transform:translateX(0)!important}
  .sidebar-close{
    display:flex!important;
    z-index:2001!important;
  }
  .logo{
    padding-right:56px!important;
    margin-bottom:16px!important;
  }
  .sb-nav-card{
    flex:1 1 auto!important;
    min-height:320px!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .nav{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
    padding-bottom:8px!important;
    -webkit-overflow-scrolling:touch;
  }
  .sb-tools-card,
  .sb-cta-card{
    flex:0 0 auto!important;
  }
  .content{padding:16px 16px 22px!important}
  .hdr{
    padding:12px 16px!important;
    min-height:72px!important;
  }
  .hdr-actions{gap:8px!important}
  .proj-grid,
  .proj-grid.dashboard-projects{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .task-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Tablet shell · phase 2 */
body.is-tablet-shell #app{
  padding:14px!important;
}
body.is-tablet-shell .shell{
  border-radius:30px!important;
}
body.is-tablet-shell .main{
  border-radius:30px!important;
  overflow:hidden!important;
}
body.is-tablet-shell .content{
  padding:18px 18px 26px!important;
}
body.is-tablet-shell .hdr{
  padding:14px 18px!important;
  min-height:74px!important;
}
body.is-tablet-shell .hdr h1{
  font-size:20px!important;
}
body.is-tablet-shell .hdr p{
  max-width:38ch;
  line-height:1.35;
}
body.is-tablet-shell .header-primary-actions,
body.is-tablet-shell .hdr-actions{
  gap:8px!important;
}
body.is-tablet-shell .hdr-actions .btn{
  height:44px!important;
  padding:0 18px!important;
  font-size:14px!important;
}
body.is-tablet-shell .hdr-actions .ib{
  width:42px!important;
  height:42px!important;
}
body.is-tablet-shell .sidebar{
  width:min(38vw,336px)!important;
  min-width:296px!important;
  padding:18px 16px 16px!important;
}
body.is-tablet-shell .logo{
  padding-right:54px!important;
}
body.is-tablet-shell .ub{
  min-height:72px!important;
  padding:12px 14px!important;
}
body.is-tablet-shell .ub-name{
  font-size:15px!important;
}
body.is-tablet-shell .ub-greeting{
  font-size:10.5px!important;
}
body.is-tablet-shell .sb-nav-card{
  padding:12px!important;
}
body.is-tablet-shell .sb-tools-card,
body.is-tablet-shell .sb-cta-card{
  padding:10px 12px!important;
}
body.is-tablet-shell .nb{
  min-height:48px!important;
  padding:10px 13px!important;
}
body.is-tablet-shell .nb-label{
  font-size:14px!important;
}
body.is-tablet-shell .dash-admin-top{
  grid-template-columns:1fr!important;
  gap:14px!important;
}
body.is-tablet-shell .dash-admin-hero{
  padding:18px 20px!important;
  grid-template-columns:minmax(0,1fr) minmax(180px,220px)!important;
  grid-template-areas:
    "copy metric"
    "strip strip"!important;
  gap:14px 16px!important;
}
body.is-tablet-shell .dash-admin-title{
  font-size:24px!important;
  max-width:10ch!important;
}
body.is-tablet-shell .dash-admin-copy{
  max-width:42ch!important;
}
body.is-tablet-shell .dash-admin-big-metric .n{
  font-size:52px!important;
}
body.is-tablet-shell .dash-kpi-grid:not(.dash-admin-kpis){
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.is-tablet-shell .dash-admin-kpis{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
body.is-tablet-shell .dash-main-grid,
body.is-tablet-shell .dash-main-grid.team{
  grid-template-columns:1fr!important;
  gap:14px!important;
}
body.is-tablet-shell .dash-main-grid>.dash-stack:last-child{
  position:static!important;
}
body.is-tablet-shell .dash-split-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
body.is-tablet-shell .dash-task-row{
  padding:10px 14px!important;
}
body.is-tablet-shell .task-toolbar{
  top:auto!important;
  grid-template-columns:1fr!important;
  padding:12px!important;
  gap:10px!important;
  margin-bottom:14px!important;
}
body.is-tablet-shell .task-toolbar-main{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  overflow:visible!important;
  gap:8px!important;
  align-items:stretch!important;
}
body.is-tablet-shell .task-toolbar-main .task-tool,
body.is-tablet-shell .task-toolbar-main .task-filter-btn{
  width:100%!important;
  min-width:0!important;
}
body.is-tablet-shell .task-toolbar-main .task-tool-search{
  grid-column:1 / -1!important;
}
body.is-tablet-shell .task-toolbar-meta{
  justify-content:space-between!important;
  align-items:center!important;
  flex-wrap:wrap!important;
}
body.is-tablet-shell .task-toolbar-count{
  margin-left:0!important;
}
body.is-tablet-shell .task-view-toggle button{
  min-width:52px!important;
  min-height:44px!important;
  padding:10px 14px!important;
  font-size:15px!important;
}
body.is-tablet-shell .task-bulk-btn{
  min-height:42px!important;
  padding:10px 13px!important;
  font-size:12px!important;
}
body.is-tablet-shell .task-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
body.is-tablet-shell .tcard.compact-card{
  padding:14px 14px 13px!important;
}
body.is-tablet-shell .tc,
body.is-tablet-shell .task-bulk-indicator{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
}
body.is-tablet-shell .task-actions{
  gap:6px!important;
}
body.is-tablet-shell .task-actions button,
body.is-tablet-shell .kb-card-ghost-btn{
  min-width:34px!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  font-size:15px!important;
  padding:0!important;
}
body.is-tablet-shell .kb-toolbar{
  padding:12px!important;
  gap:8px!important;
}
body.is-tablet-shell .toolbar-row{
  flex-direction:column!important;
  align-items:stretch!important;
}
body.is-tablet-shell .toolbar-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
body.is-tablet-shell .toolbar-grid .task-tool,
body.is-tablet-shell .toolbar-grid .task-filter-btn,
body.is-tablet-shell .toolbar-grid .task-filter-toggle{
  width:100%!important;
  min-width:0!important;
}
body.is-tablet-shell .toolbar-grid .task-tool-search{
  grid-column:1 / -1!important;
}
body.is-tablet-shell .kb-toolbar .fi{
  min-width:220px!important;
  flex:1 1 280px!important;
}
body.is-tablet-shell .kb-grid.tablet{
  gap:12px!important;
  grid-auto-columns:minmax(calc((100% - 12px)/2),1fr)!important;
  padding-bottom:10px!important;
}
body.is-tablet-shell .kb-col{
  padding:12px!important;
  border-radius:18px!important;
}
body.is-tablet-shell .kb-col-head{
  margin:-12px -12px 10px!important;
  padding:12px 12px 9px!important;
  border-radius:16px 16px 0 0!important;
}
body.is-tablet-shell .kb-col-body{
  max-height:calc(100dvh - 250px)!important;
}
@media (max-width:900px){
  body.is-tablet-shell .dash-kpi-grid:not(.dash-admin-kpis){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.is-tablet-shell .dash-split-grid{
    grid-template-columns:1fr!important;
  }
  body.is-tablet-shell .dash-admin-hero{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "copy"
      "metric"
      "strip"!important;
  }
  body.is-tablet-shell .dash-admin-big-metric{
    padding:10px 0 0!important;
    border-left:none!important;
    border-top:1px solid var(--bdr)!important;
  }
  body.is-tablet-shell .toolbar-grid{
    grid-template-columns:1fr!important;
  }
  body.is-tablet-shell .toolbar-row-meta{
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
}

/* ════════════════════════════════════════════════════════
   FLAT FOUNDATION REFRESH · v3.5.5
   Unifica la app hacia una UI más plana:
   - sin blur pesado
   - menos gradients decorativos
   - superficies más limpias
   - mejor contraste tipográfico
   ════════════════════════════════════════════════════════ */

html:not([data-theme]) #app,
[data-theme="coach2light"] #app,
[data-theme="coach2dark"] #app {
  background-image: none !important;
}

html:not([data-theme]) .main::before,
[data-theme="coach2light"] .main::before,
[data-theme="coach2dark"] .main::before {
  display: none !important;
  background: none !important;
}

html:not([data-theme]) .shell,
[data-theme="coach2light"] .shell,
[data-theme="coach2dark"] .shell {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: 0 20px 44px rgba(15,23,42,.10) !important;
  border-width: 1px !important;
}

html:not([data-theme]) .sidebar,
[data-theme="coach2light"] .sidebar,
[data-theme="coach2dark"] .sidebar {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

html:not([data-theme]) .hdr,
html:not([data-theme]) .footer,
html:not([data-theme]) .card,
html:not([data-theme]) .tcard,
html:not([data-theme]) .sc,
html:not([data-theme]) .cc,
html:not([data-theme]) .site-card,
html:not([data-theme]) .ub,
html:not([data-theme]) .cp,
html:not([data-theme]) .srch-box,
html:not([data-theme]) .modal,
html:not([data-theme]) .np,
html:not([data-theme]) .rb,
html:not([data-theme]) .settings-hero,
html:not([data-theme]) .settings-soft-panel,
[data-theme="coach2light"] .hdr,
[data-theme="coach2light"] .footer,
[data-theme="coach2light"] .card,
[data-theme="coach2light"] .tcard,
[data-theme="coach2light"] .sc,
[data-theme="coach2light"] .cc,
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub,
[data-theme="coach2light"] .cp,
[data-theme="coach2light"] .srch-box,
[data-theme="coach2light"] .modal,
[data-theme="coach2light"] .np,
[data-theme="coach2light"] .rb,
[data-theme="coach2light"] .settings-hero,
[data-theme="coach2light"] .settings-soft-panel,
[data-theme="coach2dark"] .hdr,
[data-theme="coach2dark"] .footer,
[data-theme="coach2dark"] .card,
[data-theme="coach2dark"] .tcard,
[data-theme="coach2dark"] .sc,
[data-theme="coach2dark"] .cc,
[data-theme="coach2dark"] .site-card,
[data-theme="coach2dark"] .ub,
[data-theme="coach2dark"] .cp,
[data-theme="coach2dark"] .srch-box,
[data-theme="coach2dark"] .modal,
[data-theme="coach2dark"] .np,
[data-theme="coach2dark"] .rb,
[data-theme="coach2dark"] .settings-hero,
[data-theme="coach2dark"] .settings-soft-panel {
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.08) !important;
}

html:not([data-theme]) .nb.active,
[data-theme="coach2light"] .nb.active,
[data-theme="coach2dark"] .nb.active {
  background-image: none !important;
  box-shadow: none !important;
}

html:not([data-theme]) .bp,
[data-theme="coach2light"] .bp,
[data-theme="coach2dark"] .bp {
  background-image: none !important;
  box-shadow: none !important;
}

html:not([data-theme]) .tabs,
html:not([data-theme]) .tab.active,
html:not([data-theme]) .fi,
html:not([data-theme]) .ib,
html:not([data-theme]) .bw,
html:not([data-theme]) .ntb,
[data-theme="coach2light"] .tabs,
[data-theme="coach2light"] .tab.active,
[data-theme="coach2light"] .fi,
[data-theme="coach2light"] .ib,
[data-theme="coach2light"] .bw,
[data-theme="coach2light"] .ntb,
[data-theme="coach2dark"] .tabs,
[data-theme="coach2dark"] .tab.active,
[data-theme="coach2dark"] .fi,
[data-theme="coach2dark"] .ib,
[data-theme="coach2dark"] .bw,
[data-theme="coach2dark"] .ntb {
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

html:not([data-theme]) .card h2,
html:not([data-theme]) .card h3,
html:not([data-theme]) .card h4,
html:not([data-theme]) .tcard h4,
html:not([data-theme]) .site-card h4,
html:not([data-theme]) .ub-name,
html:not([data-theme]) .sb-brand-name,
html:not([data-theme]) .dash-card-title,
html:not([data-theme]) .dash-project-name,
html:not([data-theme]) .dash-kpi-label,
[data-theme="coach2light"] .card h2,
[data-theme="coach2light"] .card h3,
[data-theme="coach2light"] .card h4,
[data-theme="coach2light"] .tcard h4,
[data-theme="coach2light"] .site-card h4,
[data-theme="coach2light"] .ub-name,
[data-theme="coach2light"] .sb-brand-name,
[data-theme="coach2light"] .dash-card-title,
[data-theme="coach2light"] .dash-project-name,
[data-theme="coach2light"] .dash-kpi-label,
[data-theme="coach2dark"] .card h2,
[data-theme="coach2dark"] .card h3,
[data-theme="coach2dark"] .card h4,
[data-theme="coach2dark"] .tcard h4,
[data-theme="coach2dark"] .site-card h4,
[data-theme="coach2dark"] .ub-name,
[data-theme="coach2dark"] .sb-brand-name,
[data-theme="coach2dark"] .dash-card-title,
[data-theme="coach2dark"] .dash-project-name,
[data-theme="coach2dark"] .dash-kpi-label {
  letter-spacing: -.01em !important;
  font-weight: 800 !important;
}

[data-theme="coach2light"] #app {
  background: linear-gradient(180deg,#eff7f7 0%,#eaf0f6 100%) !important;
}
[data-theme="coach2light"] .shell,
[data-theme="coach2light"] .sidebar,
[data-theme="coach2light"] .hdr,
[data-theme="coach2light"] .footer,
[data-theme="coach2light"] .card,
[data-theme="coach2light"] .tcard,
[data-theme="coach2light"] .sc,
[data-theme="coach2light"] .cc,
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub,
[data-theme="coach2light"] .cp,
[data-theme="coach2light"] .srch-box,
[data-theme="coach2light"] .modal,
[data-theme="coach2light"] .np,
[data-theme="coach2light"] .rb,
[data-theme="coach2light"] .settings-hero,
[data-theme="coach2light"] .settings-soft-panel {
  border-color: #dce8ec !important;
}

[data-theme="coach2dark"] #app {
  background: linear-gradient(180deg,#0f1821 0%,#0c141d 100%) !important;
}
[data-theme="coach2dark"] .shell,
[data-theme="coach2dark"] .sidebar,
[data-theme="coach2dark"] .hdr,
[data-theme="coach2dark"] .footer,
[data-theme="coach2dark"] .card,
[data-theme="coach2dark"] .tcard,
[data-theme="coach2dark"] .sc,
[data-theme="coach2dark"] .cc,
[data-theme="coach2dark"] .site-card,
[data-theme="coach2dark"] .ub,
[data-theme="coach2dark"] .cp,
[data-theme="coach2dark"] .srch-box,
[data-theme="coach2dark"] .modal,
[data-theme="coach2dark"] .np,
[data-theme="coach2dark"] .rb,
[data-theme="coach2dark"] .settings-hero,
[data-theme="coach2dark"] .settings-soft-panel {
  border-color: rgba(255,255,255,.08) !important;
}

[data-theme="coach2light"] .nb.active,
[data-theme="coach2dark"] .nb.active {
  border: 1px solid transparent !important;
}

/* Coach 2.0 Light · final sidebar contrast guard */
[data-theme="coach2light"] .sb-section-label,
[data-theme="coach2light"] .sb-mini-heading,
[data-theme="coach2light"] .sb-cta-note,
[data-theme="coach2light"] #qt-label,
[data-theme="coach2light"] .logo-ver,
[data-theme="coach2light"] .ub-greeting{
  color:#6b7280!important;
}
[data-theme="coach2light"] .nb{
  color:#5f6f82!important;
}
[data-theme="coach2light"] .nb:hover:not(.active){
  color:#18324a!important;
  background:#eef7f6!important;
}
[data-theme="coach2light"] .nb.active{
  background:#d8f1ee!important;
  color:#0f5560!important;
  border-color:#bfe4de!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .nb.active .nb-icon{
  background:#0b9e8e!important;
  color:#ffffff!important;
}
[data-theme="coach2light"] .sb-panel,
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub,
[data-theme="coach2light"] .sb-tools-card,
[data-theme="coach2light"] .sb-cta-card{
  box-shadow:0 10px 22px rgba(15,23,42,.06)!important;
}

/* ════════════════════════════════════════════════════════
   CoachPro Implementation Refresh
   - flatter and more professional
   - applied only to Coach 2.0 Light / Dark
   ════════════════════════════════════════════════════════ */
html[data-theme="coach2light"],
html[data-theme="coach2light"] body,
html[data-theme="coach2dark"],
html[data-theme="coach2dark"] body{
  font-family:'Nunito','SF Pro Display','Segoe UI',sans-serif!important;
}

[data-theme="coach2light"]{
  --wrap: linear-gradient(135deg,#d4eeed 0%,#e8e4f5 100%);
  --main-bg:#eef5f7;
  --acc:#1E6E72;
  --acc2:#4ECDC4;
  --acc-g:none;
  --shell:rgba(255,255,255,.56);
  --card:#ffffff;
  --inp:#f2f4f8;
  --inp-c:#1A1A2E;
  --txt:#1A1A2E;
  --txt2:#6B7285;
  --bdr:rgba(203,213,225,.62);
  --sb:#EBF6F5;
  --sb-txt:#40606a;
  --sb-act:#ffffff;
  --sb-act-c:#1E6E72;
  --sb-card:#ffffff;
  --sb-name:#1A1A2E;
  --sb-sub:#748198;
  --hdr:rgba(255,255,255,.62);
  --hdr-b:rgba(203,213,225,.54);
  --footer:rgba(255,255,255,.62);
  --ui-shadow-soft:0 10px 24px rgba(15,23,42,.06);
  --ui-shadow-pop:0 16px 34px rgba(15,23,42,.08);
  --ui-shadow-dark:0 24px 48px rgba(15,23,42,.10);
  --mob-tab-bg:#ffffff;
  --mob-tab-border:rgba(203,213,225,.72);
  --mob-tab-shadow:0 16px 34px rgba(15,23,42,.16);
  --mob-tab-surface:#ffffff;
  --mob-tab-icon:#111827;
  --mob-tab-active-bg:rgba(30,110,114,.18);
  --mob-tab-active-border:rgba(30,110,114,.24);
  --mob-tab-active-color:#0f172a;
  --mob-tab-active-glow:rgba(30,110,114,.08);
  --mob-fab-bg:#1E6E72;
  --mob-fab-border:rgba(255,255,255,.9);
  --mob-fab-icon:#ffffff;
  --mob-fab-shadow:0 18px 32px rgba(30,110,114,.36);
}
[data-theme="coach2light"] #app{background:var(--wrap)!important}
[data-theme="coach2light"] .shell{
  background:rgba(255,255,255,.58)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 18px 38px rgba(15,23,42,.08)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2light"] .main::before{
  background:linear-gradient(135deg,rgba(212,238,237,.36),rgba(232,228,245,.28))!important;
  opacity:1!important;
}
[data-theme="coach2light"] .main,
[data-theme="coach2light"] .content{background:transparent!important}
[data-theme="coach2light"] .sidebar{
  background:#EBF6F5!important;
  border-right:1px solid rgba(203,213,225,.45)!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .hdr,
[data-theme="coach2light"] .footer{
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(203,213,225,.54)!important;
  backdrop-filter:none!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .card,
[data-theme="coach2light"] .tcard,
[data-theme="coach2light"] .sc,
[data-theme="coach2light"] .cc,
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub,
[data-theme="coach2light"] .cp,
[data-theme="coach2light"] .srch-box,
[data-theme="coach2light"] .modal,
[data-theme="coach2light"] .np,
[data-theme="coach2light"] .rb,
[data-theme="coach2light"] .settings-hero,
[data-theme="coach2light"] .settings-soft-panel{
  background:#ffffff!important;
  border:1px solid rgba(203,213,225,.58)!important;
  box-shadow:var(--ui-shadow-soft)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2light"] .sb-panel,
[data-theme="coach2light"] .sb-tools-card,
[data-theme="coach2light"] .sb-cta-card{
  background:#f7fbfb!important;
  border:1px solid rgba(203,213,225,.52)!important;
  box-shadow:0 10px 20px rgba(15,23,42,.05)!important;
}
[data-theme="coach2light"] .logo-text,
[data-theme="coach2light"] .sb-brand-name,
[data-theme="coach2light"] .sb-username,
[data-theme="coach2light"] .hdr h1,
[data-theme="coach2light"] .card h2,
[data-theme="coach2light"] .card h3,
[data-theme="coach2light"] .card h4,
[data-theme="coach2light"] .tcard h4,
[data-theme="coach2light"] .dash-card-title,
[data-theme="coach2light"] .dash-project-name,
[data-theme="coach2light"] .dash-kpi-label,
[data-theme="coach2light"] .dash-mini-task-title,
[data-theme="coach2light"] .ub-name{
  color:#1A1A2E!important;
}
[data-theme="coach2light"] .hdr p,
[data-theme="coach2light"] .footer,
[data-theme="coach2light"] .ver-badge,
[data-theme="coach2light"] .sb-greeting,
[data-theme="coach2light"] .sb-mini-heading,
[data-theme="coach2light"] .sb-section-label,
[data-theme="coach2light"] .sb-cta-note,
[data-theme="coach2light"] .dash-kpi-sub,
[data-theme="coach2light"] .dash-card-sub,
[data-theme="coach2light"] .dash-project-meta,
[data-theme="coach2light"] .dash-activity-meta,
[data-theme="coach2light"] .ub-greeting,
[data-theme="coach2light"] .logo-ver,
[data-theme="coach2light"] .nb:not(.active){
  color:#6B7285!important;
}
[data-theme="coach2light"] #ver-badge{
  color:#ffffff!important;
  background:#2f7ff0!important;
  border-color:#1d66d0!important;
  box-shadow:0 6px 16px rgba(47,127,240,.18)!important;
}
[data-theme="coach2light"] .nb{
  border:1px solid transparent!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .nb:hover:not(.active){
  background:rgba(30,110,114,.08)!important;
  color:#1E6E72!important;
}
[data-theme="coach2light"] .nb.active{
  background:#1E6E72!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .nb-icon{
  color:#1E6E72!important;
  opacity:1!important;
}
[data-theme="coach2light"] .nb.active .nb-icon{
  background:rgba(255,255,255,.16)!important;
  color:#ffffff!important;
}
[data-theme="coach2light"] .bp,
[data-theme="coach2light"] .sb-fab-btn{
  background:#1E6E72!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .bs,
[data-theme="coach2light"] .ib,
[data-theme="coach2light"] .bw,
[data-theme="coach2light"] .ntb{
  background:#ffffff!important;
  color:#1E6E72!important;
  border-color:rgba(203,213,225,.64)!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .fi,
[data-theme="coach2light"] .tabs{
  background:#F2F4F8!important;
  border-color:rgba(203,213,225,.64)!important;
}
[data-theme="coach2light"] .tab{color:#6B7285!important}
[data-theme="coach2light"] .tab.active{
  background:#ffffff!important;
  color:#1E6E72!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .dash-inline-chip.project{
  background:rgba(30,110,114,.10)!important;
  color:#1E6E72!important;
}
[data-theme="coach2light"] .dash-task-row:hover,
[data-theme="coach2light"] .srch-item:hover{
  background:#f7fbfb!important;
}

[data-theme="coach2dark"]{
  --wrap: linear-gradient(135deg,#122744 0%,#18314f 100%);
  --main-bg:#142b49;
  --acc:#4ECDC4;
  --acc2:#89e4de;
  --acc-g:none;
  --shell:rgba(21,43,73,.96);
  --card:#1f385c;
  --inp:#1a3152;
  --inp-c:#f4f7fb;
  --txt:#f4f7fb;
  --txt2:#b9c7dc;
  --bdr:rgba(255,255,255,.08);
  --sb:#18314f;
  --sb-txt:#c7d5e8;
  --sb-act:#ffffff;
  --sb-act-c:#4ECDC4;
  --sb-card:#1f385c;
  --sb-name:#ffffff;
  --sb-sub:#c7d5e8;
  --hdr:#16304f;
  --hdr-b:rgba(255,255,255,.08);
  --footer:#16304f;
  --mob-tab-bg:#16304f;
  --mob-tab-border:rgba(255,255,255,.10);
  --mob-tab-shadow:0 18px 34px rgba(2,8,23,.42);
  --mob-tab-surface:rgba(22,48,79,.98);
  --mob-tab-icon:#d3ddeb;
  --mob-tab-active-bg:rgba(78,205,196,.24);
  --mob-tab-active-border:rgba(78,205,196,.30);
  --mob-tab-active-color:#efffff;
  --mob-tab-active-glow:rgba(78,205,196,.16);
  --mob-fab-bg:#4ECDC4;
  --mob-fab-border:rgba(255,255,255,.08);
  --mob-fab-icon:#16304f;
  --mob-fab-shadow:0 18px 34px rgba(78,205,196,.28);
}
[data-theme="coach2dark"] #app{background:var(--wrap)!important}
[data-theme="coach2dark"] .shell{
  background:rgba(18,39,68,.98)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 24px 48px rgba(2,8,23,.34)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2dark"] .main::before{
  background:linear-gradient(180deg,rgba(16,30,52,.18),rgba(16,30,52,0))!important;
  opacity:1!important;
}
[data-theme="coach2dark"] .sidebar,
[data-theme="coach2dark"] .hdr,
[data-theme="coach2dark"] .footer{
  background:#16304f!important;
  border-color:rgba(255,255,255,.08)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2dark"] .card,
[data-theme="coach2dark"] .tcard,
[data-theme="coach2dark"] .sc,
[data-theme="coach2dark"] .cc,
[data-theme="coach2dark"] .site-card,
[data-theme="coach2dark"] .ub,
[data-theme="coach2dark"] .cp,
[data-theme="coach2dark"] .srch-box,
[data-theme="coach2dark"] .modal,
[data-theme="coach2dark"] .np,
[data-theme="coach2dark"] .rb,
[data-theme="coach2dark"] .settings-hero,
[data-theme="coach2dark"] .settings-soft-panel{
  background:#1f385c!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 14px 28px rgba(2,8,23,.20)!important;
  backdrop-filter:none!important;
}
[data-theme="coach2dark"] .sb-panel,
[data-theme="coach2dark"] .sb-tools-card,
[data-theme="coach2dark"] .sb-cta-card{
  background:#203a60!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 10px 22px rgba(2,8,23,.16)!important;
}
[data-theme="coach2dark"] .nb{
  border:1px solid transparent!important;
  box-shadow:none!important;
}
[data-theme="coach2dark"] .nb:hover:not(.active){
  background:rgba(255,255,255,.06)!important;
}
[data-theme="coach2dark"] .nb.active{
  background:#4ECDC4!important;
  color:#102033!important;
  box-shadow:none!important;
}
[data-theme="coach2dark"] .nb-icon{color:#9de6df!important;opacity:1!important}
[data-theme="coach2dark"] .nb.active .nb-icon{
  background:rgba(16,32,51,.12)!important;
  color:#102033!important;
}
[data-theme="coach2dark"] .bp,
[data-theme="coach2dark"] .sb-fab-btn{
  background:#4ECDC4!important;
  color:#102033!important;
  box-shadow:none!important;
}
[data-theme="coach2dark"] .bs,
[data-theme="coach2dark"] .ib,
[data-theme="coach2dark"] .bw,
[data-theme="coach2dark"] .ntb{
  background:#203a60!important;
  color:#f4f7fb!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
[data-theme="coach2dark"] .fi,
[data-theme="coach2dark"] .tabs{
  background:#1a3152!important;
  border-color:rgba(255,255,255,.08)!important;
}
[data-theme="coach2dark"] .tab.active{
  background:#203a60!important;
  color:#ffffff!important;
  box-shadow:none!important;
}

.dash-admin-top{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);
  gap:14px;
  align-items:stretch;
}
.dash-admin-hero{
  padding:22px 24px!important;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(200px,240px);
  grid-template-areas:
    "copy metric"
    "strip strip";
  gap:16px 18px;
  align-items:start;
  min-height:0;
}
.dash-admin-hero-copy{
  grid-area:copy;
  display:flex;
  flex-direction:column;
  gap:7px;
  align-self:stretch;
  min-width:0;
}
.dash-admin-eyebrow{
  font-size:11px;
  font-weight:700;
  letter-spacing:.04em;
  color:var(--acc);
}
.dash-admin-title{
  font-size:22px;
  line-height:1.02;
  font-weight:800;
  letter-spacing:-.045em;
  color:var(--txt);
  max-width:8.5ch;
}
.dash-admin-copy{
  font-size:12.5px;
  line-height:1.55;
  color:var(--txt2);
  max-width:34ch;
}
.dash-admin-hero-main{
  grid-area:metric;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  align-self:stretch;
  min-width:0;
}
.dash-admin-big-metric{
  display:flex;
  flex-direction:column;
  gap:4px;
  width:100%;
  padding:6px 0 0 16px;
  border-left:1px solid var(--bdr);
}
.dash-admin-big-metric .n{
  font-size:58px;
  line-height:.84;
  font-weight:800;
  color:#ef4444;
  letter-spacing:-.06em;
}
.dash-admin-big-metric .l{
  font-size:12.5px;
  font-weight:800;
  color:var(--txt);
}
.dash-admin-big-metric .s{
  font-size:11px;
  color:var(--txt2);
  line-height:1.45;
  max-width:20ch;
}
.dash-admin-mini-strip{
  grid-area:strip;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.dash-admin-mini-stat{
  background:color-mix(in srgb,var(--inp) 88%, #ffffff 12%);
  border:1px solid var(--bdr);
  border-radius:14px;
  padding:12px 14px;
}
.dash-admin-mini-stat .v{
  font-size:18px;
  line-height:1;
  font-weight:800;
  color:var(--txt);
}
.dash-admin-mini-stat .t{
  margin-top:4px;
  font-size:11px;
  color:var(--txt2);
  font-weight:700;
}
.dash-admin-kpis{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.dash-admin-kpis .dash-kpi{
  min-height:74px;
  padding:14px 15px;
  box-shadow:none!important;
}
.dash-admin-kpis .dash-kpi-label{
  font-size:10px;
  letter-spacing:.08em;
}
.dash-admin-kpis .dash-kpi-value{
  font-size:28px;
  margin-top:7px;
}
.dash-admin-kpis .dash-kpi-sub{
  font-size:10.5px;
  line-height:1.4;
  margin-top:6px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.dash-main-grid{
  grid-template-columns:minmax(0,1.22fr) minmax(320px,.78fr);
  gap:14px;
}
.dash-main-grid.team{grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr)}
.dash-main-grid>.dash-stack:last-child .card{
  padding:16px 18px;
}
.dash-main-grid>.dash-stack:last-child .dash-card-head{
  margin-bottom:10px;
}
.dash-empty-lite{
  padding:16px 12px;
  border-radius:14px;
}
.dash-task-row{
  padding:8px 16px;
}
.dash-card-title{
  font-size:14px;
}

.header-primary-actions{
  display:flex;
  align-items:center;
  gap:8px;
}
.hdr{
  min-height:68px!important;
  padding:12px 18px!important;
}
.hdr h1{
  font-size:18px!important;
  letter-spacing:-.035em!important;
}
.hdr p{
  font-size:11px!important;
}
.hdr-actions .btn{
  height:40px;
  padding:0 16px;
  border-radius:14px;
  font-size:13px;
  font-weight:800;
  box-shadow:none!important;
}
.hdr-actions .ib{
  width:40px;
  height:40px;
  border-radius:14px;
}

.sb-nav-card{
  padding:10px 10px 12px!important;
  gap:6px!important;
}
.sb-tools-card{
  padding:8px 10px!important;
  margin-top:8px!important;
}
.sb-cta-card{
  padding:10px 12px!important;
  margin-top:8px!important;
}
.sb-panel{
  border-radius:20px!important;
}
.ub{
  padding:10px 12px!important;
  min-height:64px!important;
  border-radius:16px!important;
  gap:10px!important;
}
.ub .av,
.ub > div:first-child img{
  width:36px!important;
  height:36px!important;
}
.ub-name{
  font-size:14px!important;
  font-weight:800!important;
}
.ub-greeting{
  font-size:10px!important;
}
.ub-role{
  padding:4px 10px!important;
  font-size:10px!important;
  font-weight:800!important;
}
.nb{
  min-height:44px!important;
  padding:10px 12px!important;
  border-radius:15px!important;
  margin-bottom:4px!important;
  gap:10px!important;
}
.nb-icon{
  width:26px!important;
  height:26px!important;
  border-radius:10px!important;
}
.nb-label{
  font-size:13.5px!important;
  font-weight:750!important;
}
.sb-fab-btn{
  min-height:72px;
  border-radius:18px!important;
}
.sb-fab-label{
  font-size:14px!important;
}
.sb-cta-note{
  max-width:16ch;
  margin:8px auto 0!important;
  font-size:10.5px!important;
  line-height:1.35!important;
}

[data-theme="coach2light"] .nb:not(.active),
[data-theme="coach2light"] .sb-section-label,
[data-theme="coach2light"] .sb-mini-heading,
[data-theme="coach2light"] .sb-greeting,
[data-theme="coach2light"] .sb-cta-note,
[data-theme="coach2light"] #qt-label{
  color:#516174!important;
}
[data-theme="coach2light"] .nb.active{
  background:#d8f1ee!important;
  color:#114f58!important;
  border-color:#c3e5df!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .nb.active .nb-label{
  color:#114f58!important;
}
[data-theme="coach2light"] .nb-icon{
  color:#1E6E72!important;
}
[data-theme="coach2light"] .nb.active .nb-icon{
  background:#1E6E72!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] .hdr-actions .bp,
[data-theme="coach2light"] .sb-fab-btn{
  background:#1E6E72!important;
}
[data-theme="coach2light"] .sb-panel,
[data-theme="coach2light"] .ub{
  background:#f8fbfb!important;
}

/* Flat final cleanup · remove remaining blur across live themes */
.shell,
.sidebar,
.hdr,
.footer,
.card,
.tcard,
.sc,
.cc,
.site-card,
.ub,
.cp,
.srch-box,
.modal,
.np,
.rb,
.settings-hero,
.settings-soft-panel,
.task-toolbar,
.kb-toolbar,
.kb-col-head,
.task-peek,
.sb-panel,
.sb-tools-card,
.sb-cta-card,
.mobile-pc-badge{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background-image:none!important;
}
.ov{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background:rgba(15,23,42,.56)!important;
}
.sidebar-overlay{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  background:rgba(2,8,23,.48)!important;
}
.task-toolbar,
.kb-toolbar,
.kb-col-head,
.task-peek{
  box-shadow:0 10px 24px rgba(15,23,42,.08)!important;
}
[data-theme="coach2light"] .shell{
  background:#eef4f7!important;
  box-shadow:0 24px 60px rgba(148,163,184,.18)!important;
}
[data-theme="coach2light"] .sidebar{
  background:#ebf3f6!important;
}
[data-theme="coach2light"] .hdr,
[data-theme="coach2light"] .footer{
  background:#f8fbfd!important;
}
[data-theme="coach2light"] .card,
[data-theme="coach2light"] .tcard,
[data-theme="coach2light"] .sc,
[data-theme="coach2light"] .cc,
[data-theme="coach2light"] .site-card,
[data-theme="coach2light"] .ub,
[data-theme="coach2light"] .cp,
[data-theme="coach2light"] .srch-box,
[data-theme="coach2light"] .modal,
[data-theme="coach2light"] .np,
[data-theme="coach2light"] .rb,
[data-theme="coach2light"] .settings-hero,
[data-theme="coach2light"] .settings-soft-panel,
[data-theme="coach2light"] .task-toolbar,
[data-theme="coach2light"] .kb-toolbar,
[data-theme="coach2light"] .kb-col-head,
[data-theme="coach2light"] .task-peek,
[data-theme="coach2light"] .sb-panel,
[data-theme="coach2light"] .sb-tools-card,
[data-theme="coach2light"] .sb-cta-card{
  background:#ffffff!important;
  box-shadow:0 8px 22px rgba(148,163,184,.12)!important;
}
[data-theme="coach2light"] .tabs{
  background:#eef3f8!important;
}
[data-theme="coach2light"] .fi,
[data-theme="coach2light"] .ib,
[data-theme="coach2light"] .bw,
[data-theme="coach2light"] .ntb{
  background:#f7fafc!important;
}
[data-theme="coach2dark"] .shell{
  background:#101923!important;
  box-shadow:0 28px 70px rgba(2,8,23,.46)!important;
}
[data-theme="coach2dark"] .sidebar{
  background:#13202c!important;
}
[data-theme="coach2dark"] .hdr,
[data-theme="coach2dark"] .footer{
  background:#162434!important;
}
[data-theme="coach2dark"] .card,
[data-theme="coach2dark"] .tcard,
[data-theme="coach2dark"] .sc,
[data-theme="coach2dark"] .cc,
[data-theme="coach2dark"] .site-card,
[data-theme="coach2dark"] .ub,
[data-theme="coach2dark"] .cp,
[data-theme="coach2dark"] .srch-box,
[data-theme="coach2dark"] .modal,
[data-theme="coach2dark"] .np,
[data-theme="coach2dark"] .rb,
[data-theme="coach2dark"] .settings-hero,
[data-theme="coach2dark"] .settings-soft-panel,
[data-theme="coach2dark"] .task-toolbar,
[data-theme="coach2dark"] .kb-toolbar,
[data-theme="coach2dark"] .kb-col-head,
[data-theme="coach2dark"] .task-peek,
[data-theme="coach2dark"] .sb-panel,
[data-theme="coach2dark"] .sb-tools-card,
[data-theme="coach2dark"] .sb-cta-card{
  background:#1b2b3b!important;
  box-shadow:0 10px 28px rgba(2,8,23,.28)!important;
}
[data-theme="coach2dark"] .tabs{
  background:#172435!important;
}
[data-theme="coach2dark"] .fi,
[data-theme="coach2dark"] .ib,
[data-theme="coach2dark"] .bw,
[data-theme="coach2dark"] .ntb{
  background:#223246!important;
}

@media(max-width:1220px){
  .dash-admin-top{grid-template-columns:1fr}
  .dash-admin-hero{
    grid-template-columns:1fr;
    grid-template-areas:
      "copy"
      "metric"
      "strip";
  }
  .dash-main-grid,
  .dash-main-grid.team,
  .dash-split-grid{grid-template-columns:1fr}
  .dash-main-grid>.dash-stack:last-child{position:static}
}
@media(max-width:680px){
  .dash-admin-top{gap:12px}
  .dash-admin-hero{
    padding:16px 16px!important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
      "copy metric"
      "strip strip";
    gap:12px 12px;
    align-items:start;
  }
  .dash-admin-title{
    font-size:17px;
    line-height:1.02;
    max-width:7.2ch;
  }
  .dash-admin-copy{
    font-size:10.5px;
    line-height:1.35;
    max-width:22ch;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .dash-admin-hero-main{
    justify-content:flex-end;
    align-items:flex-start;
  }
  .dash-admin-big-metric{
    padding:0;
    border-left:none;
    border-top:none;
    align-items:flex-end;
    text-align:right;
    min-width:92px;
  }
  .dash-admin-big-metric .n{
    font-size:42px;
    line-height:.84;
  }
  .dash-admin-big-metric .l{
    font-size:11px;
  }
  .dash-admin-big-metric .s{
    display:none;
  }
  .dash-admin-mini-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
  }
  .dash-admin-mini-stat{
    padding:10px 11px;
    border-radius:13px;
  }
  .dash-admin-mini-stat .v{
    font-size:17px;
  }
  .dash-admin-mini-stat .t{
    font-size:10px;
    margin-top:3px;
  }
  .dash-admin-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  .dash-admin-kpis .dash-kpi{
    min-height:102px;
    padding:12px 12px 11px;
    border-radius:18px;
  }
  .dash-admin-kpis .dash-kpi-label{
    font-size:10px;
    letter-spacing:.055em;
  }
  .dash-admin-kpis .dash-kpi-value{
    font-size:22px;
    margin-top:6px;
  }
  .dash-admin-kpis .dash-kpi-sub{
    font-size:10.5px;
    line-height:1.28;
    margin-top:5px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
}
@media(max-width:420px){
  .dash-admin-hero{
    grid-template-columns:minmax(0,1fr) 88px;
    padding:15px 14px!important;
    gap:10px 10px;
  }
  .dash-admin-title{
    font-size:16px;
    max-width:7ch;
  }
  .dash-admin-copy{
    max-width:20ch;
  }
  .dash-admin-big-metric .n{
    font-size:38px;
  }
  .dash-admin-kpis .dash-kpi{
    min-height:96px;
    padding:11px;
  }
}

/* Black Inverse · Flat light gray counterpart */
[data-theme="ashinverse"]{
  color-scheme:light;
  --sb:#e1e3e7;
  --wrap:#dbdde1;
  --main-bg:#eceef1;
  --shell:#e6e8eb;
  --card:#fafafb;
  --inp:#f3f4f6;
  --inp-c:#121315;
  --txt:#121315;
  --txt2:#5f6670;
  --bdr:#cfd4dc;
  --acc:#121315;
  --acc2:#454b55;
  --acc-g:#121315;
  --soft:#dadde2;
  --sb-txt:#4d5560;
  --sb-act:#121315;
  --sb-act-c:#ffffff;
  --sb-card:#f5f6f8;
  --sb-name:#111214;
  --sb-sub:#69707a;
  --hdr:#eef0f3;
  --hdr-b:#d1d6dd;
  --footer:#eef0f3;
  --login-grad:#dbdde1;
  --ui-shadow-soft:0 8px 22px rgba(17,18,20,.08);
  --ui-shadow-pop:0 14px 34px rgba(17,18,20,.11);
  --ui-shadow-dark:0 18px 40px rgba(17,18,20,.14);
  --mob-tab-bg:#f7f8fa;
  --mob-tab-border:rgba(17,18,20,.12);
  --mob-tab-shadow:0 14px 28px rgba(17,18,20,.12);
  --mob-tab-surface:#ffffff;
  --mob-tab-icon:#15171b;
  --mob-tab-active-bg:rgba(17,18,20,.08);
  --mob-tab-active-border:rgba(17,18,20,.14);
  --mob-tab-active-color:#111214;
  --mob-tab-active-glow:rgba(17,18,20,.05);
  --mob-fab-bg:#121315;
  --mob-fab-border:rgba(255,255,255,.92);
  --mob-fab-icon:#ffffff;
  --mob-fab-shadow:0 15px 28px rgba(17,18,20,.24);
  --dash-filter-bg:#f5f6f8;
  --dash-filter-border:#d1d6dd;
  --dash-filter-color:#4d5560;
  --dash-filter-hover-border:#111214;
  --dash-filter-hover-color:#111214;
  --dash-filter-active-bg:#121315;
  --dash-filter-active-border:#121315;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(17,18,20,.16);
  --dash-filter-pill-bg:rgba(255,255,255,.18);
}

html[data-theme="ashinverse"],
html[data-theme="ashinverse"] body,
[data-theme="ashinverse"] button,
[data-theme="ashinverse"] input,
[data-theme="ashinverse"] select,
[data-theme="ashinverse"] textarea{
  font-family:'Nunito','SF Pro Display','Segoe UI',sans-serif!important;
}

[data-theme="ashinverse"] #app{background:var(--wrap)!important}
[data-theme="ashinverse"] .shell{
  background:var(--shell)!important;
  box-shadow:var(--ui-shadow-pop)!important;
}
[data-theme="ashinverse"] .main,
[data-theme="ashinverse"] .content{background:var(--main-bg)!important}
[data-theme="ashinverse"] .sidebar{
  background:var(--sb)!important;
  border-right:1px solid var(--bdr)!important;
}
[data-theme="ashinverse"] .hdr,
[data-theme="ashinverse"] .footer{
  background:var(--hdr)!important;
  border-color:var(--hdr-b)!important;
}
[data-theme="ashinverse"] .card,
[data-theme="ashinverse"] .tcard,
[data-theme="ashinverse"] .sc,
[data-theme="ashinverse"] .cc,
[data-theme="ashinverse"] .site-card,
[data-theme="ashinverse"] .ub,
[data-theme="ashinverse"] .cp,
[data-theme="ashinverse"] .srch-box,
[data-theme="ashinverse"] .modal,
[data-theme="ashinverse"] .np,
[data-theme="ashinverse"] .rb,
[data-theme="ashinverse"] .settings-hero,
[data-theme="ashinverse"] .settings-soft-panel,
[data-theme="ashinverse"] .task-toolbar,
[data-theme="ashinverse"] .kb-toolbar,
[data-theme="ashinverse"] .kb-col-head,
[data-theme="ashinverse"] .task-peek,
[data-theme="ashinverse"] .sb-panel,
[data-theme="ashinverse"] .sb-tools-card,
[data-theme="ashinverse"] .sb-cta-card,
[data-theme="ashinverse"] .dash-admin-hero,
[data-theme="ashinverse"] .dash-kpi,
[data-theme="ashinverse"] .dash-mini-task{
  background:var(--card)!important;
  border-color:var(--bdr)!important;
  box-shadow:var(--ui-shadow-soft)!important;
}
[data-theme="ashinverse"] .site-card,
[data-theme="ashinverse"] .ub,
[data-theme="ashinverse"] .sb-panel{background:var(--sb-card)!important}
[data-theme="ashinverse"] .ub{
  background:#f7f8fa!important;
  border-color:#d5dae1!important;
  box-shadow:0 8px 18px rgba(17,18,20,.06)!important;
}
[data-theme="ashinverse"] .sb-nav-card,
[data-theme="ashinverse"] .sb-tools-card,
[data-theme="ashinverse"] .sb-cta-card{
  border-radius:20px!important;
  box-shadow:0 8px 20px rgba(17,18,20,.06)!important;
}
[data-theme="ashinverse"] .sb-brand{
  padding-bottom:10px!important;
}
[data-theme="ashinverse"] .sb-brand-mark,
[data-theme="ashinverse"] .nb-icon{
  background:#111214!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
[data-theme="ashinverse"] .sb-brand-name,
[data-theme="ashinverse"] .sb-username,
[data-theme="ashinverse"] .sb-fab-label,
[data-theme="ashinverse"] .hdr h1,
[data-theme="ashinverse"] .card h3,
[data-theme="ashinverse"] .dash-card-title,
[data-theme="ashinverse"] .dash-project-name,
[data-theme="ashinverse"] .login-copy h2,
[data-theme="ashinverse"] .login-hero-copy h1{color:var(--txt)!important}
[data-theme="ashinverse"] .ver-badge,
[data-theme="ashinverse"] .sb-greeting,
[data-theme="ashinverse"] .sb-mini-heading,
[data-theme="ashinverse"] .sb-section-label,
[data-theme="ashinverse"] .sb-cta-note,
[data-theme="ashinverse"] #qt-label,
[data-theme="ashinverse"] .hdr p,
[data-theme="ashinverse"] .card p,
[data-theme="ashinverse"] .dash-card-subtitle,
[data-theme="ashinverse"] .login-copy p,
[data-theme="ashinverse"] .login-meta,
[data-theme="ashinverse"] .login-hero-copy p{color:var(--txt2)!important}
[data-theme="ashinverse"] .ver-badge{
  background:#111214!important;
  color:#ffffff!important;
  border-color:#111214!important;
}
[data-theme="ashinverse"] .ub-name{
  color:#17181b!important;
}
[data-theme="ashinverse"] .login-wordmark,
[data-theme="ashinverse"] .login-brand-copy p,
[data-theme="ashinverse"] .login-kicker{
  color:#15171b!important;
}
[data-theme="ashinverse"] .login-mark{
  background:#111214!important;
  color:#ffffff!important;
  box-shadow:0 14px 28px rgba(17,18,20,.12)!important;
}
[data-theme="ashinverse"] .ub-greeting{
  color:#626a75!important;
}
[data-theme="ashinverse"] .ub-chevron{
  color:#6d7480!important;
  opacity:.9!important;
}
[data-theme="ashinverse"] .sb-mini-heading,
[data-theme="ashinverse"] .sb-section-label{
  color:#7b8490!important;
}
[data-theme="ashinverse"] .sb-tools-card .sb-mini-heading{
  padding-left:2px!important;
}
[data-theme="ashinverse"] .um{
  background:#ffffff!important;
  border-color:#d6dbe2!important;
  box-shadow:0 16px 34px rgba(17,18,20,.12)!important;
}
[data-theme="ashinverse"] .um button{
  color:#17181b!important;
}
[data-theme="ashinverse"] .um button:hover{
  background:#f2f4f7!important;
  color:#111214!important;
}
[data-theme="ashinverse"] .um button svg,
[data-theme="ashinverse"] .um button i{
  color:currentColor!important;
  opacity:.92!important;
}
[data-theme="ashinverse"] .um button:last-child{
  color:#d84b5f!important;
}
[data-theme="ashinverse"] .um button:last-child:hover{
  background:rgba(216,75,95,.08)!important;
}
[data-theme="ashinverse"] .nb{
  color:var(--sb-txt)!important;
  box-shadow:none!important;
}
[data-theme="ashinverse"] .nb:not(.active):hover{
  background:#eef1f4!important;
  color:var(--txt)!important;
}
[data-theme="ashinverse"] .nb.active{
  background:#111214!important;
  color:#ffffff!important;
  border-color:#111214!important;
  box-shadow:0 8px 16px rgba(17,18,20,.16)!important;
}
[data-theme="ashinverse"] .nb.active .nb-label,
[data-theme="ashinverse"] .nb.active .nb-icon{
  color:#ffffff!important;
}
[data-theme="ashinverse"] .nb.active .nb-icon{
  background:rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
[data-theme="ashinverse"] #qt-cycle{
  background:#f5f6f8!important;
  border-color:#d5dae1!important;
  color:#3f4650!important;
}
[data-theme="ashinverse"] .ub-role{
  color:#ffffff!important;
  background:#111214!important;
}
[data-theme="ashinverse"] .ub-role.role-admin{
  background:#d84b5f!important;
  border-color:#d84b5f!important;
  color:#ffffff!important;
}
[data-theme="ashinverse"] .ub-role.role-team{
  background:#39b772!important;
  border-color:#39b772!important;
  color:#ffffff!important;
}
[data-theme="ashinverse"] .ub-role.role-client{
  background:#4a8de8!important;
  border-color:#4a8de8!important;
  color:#ffffff!important;
}
[data-theme="ashinverse"] #qt-shortcuts{
  background:#f4f5f7!important;
  border-color:#d5dae1!important;
  color:#4e5661!important;
  box-shadow:none!important;
}
[data-theme="ashinverse"] #qt-shortcuts:hover{
  background:#eceff3!important;
  color:#17181b!important;
}
[data-theme="ashinverse"] .sb-fab-btn{
  background:#111214!important;
  box-shadow:0 10px 22px rgba(17,18,20,.14)!important;
}
[data-theme="ashinverse"] .sb-fab-label{
  color:#111214!important;
}
[data-theme="ashinverse"] .sb-cta-note{
  color:#6b7380!important;
}
[data-theme="ashinverse"] #qt-shortcuts svg{
  color:currentColor!important;
  opacity:.95!important;
}
[data-theme="ashinverse"] .bp,
[data-theme="ashinverse"] .hdr-actions .bp,
[data-theme="ashinverse"] .sb-fab-btn{
  background:#111214!important;
  color:#ffffff!important;
  box-shadow:none!important;
}
[data-theme="ashinverse"] .bw,
[data-theme="ashinverse"] .ntb,
[data-theme="ashinverse"] .ib{
  background:#f4f5f7!important;
  border-color:#d1d6dd!important;
  color:#111214!important;
}
[data-theme="ashinverse"] .fi,
[data-theme="ashinverse"] select.fi,
[data-theme="ashinverse"] textarea.fi{
  background:#ffffff!important;
  border-color:#d1d6dd!important;
  color:#111214!important;
}
[data-theme="ashinverse"] .fi::placeholder{color:#7a818b!important}
[data-theme="ashinverse"] .tabs,
[data-theme="ashinverse"] .dash-progress{background:#e4e7eb!important}
[data-theme="ashinverse"] .dash-progress>span{box-shadow:none!important}
[data-theme="ashinverse"] .ok-box{
  background:rgba(5,71,42,.08)!important;
  border-color:rgba(5,71,42,.18)!important;
  color:#14553a!important;
}
[data-theme="ashinverse"] .eb{
  background:rgba(220,38,38,.08)!important;
  border-color:rgba(220,38,38,.16)!important;
}
[data-theme="ashinverse"] .lc.login-shell{
  background:#f4f5f7!important;
  border:1px solid var(--bdr)!important;
  box-shadow:var(--ui-shadow-pop)!important;
}
[data-theme="ashinverse"] .lh.login-hero{
  background:linear-gradient(180deg,#d9dce0 0%,#eceef1 100%)!important;
}
[data-theme="ashinverse"] .login-body{background:#f5f6f8!important}
[data-theme="ashinverse"] .lh.login-hero::before{
  background:
    radial-gradient(circle at 18% 22%, rgba(17,18,20,.06), transparent 40%),
    radial-gradient(circle at 74% 16%, rgba(17,18,20,.05), transparent 32%),
    radial-gradient(circle at 22% 82%, rgba(17,18,20,.045), transparent 34%)!important;
  opacity:1!important;
}
[data-theme="ashinverse"] .login-link-btn,
[data-theme="ashinverse"] .login-inline-link,
[data-theme="ashinverse"] .lh.login-hero a{color:#111214!important}
[data-theme="ashinverse"] .ov{background:rgba(17,18,20,.36)!important}
[data-theme="ashinverse"] .sidebar-overlay{background:rgba(17,18,20,.24)!important}

[data-theme="coach2light"] .um{
  background:#ffffff!important;
  border-color:#dbe3ec!important;
  box-shadow:0 16px 34px rgba(15,23,42,.12)!important;
}
[data-theme="coach2light"] .um button{
  color:#1a1a2e!important;
}
[data-theme="coach2light"] .um button:hover{
  background:#f2f7f8!important;
  color:#114f58!important;
}
[data-theme="coach2light"] .um button svg,
[data-theme="coach2light"] .um button i{
  color:currentColor!important;
  opacity:.92!important;
}
[data-theme="coach2light"] .um button:last-child{
  color:#d84b5f!important;
}
[data-theme="coach2light"] .um button:last-child:hover{
  background:rgba(216,75,95,.08)!important;
}
[data-theme="coach2light"] #qt-shortcuts{
  background:#ffffff!important;
  border-color:#dbe3ec!important;
  color:#587085!important;
  box-shadow:none!important;
}
[data-theme="coach2light"] #qt-shortcuts:hover{
  background:#f2f7f8!important;
  color:#114f58!important;
}
[data-theme="coach2light"] #qt-shortcuts svg{
  color:currentColor!important;
  opacity:.95!important;
}

@media(max-width:1220px){
  [data-theme="ashinverse"] .dash-main-grid,
  [data-theme="ashinverse"] .dash-main-grid.team{
    grid-template-columns:1fr!important;
  }
}

/* Black family · Flat dark themes */
[data-theme="blackbase"],
[data-theme="blackviolet"],
[data-theme="blackgreen"],
[data-theme="blackcrimson"]{
  color-scheme:dark;
  --sb:#0e0e10;
  --wrap:#09090a;
  --main-bg:#111214;
  --shell:#101113;
  --card:#17181b;
  --inp:#1b1d21;
  --inp-c:#f3f4f6;
  --txt:#f5f5f7;
  --txt2:#a1a1aa;
  --bdr:#2a2d33;
  --acc:#d4d4d8;
  --acc2:#8b8d94;
  --acc-g:#d4d4d8;
  --soft:#202329;
  --sb-txt:#c7c9cf;
  --sb-act:#ffffff;
  --sb-act-c:#101113;
  --sb-card:#141518;
  --sb-name:#f5f5f7;
  --sb-sub:#9ea2ab;
  --hdr:#111214;
  --hdr-b:#26282d;
  --footer:#111214;
  --login-grad:#111214;
  --ui-shadow-soft:0 10px 24px rgba(0,0,0,.22);
  --ui-shadow-pop:0 16px 34px rgba(0,0,0,.28);
  --ui-shadow-dark:0 22px 44px rgba(0,0,0,.34);
  --mob-tab-bg:#111214;
  --mob-tab-border:rgba(255,255,255,.08);
  --mob-tab-shadow:0 18px 36px rgba(0,0,0,.40);
  --mob-tab-surface:#15171a;
  --mob-tab-icon:#eceef2;
  --mob-tab-active-bg:rgba(255,255,255,.08);
  --mob-tab-active-border:rgba(255,255,255,.12);
  --mob-tab-active-color:#ffffff;
  --mob-tab-active-glow:rgba(255,255,255,.03);
  --mob-fab-bg:#d4d4d8;
  --mob-fab-border:rgba(255,255,255,.06);
  --mob-fab-icon:#101113;
  --mob-fab-shadow:0 18px 34px rgba(0,0,0,.34);
}

[data-theme="blackbase"]{
  --acc:#d4d4d8;
  --acc2:#8b8d94;
  --acc-g:#d4d4d8;
  --soft:#202329;
  --sb-act-c:#101113;
  --login-grad:#111214;
  --dash-filter-active-bg:#d4d4d8;
  --dash-filter-active-border:#d4d4d8;
  --dash-filter-active-color:#101113;
  --dash-filter-active-shadow:rgba(212,212,216,.10);
  --dash-filter-pill-bg:rgba(16,17,19,.10);
  --mob-tab-active-bg:rgba(212,212,216,.16);
  --mob-tab-active-border:rgba(212,212,216,.24);
  --mob-tab-active-glow:rgba(212,212,216,.08);
}

[data-theme="blackviolet"]{
  --acc:#ceb7ef;
  --acc2:#a58ad3;
  --acc-g:#7851A9;
  --soft:#221c2b;
  --sb-act-c:#f8fafc;
  --login-grad:#111214;
  --dash-filter-active-bg:#7851A9;
  --dash-filter-active-border:#7851A9;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(120,81,169,.24);
  --dash-filter-pill-bg:rgba(255,255,255,.18);
  --mob-tab-active-bg:rgba(120,81,169,.22);
  --mob-tab-active-border:rgba(120,81,169,.30);
  --mob-tab-active-color:#f7f0ff;
  --mob-tab-active-glow:rgba(120,81,169,.16);
  --mob-fab-bg:#7851A9;
  --mob-fab-icon:#ffffff;
  --mob-fab-shadow:0 18px 34px rgba(120,81,169,.28);
}

[data-theme="blackgreen"]{
  --acc:#9acbb6;
  --acc2:#4f8a72;
  --acc-g:#05472A;
  --soft:#142019;
  --sb-act-c:#f8fafc;
  --login-grad:#111214;
  --dash-filter-active-bg:#05472A;
  --dash-filter-active-border:#05472A;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(5,71,42,.22);
  --dash-filter-pill-bg:rgba(255,255,255,.18);
  --mob-tab-active-bg:rgba(5,71,42,.24);
  --mob-tab-active-border:rgba(5,71,42,.34);
  --mob-tab-active-color:#eefdf5;
  --mob-tab-active-glow:rgba(5,71,42,.18);
  --mob-fab-bg:#05472A;
  --mob-fab-icon:#ffffff;
  --mob-fab-shadow:0 18px 34px rgba(5,71,42,.28);
}

[data-theme="blackcrimson"]{
  --wrap:#02060e;
  --main-bg:#0c1018;
  --shell:#0d1017;
  --card:#18131a;
  --inp:#1d1720;
  --bdr:#33212a;
  --acc:#ffb0c5;
  --acc2:#d76886;
  --acc-g:#c50337;
  --soft:#291019;
  --sb-card:#151018;
  --hdr:#0d1017;
  --hdr-b:#3a2230;
  --footer:#0d1017;
  --sb-act-c:#f8fafc;
  --login-grad:linear-gradient(160deg,#02060e 0%,#0a0c12 58%,#c50337 100%);
  --dash-filter-active-bg:#c50337;
  --dash-filter-active-border:#c50337;
  --dash-filter-active-color:#ffffff;
  --dash-filter-active-shadow:rgba(197,3,55,.24);
  --dash-filter-pill-bg:rgba(255,255,255,.18);
  --mob-tab-active-bg:rgba(197,3,55,.24);
  --mob-tab-active-border:rgba(197,3,55,.34);
  --mob-tab-active-color:#fff1f5;
  --mob-tab-active-glow:rgba(197,3,55,.20);
  --mob-fab-bg:#c50337;
  --mob-fab-icon:#ffffff;
  --mob-fab-shadow:0 18px 34px rgba(197,3,55,.30);
}

html[data-theme^="black"],
html[data-theme^="black"] body,
[data-theme^="black"] button,
[data-theme^="black"] input,
[data-theme^="black"] select,
[data-theme^="black"] textarea{
  font-family:'Nunito','SF Pro Display','Segoe UI',sans-serif!important;
}

[data-theme^="black"] #app{background:var(--wrap)!important}
[data-theme^="black"] .shell{
  background:var(--shell)!important;
  box-shadow:0 24px 56px rgba(0,0,0,.34)!important;
}
[data-theme^="black"] .main,
[data-theme^="black"] .content{background:var(--main-bg)!important}
[data-theme^="black"] .sidebar{
  background:var(--sb)!important;
  border-right:1px solid var(--bdr)!important;
}
[data-theme^="black"] .hdr,
[data-theme^="black"] .footer{
  background:var(--hdr)!important;
  border-color:var(--hdr-b)!important;
}
[data-theme^="black"] .card,
[data-theme^="black"] .tcard,
[data-theme^="black"] .sc,
[data-theme^="black"] .cc,
[data-theme^="black"] .site-card,
[data-theme^="black"] .ub,
[data-theme^="black"] .cp,
[data-theme^="black"] .srch-box,
[data-theme^="black"] .modal,
[data-theme^="black"] .np,
[data-theme^="black"] .rb,
[data-theme^="black"] .settings-hero,
[data-theme^="black"] .settings-soft-panel,
[data-theme^="black"] .task-toolbar,
[data-theme^="black"] .kb-toolbar,
[data-theme^="black"] .kb-col-head,
[data-theme^="black"] .task-peek,
[data-theme^="black"] .sb-panel,
[data-theme^="black"] .sb-tools-card,
[data-theme^="black"] .sb-cta-card,
[data-theme^="black"] .dash-admin-hero,
[data-theme^="black"] .dash-kpi,
[data-theme^="black"] .dash-mini-task{
  background:var(--card)!important;
  border-color:var(--bdr)!important;
  box-shadow:var(--ui-shadow-soft)!important;
}
[data-theme^="black"] .site-card,
[data-theme^="black"] .ub,
[data-theme^="black"] .sb-panel{background:var(--sb-card)!important}
[data-theme^="black"] .sb-brand-mark,
[data-theme^="black"] .nb-icon{
  background:var(--soft)!important;
  color:var(--acc)!important;
  box-shadow:none!important;
}
[data-theme^="black"] .sb-brand-name,
[data-theme^="black"] .sb-username,
[data-theme^="black"] .sb-fab-label,
[data-theme^="black"] .hdr h1,
[data-theme^="black"] .card h3,
[data-theme^="black"] .dash-card-title,
[data-theme^="black"] .dash-project-name,
[data-theme^="black"] .login-copy h2,
[data-theme^="black"] .login-hero-copy h1{color:var(--txt)!important}
[data-theme^="black"] .ver-badge,
[data-theme^="black"] .sb-greeting,
[data-theme^="black"] .sb-mini-heading,
[data-theme^="black"] .sb-section-label,
[data-theme^="black"] .sb-cta-note,
[data-theme^="black"] #qt-label,
[data-theme^="black"] .hdr p,
[data-theme^="black"] .card p,
[data-theme^="black"] .dash-card-subtitle,
[data-theme^="black"] .login-copy p,
[data-theme^="black"] .login-meta,
[data-theme^="black"] .login-hero-copy p{color:var(--txt2)!important}
[data-theme^="black"] .ver-badge{
  background:var(--soft)!important;
  color:#eceef2!important;
  border-color:var(--bdr)!important;
}
[data-theme^="black"] .nb{
  color:var(--sb-txt)!important;
  box-shadow:none!important;
}
[data-theme^="black"] .nb:not(.active):hover{
  background:var(--soft)!important;
  color:#fff!important;
}
[data-theme^="black"] .nb.active{
  background:var(--acc-g)!important;
  color:var(--sb-act-c)!important;
  border-color:var(--acc-g)!important;
  box-shadow:none!important;
}
[data-theme^="black"] .nb.active .nb-label,
[data-theme^="black"] .nb.active .nb-icon{
  color:var(--sb-act-c)!important;
}
[data-theme^="black"] .nb.active .nb-icon{
  background:rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
[data-theme^="black"] .ub-role{
  color:var(--sb-act-c)!important;
  background:var(--acc-g)!important;
}
[data-theme^="black"] .ub-role.role-admin{
  background:#d84b5f!important;
  border-color:#d84b5f!important;
  color:#ffffff!important;
}
[data-theme^="black"] .ub-role.role-team{
  background:#39b772!important;
  border-color:#39b772!important;
  color:#ffffff!important;
}
[data-theme^="black"] .ub-role.role-client{
  background:#4a8de8!important;
  border-color:#4a8de8!important;
  color:#ffffff!important;
}
[data-theme^="black"] .bp,
[data-theme^="black"] .hdr-actions .bp,
[data-theme^="black"] .sb-fab-btn{
  background:var(--acc-g)!important;
  color:var(--sb-act-c)!important;
  box-shadow:none!important;
}
[data-theme^="black"] #qt-shortcuts{
  background:#17181b!important;
  border-color:#2a2d33!important;
  color:#c9cdd4!important;
  box-shadow:none!important;
}
[data-theme^="black"] #qt-shortcuts:hover{
  background:#1f2126!important;
  color:#ffffff!important;
}
[data-theme^="black"] #qt-shortcuts svg{
  color:currentColor!important;
  opacity:.95!important;
}
[data-theme^="black"] .bw,
[data-theme^="black"] .ntb,
[data-theme^="black"] .ib{
  background:#17181b!important;
  border-color:#2a2d33!important;
  color:#ebecf0!important;
}
[data-theme^="black"] .fi,
[data-theme^="black"] select.fi,
[data-theme^="black"] textarea.fi{
  background:var(--inp)!important;
  border-color:var(--bdr)!important;
  color:var(--txt)!important;
}
[data-theme^="black"] .fi::placeholder{color:#7e8189!important}
[data-theme^="black"] .tabs,
[data-theme^="black"] .dash-progress{background:#141518!important}
[data-theme^="black"] .dash-progress>span{box-shadow:none!important}
[data-theme^="black"] .ok-box{
  background:rgba(16,185,129,.14)!important;
  border-color:rgba(16,185,129,.28)!important;
  color:#9de0c1!important;
}
[data-theme^="black"] .eb{
  background:rgba(239,68,68,.12)!important;
  border-color:rgba(239,68,68,.24)!important;
}
[data-theme^="black"] .lc.login-shell{
  background:#101113!important;
  border:1px solid var(--bdr)!important;
  box-shadow:0 28px 72px rgba(0,0,0,.42)!important;
}
[data-theme^="black"] .lh.login-hero,
[data-theme^="black"] .login-body{background:#121315!important}
[data-theme^="black"] .login-link-btn,
[data-theme^="black"] .login-inline-link,
[data-theme^="black"] .lh.login-hero a{color:#e4e4e7!important}
[data-theme^="black"] .ov{background:rgba(5,5,6,.72)!important}
[data-theme^="black"] .sidebar-overlay{background:rgba(5,5,6,.62)!important}

