:root { color-scheme: light; --ink:#172033; --muted:#637083; --line:#dbe1ea; --paper:#fff; --bg:#f3f6fa; --accent:#6d4aff; }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:15px/1.55 Inter,system-ui,sans-serif; }
main { width:min(1080px,calc(100% - 32px)); margin:0 auto; padding:46px 0 80px; }
header,section { background:var(--paper); border:1px solid var(--line); border-radius:18px; padding:28px; margin-bottom:22px; box-shadow:0 8px 30px rgba(23,32,51,.05); }
h1 { font-size:clamp(30px,5vw,54px); line-height:1.05; margin:8px 0 14px; max-width:850px; }
h2 { margin:3px 0 14px; font-size:26px; }
h3 { margin:0 0 6px; }
.eyebrow { margin:0; color:var(--accent); font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.section-head,.actions { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; }
label { display:grid; gap:6px; font-weight:650; }
textarea,input,select,button { font:inherit; }
textarea,input,select { width:100%; border:1px solid var(--line); border-radius:10px; padding:11px 12px; background:#fff; color:var(--ink); }
textarea { margin:12px 0; resize:vertical; }
button { border:1px solid var(--line); border-radius:10px; padding:10px 15px; background:#fff; color:var(--ink); cursor:pointer; font-weight:700; }
button:hover { border-color:var(--accent); }
.primary { background:var(--accent); color:#fff; border-color:var(--accent); }
.highlighted { margin:18px 0; padding:20px; min-height:90px; white-space:pre-wrap; border-radius:12px; background:#f8f9fc; font-size:17px; }
.highlight { border:0; border-bottom:3px solid var(--accent); padding:1px 2px; background:rgba(109,74,255,.09); border-radius:3px; }
.prediction-list { display:grid; gap:10px; margin:14px 0; }
.prediction { display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:start; border:1px solid var(--line); border-radius:12px; padding:13px; }
.prediction small,.note,#analysisSummary { color:var(--muted); }
.prediction code { font-size:12px; color:#505b70; white-space:pre-line; }
.missing-tool { margin:22px 0; padding:18px; border:1px dashed #b9c3d3; border-radius:12px; display:grid; gap:10px; }
.metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:12px; margin-top:16px; }
.metric { border:1px solid var(--line); border-radius:12px; padding:15px; }
.metric strong { display:block; font-size:24px; }
.metric span { display:block; color:var(--muted); }
@media (max-width:650px) { main{width:min(100% - 18px,1080px);padding-top:12px} header,section{padding:18px}.prediction{grid-template-columns:auto 1fr} }
