/* ═══════════════════════════════════════════
   NEXUS v4 — COMMAND CENTER
   Premium Dark UI with Aurora Effects
   ═══════════════════════════════════════════ */

/* ── RESET & VARIABLES ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root {
  /* Surfaces */
  --bg-void: #05060a;
  --bg-base: #0a0c14;
  --bg-raised: #0f1219;
  --bg-card: rgba(14,17,28,0.72);
  --bg-card-hover: rgba(20,24,40,0.85);
  --bg-glass: rgba(255,255,255,0.03);
  --bg-glass-strong: rgba(255,255,255,0.06);

  /* Borders */
  --border-subtle: rgba(255,255,255,0.06);
  --border-medium: rgba(255,255,255,0.10);
  --border-accent: rgba(99,102,241,0.3);

  /* Text */
  --text-primary: #e8eaed;
  --text-secondary: rgba(232,234,237,0.55);
  --text-tertiary: rgba(232,234,237,0.32);
  --text-accent: #818cf8;

  /* Accents */
  --accent: #6366f1;
  --accent-light: #818cf8;
  --accent-glow: rgba(99,102,241,0.25);
  --green: #34d399;
  --green-dim: rgba(52,211,153,0.15);
  --amber: #fbbf24;
  --amber-dim: rgba(251,191,36,0.15);
  --red: #f87171;
  --red-dim: rgba(248,113,113,0.15);
  --cyan: #22d3ee;
  --pink: #f472b6;

  /* Spacing */
  --rail-w: 56px;
  --header-h: 52px;
  --status-h: 28px;
  --dock-h: 40px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;

  /* Shadows */
  --shadow-card: 0 2px 12px rgba(0,0,0,0.4), 0 0 1px rgba(255,255,255,0.05) inset;
  --shadow-elevated: 0 8px 32px rgba(0,0,0,0.6), 0 0 1px rgba(255,255,255,0.08) inset;
  --shadow-glow: 0 0 30px var(--accent-glow);
}

html{font-size:14px;-webkit-font-smoothing:antialiased}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg-void);color:var(--text-primary);overflow:hidden;height:100vh;width:100vw;position:relative}

/* ── AMBIENT BACKGROUND ── */
.ambient-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(120px);opacity:.35;will-change:transform}
.orb-1{width:600px;height:600px;background:radial-gradient(circle,#6366f1 0%,transparent 70%);top:-15%;left:-10%;animation:orbit1 25s ease-in-out infinite}
.orb-2{width:500px;height:500px;background:radial-gradient(circle,#06b6d4 0%,transparent 70%);bottom:-10%;right:-5%;animation:orbit2 30s ease-in-out infinite}
.orb-3{width:400px;height:400px;background:radial-gradient(circle,#a855f7 0%,transparent 70%);top:40%;left:50%;animation:orbit3 20s ease-in-out infinite}
@keyframes orbit1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(80px,60px) scale(1.15)}}
@keyframes orbit2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,-50px) scale(1.1)}}
@keyframes orbit3{0%,100%{transform:translate(0,0) scale(.9)}50%{transform:translate(-40px,30px) scale(1.05)}}

.mesh-grid{position:absolute;inset:0;background-image:
  linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:60px 60px}

/* ── ICON RAIL ── */
.icon-rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail-w);background:rgba(8,10,18,0.85);backdrop-filter:blur(24px) saturate(1.4);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;padding:10px 0;z-index:100;gap:2px}
.rail-logo{width:36px;height:36px;display:grid;place-items:center;margin-bottom:12px;background:linear-gradient(135deg,var(--accent),#a855f7);border-radius:10px;font-size:18px;cursor:pointer;transition:transform .2s;box-shadow:0 2px 12px rgba(99,102,241,.3)}
.rail-logo:hover{transform:scale(1.08)}
.logo-mark{line-height:1}
.rail-section{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%}
.rail-btn{width:40px;height:40px;border:none;background:transparent;color:var(--text-tertiary);display:grid;place-items:center;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;position:relative}
.rail-btn svg{width:20px;height:20px}
.rail-btn:hover{color:var(--text-secondary);background:var(--bg-glass-strong)}
.rail-btn.active{color:var(--accent-light);background:rgba(99,102,241,0.12)}
.rail-btn.active::before{content:'';position:absolute;left:0;top:25%;bottom:25%;width:2.5px;background:var(--accent);border-radius:0 2px 2px 0}
.rail-divider{width:24px;height:1px;background:var(--border-subtle);margin:8px 0}
.rail-platform{color:var(--text-tertiary)}
.rail-platform:hover{color:var(--pl)}
a.rail-btn{text-decoration:none;color:var(--text-tertiary)}
.rail-platform.dimmed{opacity:.3}
.rail-bottom{margin-top:auto}

/* Tooltip */
.tooltip-popup{position:fixed;background:var(--bg-raised);color:var(--text-primary);padding:5px 10px;border-radius:6px;font-size:12px;font-weight:500;z-index:999;pointer-events:none;opacity:0;transform:translateX(-4px);transition:all .15s;border:1px solid var(--border-medium);box-shadow:var(--shadow-card)}
.tooltip-popup.show{opacity:1;transform:translateX(0)}

/* ── COMMAND BAR ── */
.command-bar{position:fixed;top:0;left:var(--rail-w);right:0;height:var(--header-h);background:rgba(8,10,18,0.7);backdrop-filter:blur(20px) saturate(1.3);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;padding:0 20px;z-index:90;gap:16px}
.cmd-left{display:flex;align-items:baseline;gap:8px;min-width:160px}
.cmd-title{font-size:15px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.cmd-subtitle{font-size:12px;color:var(--text-tertiary);font-weight:400}
.cmd-search{flex:1;max-width:480px;position:relative;display:flex;align-items:center}
.cmd-search-icon{width:16px;height:16px;color:var(--text-tertiary);position:absolute;left:12px}
.cmd-search-input{width:100%;background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:7px 12px 7px 36px;color:var(--text-primary);font-size:12.5px;font-family:inherit;outline:none;transition:all .2s}
.cmd-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}
.cmd-search-input::placeholder{color:var(--text-tertiary)}
.cmd-kbd{position:absolute;right:10px;font-size:10px;color:var(--text-tertiary);background:var(--bg-glass-strong);padding:2px 5px;border-radius:4px;border:1px solid var(--border-subtle);font-family:'JetBrains Mono',monospace}
.cmd-right{display:flex;align-items:center;gap:12px;margin-left:auto}
.cmd-notif{background:none;border:none;color:var(--text-secondary);cursor:pointer;position:relative;width:32px;height:32px;display:grid;place-items:center;border-radius:var(--radius-sm);transition:background .2s}
.cmd-notif:hover{background:var(--bg-glass-strong)}
.cmd-notif svg{width:18px;height:18px}
.notif-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;background:var(--red);border-radius:50%;border:2px solid var(--bg-base)}
.cmd-avatar{width:30px;height:30px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),#a855f7);display:grid;place-items:center;font-size:11px;font-weight:700;letter-spacing:.02em;cursor:pointer}

/* ── WORKSPACE ── */
.workspace{position:fixed;top:var(--header-h);left:var(--rail-w);right:0;bottom:calc(var(--status-h) + var(--dock-h));overflow-y:auto;overflow-x:hidden;z-index:1;padding:20px 24px}
.workspace::-webkit-scrollbar{width:5px}
.workspace::-webkit-scrollbar-track{background:transparent}
.workspace::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:10px}

.view{display:none;animation:viewIn .35s ease}
.view.active{display:block}
@keyframes viewIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ── BENTO GRID ── */
.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(160px,auto);gap:14px}
.bento-card{background:var(--bg-card);backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.bento-card::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,0.04) 0%,transparent 50%);pointer-events:none;opacity:0;transition:opacity .3s}
.bento-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-card)}
.bento-card:hover::before{opacity:1}
.bento-2x2{grid-column:span 2;grid-row:span 2}
.bento-2x1{grid-column:span 2}
.bento-1x2{grid-row:span 2}
.bento-1x1{}

.bento-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.bento-title{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase}
.bento-icon{width:16px;height:16px;color:var(--accent-light)}
.bento-actions{display:flex;align-items:center;gap:8px}
.bento-more{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;letter-spacing:2px}

/* Live dot */
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block;animation:pulse-dot 2s infinite}
.live-dot.green{background:var(--green)}
@keyframes pulse-dot{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(52,211,153,.5)}50%{opacity:.7;box-shadow:0 0 0 6px rgba(52,211,153,0)}}

/* Badge */
.badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:20px;letter-spacing:.02em}
.badge-accent{background:rgba(99,102,241,.15);color:var(--accent-light);border:1px solid rgba(99,102,241,.2)}
.badge-warn{background:var(--red-dim);color:var(--red)}
.badge-coming{background:var(--amber-dim);color:var(--amber)}
.badge-green{background:var(--green-dim);color:var(--green)}

