/* ═══════════════════════════════════════════════════════════════
   AIP SocialMediaOS — executive command-center theme.
   Premium dark. Cinematic. Data-driven. Isolated from public site.
   ═══════════════════════════════════════════════════════════════ */
:root{
  --sm-bg:#0A0A0F; --sm-bg-2:#07070B;
  --sm-panel:#121218; --sm-panel-2:#191924; --sm-panel-3:#22222E;
  --sm-hairline:rgba(255,255,255,0.06);
  --sm-hairline-2:rgba(255,255,255,0.11);
  --sm-hairline-3:rgba(255,255,255,0.18);
  --sm-fg:#FFFFFF; --sm-fg-2:#E8E8EE; --sm-fg-3:#B0B0BC;
  --sm-muted:#7C7C8A; --sm-muted-2:#4A4A55;
  --sm-accent:#8B5CF6;    /* violet — premium editorial */
  --sm-accent-2:#7C3AED;
  --sm-accent-hi:#A78BFA;
  --sm-accent-tint:rgba(139,92,246,0.10);
  --sm-accent-glow:rgba(139,92,246,0.28);
  --sm-cyan:#22D3EE;
  --sm-ok:#22C55E; --sm-warn:#F59E0B; --sm-crit:#EF4444; --sm-info:#3B82F6;
  --sm-f-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --sm-f-num:'Space Grotesk','Inter',sans-serif;
  --sm-f-mono:'JetBrains Mono','SF Mono','Menlo',monospace;
  --sm-r-sm:6px; --sm-r-md:10px; --sm-r-lg:14px; --sm-r-xl:20px;
  --sm-shadow-1:0 1px 0 rgba(255,255,255,0.03) inset, 0 20px 60px -20px rgba(0,0,0,0.65);
  --sm-shadow-acc:0 12px 40px -12px rgba(139,92,246,0.35);
  --sm-navw:264px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
body.smos{background:var(--sm-bg);color:var(--sm-fg);font-family:var(--sm-f-sans);font-size:14px;line-height:1.5;letter-spacing:-0.003em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}
body.smos a{color:inherit;text-decoration:none}
body.smos button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}
body.smos input,body.smos select,body.smos textarea{font-family:inherit;color:inherit}
body.smos ::selection{background:var(--sm-accent);color:#fff}
body.smos ::-webkit-scrollbar{width:10px;height:10px}
body.smos ::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.09);border-radius:5px}
body.smos ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.16)}

