*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d0d0b;--surface:#141412;--input:#1c1c19;--border:#2a2a26;--text:#f0ede6;--text-muted:#9a9a90;--text-dim:#6b6b64;--gold:#c9a84c;--red:#c45c5c;--green:#5c9c7a;--font-display:"Cormorant Garamond", Georgia, serif;--font-ui:"Syne", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--radius:6px;--radius-lg:8px}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}#root{height:100%}.app-layout{height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:10;flex-direction:column;width:340px;min-width:340px;display:flex;position:relative}.sidebar-logo{padding:32px 28px 24px}.sidebar-eyebrow{font-family:var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;font-size:9px;font-weight:600}.sidebar-title{font-family:var(--font-display);color:var(--text);margin-bottom:4px;font-size:26px;font-weight:600;line-height:1.2}.sidebar-subtitle{font-family:var(--font-ui);color:var(--text-dim);font-size:11px}.sidebar-nav{padding:8px 0}.nav-btn{width:100%;font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:10px;padding:12px 28px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.nav-btn:hover{background:var(--input);color:var(--text)}.nav-btn.active{border-left-color:var(--gold);background:var(--input);color:var(--text)}.nav-btn-icon{text-align:center;opacity:.7;width:20px;font-size:14px}.nav-btn.active .nav-btn-icon{opacity:1}.sidebar-stats{border-top:1px solid var(--border);gap:24px;padding:18px 28px;display:flex}.stat-item{flex-direction:column;gap:3px;display:flex}.stat-label{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:9px;font-weight:600}.stat-value{font-family:var(--font-mono);color:var(--gold);font-size:13px;font-weight:500}.mobile-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;justify-content:space-between;align-items:center;padding:14px 20px;display:none;position:sticky;top:0}.mobile-title{font-family:var(--font-display);color:var(--text);font-size:20px;font-weight:600}.mobile-hamburger{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px;font-size:22px}.sidebar-overlay{z-index:9;background:#0009;display:none;position:fixed;inset:0}.sidebar-overlay.visible{display:block}.main-area{background:var(--bg);flex:1;padding:40px;overflow-y:auto}.log-entry{max-width:640px;margin:0 auto}.log-header{margin-bottom:32px}.log-title{font-family:var(--font-display);color:var(--text);margin-bottom:6px;font-size:22px;font-weight:600}.log-subtitle{font-family:var(--font-ui);color:var(--text-muted);font-size:13px}.form-group{margin-bottom:28px}.form-group-label{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px;font-size:10px;font-weight:600}.form-row{gap:12px;display:grid}.form-row.cols-2{grid-template-columns:1fr 1fr}.form-row.cols-4{grid-template-columns:1fr 1fr 1fr 1fr}.field{flex-direction:column;gap:5px;display:flex}.field label{font-family:var(--font-ui);color:var(--text-muted);font-size:11px;font-weight:500}.field-help{color:var(--text-dim);font-size:10px;font-style:italic}.field input,.field select,.field textarea{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);color:var(--text);outline:none;width:100%;padding:10px 12px;font-size:13px;transition:border-color .15s}.field input::placeholder,.field textarea::placeholder{color:var(--text-dim)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold)}.field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239A9A90' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.field select option{background:var(--input);color:var(--text)}.field textarea{resize:vertical;font-family:var(--font-ui)}.metric-cards{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.metric-card{background:var(--input);border-radius:var(--radius);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.metric-card-label{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.metric-card-value{font-family:var(--font-mono);color:var(--gold);font-size:20px;font-weight:600}.decision-cards{grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:8px;display:grid}.decision-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--input);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:18px 16px;transition:all .15s;display:flex}.decision-card:hover{border-color:var(--text-dim)}.decision-card.selected-kill{border:2px solid var(--red)}.decision-card.selected-keep{border:2px solid var(--gold)}.decision-card.selected-scale{border:2px solid var(--green)}.decision-icon{font-size:24px;line-height:1}.decision-label{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}.decision-card.selected-kill .decision-label{color:var(--red)}.decision-card.selected-keep .decision-label{color:var(--gold)}.decision-card.selected-scale .decision-label{color:var(--green)}.submit-area{align-items:flex-end;gap:12px;margin-top:8px;display:flex}.submit-area .field{flex:1}.btn-submit{background:var(--gold);color:#0d0d0b;border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border:none;height:42px;padding:11px 28px;font-size:12px;font-weight:600;transition:all .15s}.btn-submit:hover{filter:brightness(1.1)}.btn-submit:disabled{opacity:.35;cursor:not-allowed;filter:none}.btn-submit.loading{color:#0000;position:relative}.btn-submit.loading:after{content:"";border:2px solid #0d0d0b;border-top-color:#0000;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.6s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.dashboard{max-width:960px;margin:0 auto}.dashboard-header{margin-bottom:32px}.dashboard-title{font-family:var(--font-display);color:var(--text);margin-bottom:18px;font-size:22px;font-weight:600}.filter-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-bar select{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);color:var(--text);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239A9A90' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;outline:none;padding:8px 32px 8px 12px;font-size:12px}.filter-bar select:focus{border-color:var(--gold)}.filter-pills{gap:6px;display:flex}.filter-pill{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;padding:7px 14px;font-size:11px;font-weight:600;transition:all .15s}.filter-pill:hover{border-color:var(--text-dim);color:var(--text)}.filter-pill.active{border-color:var(--gold);color:var(--gold);background:#c9a84c14}.btn-refresh{background:var(--input);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;padding:7px 10px;font-size:14px;transition:all .15s;display:flex}.btn-refresh:hover{border-color:var(--gold);color:var(--gold)}.btn-refresh.spinning{animation:.6s linear spin}.summary-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:36px;display:grid}.summary-card{background:var(--input);border-radius:var(--radius-lg);padding:18px}.summary-card-value{font-family:var(--font-mono);color:var(--text);margin-bottom:4px;font-size:28px;font-weight:600}.summary-card-value.red{color:var(--red)}.summary-card-value.green{color:var(--green)}.summary-card-value.gold{color:var(--gold)}.summary-card-sub{font-family:var(--font-mono);color:var(--text-muted);margin-left:4px;font-size:12px}.summary-card-label{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.pattern-section{margin-bottom:36px}.pattern-title{font-family:var(--font-display);margin-bottom:4px;font-size:19px;font-weight:600}.pattern-title.gold{color:var(--gold)}.pattern-title.red{color:var(--red)}.pattern-subtitle{color:var(--text-muted);margin-bottom:14px;font-size:12px}.pattern-table{border-collapse:collapse;width:100%}.pattern-table th{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border);padding:10px 14px;font-size:10px;font-weight:600}.pattern-table td{font-family:var(--font-ui);color:var(--text);border-bottom:1px solid var(--border);padding:10px 14px;font-size:13px}.pattern-table td.mono{font-family:var(--font-mono);font-size:12px}.pattern-table tr.highlight{border-left:2px solid var(--gold)}.pattern-table tr:last-child td{border-bottom:none}.insights-section{margin-bottom:36px}.insights-title{font-family:var(--font-display);color:var(--gold);margin-bottom:14px;font-size:19px;font-weight:600}.insight-card{background:var(--input);border-left:2px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;color:var(--text);margin-bottom:10px;padding:14px 18px;font-size:13px;line-height:1.6}.insight-card strong{color:var(--gold);font-weight:600}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.empty-state-icon{opacity:.3;margin-bottom:16px;font-size:48px}.empty-state-text{color:var(--text-dim);max-width:360px;font-size:14px;line-height:1.7}.toast-container{z-index:100;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.04em;align-items:center;gap:8px;padding:12px 20px;font-size:13px;font-weight:600;animation:.25s ease-out toast-in;display:flex}.toast.success{background:var(--gold);color:#0d0d0b}.toast.error{background:var(--red);color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.loading-overlay{justify-content:center;align-items:center;padding:60px;display:flex}.loader{border:2px solid var(--border);border-top-color:var(--gold);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}.sidebar-footer{margin-top:auto}.sidebar-settings-btn{border:none;border-top:1px solid var(--border);width:100%;font-family:var(--font-ui);color:var(--text-dim);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:10px 28px;font-size:11px;font-weight:500;transition:all .15s;display:flex}.sidebar-settings-btn:hover{color:var(--gold);background:var(--input)}.settings-icon{font-size:14px}.settings-text{letter-spacing:.04em}.log-row .btn-diagnose-row{opacity:0;transition:all .15s}.log-row:hover .btn-diagnose-row{opacity:1}.btn-diagnose-row{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;padding:4px 10px;font-size:10px;font-weight:600;transition:all .15s}.btn-diagnose-row:hover{border-color:var(--gold);color:var(--gold)}.diagnosed-dot{color:var(--gold);vertical-align:middle;margin-right:6px;font-size:8px}.diagnose-layout{grid-template-columns:380px 1fr;gap:0;height:calc(100vh - 48px);margin:-40px;display:grid}.diagnose-input{border-right:1px solid var(--border);background:var(--surface);padding:32px 28px;overflow-y:auto}.diagnose-input-header{margin-bottom:28px}.diagnose-input-title{font-family:var(--font-display);color:var(--text);margin-bottom:6px;font-size:22px;font-weight:600}.diagnose-input-subtitle{font-family:var(--font-ui);color:var(--text-dim);font-size:12px;line-height:1.5}.perf-snapshot{background:var(--input);border-radius:var(--radius);border-left:3px solid var(--border);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.perf-row{justify-content:space-between;align-items:center;display:flex}.perf-label{font-family:var(--font-ui);color:var(--text-muted);font-size:11px;font-weight:500}.perf-value{font-family:var(--font-mono);color:var(--text);font-size:13px}.perf-reason{border-top:1px solid var(--border);flex-direction:column;gap:2px;margin-top:2px;padding-top:6px;display:flex}.perf-reason-text{font-family:var(--font-ui);color:var(--text-muted);font-size:12px;font-style:italic;line-height:1.4}.diagnose-actions{gap:10px;margin-bottom:10px;display:flex}.btn-diagnose{background:var(--gold);color:#0d0d0b;border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;flex:1;padding:13px 24px;font-size:12px;font-weight:700;transition:all .15s}.btn-diagnose:hover:not(:disabled){filter:brightness(1.1)}.btn-diagnose:disabled{opacity:.35;cursor:not-allowed;filter:none}.btn-diagnose.loading{color:#0000;pointer-events:none;position:relative}.btn-diagnose.loading:after{content:"";border:2px solid #0d0d0b;border-top-color:#0000;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.6s linear infinite spin;position:absolute;top:50%;left:50%}.btn-rediagnose{border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;padding:13px 18px;font-size:11px;font-weight:600;transition:all .15s}.btn-rediagnose:hover{border-color:var(--gold);color:var(--gold)}.btn-stop{background:var(--red);color:var(--text);border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border:none;padding:13px 18px;font-size:11px;font-weight:600;transition:all .15s}.btn-stop:hover{filter:brightness(1.15)}.rate-info{font-family:var(--font-mono);color:var(--text-dim);text-align:right;font-size:10px}.diagnose-output{background:var(--bg);padding:32px;position:relative;overflow-y:auto}.streaming-indicator{font-family:var(--font-mono);color:var(--gold);align-items:center;gap:8px;margin-bottom:16px;font-size:11px;display:flex}.streaming-dot{background:var(--gold);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.btn-copy-output{float:right;background:var(--input);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;z-index:5;padding:6px 14px;font-size:10px;font-weight:600;transition:all .15s;position:sticky;top:0}.btn-copy-output:hover{border-color:var(--gold);color:var(--gold)}.diagnosis-content{font-family:var(--font-mono);color:var(--text);font-size:13px;line-height:1.7}.diagnosis-content .md-h3{font-family:var(--font-display);color:var(--gold);border-bottom:1px solid var(--border);margin:28px 0 12px;padding-bottom:6px;font-size:20px;font-weight:600}.diagnosis-content .md-h4{font-family:var(--font-ui);color:var(--text);margin:20px 0 8px;font-size:14px;font-weight:700}.diagnosis-content .md-p{margin:8px 0}.diagnosis-content .md-li{margin:4px 0 4px 20px;list-style:none;position:relative}.diagnosis-content .md-li:before{content:"▸";color:var(--gold);font-size:11px;position:absolute;left:-16px}.diagnosis-content .md-hr{border:none;border-top:1px solid var(--border);margin:20px 0}.diagnosis-content strong{color:var(--gold);font-weight:600}.diagnosis-content em{color:var(--text-muted);font-style:italic}.diagnose-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.diagnose-empty-icon{opacity:.2;color:var(--text-dim);margin-bottom:16px;font-size:48px}.diagnose-empty p{color:var(--text-dim);max-width:300px;font-size:13px;line-height:1.6}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:420px;max-width:90vw;padding:28px}.modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modal-title{font-family:var(--font-display);color:var(--text);font-size:18px;font-weight:600}.modal-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:4px;font-size:18px;transition:color .15s}.modal-close:hover{color:var(--text)}.modal-desc{font-family:var(--font-ui);color:var(--text-muted);font-size:12px;line-height:1.6}.btn-modal-cancel{border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-ui);color:var(--text-muted);cursor:pointer;background:0 0;padding:9px 20px;font-size:12px;font-weight:600;transition:all .15s}.btn-modal-cancel:hover{border-color:var(--text-dim);color:var(--text)}.btn-modal-save{background:var(--gold);color:#0d0d0b;border-radius:var(--radius);font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:none;padding:9px 20px;font-size:12px;font-weight:700;transition:all .15s}.btn-modal-save:hover:not(:disabled){filter:brightness(1.1)}.btn-modal-save:disabled{opacity:.35;cursor:not-allowed}@media (width<=768px){.app-layout{flex-direction:column}.sidebar{width:100%;min-width:unset;z-index:20;display:none;position:fixed;inset:0;overflow-y:auto}.sidebar.mobile-open,.mobile-header{display:flex}.main-area{padding:24px 16px}.form-row.cols-2,.form-row.cols-4,.decision-cards{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.submit-area,.filter-bar{flex-direction:column;align-items:stretch}.filter-pills{flex-wrap:wrap}.diagnose-layout{grid-template-columns:1fr;height:auto;margin:-24px -16px}.diagnose-input{border-right:none;border-bottom:1px solid var(--border);padding:24px 16px}.diagnose-output{min-height:60vh;padding:24px 16px}}@media (width<=480px){.summary-grid{grid-template-columns:1fr}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}
