:root{--brand-navy:#0d2138;--brand-green:#76c442;--brand-green-hover:#62a835;--text:#374151;--text-h:#111827;--text-muted:#6b7280;--bg:#f4f6f8;--surface:#fff;--border:#e5e7eb;--accent:var(--brand-green);--accent-hover:var(--brand-green-hover);--error-bg:#fef2f2;--error-border:#fca5a5;--error-text:#b91c1c;--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:15px/1.5 var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--text:#d1d5db;--text-h:#f9fafb;--text-muted:#9ca3af;--bg:#0a1929;--surface:#0d2138;--border:#1e3a55;--error-bg:#2d1515;--error-border:#7f1d1d;--error-text:#fca5a5}}*,:before,:after{box-sizing:border-box}body{margin:0}h1,h2,h3{color:var(--text-h);margin:0 0 .5rem;font-weight:600}h2{font-size:1.125rem}h3{font-size:1rem}p{margin:0}button{cursor:pointer;font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:6px;padding:.5rem 1rem;transition:background .15s,opacity .15s}button:hover:not(:disabled){background:var(--border)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--brand-green);color:#fff;border-color:#0000;font-weight:600}button.primary:hover:not(:disabled){background:var(--brand-green-hover)}table{border-collapse:collapse;width:100%;font-size:.875rem}th{text-align:left;border-bottom:2px solid var(--border);color:var(--text-muted);white-space:nowrap;padding:.5rem .75rem;font-weight:500}td{border-bottom:1px solid var(--border);padding:.5rem .75rem}tr:last-child td{border-bottom:none}.panel-backdrop{z-index:100;background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.panel{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;width:420px;max-width:100%;animation:.2s slide-in;display:flex}@keyframes slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.panel-id{color:var(--text-muted);font-size:.8125rem;font-weight:500}.panel-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1rem;line-height:1}.panel-close:hover{color:var(--text-h);background:0 0}.panel-body{flex-direction:column;flex:1;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.panel-body label{color:var(--text-muted);flex-direction:column;gap:.375rem;font-size:.8125rem;font-weight:500;display:flex}.panel-body input,.panel-body textarea,.panel-body select{font:inherit;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.5rem .75rem;font-size:.9rem;transition:border-color .15s}.panel-body input:focus,.panel-body textarea:focus,.panel-body select:focus{border-color:var(--brand-green);outline:none}.panel-body textarea{resize:vertical}.panel-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.panel-error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text);border-radius:6px;padding:.625rem .75rem;font-size:.8125rem}.panel-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem;display:flex}.app{flex-direction:column;min-height:100svh;display:flex}header{background:var(--brand-navy);flex-shrink:0;align-items:center;gap:.625rem;height:56px;padding:0 1.5rem;display:flex}.app-logo{object-fit:cover;border-radius:6px;width:32px;height:32px}.wordmark{letter-spacing:-.5px;-webkit-user-select:none;user-select:none;font-size:1.375rem;font-weight:700;line-height:1}.wordmark .idea{color:#fff}.wordmark .roost{color:var(--brand-green)}.page{flex:1;width:100%;max-width:960px;margin:0 auto;padding:1.5rem}.toolbar{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.velocity-bar{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.vel-label{color:var(--text-muted)}.vel-value{color:var(--text-h);font-weight:600}.vel-divider{background:var(--border);width:1px;height:1rem;margin:0 .25rem}.plan-description{background:var(--surface);border:1px solid var(--brand-green);border-left:4px solid var(--brand-green);border-radius:6px;margin-bottom:1rem;padding:.875rem 1rem;font-size:.875rem}.plan-description strong{color:var(--brand-green);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;font-size:.75rem;display:block}.plan-description p{color:var(--text);white-space:pre-wrap;line-height:1.6}.backlog-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.backlog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:.875rem 1rem;display:flex}.backlog-title{color:var(--text-h);font-weight:600}.backlog-meta{color:var(--text-muted);font-size:.8125rem}.empty{text-align:center;color:var(--text-muted);margin:0;padding:2rem 1rem;font-size:.875rem}.item-title-link{cursor:pointer;color:var(--text-h)}.item-title-link:hover{color:var(--brand-green);text-decoration:underline}.col-check{width:2.5rem;padding-left:1rem!important}tbody tr{cursor:pointer;transition:background .1s}tbody tr:hover{background:var(--bg)}tbody tr.selected{background:color-mix(in srgb, var(--brand-green) 8%, transparent)}tbody tr.selected:hover{background:color-mix(in srgb, var(--brand-green) 14%, transparent)}.tab-nav{background:var(--brand-navy);border-bottom:1px solid color-mix(in srgb, var(--brand-green) 30%, transparent);flex-shrink:0;gap:0;padding:0 1.5rem;display:flex}.tab-nav button{color:#fff9;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s}.tab-nav button:hover{color:#fff}.tab-nav button.active{color:var(--brand-green);border-bottom-color:var(--brand-green)}.analyzer-tab{flex-direction:column;gap:1rem;display:flex}.analyzer-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.analyzer-input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;box-sizing:border-box;border-radius:6px;padding:.625rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.6}.analyzer-input:focus{border-color:var(--brand-green);outline:none}.analyzer-context{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);box-sizing:border-box;border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:.875rem}.analyzer-context:focus{border-color:var(--brand-green);outline:none}.analyzer-actions{justify-content:flex-end;display:flex}.analyzer-result{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.result-section{border-bottom:1px solid var(--border);flex-direction:column;gap:.375rem;padding:.875rem 1rem;display:flex}.result-section:last-child{border-bottom:none}.result-score-row{flex-direction:row;justify-content:space-between;align-items:center}.result-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.6875rem;font-weight:600}.result-value{color:var(--text-h);font-weight:500}.result-text{color:var(--text);white-space:pre-wrap;margin:0;font-size:.875rem;line-height:1.6}.result-list{color:var(--text);flex-direction:column;gap:.25rem;margin:0;padding-left:1.25rem;font-size:.875rem;display:flex}.result-list--warning li::marker{color:#f59e0b}.result-list--positive li::marker{color:var(--brand-green)}.result-items{flex-direction:column;gap:.625rem;display:flex}.result-item{background:var(--bg);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:.3rem;padding:.625rem .75rem;display:flex}.result-item-rank{color:var(--brand-green);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem;font-weight:700}.result-item-title{color:var(--text-h);font-size:.875rem;font-weight:600}.result-item-body{color:var(--text);font-size:.8125rem;line-height:1.5}.result-item-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.125rem;font-size:.75rem;display:flex}.result-item-deps{color:var(--text-muted);font-size:.75rem;font-style:italic}.quality-score{color:var(--brand-green);font-size:1.5rem;font-weight:700}.quality-denom{color:var(--text-muted);font-size:.875rem;font-weight:400}.badge.priority-high{color:#991b1b;background:#fee2e2}.badge.priority-medium{color:#92400e;background:#fef3c7}.badge.priority-low{color:#065f46;background:#d1fae5}.badge.severity-critical,.badge.severity-high{color:#991b1b;background:#fee2e2}.badge.severity-medium{color:#92400e;background:#fef3c7}.badge.severity-low{color:#065f46;background:#d1fae5}@media (prefers-color-scheme:dark){.badge.priority-high{color:#fca5a5;background:#450a0a}.badge.priority-medium{color:#fcd34d;background:#451a03}.badge.priority-low{color:#6ee7b7;background:#064e3b}.badge.severity-critical,.badge.severity-high{color:#fca5a5;background:#450a0a}.badge.severity-medium{color:#fcd34d;background:#451a03}.badge.severity-low{color:#6ee7b7;background:#064e3b}}.error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text);border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.875rem}.badge{background:var(--border);color:var(--text-muted);border-radius:9999px;padding:.125rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.badge.state-new{color:#1d4ed8;background:#dbeafe}.badge.state-committed{color:#065f46;background:#d1fae5}.badge.state-done{color:#374151;background:#f3f4f6}@media (prefers-color-scheme:dark){.badge.state-new{color:#93c5fd;background:#1e3a5f}.badge.state-committed{color:#6ee7b7;background:#064e3b}.badge.state-done{color:#d1d5db;background:#374151}}