/* ── FEED WIDGET ── */
.feed-mini-list{display:flex;flex-direction:column;gap:6px}
.feed-mini-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);background:var(--bg-glass);border:1px solid transparent;transition:all .2s;cursor:pointer}
.feed-mini-item:hover{background:var(--bg-glass-strong);border-color:var(--border-subtle);transform:translateX(3px)}
.feed-mini-score{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;font-size:14px;font-weight:800;flex-shrink:0;font-family:'JetBrains Mono',monospace}
.score-hot{background:linear-gradient(135deg,rgba(52,211,153,.2),rgba(16,185,129,.1));color:var(--green);border:1px solid rgba(52,211,153,.2)}
.score-warm{background:linear-gradient(135deg,rgba(251,191,36,.2),rgba(245,158,11,.1));color:var(--amber);border:1px solid rgba(251,191,36,.2)}
.score-mid{background:linear-gradient(135deg,rgba(248,113,113,.15),rgba(239,68,68,.08));color:var(--red);border:1px solid rgba(248,113,113,.15)}
.feed-mini-body{flex:1;min-width:0}
.feed-mini-text{font-size:13px;font-weight:500;line-height:1.4;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.feed-mini-meta{display:flex;gap:10px;font-size:11px;color:var(--text-tertiary);margin-top:3px}
.feed-mini-src{color:var(--accent-light);font-weight:500}
.feed-mini-time{opacity:.6}

/* ── QUEUE WIDGET ── */
.queue-timeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:16px}
.queue-timeline::before{content:'';position:absolute;left:27px;top:12px;bottom:12px;width:1.5px;background:linear-gradient(180deg,var(--accent) 0%,var(--border-subtle) 100%)}
.queue-item{display:flex;gap:12px;align-items:flex-start;padding:8px 0;position:relative}
.queue-time{font-size:12px;font-family:'JetBrains Mono',monospace;color:var(--text-tertiary);min-width:40px;padding-top:2px;font-weight:500}
.queue-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:4px;border:2px solid var(--bg-card);z-index:1}
.dot-tg{background:#2AABEE;box-shadow:0 0 8px rgba(42,171,238,.4)}
.dot-vk{background:#4C75A3;box-shadow:0 0 8px rgba(76,117,163,.4)}
.queue-content{flex:1}
.queue-title{font-size:13px;font-weight:500;color:var(--text-primary)}
.queue-platforms{display:flex;gap:4px;margin-top:4px}
.q-platform{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;letter-spacing:.03em}
.q-platform.tg{background:rgba(42,171,238,.15);color:#2AABEE}
.q-platform.vk{background:rgba(76,117,163,.15);color:#6d9fd6}
.q-platform.max{background:rgba(255,107,53,.15);color:#ff6b35}
.q-platform.site{background:var(--bg-glass-strong);color:var(--text-secondary)}
.queue-label{font-size:10px;color:var(--text-tertiary);margin-top:2px}
.queue-tomorrow{opacity:.5}

/* ── SCORE RING ── */
.score-ring-container{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;position:relative}
.score-ring{width:100px;height:100px}
.score-value{position:absolute;font-size:28px;font-weight:800;font-family:'JetBrains Mono',monospace;background:linear-gradient(135deg,var(--cyan),var(--green));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.score-unit{font-size:14px;font-weight:600}
.score-label{font-size:11px;color:var(--text-tertiary);margin-top:6px}

/* ── METRIC WIDGET ── */
.metric-big{display:flex;align-items:baseline;gap:8px}
.metric-big.center{justify-content:center;flex-direction:column;align-items:center;flex:1}
.metric-number{font-size:32px;font-weight:800;font-family:'JetBrains Mono',monospace;letter-spacing:-.02em}
.gradient-text{background:linear-gradient(135deg,var(--accent-light),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.metric-change{font-size:12px;font-weight:600;padding:2px 6px;border-radius:4px}
.metric-change.positive{background:var(--green-dim);color:var(--green)}
.metric-sparkline{margin:8px 0 4px;opacity:.8}
.sparkline{width:100%;height:40px}
.metric-sub{display:flex;gap:12px;font-size:11px;color:var(--text-tertiary)}
.metric-sub.center{justify-content:center}

/* ── AGENT WIDGET ── */
.agent-insights{display:flex;flex-direction:column;gap:8px}
.insight-item{display:flex;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-glass);border:1px solid transparent;transition:all .2s}
.insight-item:hover{background:var(--bg-glass-strong);border-color:var(--border-subtle)}
.insight-icon{font-size:16px;flex-shrink:0;margin-top:1px}
.insight-text{font-size:12.5px;line-height:1.5;color:var(--text-secondary)}
.insight-text strong{color:var(--text-primary);font-weight:600}

/* ── QUICK ACTIONS ── */
.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1}
.quick-action{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border-radius:var(--radius-md);background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .2s;font-family:inherit}
.quick-action:hover{background:var(--bg-glass-strong);color:var(--text-primary);border-color:var(--border-medium);transform:translateY(-2px)}
.quick-action svg{width:20px;height:20px}
.quick-action span{font-size:11px;font-weight:500}

/* ── MINI CALENDAR ── */
.cal-nav{display:flex;gap:2px}
.cal-nav-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;width:24px;height:24px;display:grid;place-items:center;border-radius:4px;transition:all .15s}
.cal-nav-btn:hover{background:var(--bg-glass-strong);color:var(--text-primary)}
.mini-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:11px;text-align:center}
.mc-header{color:var(--text-tertiary);font-weight:600;padding:4px 0;font-size:10px}
.mc-day{padding:4px 0;border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:'JetBrains Mono',monospace;font-size:11px}
.mc-day:hover{background:var(--bg-glass-strong)}
.mc-day.today{background:var(--accent);color:white;font-weight:700}
.mc-day.has-post{position:relative}
.mc-day.has-post::after{content:'';position:absolute;bottom:1px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--green)}
.mc-day.empty{opacity:0}

/* ── EDITOR VIEW ── */
.editor-split{display:grid;grid-template-columns:1fr 320px;gap:16px;height:calc(100vh - var(--header-h) - var(--status-h) - var(--dock-h) - 40px)}
.editor-main{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}
.editor-topbar{display:flex;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border-subtle);gap:2px}
.editor-toolbar-btns{display:flex;gap:1px;align-items:center}
.ed-btn{width:32px;height:30px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;font-size:13px;display:grid;place-items:center;transition:all .15s;font-family:inherit}
.ed-btn:hover{background:var(--bg-glass-strong);color:var(--text-primary)}
.ed-divider{width:1px;height:20px;background:var(--border-subtle);margin:0 4px}
.ai-btn{color:var(--amber)!important;font-weight:600;font-size:12px;width:auto;padding:0 8px}
.editor-area{flex:1;padding:20px 24px;font-size:15px;line-height:1.7;color:var(--text-primary);outline:none;overflow-y:auto}
.editor-area p{margin-bottom:10px}
.editor-blockquote{border-left:3px solid var(--accent);padding-left:14px;color:var(--text-secondary);font-style:italic}
.editor-bottombar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-top:1px solid var(--border-subtle)}
.char-count{font-size:11px;color:var(--text-tertiary);font-family:'JetBrains Mono',monospace}
.editor-publish-btns{display:flex;gap:8px}
.btn-outline{background:transparent;border:1px solid var(--border-medium);color:var(--text-secondary);padding:7px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}
.btn-outline:hover{border-color:var(--accent);color:var(--text-primary)}
.btn-accent{background:linear-gradient(135deg,var(--accent),#7c3aed);border:none;color:white;padding:7px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:0 2px 12px rgba(99,102,241,.3)}
.btn-accent:hover{transform:translateY(-1px);box-shadow:0 4px 20px rgba(99,102,241,.4)}
.btn-accent.btn-sm{padding:5px 12px;font-size:11px}

/* Score Panel (sidebar) */
.editor-side{display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0}
.score-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px;transition:all .3s}
.score-panel:hover{border-color:var(--border-medium)}
.score-panel-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.score-panel-title{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.04em}
.score-panel-value{font-size:28px;font-weight:800;font-family:'JetBrains Mono',monospace;background:linear-gradient(135deg,var(--green),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.score-panel-max{font-size:14px;font-weight:500;-webkit-text-fill-color:var(--text-tertiary)}
.score-bars{display:flex;flex-direction:column;gap:10px}
.score-bar-row{display:grid;grid-template-columns:72px 1fr 24px;align-items:center;gap:8px}
.score-bar-label{font-size:12px;color:var(--text-secondary)}
.score-bar{height:6px;background:rgba(255,255,255,.06);border-radius:10px;overflow:hidden}
.score-bar-fill{height:100%;border-radius:10px;transition:width 1s ease}
.score-bar-val{font-size:12px;font-weight:700;color:var(--text-secondary);text-align:right;font-family:'JetBrains Mono',monospace}
.score-tips{margin-top:14px;display:flex;flex-direction:column;gap:6px}
.score-tip{font-size:11.5px;color:var(--text-secondary);padding:7px 10px;background:var(--bg-glass);border-radius:var(--radius-sm);border-left:2px solid var(--amber);line-height:1.4}

/* Preview mini */
.preview-mini{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:0}
.preview-mini-tabs{display:flex;border-bottom:1px solid var(--border-subtle)}
.pm-tab{flex:1;padding:8px;background:none;border:none;color:var(--text-tertiary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;border-bottom:2px solid transparent}
.pm-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}
.pm-tab:hover{color:var(--text-secondary)}
.preview-mini-content{flex:1;padding:14px;overflow-y:auto;max-height:calc(100vh - 320px)}
.tg-mock{background:rgba(14,22,33,.8);border-radius:var(--radius-md);padding:14px;font-size:13px;line-height:1.6}
.tg-mock-name{font-size:13px;font-weight:700;color:#2AABEE;margin-bottom:8px}
.tg-mock-footer{font-size:12px;color:var(--text-tertiary);margin-top:10px;display:flex;gap:8px}

/* ── CONTENT VIEW ── */
.content-header{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.view-heading{font-size:20px;font-weight:700;letter-spacing:-.02em}
.content-filters{display:flex;gap:6px}
.filter-btn{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:5px 12px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}
.filter-btn:hover{border-color:var(--border-medium);color:var(--text-primary)}
.filter-btn.active{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.25);color:var(--accent-light)}
.filter-divider{width:1px;background:var(--border-subtle);margin:0 4px}
.content-stats{display:flex;gap:8px;align-items:center;margin-left:auto}

.content-masonry{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.content-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}
.content-card:hover{border-color:var(--border-medium);transform:translateY(-3px);box-shadow:var(--shadow-card)}
.cc-score{position:absolute;top:12px;left:12px;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:13px;font-weight:800;font-family:'JetBrains Mono',monospace;z-index:2}
.cc-image{height:120px;background-size:cover;background-position:center;position:relative}
.cc-image::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,var(--bg-card) 100%)}
.cc-image-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:32px;opacity:.5}
.cc-body{padding:14px}
.cc-text {
  color: rgba(255,255,255,0.88);
  font-size: 14px;
  line-height: 1.65;
  white-space: pre-wrap;
  word-break: break-word;
}
.cc-meta{display:flex;gap:8px;font-size:11px;color:var(--text-tertiary);margin-bottom:6px}
.cc-src{color:var(--accent-light);font-weight:500}
.cc-stats{display:flex;gap:10px;font-size:11px;color:var(--text-tertiary)}
.cc-actions{display:flex;gap:6px;padding:0 14px 14px;border-top:1px solid var(--border-subtle);padding-top:10px;margin-top:0}
.cc-act{flex:1;padding:6px;background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit;text-align:center}
.cc-act:hover{background:var(--bg-glass-strong);color:var(--text-primary)}
.cc-act.primary{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.2);color:var(--accent-light)}
.cc-act.primary:hover{background:rgba(99,102,241,.2)}

/* ── INTEL VIEW ── */
.intel-grid{display:flex;flex-direction:column;gap:14px}
.intel-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:all .2s}
.intel-card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-card)}
.intel-avatar{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:15px;font-weight:700;color:white;flex-shrink:0}
.intel-info{flex:1}
.intel-name{font-size:14px;font-weight:600}
.intel-subs{font-size:12px;color:var(--text-tertiary)}
.intel-metrics{display:flex;gap:20px}
.intel-metric{text-align:right}
.intel-metric-val{font-size:16px;font-weight:700;font-family:'JetBrains Mono',monospace;display:block}
.intel-metric-val.positive{color:var(--green)}
.intel-metric-label{font-size:10px;color:var(--text-tertiary)}
.intel-section-title{font-size:14px;font-weight:600;margin-top:8px;display:flex;gap:6px;align-items:center}
.intel-top-posts{display:flex;flex-direction:column;gap:8px}
.intel-post{display:flex;gap:12px;padding:12px 14px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all .2s}
.intel-post:hover{border-color:var(--border-medium)}
.intel-post-body{flex:1}
.intel-post-text{font-size:13px;font-weight:500;margin-bottom:4px}
.intel-post-meta{font-size:11px;color:var(--text-tertiary)}
.intel-post-tag{font-size:11px;font-weight:600;margin-top:6px;padding:3px 8px;border-radius:4px;display:inline-block;background:var(--green-dim);color:var(--green)}
.intel-patterns{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.pattern-card{display:flex;gap:10px;padding:12px;background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all .2s}
.pattern-card:hover{background:var(--bg-glass-strong)}
.pattern-icon{font-size:20px}
.pattern-text{font-size:12px;color:var(--text-secondary);line-height:1.5}

/* ── SCHEDULE VIEW ── */
.schedule-nav{display:flex;gap:6px}
.schedule-week{display:block}
.sched-day{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:14px;transition:all .2s}
.sched-day:hover{border-color:var(--border-medium)}
.sched-day.today{border-color:rgba(99,102,241,.3);box-shadow:0 0 20px rgba(99,102,241,.08)}
.sched-day-header{display:flex;justify-content:space-between;margin-bottom:12px}
.sched-day-name{font-weight:600;font-size:14px}
.sched-day-date{font-size:12px;color:var(--text-tertiary);font-family:'JetBrains Mono',monospace}
.sched-items{display:flex;flex-direction:column;gap:8px}
.sched-item{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:var(--bg-glass);border-radius:var(--radius-sm);border:1px solid transparent;transition:all .15s}
.sched-item:hover{border-color:var(--border-subtle);background:var(--bg-glass-strong)}
.sched-time{font-size:12px;font-family:'JetBrains Mono',monospace;color:var(--accent-light);font-weight:600;min-width:42px;flex-shrink:0}
.sched-content{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.sched-platforms{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px;margin-top:2px;align-items:center}
.q-platform.ok{background:#f97316;color:#fff}
.sched-photo-icon{font-size:11px;margin-left:2px}
.sched-empty{text-align:center;padding:24px;color:var(--text-tertiary);font-size:13px}

/* ── STUDIO VIEW ── */
.studio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.studio-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:20px;text-align:center;transition:all .3s;cursor:pointer}
.studio-card:hover{border-color:var(--border-medium);transform:translateY(-3px);box-shadow:var(--shadow-card)}
.studio-icon{font-size:32px;margin-bottom:10px}
.studio-name{font-size:14px;font-weight:600;margin-bottom:6px}
.studio-desc{font-size:12px;color:var(--text-tertiary);line-height:1.4;margin-bottom:10px}
.studio-badge{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;background:var(--amber-dim);color:var(--amber)}

/* ── SETTINGS VIEW ── */
.settings-content{padding:20px}

/* ── TIMELINE DOCK ── */
.timeline-dock{position:fixed;bottom:var(--status-h);left:var(--rail-w);right:0;height:var(--dock-h);background:rgba(8,10,18,0.85);backdrop-filter:blur(16px);border-top:1px solid var(--border-subtle);z-index:80;transition:height .3s ease;overflow:hidden}
.timeline-dock.expanded{height:200px}
.dock-handle{display:flex;align-items:center;justify-content:center;gap:8px;height:var(--dock-h);cursor:pointer;color:var(--text-tertiary);font-size:12px;transition:color .2s}
.dock-handle:hover{color:var(--text-secondary)}
.dock-handle svg{width:14px;height:14px;transition:transform .3s}
.timeline-dock.expanded .dock-handle svg{transform:rotate(180deg)}
.dock-content{padding:0 20px 12px;overflow-x:auto}
.dock-timeline{display:flex;align-items:flex-start;gap:16px;min-width:max-content}
.dock-now{font-size:11px;color:var(--green);font-weight:600;padding:6px 10px;background:var(--green-dim);border-radius:6px;white-space:nowrap}
.dock-item{display:flex;gap:8px;align-items:flex-start}
.dock-item-time{font-size:11px;font-family:'JetBrains Mono',monospace;color:var(--text-tertiary);padding-top:6px;min-width:36px}
.dock-item-card{padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-glass);min-width:160px;transition:all .2s}
.dock-item-card:hover{border-color:var(--border-medium);background:var(--bg-glass-strong)}
.dock-item-card.tg{border-left:2px solid #2AABEE}
.dock-item-card.vk{border-left:2px solid #4C75A3}
.dock-item-title{font-size:12px;font-weight:500;color:var(--text-primary)}
.dock-item-platforms{font-size:10px;color:var(--text-tertiary);margin-top:2px}
.dock-divider{font-size:10px;color:var(--text-tertiary);padding:8px 6px;white-space:nowrap;font-weight:600;text-transform:uppercase;letter-spacing:.06em}

/* ── STATUS BAR ── */
.status-bar{position:fixed;bottom:0;left:var(--rail-w);right:0;height:var(--status-h);background:rgba(8,10,18,0.9);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;z-index:90;font-size:11px}
.status-left,.status-right{display:flex;align-items:center;gap:12px}
.status-item{color:var(--text-tertiary);display:flex;align-items:center;gap:4px}
.status-item strong{color:var(--text-secondary);font-weight:600}
.status-dot{width:3px;height:3px;border-radius:50%;background:var(--border-medium)}
.status-indicator{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:2px}
.status-indicator.online{background:var(--green);box-shadow:0 0 6px rgba(52,211,153,.5)}
.status-indicator.warn{background:var(--amber);box-shadow:0 0 6px rgba(251,191,36,.5)}
.status-indicator.off{background:var(--text-tertiary)}
.status-indicator.offline{background:#ef4444;box-shadow:0 0 6px rgba(239,68,68,.5)}

/* ── EDITOR PLATFORM TOGGLES (inline) ── */
.editor-platforms-inline{display:flex;align-items:center;gap:4px;margin:0 12px}
.epi-label{font-size:11px;color:var(--text-tertiary);margin-right:2px}
.epi-toggle{display:flex;align-items:center;gap:0;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;border:1px solid var(--border-subtle);color:var(--text-tertiary);background:transparent;transition:all .15s}
.epi-toggle input{display:none}
.epi-toggle.active{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.25);color:var(--accent-light)}
.epi-toggle:hover{border-color:var(--border-medium)}

/* ── RESPONSIVE ── */

/* Source charts */
.dw--vsrc { grid-column:7/10;  grid-row:3; --dw-accent:linear-gradient(90deg,#3b82f6,#06b6d4); --dw-glow:rgba(59,130,246,.06) }
.dw--fsrc { grid-column:10/13; grid-row:3; --dw-accent:linear-gradient(90deg,#22c55e,#3b82f6); --dw-glow:rgba(34,197,94,.06) }
.dw--vsrc canvas, .dw--fsrc canvas { display:block; margin:8px 12px; border-radius:8px }
.vsrc-legend { display:flex; flex-wrap:wrap; gap:6px; padding:4px 12px 8px }
.vsrc-tag { display:inline-flex; align-items:center; gap:4px; font-size:11px; color:rgba(255,255,255,.7); padding:2px 8px; border-radius:12px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.06) }
.vsrc-tag b { color:var(--tc, #fff); font-weight:700 }
.vsrc-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0 }

@media(max-width:1100px){
  .bento-grid{grid-template-columns:repeat(2,1fr)}
  .bento-2x2{grid-column:span 2}
  .editor-split{grid-template-columns:1fr}
  .editor-side{display:none}
}
@media(max-width:768px){
  .icon-rail{display:none}
  .command-bar,.workspace,.timeline-dock,.status-bar{left:0}
  .bento-grid{grid-template-columns:1fr}
  .bento-2x2,.bento-2x1{grid-column:span 1}
}

/* ── CHANNEL STATS WIDGET ── */
.channel-tabs{display:flex;gap:2px}
.ch-tab{width:26px;height:22px;border:none;background:var(--bg-glass);color:var(--text-tertiary);border-radius:4px;cursor:pointer;font-size:11px;transition:all .15s;display:grid;place-items:center}
.ch-tab:hover{background:var(--bg-glass-strong);color:var(--text-secondary)}
.ch-tab.active{background:rgba(99,102,241,.15);color:var(--accent-light)}
.channel-view{display:none;flex-direction:column;align-items:center;justify-content:center;flex:1}
.channel-view.active{display:flex}

/* ── CONTENT TABS & CONTROLS ── */
.content-tabs{display:flex;gap:4px}
.content-tab{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}
.content-tab:hover{border-color:var(--border-medium);color:var(--text-primary)}
.content-tab.active{background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.25);color:var(--accent-light)}
.content-controls{display:flex;gap:6px;align-items:center;margin-left:auto}
.content-select{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:5px 10px;border-radius:var(--radius-sm);font-size:11px;font-family:inherit;outline:none;cursor:pointer;transition:all .2s;appearance:auto}
.content-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}
.content-select option{background:var(--bg-raised);color:var(--text-primary)}
.content-status-bar{display:flex;gap:8px;align-items:center;margin-bottom:14px;font-size:11px;color:var(--text-tertiary);padding:6px 12px;background:var(--bg-glass);border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}
.content-dot{color:var(--border-medium)}

/* ── EDITOR BLOCKQUOTE FIX ── */
.editor-area blockquote{border-left:3px solid var(--accent);padding-left:14px;margin:8px 0;color:var(--text-secondary);font-style:italic}

/* ═══════════════════════════════════════════
   DASHBOARD v7 — MISSION CONTROL BENTO
   Maximum density · Premium aesthetics
   ═══════════════════════════════════════════ */

.dash-bento {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto 1fr 1fr;
  gap: 10px;
  height: calc(100vh - var(--header-h) - var(--status-h) - var(--dock-h) - 42px);
  min-height: 560px;
}

/* ── WIDGET BASE ── */
.dw {
  background: var(--bg-card);
  backdrop-filter: blur(12px);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-lg);
  padding: 14px 16px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all .3s cubic-bezier(.4,0,.2,1);
  animation: dwIn .45s ease both;
}
.dw::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--dw-accent, transparent);
  opacity: .7;
}
.dw::after {
  content: '';
  position: absolute; inset: 0;
  border-radius: inherit;
  background: radial-gradient(ellipse at 20% 0%, var(--dw-glow, transparent) 0%, transparent 70%);
  pointer-events: none;
  opacity: 0;
  transition: opacity .4s;
}
.dw:hover { border-color: var(--border-medium); box-shadow: 0 4px 24px rgba(0,0,0,.35); }
.dw:hover::after { opacity: 1; }

@keyframes dwIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
.dw:nth-child(1){animation-delay:0s}.dw:nth-child(2){animation-delay:.04s}
.dw:nth-child(3){animation-delay:.08s}.dw:nth-child(4){animation-delay:.12s}
.dw:nth-child(5){animation-delay:.16s}.dw:nth-child(6){animation-delay:.2s}
.dw:nth-child(7){animation-delay:.24s}.dw:nth-child(8){animation-delay:.28s}
.dw:nth-child(9){animation-delay:.32s}

.dw-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; flex-shrink:0 }
.dw-label { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--text-tertiary); display:flex; align-items:center; gap:5px }
.dw-empty { text-align:center; padding:20px; color:var(--text-tertiary); font-size:12px }

