:root{--bg-main:#080b14;--bg-card:#0f172abf;--bg-card-hover:#1e293bd9;--bg-panel:#0d1322;--border-subtle:#ffffff14;--border-active:#6366f159;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-primary:#6366f1;--accent-primary-hover:#4f46e5;--accent-glow:#6366f140;--status-published:#10b981;--status-published-bg:#10b9811f;--status-pending:#f59e0b;--status-pending-bg:#f59e0b1f;--status-creating:#38bdf8;--status-creating-bg:#38bdf81f;--status-missed:#fb7185;--status-missed-bg:#fb71851f;--status-failed:#ef4444;--status-failed-bg:#ef444426;--status-skipped:#94a3b8;--status-skipped-bg:#94a3b81a;--status-norender:#64748b;--status-norender-bg:#64748b1a;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 15% 15%,#6366f114 0,#0000 50%),radial-gradient(at 85% 85%,#8b5cf60f 0,#0000 50%);background-attachment:fixed;min-height:100vh;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}::-webkit-scrollbar-thumb:hover{background:#ffffff40}@keyframes pulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-spin{animation:1s linear infinite spin}.animate-fade{animation:.2s cubic-bezier(.16,1,.3,1) forwards fadeIn}.app-layout{flex-direction:column;min-height:100vh;padding-bottom:80px;display:flex}@media (width>=768px){.app-layout{padding-bottom:40px}}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:16px}@media (width>=768px){.main-content{padding:24px}}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:border-color .2s,box-shadow .2s}.glass-panel:hover{border-color:#ffffff1f}.btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent-primary);color:#fff;box-shadow:0 2px 10px var(--accent-glow)}.btn-primary:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-secondary{color:var(--text-primary);border-color:var(--border-subtle);background:#ffffff0d}.btn-secondary:hover:not(:disabled){background:#ffffff17;border-color:#ffffff26}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:#ffffff0f}.btn-sm{border-radius:var(--radius-sm);padding:5px 10px;font-size:.775rem}.btn-icon{border-radius:var(--radius-sm);width:36px;height:36px;padding:0}.badge{border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;gap:5px;padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-published{background:var(--status-published-bg);color:var(--status-published);border:1px solid #10b98140}.badge-pending{background:var(--status-pending-bg);color:var(--status-pending);border:1px solid #f59e0b40}.badge-creating{background:var(--status-creating-bg);color:var(--status-creating);border:1px solid #38bdf840}.badge-missed{background:var(--status-missed-bg);color:var(--status-missed);border:1px solid #fb718540}.badge-failed{background:var(--status-failed-bg);color:var(--status-failed);border:1px solid #ef444440}.badge-skipped{background:var(--status-skipped-bg);color:var(--status-skipped);border:1px solid #94a3b833}.badge-no-render{background:var(--status-norender-bg);color:var(--status-norender);border:1px solid #64748b33}.pulse-dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite pulseGlow}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:800px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #0009}.reel-aspect-box{aspect-ratio:9/16;border-radius:var(--radius-md);background:#000;border:1px solid #ffffff1a;justify-content:center;align-items:center;width:100%;max-width:320px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 30px #00000080}.reel-aspect-box video,.reel-aspect-box img{object-fit:cover;width:100%;height:100%}.heatmap-grid{grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:6px;display:grid}.heatmap-cell{aspect-ratio:1;font-size:.65rem;font-family:var(--font-mono);cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;font-weight:600;transition:transform .15s,box-shadow .15s;display:flex}.heatmap-cell:hover{z-index:2;transform:scale(1.15);box-shadow:0 0 10px #fff3}.heatmap-green{color:#34d399;background:#10b98140;border-color:#10b98166}.heatmap-amber{color:#fbbf24;background:#f59e0b40;border-color:#f59e0b66}.heatmap-red{color:#f87171;background:#ef444440;border-color:#ef444466}
