:root{--bg: #fafaf9;--surface: #ffffff;--border: #e7e5e4;--text: #1c1917;--muted: #78716c;--accent: #0369a1;--success: #15803d;--danger: #b91c1c;--warning: #b45309;--radius: 8px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.55}header{background:var(--surface);border-bottom:1px solid var(--border);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;top:0;z-index:10}header h1{margin:0;font-size:1.1rem;font-weight:600}header .meta{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:.875rem}nav.tabs{display:flex;gap:.25rem;flex:1;margin:0 1rem}.tab{background:transparent;border:1px solid transparent;color:var(--muted);padding:.35rem .75rem;border-radius:var(--radius);cursor:pointer;font:inherit;font-size:.9rem}.tab:hover{color:var(--text);background:var(--bg)}.tab-active{color:var(--text);background:var(--bg);border-color:var(--border);font-weight:500}button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.4rem .9rem;border-radius:var(--radius);cursor:pointer}button:hover{background:var(--bg)}button:disabled{opacity:.5;cursor:not-allowed}button.approve{background:var(--success);color:#fff;border-color:var(--success)}button.approve:hover{background:#166534}button.reject{background:var(--danger);color:#fff;border-color:var(--danger)}button.reject:hover{background:#991b1b}main{max-width:920px;margin:0 auto;padding:1.5rem}.loading,.empty{color:var(--muted);text-align:center;padding:4rem 1rem}.error{background:#fef2f2;border:1px solid #fecaca;color:var(--danger);padding:1rem;border-radius:var(--radius);margin-bottom:1rem}article.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1.5rem;overflow:hidden}article.card header{position:static;padding:1rem 1.25rem;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}article.card .title{font-weight:600;font-size:1rem;margin:0}article.card .meta{font-size:.8125rem;color:var(--muted);display:flex;gap:.75rem;flex-wrap:wrap}article.card .body{padding:1.25rem;max-height:480px;overflow-y:auto;border-bottom:1px solid var(--border)}article.card .body h1,article.card .body h2,article.card .body h3{margin-top:1.25rem;margin-bottom:.5rem}article.card .body h1{font-size:1.2rem}article.card .body h2{font-size:1.05rem}article.card .body h3{font-size:.95rem;color:var(--muted)}article.card .body p{margin:.5em 0}article.card .body ul,article.card .body ol{padding-left:1.5rem}article.card .body a{color:var(--accent)}article.card .body code{background:var(--bg);padding:.1rem .35rem;border-radius:4px;font-size:.9em}article.card .actions{padding:.75rem 1.25rem;display:flex;justify-content:flex-end;gap:.5rem}article.card.flash-approved{outline:2px solid var(--success)}article.card.flash-rejected{outline:2px solid var(--danger)}dialog{border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;width:min(500px,90vw)}dialog textarea{width:100%;min-height:100px;font:inherit;padding:.5rem;border:1px solid var(--border);border-radius:4px;resize:vertical}dialog .actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.card-flat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1rem}.card-flat .title{font-weight:600;font-size:.95rem;margin:0 0 .4rem}.card-flat .meta{font-size:.8125rem;color:var(--muted);display:flex;gap:.75rem;flex-wrap:wrap}.row{display:flex;align-items:center;gap:.75rem}.row.spread{justify-content:space-between}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:1rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.pill{display:inline-block;font-size:.75rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;background:var(--bg);color:var(--muted);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em}.pill-run{background:#dcfce7;color:#166534;border-color:#bbf7d0}.pill-throttle{background:#fef3c7;color:#92400e;border-color:#fde68a}.pill-pause{background:#fee2e2;color:#991b1b;border-color:#fecaca}.gauge-row{display:grid;grid-template-columns:11rem 1fr 8.5rem;align-items:center;gap:.75rem;margin:.4rem 0;font-size:.875rem}.gauge-label{color:var(--muted)}.gauge-track{background:var(--bg);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.gauge-fill{height:100%;transition:width .2s ease}.gauge-fill-ok{background:var(--success)}.gauge-fill-warn{background:var(--warning)}.gauge-fill-danger{background:var(--danger)}.gauge-value{color:var(--text);font-variant-numeric:tabular-nums;text-align:right}ul.kv{list-style:none;padding:0;margin:0}ul.kv li{display:flex;justify-content:space-between;padding:.3rem 0;border-bottom:1px solid var(--border);font-size:.875rem}ul.kv li:last-child{border-bottom:0}ul.kv li span{color:var(--muted)}ul.kv li strong{font-variant-numeric:tabular-nums}ul.failure-list{list-style:none;padding:0;margin:0}ul.failure-list li{padding:.5rem 0;border-bottom:1px solid var(--border)}ul.failure-list li:last-child{border-bottom:0}pre.failure-error{background:#fef2f2;border:1px solid #fecaca;color:#7f1d1d;padding:.5rem .75rem;border-radius:4px;font-size:.8rem;white-space:pre-wrap;overflow-wrap:anywhere;margin:.4rem 0 0}.form-row{display:flex;gap:.5rem;flex-wrap:wrap}.form-row input[type=text],.form-row select{font:inherit;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);min-width:0}.form-row input[type=text]:focus,.form-row select:focus{outline:2px solid var(--accent);outline-offset:1px}.keyword-list li{display:flex;align-items:baseline;gap:.5rem;padding:.3rem 0;border-bottom:1px solid var(--border)}.keyword-list li>span:first-child{color:var(--text);font-weight:500}.keyword-list li .meta span{margin-right:.5rem}.project-picker{display:inline-flex;align-items:center;gap:.4rem}.project-picker span{color:var(--muted);font-size:.8125rem}.project-picker select{font:inherit;font-size:.875rem;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);max-width:240px}.project-picker select:disabled{opacity:.6;cursor:not-allowed}