/* ─── Login card ─── */
body.smos-login{
  display:grid;place-items:center;min-height:100vh;padding:24px;
  background:
    radial-gradient(1000px 700px at 80% 10%, rgba(139,92,246,0.18), transparent 60%),
    radial-gradient(800px 640px at 10% 90%, rgba(34,211,238,0.10), transparent 60%),
    var(--sm-bg);
}
.sm-login-card{
  width:100%;max-width:440px;background:var(--sm-panel);border:1px solid var(--sm-hairline-2);
  border-radius:18px;padding:40px 36px;box-shadow:0 30px 80px -20px rgba(0,0,0,0.8);position:relative;
}
.sm-login-wide{max-width:520px}
.sm-login-card::before{
  content:'';position:absolute;inset:-1px;border-radius:18px;padding:1px;
  background:linear-gradient(135deg, rgba(139,92,246,0.45), transparent 40%, rgba(34,211,238,0.25));
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;
}
.sm-login-mark{
  width:56px;height:56px;border-radius:14px;margin:0 auto 20px;
  background:linear-gradient(135deg, var(--sm-accent), var(--sm-accent-2));
  display:grid;place-items:center;font-family:var(--sm-f-num);font-weight:800;color:#fff;
  font-size:16px;letter-spacing:-0.02em;box-shadow:var(--sm-shadow-acc);
}
.sm-login-mark span{color:var(--sm-accent-hi)}
.sm-login-t{font-family:var(--sm-f-num);font-size:22px;font-weight:700;letter-spacing:-0.02em;text-align:center;margin-bottom:6px}
.sm-login-s{font-size:12px;color:var(--sm-muted);text-align:center;margin-bottom:28px;letter-spacing:0.06em;text-transform:uppercase;font-weight:600}
.sm-notice{padding:10px 12px;border-radius:8px;background:rgba(139,92,246,0.10);border:1px solid rgba(139,92,246,0.30);color:var(--sm-fg-2);font-size:12.5px;margin-bottom:16px}
.sm-login-err{display:none;padding:10px 12px;border-radius:8px;margin-bottom:14px;background:rgba(239,68,68,0.10);border:1px solid rgba(239,68,68,0.35);color:#FCB4B4;font-size:12.5px}
.sm-login-err.on{display:block}
.sm-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px}
.sm-field label{font-size:12px;font-weight:600;color:var(--sm-fg);letter-spacing:0.02em}
.sm-field input,.sm-field textarea,.sm-field select{
  width:100%;padding:12px 14px;border-radius:8px;background:rgba(0,0,0,0.35);border:1px solid var(--sm-hairline-2);color:var(--sm-fg);font-size:14px;
  transition:border-color .12s, box-shadow .12s;
}
.sm-field input:focus,.sm-field textarea:focus,.sm-field select:focus{outline:none;border-color:var(--sm-accent);box-shadow:0 0 0 3px rgba(139,92,246,0.22)}
.sm-login-sub{width:100%;margin-top:8px;padding:12px;border-radius:8px;background:linear-gradient(135deg, var(--sm-accent), var(--sm-accent-2));color:#fff;font-size:14px;font-weight:700;letter-spacing:0.02em;transition:filter .12s, transform .1s}
.sm-login-sub:hover{filter:brightness(1.08)}
.sm-login-sub:active{transform:translateY(1px)}
.sm-login-sub:disabled{opacity:.6;cursor:wait}
.sm-login-foot{margin-top:22px;text-align:center;font-size:11px;color:var(--sm-muted-2);letter-spacing:0.02em;line-height:1.5}
.sm-hash-out{margin-top:16px;padding:16px;border-radius:12px;background:rgba(0,0,0,0.5);border:1px solid var(--sm-hairline-2)}
.sm-hash-title{color:var(--sm-ok);font-weight:700;margin-bottom:6px}
.sm-hash-body{color:var(--sm-fg-3);font-size:12.5px;margin-bottom:10px}
.sm-hash-out pre{background:#000;color:#7DD3FC;padding:10px;border-radius:8px;font-family:var(--sm-f-mono);font-size:11px;overflow:auto;word-break:break-all;white-space:pre-wrap}

/* ─── App shell ─── */
body.smos-app{display:block}
.sm-shell{display:grid;grid-template-columns:var(--sm-navw) 1fr;min-height:100vh}
.sm-main{display:flex;flex-direction:column;min-width:0}

/* ─── Left nav ─── */
.sm-nav{
  background:linear-gradient(180deg, var(--sm-bg-2), var(--sm-bg));
  border-right:1px solid var(--sm-hairline);padding:18px 12px 32px;
  overflow-y:auto;position:sticky;top:0;height:100vh;
}
.sm-brand{display:flex;align-items:center;gap:10px;padding:6px 8px 14px;border-bottom:1px solid var(--sm-hairline)}
.sm-brand-mark{
  width:38px;height:38px;border-radius:10px;
  background:linear-gradient(135deg, var(--sm-accent), var(--sm-accent-2));
  display:grid;place-items:center;font-family:var(--sm-f-num);font-weight:800;color:#fff;font-size:13px;letter-spacing:-0.02em;
  box-shadow:0 6px 20px -6px var(--sm-accent-glow);
}
.sm-brand-mark span{color:var(--sm-accent-hi)}
.sm-brand-title{font-family:var(--sm-f-num);font-size:14px;font-weight:700;color:var(--sm-fg);letter-spacing:-0.01em;line-height:1}
.sm-brand-title span{display:block;margin-top:4px;font-weight:500;font-size:10.5px;color:var(--sm-muted);letter-spacing:0.06em;text-transform:uppercase}

.sm-ws{width:100%;margin:14px 0 8px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,0.03);border:1px solid var(--sm-hairline-2);display:flex;align-items:center;gap:10px;text-align:left}
.sm-ws:hover{border-color:var(--sm-hairline-3)}
.sm-ws .av{width:28px;height:28px;border-radius:7px;background:#000;border:1px solid var(--sm-accent);color:var(--sm-accent-hi);font-weight:700;font-size:11px;display:grid;place-items:center;font-family:var(--sm-f-num)}
.sm-ws .lbl{flex:1;min-width:0}
.sm-ws .n{font-size:13px;font-weight:600;color:var(--sm-fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sm-ws .s{font-size:10px;color:var(--sm-muted);letter-spacing:0.08em;text-transform:uppercase;font-weight:600}
.sm-ws .chev{color:var(--sm-muted);font-size:10px}
.sm-ws-menu{display:none;margin:0 6px 8px;padding:8px;border-radius:12px;background:var(--sm-panel);border:1px solid var(--sm-hairline-3);box-shadow:0 20px 60px -12px rgba(0,0,0,0.7)}
.sm-ws-menu.on{display:block}
.sm-ws-menu .item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13px}
.sm-ws-menu .item:hover{background:rgba(255,255,255,0.04)}
.sm-ws-menu .item.active{background:var(--sm-accent-tint)}
.sm-ws-menu .item .av{width:24px;height:24px;border-radius:6px;background:#000;border:1px solid var(--sm-accent);color:var(--sm-accent-hi);font-weight:700;font-size:10px;display:grid;place-items:center;font-family:var(--sm-f-num)}
.sm-ws-menu .nm{font-weight:600;color:var(--sm-fg)}
.sm-ws-menu .mt{font-size:10px;color:var(--sm-muted);letter-spacing:0.06em;text-transform:uppercase;font-weight:600}

.sm-nav-group{padding:14px 4px 4px}
.sm-nav-h{font-size:10px;color:var(--sm-muted);letter-spacing:0.12em;text-transform:uppercase;font-weight:700;padding:0 8px 8px}
.sm-nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-size:13px;font-weight:500;color:var(--sm-fg-3);cursor:pointer;transition:background .12s, color .12s}
.sm-nav-item:hover{background:rgba(255,255,255,0.03);color:var(--sm-fg)}
.sm-nav-item.active{background:var(--sm-accent-tint);color:var(--sm-fg);border:1px solid rgba(139,92,246,0.25)}
.sm-nav-item .ic{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;background:rgba(255,255,255,0.04);color:var(--sm-accent-hi);font-family:var(--sm-f-num);font-size:12px;flex-shrink:0}
.sm-nav-item.active .ic{background:var(--sm-accent);color:#fff}

/* ─── Top bar ─── */
.sm-topbar{position:sticky;top:0;z-index:20;background:linear-gradient(180deg, rgba(10,10,15,0.94), rgba(10,10,15,0.86));backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--sm-hairline)}
.sm-topbar-inner{display:flex;align-items:center;gap:16px;padding:12px 24px}
.sm-crumb{display:flex;align-items:center;gap:8px;font-size:12.5px}
.sm-crumb-a{color:var(--sm-muted);letter-spacing:0.05em;text-transform:uppercase;font-weight:600}
.sm-crumb-sep{color:var(--sm-muted-2)}
.sm-crumb-b{color:var(--sm-fg);font-weight:600}
.sm-topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px}
.sm-search{background:rgba(255,255,255,0.03);border:1px solid var(--sm-hairline-2);border-radius:8px;padding:8px 12px;font-size:12.5px;color:var(--sm-fg);width:280px}
.sm-search:focus{outline:none;border-color:var(--sm-accent)}
.sm-user{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:8px;border:1px solid var(--sm-hairline-2);background:rgba(255,255,255,0.02)}
.sm-user .av{width:26px;height:26px;border-radius:7px;background:#000;border:1px solid var(--sm-accent);color:var(--sm-accent-hi);font-weight:700;font-size:11px;display:grid;place-items:center;font-family:var(--sm-f-num)}
.sm-user .n{font-size:12px;color:var(--sm-fg-2);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sm-btn{background:transparent;border:1px solid var(--sm-hairline-2);color:var(--sm-fg-2);padding:7px 14px;border-radius:8px;font-size:12px;font-weight:600;transition:all .12s;cursor:pointer;display:inline-block}
.sm-btn:hover{border-color:var(--sm-accent);color:var(--sm-accent-hi)}
.sm-btn.primary{background:linear-gradient(135deg, var(--sm-accent), var(--sm-accent-2));border-color:transparent;color:#fff}
.sm-btn.primary:hover{filter:brightness(1.08)}
.sm-btn.ghost{background:rgba(255,255,255,0.03)}
.sm-btn.logout{color:var(--sm-fg-3)}
.sm-btn:disabled{opacity:.5;cursor:not-allowed}

/* ─── View / page ─── */
.sm-view{padding:26px 28px 64px;max-width:1600px;margin:0 auto;width:100%}
.sm-page-h{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.sm-page-t{font-family:var(--sm-f-num);font-size:26px;font-weight:700;letter-spacing:-0.02em}
.sm-page-s{color:var(--sm-fg-3);font-size:13px;margin-top:6px}
.sm-page-rt{display:flex;align-items:center;gap:10px;color:var(--sm-muted);font-size:12px}
.sm-mut{color:var(--sm-muted);font-size:12px}
.sm-mono{font-family:var(--sm-f-mono);font-size:11.5px}
.sm-mt{margin-top:14px}

/* ─── Cards ─── */
.sm-c{background:var(--sm-panel);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-lg);padding:20px;position:relative;min-width:0}
.sm-c.warn{border-color:rgba(245,158,11,0.35)}
.sm-c-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--sm-hairline)}
.sm-c-s{font-size:10.5px;color:var(--sm-muted);letter-spacing:0.10em;text-transform:uppercase;font-weight:700}
.sm-c-t{font-size:13px;font-weight:600;color:var(--sm-fg);margin-top:4px}
.sm-c-rt{margin-left:auto;font-size:11px;color:var(--sm-muted);text-align:right}

/* ─── Grids ─── */
.sm-g{display:grid;gap:16px}
.sm-g-2{grid-template-columns:1fr 1fr}
.sm-g-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sm-g-1-2{grid-template-columns:1fr 1.4fr}
@media (max-width:1100px){ .sm-g-2,.sm-g-3,.sm-g-1-2{grid-template-columns:1fr} }

/* ─── KPI ─── */
.sm-kpi-grid{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px}
@media (max-width:1400px){.sm-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){.sm-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sm-kpi{background:var(--sm-panel);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md);padding:14px 16px;overflow:hidden;min-width:0;position:relative}
.sm-kpi::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sm-accent)}
.sm-kpi.hi::before{background:linear-gradient(180deg,var(--sm-accent),var(--sm-cyan))}
.sm-kpi .l{font-size:10px;color:var(--sm-muted);letter-spacing:0.10em;text-transform:uppercase;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sm-kpi .v{font-family:var(--sm-f-num);font-size:22px;font-weight:600;color:var(--sm-fg);margin-top:6px;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sm-kpi.hi .v{color:var(--sm-accent-hi)}
.sm-kpi .d{font-size:10.5px;margin-top:6px;font-weight:600;letter-spacing:0.02em}
.sm-kpi .d.up{color:var(--sm-ok)} .sm-kpi .d.dn{color:var(--sm-crit)}

/* ─── Chips ─── */
.sm-chip{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:3px 9px;border-radius:99px;border:1px solid var(--sm-hairline-2);color:var(--sm-fg-3);background:rgba(255,255,255,0.02);white-space:nowrap}
.sm-chip.ok{color:#052E16;background:var(--sm-ok);border-color:var(--sm-ok)}
.sm-chip.warn{color:#3F1D00;background:var(--sm-warn);border-color:var(--sm-warn)}
.sm-chip.crit{color:#3F0A0A;background:var(--sm-crit);border-color:var(--sm-crit)}
.sm-chip.info{color:#0B1A3A;background:var(--sm-info);border-color:var(--sm-info)}
.sm-chip.pending{color:#F59E0B;background:rgba(245,158,11,0.12);border-color:rgba(245,158,11,0.5)}
.sm-chip.demo{color:#A78BFA;background:rgba(139,92,246,0.14);border-color:rgba(139,92,246,0.45)}
.sm-chip.up{color:#052E16;background:var(--sm-ok)}
.sm-chip.dn{color:#3F0A0A;background:var(--sm-crit)}

/* ─── Tables ─── */
.sm-tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
.sm-tbl thead th{text-align:left;padding:12px 14px;font-size:10.5px;color:var(--sm-muted);letter-spacing:0.10em;text-transform:uppercase;font-weight:700;background:rgba(255,255,255,0.02);border-bottom:1px solid var(--sm-hairline-2)}
.sm-tbl tbody td{padding:12px 14px;border-bottom:1px solid var(--sm-hairline);color:var(--sm-fg-2);vertical-align:middle}
.sm-tbl tbody tr:hover{background:rgba(255,255,255,0.02)}
.sm-tbl tbody tr:last-child td{border-bottom:0}
.sm-tbl td.num,.sm-tbl th.num{text-align:right;font-family:var(--sm-f-num);font-weight:500}
.sm-tbl td strong{color:var(--sm-fg);font-weight:600}

/* ─── Row list ─── */
.sm-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--sm-hairline);font-size:13px}
.sm-row:last-child{border-bottom:0}
.sm-row strong{color:var(--sm-fg)}
.sm-inbox-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}
.sm-empty{padding:22px 12px;text-align:center;color:var(--sm-muted);font-size:12.5px}

/* ─── Date/pill bar ─── */
.sm-datebar{display:flex;align-items:center;gap:16px;padding:12px 14px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md);margin-bottom:18px;flex-wrap:wrap}
.sm-datebar .lbl{font-size:10.5px;color:var(--sm-muted);letter-spacing:0.10em;text-transform:uppercase;font-weight:700}
.sm-datebar .pills,.sm-cal-bar .pills{display:flex;gap:6px;flex-wrap:wrap}
.sm-datebar .rt{margin-left:auto}
.sm-pill{padding:6px 12px;border-radius:99px;border:1px solid var(--sm-hairline-2);background:transparent;color:var(--sm-fg-3);font-size:11.5px;font-weight:600;transition:all .12s}
.sm-pill:hover{border-color:var(--sm-hairline-3);color:var(--sm-fg)}
.sm-pill.active{background:var(--sm-accent-tint);color:var(--sm-accent-hi);border-color:rgba(139,92,246,0.45)}

/* ─── Bar split / legend ─── */
.sm-bar-split{display:flex;height:14px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,0.05);margin-top:4px}
.sm-bar-split .a{background:linear-gradient(90deg,var(--sm-cyan),#22D3EE)}
.sm-bar-split .b{background:linear-gradient(90deg,var(--sm-accent),var(--sm-accent-hi))}
.sm-legend{display:flex;gap:16px;margin-top:10px;font-size:11px;color:var(--sm-fg-3)}
.sm-legend .sw{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:middle}
.sm-legend .sw.a{background:var(--sm-cyan)} .sm-legend .sw.b{background:var(--sm-accent)}

/* ─── Executive brief list ─── */
.sm-brief{list-style:none;padding:0;margin:0;font-size:13px;color:var(--sm-fg-2);line-height:1.6}
.sm-brief li{padding:6px 0}
.sm-brief li strong{color:var(--sm-fg)}
.sm-warn{margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(245,158,11,0.10);border:1px solid rgba(245,158,11,0.35);color:#FCD34D;font-size:12.5px}
.sm-info{margin-top:10px;padding:10px 12px;border-radius:8px;background:rgba(59,130,246,0.10);border:1px solid rgba(59,130,246,0.35);color:#93C5FD;font-size:12.5px}

/* ─── Calendar ─── */
.sm-cal-bar{display:flex;gap:12px;align-items:center;padding:10px 14px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md);margin-bottom:12px;flex-wrap:wrap}
.sm-select{padding:6px 10px;border-radius:8px;background:rgba(0,0,0,0.35);border:1px solid var(--sm-hairline-2);color:var(--sm-fg);font-size:12px}
.sm-cal-list{display:flex;flex-direction:column;gap:8px}
.sm-cal-item{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;padding:12px 16px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md);cursor:grab;transition:border-color .12s, transform .1s}
.sm-cal-item:hover{border-color:var(--sm-hairline-3)}
.sm-cal-item.dragging{opacity:0.6}
.sm-cal-item.drop-target{border-color:var(--sm-accent);box-shadow:0 0 0 3px rgba(139,92,246,0.15)}
.sm-cal-item .pl{font-family:var(--sm-f-num);font-weight:700;font-size:12px;color:var(--sm-accent-hi);letter-spacing:0.06em}
.sm-cal-item .tm{font-family:var(--sm-f-mono);font-size:11px;color:var(--sm-muted);margin-top:4px}
.sm-cal-item .cn strong{color:var(--sm-fg)}
.sm-cal-item .rt{flex-shrink:0}

/* ─── Content Studio outputs ─── */
.sm-out-meta{margin-bottom:12px;padding:10px 12px;background:rgba(139,92,246,0.10);border:1px solid rgba(139,92,246,0.30);border-radius:8px;color:var(--sm-fg-2);font-size:12.5px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sm-out-row{margin-bottom:10px}
.sm-out-t{font-size:10.5px;color:var(--sm-muted);letter-spacing:0.10em;text-transform:uppercase;font-weight:700;margin-bottom:4px}
.sm-out-row textarea{width:100%;padding:10px 12px;border-radius:8px;background:rgba(0,0,0,0.35);border:1px solid var(--sm-hairline-2);color:var(--sm-fg);font-size:13px;line-height:1.5;font-family:inherit}
.sm-out-row textarea:focus{outline:none;border-color:var(--sm-accent)}

/* ─── Audience cards ─── */
.sm-audience-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.sm-aud-card{padding:14px 16px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md);min-width:0}
.sm-aud-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.sm-aud-h strong{font-size:13px;color:var(--sm-fg)}
.sm-aud-bar{height:6px;background:rgba(255,255,255,0.05);border-radius:99px;overflow:hidden;margin-bottom:12px}
.sm-aud-bar .f{height:100%;background:linear-gradient(90deg,var(--sm-accent),var(--sm-cyan));border-radius:99px}
.sm-aud-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:11px}
.sm-aud-stats > div{display:flex;flex-direction:column}
.sm-aud-stats .l{color:var(--sm-muted);letter-spacing:0.06em;text-transform:uppercase;font-weight:700}
.sm-aud-stats .v{font-family:var(--sm-f-num);font-weight:600;color:var(--sm-fg);font-size:14px;margin-top:2px}

/* ─── Pillars ─── */
.sm-pillar-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}
.sm-pillar-bars{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.sm-pillar-bars .row{display:grid;grid-template-columns:60px 1fr 44px;gap:10px;align-items:center;font-size:11px;color:var(--sm-fg-3)}
.sm-pillar-bars .bar{height:8px;background:rgba(255,255,255,0.05);border-radius:99px;overflow:hidden}
.sm-pillar-bars .f{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--sm-accent-hi),var(--sm-accent))}
.sm-pillar-bars .f.target{background:linear-gradient(90deg,var(--sm-cyan),#22D3EE)}
.sm-pillar-bars .f.over{background:linear-gradient(90deg,var(--sm-warn),#FBBF24)}
.sm-pillar-bars .f.under{background:linear-gradient(90deg,var(--sm-info),#60A5FA)}
.sm-pillar-bars .num{font-family:var(--sm-f-num);text-align:right;color:var(--sm-fg-2)}
.sm-pillar-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.sm-pillar-stats > div{display:flex;flex-direction:column;padding:6px 8px;background:rgba(255,255,255,0.03);border-radius:6px}
.sm-pillar-stats .l{color:var(--sm-muted);letter-spacing:0.06em;text-transform:uppercase;font-weight:700;font-size:9.5px}
.sm-pillar-stats .v{font-family:var(--sm-f-num);font-weight:600;color:var(--sm-fg);font-size:13px;margin-top:2px}

/* ─── Funnel ─── */
.sm-funnel{display:flex;flex-direction:column;gap:8px}
.sm-funnel-step{display:grid;grid-template-columns:200px 1fr 90px;gap:14px;align-items:center;padding:14px 18px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md)}
.sm-funnel-step .l{font-size:12.5px;color:var(--sm-fg-2)}
.sm-funnel-step .v{font-family:var(--sm-f-num);font-size:20px;font-weight:600;color:var(--sm-fg)}
.sm-funnel-step .p{text-align:right;font-family:var(--sm-f-mono);font-size:11px;color:var(--sm-muted)}

/* ─── Tags row ─── */
.sm-tag-row{display:flex;flex-wrap:wrap;gap:6px}
.sm-stage-row{display:flex;flex-wrap:wrap;gap:6px}

/* ─── Reports / integrations grids ─── */
.sm-report-grid,.sm-integ-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.sm-report{padding:14px 16px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md)}
.sm-report-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.sm-report-actions{display:flex;gap:6px}

/* ─── Asset categories ─── */
.sm-cat-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-top:12px}
.sm-cat{padding:12px 14px;background:var(--sm-panel-2);border:1px solid var(--sm-hairline);border-radius:var(--sm-r-md)}
.sm-cat .l{font-size:11px;color:var(--sm-muted);letter-spacing:0.08em;text-transform:uppercase;font-weight:700}
.sm-cat .v{font-family:var(--sm-f-num);font-size:16px;font-weight:600;color:var(--sm-fg);margin:4px 0 8px}

/* ─── Brand voice score bars ─── */
.sm-vsc{display:grid;grid-template-columns:180px 1fr 40px;gap:10px;align-items:center;padding:5px 0;font-size:12px;color:var(--sm-fg-3)}
.sm-vsc .bar{height:6px;background:rgba(255,255,255,0.05);border-radius:99px;overflow:hidden}
.sm-vsc .f{height:100%;background:linear-gradient(90deg,var(--sm-accent),var(--sm-cyan));border-radius:99px}
.sm-vsc .f.up{background:linear-gradient(90deg,#22C55E,#4ADE80)}
.sm-vsc .f.dn{background:linear-gradient(90deg,var(--sm-crit),#F87171)}
.sm-vsc .num{font-family:var(--sm-f-num);text-align:right;color:var(--sm-fg)}

/* ─── Toolbar ─── */
.sm-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}
.sm-toolbar .sm-search{flex:1;max-width:420px}
.sm-check{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;background:rgba(255,255,255,0.03);border:1px solid var(--sm-hairline-2);font-size:12px;color:var(--sm-fg-2);margin:4px 6px 4px 0}

/* ─── Code / pre ─── */
.sm-code{background:#000;color:#7DD3FC;padding:12px 14px;border-radius:8px;font-family:var(--sm-f-mono);font-size:11.5px;overflow:auto;white-space:pre-wrap;word-break:break-all}

/* ─── Responsive ─── */
@media (max-width:1000px){
  .sm-shell{grid-template-columns:1fr}
  .sm-nav{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--sm-hairline)}
  .sm-view{padding:18px}
  .sm-search{width:100%}
  .sm-topbar-inner{flex-wrap:wrap}
  .sm-cal-item{grid-template-columns:1fr}
  .sm-funnel-step{grid-template-columns:1fr}
}
