:root{--bg:#07111f;--panel:#0b1220;--panel2:#101827;--text:#e5e7eb;--muted:#94a3b8;--line:rgba(148,163,184,.25);--accent:#38bdf8;--danger:#fb7185;--ok:#86efac;}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#10233d,#07111f 50%,#020617);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.page{max-width:1180px;margin:0 auto;padding:28px 16px 44px}.hero{padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#0f3a5f,#0f766e);box-shadow:0 20px 60px rgba(0,0,0,.35);margin-bottom:16px}.hero h1{font-size:clamp(2rem,4vw,3.4rem);margin:0 0 8px}.hero p{max-width:850px;margin:0;color:#e0f2fe}.eyebrow{text-transform:uppercase;color:#bae6fd;letter-spacing:.1em;font-weight:800;font-size:.8rem}.grid{display:grid;gap:14px;margin-bottom:14px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}.card{border:1px solid var(--line);border-radius:18px;background:rgba(11,18,32,.92);padding:18px;box-shadow:0 14px 34px rgba(0,0,0,.22)}.card h2{margin:0 0 10px;font-size:1.05rem}.card-wide{grid-column:1/-1}.kv{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid rgba(148,163,184,.15)}.kv:last-child{border-bottom:0}.kv span,.muted{color:var(--muted)}code{color:#bfdbfe;background:rgba(2,6,23,.45);padding:2px 5px;border-radius:6px}.path{display:block;overflow:auto;padding:8px}.pill-list{display:flex;gap:8px;flex-wrap:wrap}.pill{border:1px solid rgba(125,211,252,.28);background:rgba(14,165,233,.12);border-radius:999px;padding:6px 10px;color:#dbeafe;font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:12px 0}.form-grid label{display:flex;flex-direction:column;gap:5px;color:var(--muted);font-size:.9rem}.form-grid input,.form-grid select{border:1px solid rgba(148,163,184,.32);border-radius:12px;background:rgba(15,23,42,.92);color:var(--text);padding:9px 10px;font:inherit}.check{justify-content:center;align-items:flex-start}.check input{margin-right:7px}.actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.btn{border:1px solid rgba(125,211,252,.35);background:rgba(14,165,233,.18);color:#e0f2fe;border-radius:999px;padding:9px 15px;font-weight:800;cursor:pointer}.btn:hover{border-color:rgba(125,211,252,.65)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.danger{border-color:rgba(248,113,113,.45);background:rgba(220,38,38,.18);color:#fee2e2}.output{margin-top:12px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:rgba(2,6,23,.45);padding:12px;overflow:auto}.preview-table{width:100%;border-collapse:collapse;min-width:760px;font-size:.86rem}.preview-table th,.preview-table td{padding:7px 8px;border-bottom:1px solid rgba(148,163,184,.16);text-align:left}.preview-table th{color:#93c5fd;text-transform:uppercase;font-size:.76rem}.warn{color:#fde68a}.ok{color:var(--ok)}.api-list{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:850px){.grid-3{grid-template-columns:1fr}.page{padding:18px 12px}.hero{padding:18px}}


.market-form{margin-top:12px}
.textarea-label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.9rem}
.textarea-label textarea{width:100%;min-height:180px;resize:vertical;border:1px solid rgba(148,163,184,.32);border-radius:12px;background:rgba(15,23,42,.92);color:var(--text);padding:10px 12px;font:inherit;line-height:1.45}
details{margin-top:10px;border:1px solid rgba(148,163,184,.16);border-radius:12px;padding:8px 10px;background:rgba(15,23,42,.35)}
details summary{cursor:pointer;color:#93c5fd;font-weight:700}
details pre{white-space:pre-wrap;overflow:auto}

.scope-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0;}
.scope-tab{border:1px solid var(--border,#2c3850);background:rgba(255,255,255,.03);color:inherit;border-radius:999px;padding:.5rem .8rem;cursor:pointer;}
.scope-tab.active{background:rgba(23,162,184,.22);border-color:rgba(23,162,184,.85);}
.scope-panel{display:none;}
.scope-panel.active{display:block;}
.scope-compare-table td,.scope-compare-table th{white-space:nowrap;}


.report-layout{max-width:1120px;margin:0 auto;}
.report-actions{justify-content:flex-end;margin-bottom:1rem;}
.report-hero{padding:1rem 0 1.25rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:1rem;}
.report-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:1rem 0;}
.kpi{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:1rem;background:rgba(255,255,255,.035);}
.kpi span{display:block;color:var(--muted,#9fb0c9);font-size:.85rem;margin-bottom:.35rem;}
.kpi strong{font-size:1.4rem;}
.recommendation-box{border:1px solid rgba(23,162,184,.45);background:rgba(23,162,184,.08);border-radius:14px;padding:1rem;margin:1rem 0;}
.ring-chart{display:grid;gap:.75rem;margin:1rem 0;}
.ring-row{display:grid;grid-template-columns:150px 1fr 330px;gap:.75rem;align-items:center;}
.ring-label{font-weight:700;}
.ring-track{position:relative;height:18px;border-radius:999px;background:rgba(255,255,255,.08);overflow:visible;}
.ring-range{position:absolute;top:5px;height:8px;border-radius:999px;background:rgba(23,162,184,.55);}
.ring-marker{position:absolute;top:1px;width:4px;height:16px;border-radius:3px;background:currentColor;transform:translateX(-2px);}
.ring-marker.own{top:-2px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid rgba(23,162,184,.9);transform:translateX(-6px);}
.ring-values{font-size:.85rem;color:var(--muted,#9fb0c9);}
@media (max-width:850px){
  .ring-row{grid-template-columns:1fr;gap:.25rem;}
}
@media print{
  .report-actions,.hero .status-card{display:none!important;}
  body{background:#fff;color:#111;}
  .card{box-shadow:none;border:0;}
}

.is-outlier td{background:rgba(255,193,7,.08);}
.is-outlier td:first-child{border-left:3px solid rgba(255,193,7,.85);}

.subject-grid{margin-top:.75rem;}
#subjectProfileCard{border-color:rgba(23,162,184,.35);}
