:root{--accent:#7C3AED;--accent-press:#6D28D9;--accent-soft:#F4F0FE;--accent-soft-2:#EDE7FD;--accent-fg:#FFFFFF;--accent-ring:rgba(124,58,237,.18);--bg:#FAFAFB;--surface:#FFFFFF;--surface-2:#F7F7F9;--border:#ECECEF;--border-strong:#E0E0E4;--ink:#18181B;--ink-2:#51515B;--ink-3:#8A8A94;--ink-4:#B4B4BC;--ok:#16A34A;--ok-soft:#E9F8EE;--warn:#D97706;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--sh-xs:0 1px 2px rgba(24,24,27,.05);--sh-sm:0 1px 3px rgba(24,24,27,.06),0 1px 2px rgba(24,24,27,.04);--sh-md:0 4px 14px rgba(24,24,27,.07),0 1px 3px rgba(24,24,27,.05);--sh-lg:0 18px 50px rgba(24,24,27,.14),0 4px 12px rgba(24,24,27,.07);--sh-pop:0 12px 34px rgba(24,24,27,.16),0 2px 8px rgba(24,24,27,.08);--font:"Pretendard Variable",Pretendard,"Inter",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--mono:"SF Mono",ui-monospace,"JetBrains Mono",Menlo,monospace}*{box-sizing:border-box}body,html{margin:0;height:100%}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.011em}#root{height:100%}button,input,select,textarea{font-family:inherit;letter-spacing:inherit}::selection{background:var(--accent-soft-2)}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scroll::-webkit-scrollbar{width:10px;height:10px}.scroll::-webkit-scrollbar-thumb{background:#D6D6DB;border-radius:6px;border:3px solid transparent;background-clip:content-box}.scroll::-webkit-scrollbar-thumb:hover{background:#BFBFC6;background-clip:content-box}.scroll::-webkit-scrollbar-track{background:transparent}.app{height:100%;display:flex;flex-direction:column;background:var(--bg)}.topbar{height:58px;flex:0 0 58px;gap:18px;padding:0 22px;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--border);position:relative;z-index:40}.brand,.topbar{display:flex;align-items:center}.brand{gap:9px;font-weight:700;font-size:16px;letter-spacing:-.02em;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.brand-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(150deg,var(--accent),#9F67F0);display:grid;place-items:center;box-shadow:0 2px 8px var(--accent-ring),inset 0 1px 0 rgba(255,255,255,.3);flex:0 0 28px}.spacer{flex:1 1}.row{display:flex;align-items:center}.muted{color:var(--ink-3)}.btn{--bg:var(--surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);height:38px;padding:0 15px;border-radius:10px;font-size:13.5px;font-weight:600;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:7px;justify-content:center;cursor:pointer;white-space:nowrap;transition:background .14s,border-color .14s,transform .08s,box-shadow .14s}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(.5px)}.btn.sm{height:32px;padding:0 11px;font-size:12.5px;border-radius:8px}.btn.lg{height:44px;padding:0 20px;font-size:15px;border-radius:12px}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--surface-2)}.btn.primary{background:var(--accent);color:var(--accent-fg);border-color:transparent;box-shadow:0 1px 2px var(--accent-ring),inset 0 1px 0 rgba(255,255,255,.16)}.btn.primary:active,.btn.primary:hover{background:var(--accent-press)}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.chip{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);color:var(--ink-2)}.chip.live{background:var(--ok-soft);color:var(--ok)}.chip.draft{background:#F1F1F3;color:var(--ink-3)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}.dot.pulse{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.seg{padding:3px;gap:2px;background:var(--surface-2);border-radius:9px;border:1px solid var(--border)}.seg,.seg button{display:inline-flex}.seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;height:28px;padding:0 12px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--ink-3);cursor:pointer;align-items:center;gap:6px;transition:color .12s}.seg button.on{color:var(--ink);box-shadow:var(--sh-xs)}.card,.seg button.on{background:var(--surface)}.card{border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}.fade-in,.rise{opacity:1}@media (prefers-reduced-motion:no-preference){.fade-in{animation:fadeIn .4s cubic-bezier(.2,.7,.3,1) both}.rise{animation:rise .5s cubic-bezier(.2,.7,.3,1) both}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes ovIn{0%{opacity:0}to{opacity:1}}@keyframes cardIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}