/* ── GRID PLACEMENT ── */
.dw--views  { grid-column:1/4;  grid-row:1; --dw-accent:linear-gradient(90deg,#6366f1,#818cf8); --dw-glow:rgba(99,102,241,.08) }
.dw--avg    { grid-column:4/7;  grid-row:1; --dw-accent:linear-gradient(90deg,#6366f1,#818cf8); --dw-glow:rgba(99,102,241,.08) }
.dw--fwd    { grid-column:7/10; grid-row:1; --dw-accent:linear-gradient(90deg,#f59e0b,#fbbf24); --dw-glow:rgba(251,191,36,.08) }
.dw--eng    { grid-column:10/13;grid-row:1; --dw-accent:linear-gradient(90deg,#ef4444,#f87171); --dw-glow:rgba(248,113,113,.08) }
.dw--top    { grid-column:1/13; grid-row:2 }
.dw--hours  { display:none }
.dw--topics { display:none }
.dw--recs   { grid-column:1/4;  grid-row:3 }
.dw--pipe   { grid-column:4/7;  grid-row:3; --dw-accent:linear-gradient(90deg,#a855f7,#c084fc); --dw-glow:rgba(168,85,247,.06) }

/* ── METRIC NUMBER (Row 1 cards) ── */
.dw-metric { display:flex; align-items:baseline; gap:6px; flex:1 }
.dw-metric-num {
  font-size:36px; font-weight:800;
  font-family:'JetBrains Mono',monospace;
  letter-spacing:-.03em; line-height:1;
}
.dw-metric-unit { font-size:11px; color:var(--text-tertiary); font-weight:500 }
.grad-purple { background:linear-gradient(135deg,#818cf8,#c084fc); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent }
.grad-green  { background:linear-gradient(135deg,#34d399,#10b981); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent }
.grad-amber  { background:linear-gradient(135deg,#fbbf24,#f59e0b); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent }
.grad-red    { background:linear-gradient(135deg,#f87171,#fb923c); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent }

/* Sparkline container */
.dw-spark { flex:1; min-height:30px; margin-top:4px; position:relative }
.dw-spark svg { display:block; width:100%; height:100% }
.dw-sub { font-size:11px; color:var(--text-tertiary); margin-top:4px; flex-shrink:0 }

/* ── COMPARISON BAR (avg card) ── */
.dw-comp { display:flex; flex-direction:column; gap:6px; margin-top:auto }
.comp-row { display:flex; align-items:center; gap:6px }
.comp-label { font-size:10px; font-weight:600; color:var(--text-tertiary); min-width:30px; text-transform:uppercase; letter-spacing:.04em }
.comp-bar { flex:1; height:8px; background:rgba(255,255,255,.05); border-radius:6px; overflow:hidden }
.comp-fill { height:100%; border-radius:6px; transition:width 1s ease }
.comp-fill.you { background:linear-gradient(90deg,#34d399,#10b981) }
.comp-fill.them { background:linear-gradient(90deg,#6366f1,#818cf8); opacity:.5 }
.comp-val { font-size:11px; font-weight:700; font-family:'JetBrains Mono',monospace; color:var(--text-secondary); min-width:36px; text-align:right }

/* ── FWD DETAIL GRID ── */
.dw-fwd-grid { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-top:auto }
.fwd-stat { text-align:center; padding:5px 4px; background:var(--bg-glass); border-radius:6px; border:1px solid var(--border-subtle) }
.fwd-val { font-size:14px; font-weight:800; font-family:'JetBrains Mono',monospace; color:var(--text-primary); display:block }
.fwd-lbl { font-size:9px; color:var(--text-tertiary); text-transform:uppercase; letter-spacing:.06em }

/* ── ENGAGEMENT GAUGE ── */
.dw-gauge-wrap { flex:1; display:flex; align-items:center; justify-content:center; position:relative; min-height:60px }
.dw-gauge { width:80px; height:80px }
.dw-gauge svg { width:100%; height:100% }
.dw-gauge-center { position:absolute; display:flex; align-items:baseline; gap:1px }
.dw-gauge-val { font-size:24px; font-weight:800; font-family:'JetBrains Mono',monospace; color:var(--text-primary) }
.dw-gauge-unit { font-size:11px; font-weight:600; color:var(--text-tertiary) }
.dw-gauge-verdict { font-size:10px; color:var(--text-tertiary); text-align:center; flex-shrink:0; font-weight:500 }

/* ── TABS (top posts) ── */
.dw-tabs { display:flex; gap:2px }
.dw-tab {
  background:var(--bg-glass); border:1px solid var(--border-subtle);
  color:var(--text-tertiary); padding:3px 10px; border-radius:10px;
  font-size:10px; font-weight:600; cursor:pointer;
  transition:all .15s; font-family:inherit;
}
.dw-tab:hover { border-color:var(--border-medium); color:var(--text-secondary) }
.dw-tab.active { background:rgba(99,102,241,.15); border-color:rgba(99,102,241,.25); color:var(--accent-light) }

/* ── SCROLLABLE CONTENT ── */
.dw-scroll { flex:1; overflow-y:auto; min-height:0 }
.dw-scroll::-webkit-scrollbar { width:3px }
.dw-scroll::-webkit-scrollbar-thumb { background:var(--border-medium); border-radius:10px }

/* ── TOP POSTS ── */
.top-post {
  display:grid; grid-template-columns:30px 1fr 100px 70px 50px 46px;
  align-items:center; gap:8px;
  padding:7px 10px; border-radius:var(--radius-sm);
  background:var(--bg-glass); border:1px solid transparent;
  transition:all .15s; cursor:pointer; margin-bottom:4px;
}
.top-post:hover { background:var(--bg-glass-strong); border-color:var(--border-subtle); transform:translateX(2px) }
.tp-medal { font-size:16px; text-align:center }
.tp-rank { width:26px; height:26px; border-radius:7px; display:grid; place-items:center; font-size:12px; font-weight:800; font-family:'JetBrains Mono',monospace }
.tp-rank.gold { background:rgba(251,191,36,.15); color:#fbbf24 }
.tp-rank.silver { background:rgba(148,163,184,.15); color:#94a3b8 }
.tp-rank.bronze { background:rgba(217,119,6,.15); color:#d97706 }
.tp-rank.normal { background:var(--bg-glass-strong); color:var(--text-tertiary) }
.tp-text { font-size:12px; color:var(--text-primary); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; line-height:1.3 }
.tp-bar-cell { position:relative }
.tp-bar-wrap { height:6px; background:rgba(255,255,255,.05); border-radius:4px; overflow:hidden }
.tp-bar-fill { height:100%; border-radius:4px; background:linear-gradient(90deg,#6366f1,#818cf8); transition:width .8s ease }
.tp-views { font-size:12px; font-weight:700; font-family:'JetBrains Mono',monospace; color:var(--accent-light); text-align:right }
.tp-fwd { font-size:11px; color:var(--text-tertiary); text-align:right }
.tp-date { font-size:10px; color:var(--text-tertiary); font-family:'JetBrains Mono',monospace; text-align:right }

/* ── HOURS HEATMAP ── */
.hours-grid { display:grid; grid-template-columns:repeat(24,1fr); gap:3px; margin-bottom:8px }
.hour-cell {
  aspect-ratio:1; border-radius:4px;
  background:rgba(255,255,255,.04); position:relative;
  transition:all .3s; cursor:default;
}
.hour-cell:hover { transform:scale(1.3); z-index:2 }
.hour-cell[data-tip]::after {
  content:attr(data-tip); position:absolute; bottom:calc(100% + 4px); left:50%;
  transform:translateX(-50%); font-size:9px; white-space:nowrap;
  background:var(--bg-raised); color:var(--text-primary); padding:2px 6px;
  border-radius:4px; border:1px solid var(--border-medium);
  opacity:0; pointer-events:none; transition:opacity .15s; z-index:10;
}
.hour-cell:hover::after { opacity:1 }
.hours-labels { display:grid; grid-template-columns:repeat(24,1fr); gap:3px; margin-bottom:6px }
.hours-labels span { font-size:8px; color:var(--text-tertiary); text-align:center; font-family:'JetBrains Mono',monospace }
.hours-best { display:flex; align-items:center; gap:8px; margin-top:auto; padding:8px 10px; background:var(--bg-glass); border-radius:var(--radius-sm); border:1px solid var(--border-subtle) }
.hours-best-icon { font-size:14px }
.hours-best-label { font-size:11px; color:var(--text-tertiary) }
.hours-best-val { font-size:12px; font-weight:700; color:var(--green); font-family:'JetBrains Mono',monospace }
.hours-legend { display:flex; align-items:center; gap:8px; margin-top:6px; justify-content:center }
.hours-legend-bar { display:flex; gap:1px; border-radius:3px; overflow:hidden }
.hours-legend-bar span { width:12px; height:6px }
.hours-legend-text { font-size:9px; color:var(--text-tertiary) }

/* ── TOPIC BARS ── */
.topic-analysis { display:flex; flex-direction:column; gap:8px }
.topic-row { display:flex; align-items:center; gap:8px; animation:topicIn .5s ease both }
@keyframes topicIn { from { opacity:0; transform:translateX(-8px) } to { opacity:1; transform:none } }
.topic-row:nth-child(1){animation-delay:.1s}.topic-row:nth-child(2){animation-delay:.15s}
.topic-row:nth-child(3){animation-delay:.2s}.topic-row:nth-child(4){animation-delay:.25s}
.topic-row:nth-child(5){animation-delay:.3s}.topic-row:nth-child(6){animation-delay:.35s}
.topic-emoji { font-size:14px; flex-shrink:0; width:20px; text-align:center }
.topic-name { font-size:11px; font-weight:500; color:var(--text-secondary); min-width:70px; max-width:90px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.topic-bar { flex:1; height:10px; background:rgba(255,255,255,.05); border-radius:6px; overflow:hidden }
.topic-bar-fill { height:100%; border-radius:6px; transition:width 1s ease }
.topic-pct { font-size:10px; font-weight:700; color:var(--text-tertiary); min-width:28px; text-align:right; font-family:'JetBrains Mono',monospace }
.topic-avg { font-size:11px; font-weight:700; font-family:'JetBrains Mono',monospace; color:var(--text-primary); min-width:42px; text-align:right }

/* ── AI RECOMMENDATIONS ── */
.ai-recs { display:flex; flex-direction:column; gap:6px }
.ai-rec {
  display:flex; gap:8px; align-items:flex-start;
  padding:8px 10px; border-radius:var(--radius-sm);
  background:var(--bg-glass); border-left:3px solid var(--accent);
  transition:all .2s; animation:recIn .4s ease both;
}
.ai-rec:nth-child(1){animation-delay:.2s}.ai-rec:nth-child(2){animation-delay:.25s}
.ai-rec:nth-child(3){animation-delay:.3s}.ai-rec:nth-child(4){animation-delay:.35s}
.ai-rec:nth-child(5){animation-delay:.4s}
.ai-rec:hover { background:var(--bg-glass-strong); transform:translateX(2px) }
@keyframes recIn { from { opacity:0; transform:translateX(-6px) } to { opacity:1; transform:none } }
.ai-rec-icon { font-size:15px; flex-shrink:0; margin-top:1px }
.ai-rec-text { font-size:11.5px; line-height:1.45; color:var(--text-secondary) }
.ai-rec-text strong { color:var(--text-primary); font-weight:600 }
.ai-rec.highlight { border-left-color:var(--green) }
.ai-rec.warning { border-left-color:var(--amber) }

/* ── PIPELINE ── */
.pipe-items { display:grid; grid-template-columns:1fr 1fr; gap:4px }
.pipe-item {
  display:flex; align-items:center; gap:8px;
  padding:7px 8px; border-radius:6px;
  background:var(--bg-glass); border:1px solid var(--border-subtle);
  transition:all .15s;
}
.pipe-item:hover { background:var(--bg-glass-strong) }
.pipe-icon { font-size:13px; flex-shrink:0 }
.pipe-body { flex:1; min-width:0 }
.pipe-body-label { font-size:10px; color:var(--text-tertiary); text-transform:uppercase; letter-spacing:.04em; line-height:1 }
.pipe-body-val { font-size:14px; font-weight:800; font-family:'JetBrains Mono',monospace; color:var(--text-primary); line-height:1.2 }
.pipe-body-val.accent { color:var(--accent-light) }
.pipe-body-val.green { color:var(--green) }
.pipe-body-val.amber { color:var(--amber) }

/* ── RESPONSIVE ── */
@media(max-width:1200px) {
  .dash-bento { grid-template-columns:repeat(6,1fr); grid-template-rows:auto; height:auto }
  .dw--views{grid-column:1/4;grid-row:1}.dw--avg{grid-column:4/7;grid-row:1}
  .dw--fwd{grid-column:1/4;grid-row:2}.dw--eng{grid-column:4/7;grid-row:2}
  .dw--top{grid-column:1/7;grid-row:3}.dw--hours{grid-column:1/7;grid-row:4}
  .dw--recs{grid-column:1/4;grid-row:5}
  .dw--pipe{grid-column:4/7;grid-row:5}
  .dw--vsrc{grid-column:1/4;grid-row:6}.dw--fsrc{grid-column:4/7;grid-row:6}
}
@media(max-width:768px) {
  .dash-bento { grid-template-columns:1fr }
  .dw--views,.dw--avg,.dw--fwd,.dw--eng,.dw--top,.dw--hours,.dw--topics,.dw--recs,.dw--pipe,.dw--vsrc,.dw--fsrc { grid-column:1; grid-row:auto }
  .dw-metric-num { font-size:28px }
}


/* ── TOP POSTS V2 — Modern Clean ── */
.top-post {
  display: grid !important;
  grid-template-columns: 28px 1fr auto 28px !important;
  align-items: center;
  gap: 12px !important;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(255,255,255,.06) !important;
  cursor: pointer;
  transition: all .2s;
}
.top-post:hover {
  background: rgba(255,255,255,.07) !important;
  border-color: rgba(139,92,246,.3) !important;
  transform: translateX(2px);
}
.tp-rank {
  width: 28px !important; height: 28px !important;
  display: flex !important; align-items: center; justify-content: center;
  border-radius: 8px;
  font-size: 12px !important; font-weight: 700;
  background: rgba(255,255,255,.06);
  color: var(--text-secondary);
}
.tp-rank.top1 { background: linear-gradient(135deg,#f59e0b,#d97706); color: #000; }
.tp-rank.top2 { background: linear-gradient(135deg,#94a3b8,#64748b); color: #fff; }
.tp-rank.top3 { background: linear-gradient(135deg,#d97706,#92400e); color: #fff; }
.tp-text {
  font-size: 13px !important;
  color: var(--text-primary);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  line-height: 1.3;
}
.tp-stats {
  display: flex; gap: 16px; align-items: center;
  flex-shrink: 0;
}
.tp-stat {
  display: flex; flex-direction: column; align-items: flex-end; gap: 1px;
}
.tp-stat-val { font-size: 13px; font-weight: 600; color: var(--text-primary); font-family: 'JetBrains Mono',monospace; }
.tp-stat-lbl { font-size: 9px; color: var(--text-tertiary); text-transform: uppercase; letter-spacing: .5px; }
.tp-stat--viral .tp-stat-val { color: #f59e0b; }
.tp-copy {
  background: none !important; border: none !important;
  cursor: pointer; font-size: 14px; padding: 4px;
  border-radius: 6px; transition: all .15s; opacity: .4;
}
.top-post:hover .tp-copy { opacity: 1; }
.tp-copy:hover { background: rgba(255,255,255,.1) !important; transform: scale(1.15); }

/* Hide old columns */
.tp-bar-cell, .tp-bar-wrap, .tp-bar-fill, .tp-views, .tp-fwd, .tp-viral, .tp-date { display: none !important; }



/* ── Sparkline axis ── */
.dw-spark { position: relative; border-left: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.12); padding: 4px 0 2px 4px; }
.dw-spark::before { content: ''; position: absolute; left: 0; top: 50%; right: 0; border-top: 1px dashed rgba(255,255,255,.06); }
.dw-spark svg { display: block; }

/* ── Widget header clean ── */
.dw-label { letter-spacing: .03em; }

/* ── SVG Icon alignment ── */
.dw-label svg, .pipe-icon svg { vertical-align: -2px; margin-right: 6px; }
.pipe-icon { display: flex !important; align-items: center; justify-content: center; }
.pipe-icon svg { margin: 0; }

/* ── Lucide Icons Styling ── */
.nx-icon { width: 16px; height: 16px; vertical-align: -3px; margin-right: 6px; stroke-width: 2; }
.nx-cyan { color: #22d3ee; }
.nx-purple { color: #a78bfa; }
.nx-gold { color: #f59e0b; }
.nx-pink { color: #ec4899; }
.nx-green { color: #34d399; }
.nx-silver { color: #94a3b8; }
.dw-label i[data-lucide] { width: 16px; height: 16px; display: inline-block; vertical-align: -3px; margin-right: 6px; }
.pipe-icon i[data-lucide] { width: 16px; height: 16px; }
.pipe-icon { color: inherit; }

/* ── TOP POSTS V2 ── */
.top-post { display: grid !important; grid-template-columns: 28px 1fr auto 28px !important; align-items: center; gap: 12px !important; padding: 10px 14px !important; border-radius: 10px !important; background: rgba(255,255,255,.03) !important; border: 1px solid rgba(255,255,255,.06) !important; cursor: pointer; transition: all .2s; }
.top-post:hover { background: rgba(255,255,255,.07) !important; border-color: rgba(139,92,246,.3) !important; transform: translateX(2px); }
.tp-rank { width: 28px !important; height: 28px !important; display: flex !important; align-items: center; justify-content: center; border-radius: 8px; font-size: 12px !important; font-weight: 700; background: rgba(255,255,255,.06); color: var(--text-secondary); }
.tp-rank.top1 { background: linear-gradient(135deg,#f59e0b,#d97706); color: #000; }
.tp-rank.top2 { background: linear-gradient(135deg,#94a3b8,#64748b); color: #fff; }
.tp-rank.top3 { background: linear-gradient(135deg,#d97706,#92400e); color: #fff; }
.tp-text { font-size: 13px !important; color: var(--text-primary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.3; }
.tp-stats { display: flex; gap: 16px; align-items: center; flex-shrink: 0; }
.tp-stat { display: flex; flex-direction: column; align-items: flex-end; gap: 1px; }
.tp-stat-val { font-size: 13px; font-weight: 600; color: var(--text-primary); font-family: 'JetBrains Mono',monospace; }
.tp-stat-lbl { font-size: 9px; color: var(--text-tertiary); text-transform: uppercase; letter-spacing: .5px; }
.tp-stat--viral .tp-stat-val { color: #f59e0b; }
.tp-copy { background: none !important; border: none !important; cursor: pointer; font-size: 14px; padding: 4px; border-radius: 6px; transition: all .15s; opacity: .4; }
.top-post:hover .tp-copy { opacity: 1; }
.tp-copy:hover { background: rgba(255,255,255,.1) !important; }
.tp-bar-cell,.tp-bar-wrap,.tp-bar-fill,.tp-views,.tp-fwd,.tp-viral,.tp-date { display: none !important; }

/* ── PLATFORM SWITCHER ── */
.platform-switcher { display:flex; gap:4px; padding:8px 16px 0; }
.ps-btn { display:flex; align-items:center; gap:6px; padding:6px 16px; border:1px solid rgba(255,255,255,.08); border-radius:20px; background:transparent; color:var(--text-tertiary); font:500 12px/1 'Inter',sans-serif; cursor:pointer; transition:all .2s }
.ps-btn:hover { background:rgba(255,255,255,.04); color:var(--text-secondary) }
.ps-btn.active { background:rgba(99,102,241,.12); border-color:rgba(99,102,241,.3); color:var(--accent-light) }
.ps-icon { font-size:10px }

/* ── SITE BENTO GRID ── */
.site-bento {
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-template-rows:auto;
  gap:12px;
  padding:12px 16px 16px;
  height:auto;
}
.dw--s-visits    { grid-column:1/4;   grid-row:1 }
.dw--s-pageviews { grid-column:4/7;   grid-row:1 }
.dw--s-bounce    { grid-column:7/10;  grid-row:1 }
.dw--s-users     { grid-column:10/13; grid-row:1 }

.dw--s-sources   { grid-column:1/4;   grid-row:3 }
.dw--s-devices   { grid-column:4/7;   grid-row:3 }
.dw--s-geo       { grid-column:7/10;  grid-row:3 }
.dw--s-search    { grid-column:10/13; grid-row:3 }

@media(max-width:1200px) {
  .site-bento { grid-template-columns:repeat(6,1fr) }
  .dw--s-visits{grid-column:1/4;grid-row:1}.dw--s-pageviews{grid-column:4/7;grid-row:1}
  .dw--s-bounce{grid-column:1/4;grid-row:2}.dw--s-users{grid-column:4/7;grid-row:2}
  .dw--s-top{grid-column:1/7;grid-row:2}
  .dw--s-sources{grid-column:1/4;grid-row:4}.dw--s-devices{grid-column:4/7;grid-row:4}
  .dw--s-geo{grid-column:1/4;grid-row:5}.dw--s-search{grid-column:4/7;grid-row:5}
}
@media(max-width:768px) {
  .site-bento { grid-template-columns:1fr }
  .dw--s-visits,.dw--s-pageviews,.dw--s-bounce,.dw--s-users,.dw--s-top,.dw--s-sources,.dw--s-devices,.dw--s-geo,.dw--s-search { grid-column:1; grid-row:auto }
}

.search-row { display:flex; align-items:flex-start; gap:8px; padding:6px 0; border-bottom:1px solid rgba(255,255,255,.04) }
.search-row:last-child { border-bottom:none }
.search-num { flex-shrink:0; width:20px; text-align:center; font:600 11px/1.4 'JetBrains Mono',monospace; color:var(--text-tertiary) }
.search-phrase { flex:1; font-size:12px; color:var(--text-secondary); line-height:1.4; word-break:break-word }
.search-count { flex-shrink:0; font:700 12px/1.4 'JetBrains Mono',monospace; color:var(--accent-light); min-width:24px; text-align:right }
/* Fix search text truncation */
.dw--s-search .topic-name { white-space:normal; overflow:visible; text-overflow:unset; word-break:break-word; max-width:none }
.dw--s-search .topic-emoji { flex-shrink:0; min-width:18px }
.dw--s-search .topic-row { align-items:flex-start }

/* ── SEARCH PHRASES v2 — aligned ── */
.dw--s-search .topic-row {
  display: grid !important;
  grid-template-columns: 24px 1fr 32px;
  gap: 8px;
  align-items: baseline;
  padding: 7px 0;
  border-bottom: 1px solid rgba(255,255,255,.04);
}
.dw--s-search .topic-row:last-child { border-bottom: none }
.dw--s-search .topic-emoji {
  font: 600 11px/1.5 'JetBrains Mono', monospace;
  color: rgba(255,255,255,.25);
  text-align: center;
}
.dw--s-search .topic-name {
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-secondary);
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-break: break-word;
}
.dw--s-search .topic-avg {
  font: 700 12px/1.5 'JetBrains Mono', monospace;
  color: var(--accent-light);
  text-align: right;
  align-self: start;
}
.dw--s-search .topic-bar { display: none }

/* ── SEARCH compact ── */
.dw--s-search .topic-row { padding: 3px 0 !important; gap: 6px !important }
.dw--s-search .dw-scroll { overflow-x: hidden !important; padding-bottom: 0 !important }
.dw--s-search .topic-bar { display: none !important }
.dw--s-search { overflow: hidden }

/* ── SEARCH visibility fix ── */
.dw--s-search { overflow: visible !important }
.dw--s-search .dw-scroll { overflow-y: auto !important; overflow-x: hidden !important; max-height: 300px }

/* ── SEARCH counts visible ── */
.dw--s-search .topic-avg { padding-right: 12px !important; min-width: 30px !important; position: relative; z-index: 1 }
.dw--s-search .topic-row { padding-right: 8px !important }
.dw--s-search .dw-scroll { padding-right: 4px !important }


@media(max-width:1200px){.dw--s-top{grid-column:1/7!important;grid-row:3!important}.dw--s-news{grid-column:1/7!important;grid-row:4!important}}
@media(max-width:768px){.dw--s-news{grid-column:1!important;grid-row:auto!important}}

/* ── TOP PAGES + NEWS side by side ── */
.site-bento .dw--s-top  { grid-column: 1/7 !important;  grid-row: 2 !important; min-height: 200px }
.site-bento .dw--s-news { grid-column: 7/13 !important; grid-row: 2 !important; min-height: 200px }
@media(max-width:1200px) {
  
  
}
@media(max-width:768px) {
  
}
/* News links */
.news-link { color: var(--text-secondary); text-decoration: none; transition: color .2s }
.news-link:hover { color: #34d399; text-decoration: underline }

/* ── GLOBAL PERIOD BAR ── */
.site-period-bar {
  display: flex;
  justify-content: center;
  padding: 12px 16px 4px;
}
.period-tabs-group {
  display: flex;
  gap: 2px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 12px;
  padding: 3px;
}
.period-tab {
  padding: 7px 20px;
  border: none;
  border-radius: 10px;
  background: transparent;
  color: var(--text-tertiary);
  font: 500 12px/1 'Inter', sans-serif;
  cursor: pointer;
  transition: all .25s ease;
  letter-spacing: .02em;
}
.period-tab:hover {
  color: var(--text-secondary);
  background: rgba(255,255,255,.04);
}
.period-tab.active {
  background: linear-gradient(135deg, rgba(99,102,241,.2), rgba(52,211,153,.15));
  color: #fff;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(99,102,241,.15);
}
@media(max-width:768px) {
  .period-tab { padding: 6px 14px; font-size: 11px }
}


/* ==================== CONTENT CARDS — RANK SCORE REDESIGN ==================== */

.content-card {
  background: var(--card-bg, rgba(30,30,40,0.85));
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 0;
  margin-bottom: 12px;
  transition: all 0.25s ease;
  overflow: hidden;
  backdrop-filter: blur(8px);
}
.content-card:hover {
  border-color: rgba(99,102,241,0.3);
  box-shadow: 0 4px 24px rgba(99,102,241,0.08);
  transform: translateY(-1px);
}
.content-card.card-hit {
  border-color: rgba(251,191,36,0.25);
  box-shadow: 0 0 0 1px rgba(251,191,36,0.1), 0 4px 16px rgba(251,191,36,0.05);
}
.content-card.card-ad {
  opacity: 0.55;
  border-color: rgba(239,68,68,0.15);
}

/* Header */
.cc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px 8px;
}
.cc-rank {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 44px;
  padding: 4px 8px;
  border-radius: 10px;
  font-weight: 700;
  line-height: 1;
}
.cc-rank-num { font-size: 18px; }
.cc-rank-label { font-size: 9px; text-transform: uppercase; letter-spacing: 0.5px; opacity: 0.7; }

.rank-fire { background: linear-gradient(135deg, rgba(239,68,68,0.2), rgba(251,146,60,0.2)); color: #f87171; border: 1px solid rgba(239,68,68,0.2); }
.rank-hot { background: linear-gradient(135deg, rgba(251,191,36,0.15), rgba(245,158,11,0.15)); color: #fbbf24; border: 1px solid rgba(251,191,36,0.15); }
.rank-warm { background: linear-gradient(135deg, rgba(52,211,153,0.12), rgba(16,185,129,0.12)); color: #34d399; border: 1px solid rgba(52,211,153,0.12); }
.rank-low { background: rgba(148,163,184,0.08); color: #94a3b8; border: 1px solid rgba(148,163,184,0.08); }

.cc-source-info { display: flex; align-items: center; gap: 6px; flex: 1; min-width: 0; }
.cc-src-icon { font-size: 14px; }
.cc-src-name { font-size: 13px; color: var(--accent-light, #818cf8); font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cc-time { font-size: 11px; color: var(--text-tertiary, #64748b); white-space: nowrap; }
.cc-category { font-size: 11px; padding: 2px 8px; background: rgba(99,102,241,0.08); border-radius: 6px; color: var(--text-secondary, #94a3b8); white-space: nowrap; }

/* Badges */
.cc-badges { display: flex; flex-wrap: wrap; gap: 4px; padding: 0 14px 6px; }
.cc-badge { font-size: 10px; padding: 2px 8px; border-radius: 20px; font-weight: 600; }
.badge-hit { background: rgba(251,191,36,0.15); color: #fbbf24; border: 1px solid rgba(251,191,36,0.2); animation: pulseGlow 2s infinite; }
.badge-kw { background: rgba(52,211,153,0.12); color: #34d399; }
.badge-ad { background: rgba(239,68,68,0.12); color: #f87171; }
.badge-small { background: rgba(99,102,241,0.1); color: #818cf8; }

@keyframes pulseGlow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(251,191,36,0); }
  50% { box-shadow: 0 0 8px 2px rgba(251,191,36,0.15); }
}

/* Text */
.cc-text-wrap { padding: 0 14px 8px; }
.cc-text {
  color: rgba(255,255,255,0.88);
  font-size: 14px;
  line-height: 1.65;
  white-space: pre-wrap;
  word-break: break-word;
}
.cc-more { color: var(--text-tertiary, #64748b); }
.cc-expand { background: none; border: none; color: var(--accent-light, #818cf8); font-size: 12px; cursor: pointer; padding: 2px 0; }
.cc-expand:hover { text-decoration: underline; }

/* Metrics row */
.cc-metrics { display: flex; flex-wrap: wrap; gap: 2px; padding: 6px 14px; border-top: 1px solid rgba(255,255,255,0.04); }
.cc-metric { display: flex; align-items: center; gap: 3px; font-size: 12px; color: var(--text-secondary, #94a3b8); padding: 3px 8px; border-radius: 6px; background: rgba(255,255,255,0.02); }
.cc-metric-accent { background: rgba(99,102,241,0.06); color: var(--accent-light, #818cf8); font-weight: 500; }
.cc-m-icon { font-size: 11px; }
.cc-m-val { font-variant-numeric: tabular-nums; }

/* Score pills */
.cc-scores-bar { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px 14px 6px; }
.cc-score-pill { font-size: 10px; padding: 2px 7px; border-radius: 4px; background: rgba(255,255,255,0.04); color: var(--text-tertiary, #64748b); font-variant-numeric: tabular-nums; }

/* Actions */
.content-card .cc-actions { display: flex; gap: 6px; padding: 8px 14px 12px; border-top: 1px solid rgba(255,255,255,0.04); }
.cc-act { font-size: 12px; padding: 6px 12px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.03); color: var(--text-secondary, #94a3b8); cursor: pointer; transition: all 0.15s; white-space: nowrap; }
.cc-act:hover { background: rgba(255,255,255,0.08); color: var(--text-primary, #e2e8f0); }
.cc-act.primary { background: rgba(99,102,241,0.12); color: var(--accent-light, #818cf8); border-color: rgba(99,102,241,0.2); }
.cc-act.primary:hover { background: rgba(99,102,241,0.2); }
.cc-copy { background: rgba(52,211,153,0.08); color: #34d399; border-color: rgba(52,211,153,0.15); }
.cc-copy:hover { background: rgba(52,211,153,0.15); }
.cc-act-danger:hover { background: rgba(239,68,68,0.12); color: #f87171; border-color: rgba(239,68,68,0.15); }

/* Responsive */
@media (max-width: 600px) {
  .cc-header { flex-wrap: wrap; gap: 6px; }
  .cc-metrics { gap: 1px; }
  .cc-metric { padding: 2px 5px; font-size: 11px; }
  .cc-actions { flex-wrap: wrap; }
  .cc-scores-bar { display: none; }
}


/* ==================== CM TOOLBAR ==================== */
.cm-toolbar { display: flex; flex-direction: column; gap: 8px; padding: 10px 0; }
.cm-tabs { display: flex; gap: 4px; flex-wrap: wrap; }
.cm-tab {
  padding: 6px 14px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.03); color: var(--text-secondary, #94a3b8);
  cursor: pointer; font-size: 13px; font-weight: 500; transition: all 0.15s;
}
.cm-tab:hover { background: rgba(255,255,255,0.06); color: var(--text-primary); }
.cm-tab.active { background: rgba(99,102,241,0.15); color: #818cf8; border-color: rgba(99,102,241,0.25); }

.cm-periods { display: flex; gap: 3px; flex-wrap: wrap; }
.cm-period {
  padding: 4px 10px; border-radius: 6px; border: 1px solid rgba(255,255,255,0.04);
  background: transparent; color: var(--text-tertiary, #64748b);
  cursor: pointer; font-size: 12px; transition: all 0.15s;
}
.cm-period:hover { background: rgba(255,255,255,0.05); color: var(--text-secondary); }
.cm-period.active { background: rgba(52,211,153,0.1); color: #34d399; border-color: rgba(52,211,153,0.2); font-weight: 600; }

.cm-filters { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.cm-select {
  padding: 5px 8px; border-radius: 6px; border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04); color: var(--text-secondary);
  font-size: 12px; cursor: pointer; min-width: 100px;
}
.cm-search { flex: 1; min-width: 160px; }
.cm-search-input {
  width: 100%; padding: 6px 10px; border-radius: 6px;
  border: 1px solid rgba(255,255,255,0.08); background: rgba(255,255,255,0.04);
  color: var(--text-primary); font-size: 12px; outline: none;
}
.cm-search-input:focus { border-color: rgba(99,102,241,0.3); }
.cm-scan-btn {
  padding: 6px 14px; border-radius: 8px; border: 1px solid rgba(99,102,241,0.2);
  background: rgba(99,102,241,0.12); color: #818cf8; cursor: pointer;
  font-size: 12px; font-weight: 600; white-space: nowrap; transition: all 0.15s;
}
.cm-scan-btn:hover { background: rgba(99,102,241,0.2); }

/* Discovery panel */
.cm-discovery {
  margin: 8px 0; padding: 14px; border-radius: 10px;
  background: rgba(99,102,241,0.05); border: 1px solid rgba(99,102,241,0.1);
}
.cm-discovery-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.cm-discovery-header h3 { margin: 0; font-size: 14px; color: var(--text-primary); }
.cm-close { background: none; border: none; color: var(--text-tertiary); cursor: pointer; font-size: 16px; }
.cm-discovery-body { display: flex; gap: 8px; flex-wrap: wrap; }
.cm-discovery-input {
  flex: 1; min-width: 200px; padding: 8px 12px; border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.1); background: rgba(255,255,255,0.05);
  color: var(--text-primary); font-size: 13px;
}

/* ==================== IMPROVED CARD CONTRAST ==================== */
.content-card {
  background: rgba(25,25,35,0.95) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}
.cc-text {
  color: rgba(255,255,255,0.88);
  font-size: 14px;
  line-height: 1.65;
  white-space: pre-wrap;
  word-break: break-word;
}
.cc-src-name { color: #a5b4fc !important; }
.cc-time { color: #8896ab !important; }

/* Icon buttons */
.cc-ico {
  width: 32px; height: 32px; display: flex; align-items: center; justify-content: center;
  border-radius: 8px; border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.03); cursor: pointer; font-size: 14px;
  transition: all 0.15s;
}
.cc-ico:hover { background: rgba(255,255,255,0.08); transform: scale(1.05); }
.cc-ico-danger:hover { background: rgba(239,68,68,0.12); }

/* Masonry grid */
.content-masonry {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 10px;
  padding: 8px 0;
}

/* Score pills more visible */
.cc-scores-bar { display: none !important; }

/* Streamline metrics */
.cc-metrics {
  background: rgba(255,255,255,0.02);
  border-radius: 8px;
  margin: 0 12px 4px;
  padding: 4px 8px !important;
  border-top: none !important;
}

@media (max-width: 768px) {
  .cm-filters { flex-direction: column; }
  .cm-search { min-width: 100%; }
  .content-masonry { grid-template-columns: 1fr; }
}


/* ==================== VI-BASED CARD DESIGN ==================== */
.cc-header { display: flex; align-items: center; gap: 8px; padding: 10px 12px 4px; }

/* VI Badge — main viral indicator */
.cc-vi {
  min-width: 42px; height: 28px; display: flex; align-items: center; justify-content: center;
  border-radius: 6px; font-weight: 700; font-size: 12px; letter-spacing: -0.5px;
  font-family: 'JetBrains Mono', monospace;
}
.vi-normal { background: rgba(100,116,139,0.12); color: #94a3b8; border: 1px solid rgba(100,116,139,0.15); }
.vi-warm { background: rgba(52,211,153,0.12); color: #34d399; border: 1px solid rgba(52,211,153,0.2); }
.vi-hot { background: rgba(251,146,60,0.15); color: #fb923c; border: 1px solid rgba(251,146,60,0.25); }
.vi-fire {
  background: linear-gradient(135deg, rgba(239,68,68,0.2), rgba(251,146,60,0.2));
  color: #f87171; border: 1px solid rgba(239,68,68,0.3);
  animation: vi-pulse 2s ease-in-out infinite;
}
@keyframes vi-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0); }
  50% { box-shadow: 0 0 8px 2px rgba(239,68,68,0.15); }
}

.cc-source { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.cc-badges { display: flex; gap: 4px; flex-shrink: 0; }

/* Stats row — absolute numbers */
.cc-stats-row {
  display: flex; gap: 12px; padding: 4px 12px; font-size: 12px; color: #94a3b8;
  border-top: 1px solid rgba(255,255,255,0.04);
}
.cc-stats-row span { display: flex; align-items: center; gap: 3px; }

/* Analytics row — relative metrics */
.cc-analytics-row {
  display: flex; gap: 6px; padding: 4px 12px 6px; flex-wrap: wrap;
}
.cc-an {
  padding: 2px 6px; border-radius: 4px; font-size: 11px; font-weight: 600;
  font-family: 'JetBrains Mono', monospace;
  background: rgba(255,255,255,0.04); color: #64748b;
}
.cc-an.vi-warm { background: rgba(52,211,153,0.08); color: #34d399; }
.cc-an.vi-hot { background: rgba(251,146,60,0.1); color: #fb923c; }
.cc-an.vi-fire { background: rgba(239,68,68,0.1); color: #f87171; }
.cc-an-good { background: rgba(52,211,153,0.08) !important; color: #34d399 !important; }
.cc-an-ok { background: rgba(99,102,241,0.08) !important; color: #818cf8 !important; }

/* Hide old metrics/scores bars */
.cc-metrics { display: none !important; }
.cc-scores-bar { display: none !important; }
.cc-score { display: none !important; }


/* ==================== VI-BASED CARD DESIGN ==================== */
.cc-header { display: flex; align-items: center; gap: 8px; padding: 10px 12px 4px; }

/* VI Badge — main viral indicator */
.cc-vi {
  min-width: 42px; height: 28px; display: flex; align-items: center; justify-content: center;
  border-radius: 6px; font-weight: 700; font-size: 12px; letter-spacing: -0.5px;
  font-family: 'JetBrains Mono', monospace;
}
.vi-normal { background: rgba(100,116,139,0.12); color: #94a3b8; border: 1px solid rgba(100,116,139,0.15); }
.vi-warm { background: rgba(52,211,153,0.12); color: #34d399; border: 1px solid rgba(52,211,153,0.2); }
.vi-hot { background: rgba(251,146,60,0.15); color: #fb923c; border: 1px solid rgba(251,146,60,0.25); }
.vi-fire {
  background: linear-gradient(135deg, rgba(239,68,68,0.2), rgba(251,146,60,0.2));
  color: #f87171; border: 1px solid rgba(239,68,68,0.3);
  animation: vi-pulse 2s ease-in-out infinite;
}
@keyframes vi-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0); }
  50% { box-shadow: 0 0 8px 2px rgba(239,68,68,0.15); }
}

.cc-source { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.cc-badges { display: flex; gap: 4px; flex-shrink: 0; }

/* Stats row — absolute numbers */
.cc-stats-row {
  display: flex; gap: 12px; padding: 4px 12px; font-size: 12px; color: #94a3b8;
  border-top: 1px solid rgba(255,255,255,0.04);
}
.cc-stats-row span { display: flex; align-items: center; gap: 3px; }

/* Analytics row — relative metrics */
.cc-analytics-row {
  display: flex; gap: 6px; padding: 4px 12px 6px; flex-wrap: wrap;
}
.cc-an {
  padding: 2px 6px; border-radius: 4px; font-size: 11px; font-weight: 600;
  font-family: 'JetBrains Mono', monospace;
  background: rgba(255,255,255,0.04); color: #64748b;
}
.cc-an.vi-warm { background: rgba(52,211,153,0.08); color: #34d399; }
.cc-an.vi-hot { background: rgba(251,146,60,0.1); color: #fb923c; }
.cc-an.vi-fire { background: rgba(239,68,68,0.1); color: #f87171; }
.cc-an-good { background: rgba(52,211,153,0.08) !important; color: #34d399 !important; }
.cc-an-ok { background: rgba(99,102,241,0.08) !important; color: #818cf8 !important; }

/* Hide old metrics/scores bars */
.cc-metrics { display: none !important; }
.cc-scores-bar { display: none !important; }
.cc-score { display: none !important; }


/* ==================== FINAL CLEAN CARD DESIGN ==================== */

/* Channel header */
.cc-header { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px 6px; }
.cc-channel { display: flex; align-items: center; gap: 8px; }
.cc-src-name { color: #818cf8; font-weight: 600; font-size: 13px; }
.cc-time { color: #64748b; font-size: 12px; }

/* Rank badge */
.cc-rank-badge {
  background: linear-gradient(135deg, rgba(99,102,241,0.15), rgba(139,92,246,0.15));
  color: #a78bfa; font-weight: 700; font-size: 12px;
  padding: 3px 8px; border-radius: 6px;
  font-family: 'JetBrains Mono', monospace;
  border: 1px solid rgba(139,92,246,0.2);
}

/* Metrics bar */
.cc-metrics-bar {
  display: flex; gap: 4px; padding: 6px 14px; flex-wrap: wrap;
  border-top: 1px solid rgba(255,255,255,0.04);
}
.cc-metric {
  display: flex; align-items: center; gap: 3px;
  padding: 3px 8px; border-radius: 6px;
  background: rgba(255,255,255,0.03);
  font-size: 12px; color: #94a3b8;
}
.cc-metric-icon { font-size: 11px; }
.cc-metric-val { font-weight: 600; font-family: 'JetBrains Mono', monospace; font-size: 11px; }
.cc-metric-er { background: rgba(52,211,153,0.06); color: #34d399; }
.cc-metric-er .cc-metric-val { color: #34d399; }

/* Actions */
.cc-actions { display: flex; gap: 4px; padding: 6px 14px 10px; }
.cc-act { 
  background: linear-gradient(135deg, #6366f1, #8b5cf6); color: white;
  border: none; padding: 6px 14px; border-radius: 8px; cursor: pointer;
  font-size: 12px; font-weight: 600; transition: all 0.2s;
}
.cc-act:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(99,102,241,0.3); }
.cc-ico { 
  background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.06);
  color: #94a3b8; padding: 6px 8px; border-radius: 8px; cursor: pointer;
  font-size: 13px; transition: all 0.2s;
}
.cc-ico:hover { background: rgba(255,255,255,0.08); color: #e2e8f0; }
.cc-hide { margin-left: auto; }
.cc-hide:hover { color: #f87171; border-color: rgba(239,68,68,0.2); }

/* Hide old stuff */
.cc-vi, .cc-analytics-row, .cc-stats-row, .cc-an, .cc-badges { display: none !important; }


/* ==================== VIRALITY + TRUNCATION SYSTEM v2 ==================== */

/* Viral badge */
.cc-viral-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 10px; border-radius: 8px;
  font-weight: 700; font-size: 12px;
  font-family: 'JetBrains Mono', monospace;
  transition: all 0.2s;
  white-space: nowrap;
}
.vb-fire {
  background: linear-gradient(135deg, rgba(239,68,68,0.15), rgba(249,115,22,0.15));
  color: #f87171;
  border: 1px solid rgba(239,68,68,0.25);
  animation: pulse-fire 2s ease-in-out infinite;
}
.vb-hot {
  background: linear-gradient(135deg, rgba(249,115,22,0.12), rgba(245,158,11,0.12));
  color: #fb923c;
  border: 1px solid rgba(249,115,22,0.2);
}
.vb-warm {
  background: rgba(52,211,153,0.08);
  color: #34d399;
  border: 1px solid rgba(52,211,153,0.15);
}
.vb-normal {
  background: rgba(255,255,255,0.04);
  color: #64748b;
  border: 1px solid rgba(255,255,255,0.06);
}

@keyframes pulse-fire {
  0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0); }
  50% { box-shadow: 0 0 8px 2px rgba(239,68,68,0.15); }
}

/* Small channel hit gem */
.cc-small-hit {
  font-size: 14px;
  animation: sparkle 1.5s ease-in-out infinite;
  cursor: help;
}
@keyframes sparkle {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.7; transform: scale(1.15); }
}

/* TEXT TRUNCATION — override all previous .cc-text rules */
.cc-body .cc-text {
  color: rgba(255,255,255,0.88) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  white-space: pre-wrap !important;
  word-break: break-word !important;
  max-height: 96px !important;
  overflow: hidden !important;
  position: relative !important;
}
.cc-body .cc-text.expanded {
  max-height: none !important;
  overflow: visible !important;
}

/* Expand/Collapse button */
.cc-expand {
  background: none !important; border: none !important;
  color: #818cf8 !important; font-size: 12px !important;
  cursor: pointer !important; padding: 4px 14px 2px !important;
  font-weight: 500 !important;
  transition: color 0.15s !important;
  display: block !important;
}
.cc-expand:hover { color: #a78bfa !important; text-decoration: underline !important; }

/* Hide old rank badge */
.cc-rank-badge { display: none !important; }

/* Relevance indicator */
.cc-relevance { font-size: 10px; color: #64748b; margin-left: auto; }


/* ==================== BLACKLIST UI ==================== */

/* Blacklist tags */
.bl-tag {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px; border-radius: 6px;
  background: rgba(239,68,68,0.08);
  border: 1px solid rgba(239,68,68,0.15);
  font-size: 12px; color: #f87171;
  transition: all 0.2s;
}
.bl-tag:hover {
  background: rgba(239,68,68,0.15);
  border-color: rgba(239,68,68,0.3);
}
.bl-name { font-weight: 500; }
.bl-remove {
  background: none; border: none; color: #f87171;
  cursor: pointer; font-size: 10px; padding: 0 2px;
  opacity: 0.5; transition: opacity 0.15s;
}
.bl-remove:hover { opacity: 1; }

/* Ban button on cards */
.cc-ban {
  color: #64748b !important;
  transition: all 0.2s !important;
}
.cc-ban:hover {
  color: #f87171 !important;
  background: rgba(239,68,68,0.1) !important;
  border-color: rgba(239,68,68,0.2) !important;
}


/* Title accent for single view */
.cm-title-accent {
  font-weight: 700;
  font-size: 14px;
  background: linear-gradient(135deg, #f97316, #ef4444);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}


/* ══ Custom Emoji in Editor ══ */
tg-emoji {
  display: inline !important;
  align-items: center;
  vertical-align: middle;
  cursor: default;
  user-select: all;
  position: relative;
}
tg-emoji[contenteditable="false"] {
  outline: none;
}
tg-emoji:hover {
  filter: brightness(1.15);
}
.ce-img {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  pointer-events: none;
  object-fit: contain;
  display: inline-block;
}
.editor-area tg-emoji {
  margin: 0 1px;
  padding: 1px;
  border-radius: 3px;
  transition: background .15s;
}
.editor-area tg-emoji:hover {
  background: rgba(139, 92, 246, 0.12);
}
/* Preview should show emoji at slightly larger size */
.preview-mini-content .ce-img,
.tg-mock .ce-img {
  width: 18px;
  height: 18px;
}

/* ── Styled Scrollbar (Preview + Editor) ── */
.preview-mini-content::-webkit-scrollbar,
.editor-area::-webkit-scrollbar,
.editor-side::-webkit-scrollbar {
  width: 6px;
}
.preview-mini-content::-webkit-scrollbar-track,
.editor-area::-webkit-scrollbar-track,
.editor-side::-webkit-scrollbar-track {
  background: transparent;
}
.preview-mini-content::-webkit-scrollbar-thumb,
.editor-area::-webkit-scrollbar-thumb,
.editor-side::-webkit-scrollbar-thumb {
  background: rgba(129,140,248,.25);
  border-radius: 3px;
  transition: background .2s;
}
.preview-mini-content::-webkit-scrollbar-thumb:hover,
.editor-area::-webkit-scrollbar-thumb:hover,
.editor-side::-webkit-scrollbar-thumb:hover {
  background: rgba(129,140,248,.5);
}
/* Firefox */
.preview-mini-content,
.editor-area,
.editor-side {
  scrollbar-width: thin;
  scrollbar-color: rgba(129,140,248,.25) transparent;
}

/* ── Link Insert Modal ── */
.link-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  backdrop-filter: blur(4px);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  animation: linkFadeIn .2s ease forwards;
}
@keyframes linkFadeIn { to { opacity:1 } }
.link-modal {
  background: var(--bg-card, #1a1b2e);
  border: 1px solid rgba(129,140,248,.2);
  border-radius: 16px;
  padding: 24px;
  width: 420px;
  max-width: 90vw;
  box-shadow: 0 16px 48px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.04);
  animation: linkSlideUp .25s ease forwards;
  transform: translateY(12px);
}
@keyframes linkSlideUp { to { transform:translateY(0) } }
.link-modal h3 {
  margin: 0 0 16px;
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary, #e8eaed);
  display: flex;
  align-items: center;
  gap: 8px;
}
.link-modal-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}
.link-modal-field label {
  font-size: 12px;
  font-weight: 500;
  color: rgba(255,255,255,.5);
  letter-spacing: .02em;
}
.link-modal-field input {
  padding: 10px 14px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  color: var(--text-primary, #e8eaed);
  font-size: 14px;
  font-family: inherit;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}
.link-modal-field input:focus {
  border-color: rgba(129,140,248,.5);
  box-shadow: 0 0 0 3px rgba(129,140,248,.12);
}
.link-modal-field input::placeholder {
  color: rgba(255,255,255,.2);
}
.link-modal-actions {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}
.link-modal-actions button {
  flex: 1;
  padding: 10px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: all .15s;
}
.link-modal-cancel {
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.08);
  color: var(--text-secondary, #a0a0b0);
}
.link-modal-cancel:hover {
  background: rgba(255,255,255,.08);
}
.link-modal-confirm {
  background: linear-gradient(135deg, #818cf8, #6366f1);
  border: none;
  color: #fff;
}
.link-modal-confirm:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(99,102,241,.35);
}
.link-modal-preview {
  margin-top: 12px;
  padding: 10px 14px;
  background: rgba(129,140,248,.06);
  border-radius: 8px;
  font-size: 12px;
  color: rgba(255,255,255,.4);
  word-break: break-all;
  display: none;
}
.link-modal-preview.visible {
  display: block;
}
.link-modal-preview a {
  color: #818cf8;
  text-decoration: underline;
}

/* === Link Styles (global) === */
.editor-area a, #schedPreviewBody a, .content-card a:not(.cc-stats a) {
  color: #c4b5fd !important;
  text-decoration: none !important;
  background: rgba(167,139,250,0.08) !important;
  padding: 1px 4px !important;
  border-radius: 4px !important;
  border-bottom: 1px dashed rgba(167,139,250,0.5) !important;
  transition: all 0.2s !important;
}
.editor-area a:hover, #schedPreviewBody a:hover {
  color: #e0d4ff !important;
  background: rgba(167,139,250,0.15) !important;
}
.editor-area a::before, #schedPreviewBody a::before {
  content: '🔗';
  font-size: 9px;
  margin-right: 3px;
  opacity: 0.6;
}

/* ═══ NPA Monitor — Prototype CSS ═══ */
.npa-tbl{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}
.npa-tbl-h{padding:12px 16px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between}
.npa-tbl-h span{color:var(--text-tertiary);font-size:11px;font-weight:400}
.npa-rg{border-bottom:1px solid var(--border-subtle)}.npa-rg:last-child{border:none}
.npa-rg-hd{padding:9px 16px;background:rgba(124,92,252,.04);cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;user-select:none;transition:background .15s}
.npa-rg-hd:hover{background:rgba(124,92,252,.08)}
.npa-rg-hd .arr{font-size:9px;color:var(--text-tertiary);transition:transform .2s}
.npa-rg-hd.open .arr{transform:rotate(90deg)}
.npa-rg-hd .cnt{margin-left:auto;font-size:10px;color:var(--text-tertiary);font-weight:400;background:rgba(255,255,255,.04);padding:2px 8px;border-radius:10px}
.npa-row{padding:7px 16px 7px 32px;display:flex;align-items:center;gap:8px;font-size:11px;border-top:1px solid rgba(255,255,255,.02);transition:background .15s;cursor:pointer}
.npa-row:hover{background:rgba(255,255,255,.04)}
.npa-row.flagged{background:rgba(251,191,36,.04);border-left:3px solid #fbbf24}
.npa-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.npa-dot.ok{background:#34d399}
.npa-dot.ch{background:#fbbf24;box-shadow:0 0 6px #fbbf24}
.npa-dot.un{background:var(--text-tertiary)}
.npa-dot.er{background:#f87171}
.npa-m-name{flex:1;color:var(--text-secondary);line-height:1.3}
.npa-m-amt{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text-primary);font-weight:600;white-space:nowrap}
.npa-m-link{color:var(--accent);text-decoration:none;font-size:10px;opacity:0;transition:opacity .2s}
.npa-row:hover .npa-m-link{opacity:1}
.npa-expand{padding:12px 16px 12px 32px;background:rgba(251,191,36,.06);border-top:1px solid rgba(251,191,36,.1);display:none;font-size:11px;line-height:1.6}
.npa-expand.show{display:block}
.npa-expand .warn{color:#fbbf24;font-weight:600;margin-bottom:6px}
.npa-expand .info{color:var(--text-secondary);margin-bottom:8px}
.npa-expand .edit-row{display:flex;gap:8px;align-items:center;margin-top:8px}
.npa-expand input{flex:1;padding:6px 10px;font-size:12px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px}
.npa-ch-wrap{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}
.npa-ch-title{padding:12px 16px;font-size:13px;font-weight:600;border-bottom:1px solid var(--border-subtle)}
.npa-ch-card{padding:12px 16px;border-bottom:1px solid var(--border-subtle);transition:background .15s}
.npa-ch-card:hover{background:rgba(255,255,255,.03)}
.npa-ch-doc{font-size:12px;font-weight:600;margin-bottom:3px}
.npa-ch-diff{font-size:11px;color:var(--text-secondary);margin-bottom:5px;display:flex;align-items:center;gap:5px}
.npa-ch-diff .old{text-decoration:line-through;color:#f87171;opacity:.7}
.npa-ch-diff .new{color:#34d399;font-weight:500}
.npa-ch-meta{display:flex;justify-content:space-between;align-items:center}
.npa-ch-time{font-size:10px;color:var(--text-tertiary)}
.npa-ch-reg{font-size:10px;background:rgba(124,92,252,.12);color:var(--accent);padding:2px 8px;border-radius:8px}
.disc-card{padding:14px 18px;border-bottom:1px solid var(--border-subtle);display:flex;gap:12px;align-items:flex-start}
.disc-card:hover{background:rgba(255,255,255,.02)}
.disc-icon{width:36px;height:36px;border-radius:10px;background:rgba(124,92,252,.12);display:grid;place-items:center;font-size:16px;flex-shrink:0}
.disc-body{flex:1}
.disc-body h4{font-size:13px;margin:0 0 3px;color:var(--text-primary)}
.disc-body p{font-size:11px;color:var(--text-secondary);margin:0 0 8px;line-height:1.4}
.disc-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.disc-actions .btn{font-size:11px}



/* ══════════════════════════════════════════════════
   SCHEDULE VIEWS — Premium Design v2
   ══════════════════════════════════════════════════ */

/* ── Week Navigation ── */
.sched-week-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px;padding:10px 0}
.sched-week-btn{background:var(--bg-glass);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:6px 14px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s;backdrop-filter:blur(8px)}
.sched-week-btn:hover{background:var(--bg-glass-strong);border-color:var(--border-medium);color:var(--text-primary)}
.sched-week-label{font-size:15px;font-weight:700;color:var(--text-primary);min-width:180px;text-align:center}
.sched-week-label.current{color:var(--accent-light)}
.sched-week-today{background:linear-gradient(135deg,rgba(99,102,241,.15),rgba(99,102,241,.05));border:1px solid rgba(99,102,241,.3);color:rgba(99,102,241,.9);padding:5px 12px;border-radius:8px;cursor:pointer;font-size:11px;font-weight:700;transition:all .2s}
.sched-week-today:hover{background:rgba(99,102,241,.25);color:#fff}
.sched-week-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.sched-empty{text-align:center;padding:16px;color:var(--text-tertiary);font-size:12px;opacity:.4}
.sched-day-count{font-size:11px;background:var(--accent-dim);color:var(--accent-light);padding:1px 8px;border-radius:10px;font-weight:700}

/* ── Month Mode — Premium Calendar ── */
.schedule-mode-month{display:block!important}
.sched-month-header-bar{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:24px}
.sched-month-title{font-size:20px;font-weight:800;text-align:center;text-transform:capitalize;color:var(--text-primary);min-width:200px;letter-spacing:.02em}
.sched-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.sched-month-dow{text-align:center;font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;padding:10px 0;letter-spacing:.08em;border-bottom:1px solid var(--border-subtle)}
.sched-month-cell{position:relative;min-height:80px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;padding:8px 10px;transition:all .2s;cursor:default}
.sched-month-cell:hover:not(.empty){border-color:var(--border-medium);background:var(--bg-glass-strong);transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,0,0,.15)}
.sched-month-cell.empty{background:rgba(255,255,255,.01);border-color:transparent}
.sched-month-cell.today{border-color:rgba(99,102,241,.5);box-shadow:0 0 20px rgba(99,102,241,.12);background:linear-gradient(135deg,rgba(99,102,241,.06),transparent)}
.sched-month-cell.today .sched-month-num{background:rgba(99,102,241,.8);color:#fff;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.sched-month-num{font-size:13px;font-weight:600;color:var(--text-secondary);transition:color .2s}
.sched-month-count{position:absolute;top:6px;right:8px;font-size:9px;background:linear-gradient(135deg,var(--accent-light),var(--accent-deep,var(--accent-light)));color:#000;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-weight:800;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.sched-month-dots{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}
.sched-dot{width:8px;height:8px;border-radius:50%;display:inline-block;box-shadow:0 0 6px rgba(0,0,0,.3);transition:transform .15s}
.sched-dot:hover{transform:scale(1.4)}
.sched-dot-more{font-size:9px;color:var(--text-tertiary);font-weight:700}
.sched-month-dd-item{padding:8px 10px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:8px}
.sched-month-dd-item:hover{background:var(--bg-glass-strong)}

/* ── List Mode — Premium Cards ── */
.schedule-mode-list{display:block!important}

.sched-list-stats{display:flex;gap:12px;margin-bottom:20px}
.sl-stat{flex:1;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:14px 18px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .2s}
.sl-stat:hover{border-color:var(--border-medium);transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.12)}
.sl-stat-num{font-size:26px;font-weight:800;font-family:'JetBrains Mono',monospace;color:var(--text-primary)}
.sl-stat-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.sl-stat.published .sl-stat-num{color:#22c55e}
.sl-stat.pending .sl-stat-num{color:#eab308}

.sched-list-group{margin-bottom:16px}
.sched-list-date-header{display:flex;align-items:center;justify-content:space-between;padding:8px 4px;margin-bottom:6px;border-bottom:1px solid var(--border-subtle)}
.sl-date-label{font-size:14px;font-weight:700;color:var(--text-primary);text-transform:capitalize}
.sl-date-count{font-size:11px;color:var(--text-tertiary);font-weight:600}

.sched-list-cards{display:flex;flex-direction:column;gap:4px}
.sched-list-card{display:flex;gap:14px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:10px;cursor:pointer;transition:all .2s;align-items:flex-start}
.sched-list-card:hover{border-color:var(--border-medium);background:var(--bg-glass-strong);transform:translateX(4px);box-shadow:0 2px 12px rgba(0,0,0,.1)}
.slc-left{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:50px}
.slc-time{font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:700;color:var(--accent-light)}
.slc-status-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 8px currentColor}
.slc-body{flex:1;min-width:0}
.slc-text{font-size:13px;line-height:1.5;color:var(--text-primary);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.slc-meta{display:flex;align-items:center;gap:6px}

@media(max-width:768px){
  .sched-list-stats{flex-direction:row;gap:8px}
  .sl-stat{padding:10px}
  .sl-stat-num{font-size:20px}
  .sched-month-cell{min-height:56px;padding:4px 6px}
  .sched-month-num{font-size:11px}
  .sched-month-grid{gap:2px}
  .sched-week-nav{flex-wrap:wrap}
  .sched-list-card{padding:10px 12px}
}

/* ═══════════════════════════════════════════════════════════
   MOBILE ADAPTATION (2026-06-11)
   Единый блок, перекрывает ранние @media по порядку следования.
   Проверено в headless-Chromium (Playwright/Docker) на 390/768px —
   harness: _mobtest/render.mjs.
   ═══════════════════════════════════════════════════════════ */

/* Бургер и подложка — только на мобиле */
.cmd-burger{display:none}
.nav-backdrop{display:none}

/* Кнопка «Выйти» в рейле — красноватый акцент на ховере */
.rail-logout:hover{color:#f87171;background:rgba(248,113,113,.1)}

@media(max-width:768px){
  /* ── COMMAND BAR ── */
  .command-bar{padding:0 12px;gap:10px}
  .cmd-burger{
    display:grid;place-items:center;flex:0 0 auto;
    width:38px;height:38px;border-radius:var(--radius-sm);
    background:var(--bg-glass);border:1px solid var(--border-subtle);
    color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent
  }
  .cmd-burger svg{width:20px;height:20px}
  .cmd-burger:active{background:var(--bg-glass-strong)}
  .cmd-left{min-width:0;flex:0 1 auto}
  .cmd-subtitle{display:none}
  .cmd-search{display:none}

  /* ── ICON RAIL → выезжающий слева drawer ── */
  .icon-rail{
    display:flex;width:64px;overflow-y:auto;
    transform:translateX(-100%);
    transition:transform .25s ease;
    box-shadow:6px 0 32px rgba(0,0,0,.55)
  }
  body.nav-open .icon-rail{transform:translateX(0)}
  .nav-backdrop{
    display:block;position:fixed;inset:0;z-index:95;
    background:rgba(0,0,0,.5);opacity:0;pointer-events:none;
    transition:opacity .25s ease
  }
  body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}

  /* контент-хрому к левому краю (rail теперь оверлей) */
  .command-bar,.workspace,.timeline-dock,.status-bar{left:0}

  /* отдаём вертикальное место: прячем таймлайн-док */
  .timeline-dock{display:none}
  .workspace{bottom:var(--status-h);padding:14px 14px}
  .status-bar{padding:0 12px;gap:6px;overflow-x:auto;white-space:nowrap}

  /* ── DASHBOARD ── */
  .dash-bento{grid-template-columns:1fr;grid-template-rows:auto;height:auto;min-height:0}
  .bento-grid{grid-template-columns:1fr}

  /* ── EDITOR ── переносим тулбар и нижнюю панель ── */
  .editor-split{grid-template-columns:1fr;height:auto}
  .editor-side{display:none}
  .editor-main{height:auto;min-height:60vh}
  .editor-toolbar-btns{flex-wrap:wrap}
  .editor-bottombar{flex-wrap:wrap;gap:8px;align-items:flex-start}
  .editor-platforms-inline{flex-wrap:wrap;margin:0;gap:6px;width:100%}

  /* ── SETTINGS ── футер-карточки в одну колонку ── */
  .footers-grid{grid-template-columns:1fr !important}

  /* панель уведомлений — на всю ширину */
  #notifPanel{right:8px !important;left:8px !important;width:auto !important;top:54px !important}
}

@media(max-width:520px){
  .editor-main{min-height:52vh}
}

/* ═══ П14 (Этап 4, 14.07.2026): «📞 Заявки с сайта» в site-bento ═══
   grid-column:1/-1 = полная ширина при ЛЮБОМ числе колонок (12/6/1);
   grid-row не задаём — авторазмещение кладёт виджет в первый свободный ряд
   (ряды 1-3 заняты явными placement'ами, в мобильной вёрстке — порядок DOM). */
.dw--s-leads { grid-column:1/-1; min-height:118px; --dw-accent:linear-gradient(90deg,#f59e0b,#fbbf24); --dw-glow:rgba(251,191,36,.06) }
.leads-bars { display:flex; align-items:flex-end; gap:3px; height:46px }
.leads-bar { flex:1; background:linear-gradient(180deg,#fbbf24,#f59e0b); border-radius:2px 2px 0 0; min-height:2px }
