:root{--purple:#7c5ce0;--purple-dim:#7c5ce066;--purple-glow:#7c5ce026;--bg:#fff;--bg-surface:#f6f5f9;--bg-raised:#eeedf3;--border:#ddd8e8;--border-light:#c8c3d6;--text:#1a1a2e;--text-secondary:#4a4860;--text-muted:#7a7790;--text-ghost:#aaa8b8;--success:#16a34a;--warning:#b48228e6;--warning-bg:#b482280f;--warning-border:#b4822833;--error:#dc2626;--info:#2563eb;--font-mono:"JetBrains Mono", "Courier New", monospace;--font-size:15px;--font-size-sm:13px;--font-size-xs:12px;--line-height:1.7;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:4px;--radius-md:8px;--radius-pill:999px;--ease-out:cubic-bezier(.16, 1, .3, 1);--duration-fast:.12s;--duration-normal:.2s;--duration-slow:.4s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-mono);font-size:var(--font-size);line-height:var(--line-height);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#app{height:100%;position:relative}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--purple);color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-ghost)}.terminal{flex-direction:column;height:100%;display:flex;position:relative}.terminal-output{padding:var(--space-lg);padding-bottom:var(--space-xl);line-height:var(--line-height);flex:1;overflow-y:auto}.terminal-output .line,.terminal-output .thinking-block,.terminal-output .file-event,.terminal-output .selector-option{min-height:calc(var(--font-size) * var(--line-height));line-height:var(--line-height)}.terminal-input-area{border-top:1px solid var(--border);padding:var(--space-md) var(--space-lg);align-items:center;gap:var(--space-sm);background:var(--bg);display:flex;position:relative}.terminal-input-area .prompt-prefix{color:var(--purple);white-space:nowrap;-webkit-user-select:none;user-select:none;font-weight:500}.terminal-input-area input{color:var(--text);font-family:var(--font-mono);font-size:var(--font-size);caret-color:var(--purple);background:0 0;border:none;outline:none;flex:1}.terminal-input-area input::placeholder{color:var(--text-muted)}.input-hint{top:-20px;right:var(--space-lg);color:var(--text-ghost);pointer-events:none;font-size:11px;transition:opacity .3s;position:absolute}.input-hint kbd{border:1px solid var(--border);background:var(--bg-surface);font-family:var(--font-mono);color:var(--text-muted);border-radius:3px;padding:0 4px;font-size:10px;line-height:1.4;display:inline-block}.command-completion{bottom:100%;left:var(--space-lg);right:var(--space-lg);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-xs) 0;z-index:20;max-height:200px;display:none;position:absolute;overflow-y:auto;box-shadow:0 -4px 16px #00000014}.completion-item{padding:var(--space-xs) var(--space-md);gap:var(--space-md);cursor:pointer;font-size:var(--font-size-sm);transition:background var(--duration-fast) ease;align-items:baseline;display:flex}.completion-item:hover{background:var(--bg-raised)}.completion-active{background:#7c5ce014}.completion-active .completion-name{color:var(--purple)}.completion-name{color:var(--text);white-space:nowrap;min-width:80px;font-weight:600}.completion-desc{color:var(--text-muted);font-size:var(--font-size-xs)}.line{white-space:pre-wrap;word-break:break-word;margin-bottom:2px}.line-prompt{color:var(--purple);font-weight:500}.line-system{color:var(--text-secondary)}.line-success{color:var(--success)}.line-error{color:var(--error)}.line-muted{color:var(--text-muted)}.pill{border-radius:var(--radius-pill);font-size:var(--font-size-xs);letter-spacing:.3px;vertical-align:middle;animation:pill-in var(--duration-normal) var(--ease-out);align-items:center;padding:2px 10px;font-weight:500;display:inline-flex}@keyframes pill-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.pill-purple{background:var(--purple);color:#fff}.pill-ghost{background:var(--bg-raised);color:var(--text-secondary)}.pill-success{color:var(--success);background:#16a34a1a}.pill-error{color:var(--error);background:#dc262614}.pill-warning{background:var(--warning-bg);color:var(--warning)}.pill-info{color:var(--info);background:#2563eb14}.pill-haiku{color:var(--success);background:#16a34a1a}.pill-sonnet{color:var(--info);background:#2563eb14}.pill-opus{color:var(--purple);background:#7c5ce01a}.pill-create{color:var(--success);background:#16a34a1a}.pill-update{color:var(--info);background:#2563eb14}.pill-delete{color:var(--error);background:#dc262614}.thinking-block{margin:var(--space-sm) 0;padding:var(--space-sm) var(--space-md);border-left:2px solid var(--purple);background:#7c5ce00d;animation:2s ease-in-out infinite think-pulse}.thinking-block .label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xs)}.thinking-block .content{color:var(--text-secondary);font-size:var(--font-size-sm)}@keyframes think-pulse{0%,to{border-left-color:var(--purple)}50%{border-left-color:var(--purple-dim)}}.file-event{margin:var(--space-xs) 0;font-size:var(--font-size-sm);animation:slide-in var(--duration-normal) var(--ease-out)}.file-event .path{color:var(--text)}.file-event .label{color:var(--text-muted);margin-right:var(--space-sm)}@keyframes slide-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.floating-cards{top:var(--space-md);right:var(--space-md);gap:var(--space-sm);z-index:10;display:flex;position:absolute}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:140px}.card-title{margin-bottom:var(--space-xs);font-weight:600}.card-actions{gap:var(--space-xs);margin-top:var(--space-sm);display:flex}.status-dot{width:6px;height:6px;margin-right:var(--space-xs);vertical-align:middle;border-radius:50%;display:inline-block}.status-dot-success{background:var(--success)}.status-dot-pending{background:var(--warning)}.status-dot-error{background:var(--error)}.btn{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:.5px;cursor:pointer;transition:all var(--duration-fast) ease;-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{background:#7b5af5}.btn-ghost{border:1px solid var(--border);color:var(--text-secondary);background:0 0}.btn-ghost:hover{border-color:var(--border-light);color:var(--text)}.btn-lg{padding:var(--space-md) var(--space-xl);letter-spacing:1px;font-size:16px}.btn-sm{font-size:var(--font-size-xs);padding:2px 8px}.input-group{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-md);transition:border-color var(--duration-fast) ease}.input-group:focus-within{border-color:var(--purple-dim)}.input-group .input-label{font-size:var(--font-size-sm);color:var(--text-muted);margin-bottom:var(--space-xs);text-transform:uppercase;letter-spacing:.5px}.input-group input{width:100%;color:var(--text);font-family:var(--font-mono);padding:var(--space-xs) 0;border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;font-size:16px}.input-group input:focus{border-bottom-color:var(--purple-dim)}.input-group input::placeholder{color:var(--text-ghost)}.input-group-lg{padding:var(--space-lg)}.input-group-lg .input-label{font-size:var(--font-size);margin-bottom:var(--space-sm)}.input-group-lg input{padding:var(--space-sm) 0;font-size:18px}.warning-box{background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);font-size:var(--font-size-sm);color:var(--warning)}.warning-box-lg{padding:var(--space-md) var(--space-lg);font-size:var(--font-size);border-radius:var(--radius-md)}.divider{border:none;border-top:1px solid var(--border);margin:var(--space-lg) 0}.status-line{background:var(--bg-surface);border-bottom:1px solid var(--border);height:36px;padding:0 var(--space-md);font-size:var(--font-size-xs);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:0;display:flex;overflow:hidden}.status-seg{padding:0 var(--space-sm);white-space:nowrap;cursor:default;align-items:center;gap:var(--space-xs);letter-spacing:.3px;height:100%;display:inline-flex}.status-seg-clickable{cursor:pointer;transition:background var(--duration-fast) ease}.status-seg-clickable:hover{background:var(--bg-raised)}.status-seg-active{color:var(--purple);font-weight:600}.status-seg-muted{color:var(--text-ghost)}.status-seg-label{color:var(--text-muted)}.status-seg-value{color:var(--text-secondary)}.status-sep{color:var(--border-light);padding:0 2px;font-size:9px}.status-seg-pill{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-pill);padding:0 var(--space-sm);margin-left:var(--space-sm);letter-spacing:.5px;cursor:pointer;height:24px;transition:all var(--duration-fast) ease;font-size:11px;font-weight:600;line-height:24px}.status-seg-pill:hover{background:var(--border);color:var(--text)}.status-spacer{flex:1}.greenroom{background:#f4f1eb}.greenroom-bg{z-index:0;opacity:.9;background:repeating-linear-gradient(0deg,#0000,#0000 31px,#b4aa962e 31px 32px),linear-gradient(135deg,#f4f1eb 0%,#ece7dd 40%,#e8e2d6 100%);position:absolute;inset:0}.greenroom-bg:before{content:"";pointer-events:none;background:radial-gradient(at 20% 10%,#fff5c84d 0%,#0000 50%),radial-gradient(at 80% 90%,#c8b48c26 0%,#0000 50%);position:absolute;inset:0}.greenroom-title{color:var(--text);letter-spacing:4px;text-transform:uppercase;font-size:24px;font-weight:700}.greenroom-tape-strip{height:6px;margin-bottom:var(--space-lg);opacity:.7;background:repeating-linear-gradient(90deg,#b4a06459 0 20px,#c8b47833 20px 24px);border-radius:1px}.projects-grid{gap:var(--space-sm);padding-bottom:var(--space-2xl);flex-direction:column;display:flex}.setlist-card{align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffff8c;border:1px solid #c8beaa66;border-left:3px solid #0000;display:flex}.setlist-card:hover{border-left-color:var(--purple);background:#fffc;transform:translate(4px);box-shadow:0 2px 12px #0000000f}.setlist-card-active{border-left-color:var(--purple);background:#ffffffbf}.setlist-card-number{color:var(--text-ghost);font-variant-numeric:tabular-nums;min-width:36px;font-size:22px;font-weight:700;line-height:1}.setlist-card-body{flex:1;min-width:0}.setlist-card-name{color:var(--text);letter-spacing:.5px;margin-bottom:2px;font-size:16px;font-weight:600}.setlist-card-meta{align-items:center;gap:var(--space-sm);margin-bottom:2px;display:flex}.setlist-card-url{font-size:var(--font-size-xs);color:var(--purple)}.setlist-card-status{align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--text-muted);flex-shrink:0;display:flex}.setlist-card-new{background:0 0;border-style:dashed;border-color:#c8beaa80;border-left-width:3px}.setlist-card-new:hover{border-color:var(--purple-dim);border-left-color:var(--purple);background:#7c5ce008}.command-bar{z-index:10;flex-shrink:0;position:relative}.session-header{color:var(--text-muted);font-size:var(--font-size-sm);padding-bottom:var(--space-md);border-bottom:1px solid var(--border);margin-bottom:var(--space-md)}@keyframes cursor-glow{0%,to{opacity:1;text-shadow:0 0 4px var(--purple-glow)}50%{opacity:.4;text-shadow:none}}.cursor-blink{animation:1s step-end infinite cursor-glow}.terminal:after{content:"";pointer-events:none;z-index:100;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000003 2px 4px);position:absolute;inset:0}@keyframes typewriter-reveal{0%{opacity:0}to{opacity:1}}.typewriter-char{animation:30ms ease-out both typewriter-reveal}.progress-icon{color:var(--warning);display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}
