:root{--bg:#071b2c;--deep:#0b253b;--panel:#10314b;--line:#28506c;--paper:#edf6fa;--dim:#b5c9d7;--muted:#7898ae;--cyan:#68d8dc;--amber:#f0a35d;--red:#ff8078;--green:#75d69c;--radius:12px;--display:"Space Grotesk",sans-serif;--body:"IBM Plex Sans",sans-serif;--mono:"IBM Plex Mono",monospace;--max:1180px}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);background-image:linear-gradient(rgba(104,216,220,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(104,216,220,.035) 1px,transparent 1px);background-size:32px 32px;color:var(--paper);font:15px/1.55 var(--body);-webkit-font-smoothing:antialiased}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
h1,h2,h3{font-family:var(--display);margin:0;line-height:1.12}
p{color:var(--dim);margin:.45rem 0}
.mono{font-family:var(--mono)}
.muted{color:var(--muted)}
.hidden{display:none!important}
.eyebrow{color:var(--cyan);font:600 13px var(--mono);letter-spacing:.08em;text-transform:uppercase}

.site-nav{position:sticky;top:0;z-index:10;background:rgba(7,27,44,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-inner{height:66px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px;color:var(--paper);text-decoration:none;font:600 19px var(--display)}
.brand-mark{width:24px;height:24px;border:2px solid var(--cyan);border-radius:5px;box-shadow:inset 0 0 0 5px var(--bg),inset 0 0 0 7px var(--amber)}
.nav-links{display:flex;gap:28px}
.nav-links a{color:var(--muted);text-decoration:none}
.nav-links a:hover{color:var(--paper)}

.hero{text-align:center;padding:76px 0 46px}
.hero h1{font-size:clamp(38px,6vw,68px);max-width:14ch;margin:13px auto 17px;letter-spacing:-.04em}
.hero p{font-size:18px;max-width:700px;margin:auto}
.hero-badges{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:25px}
.hero-badges span,.chips span{border:1px solid var(--line);background:rgba(16,49,75,.65);color:var(--dim);border-radius:99px;padding:6px 11px;font-size:12px}
.panel{background:linear-gradient(145deg,rgba(16,49,75,.97),rgba(11,37,59,.97));border:1px solid var(--line);border-radius:var(--radius)}
.config{padding:24px}
.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.section-title>div{display:flex;align-items:center;gap:10px}
.section-title h2{font-size:21px}
.step{font:500 12px var(--mono);color:var(--cyan);border:1px solid var(--line);border-radius:4px;padding:4px 6px}

.config-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.config label,.query-field,.ai-panel label{font-size:12px;color:var(--muted);font-weight:600}
.query-field{display:block;margin-top:15px}
.query-field span{font-weight:400;margin-left:8px}
.query-field input{margin-top:7px}
input,select,textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--paper);padding:10px 12px;font:14px var(--body);outline:none}
label select,label input{display:block;margin-top:6px}
input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(104,216,220,.08)}
.features{margin-top:16px;border-top:1px solid var(--line);padding-top:13px}
.features summary,.audit summary{cursor:pointer;color:var(--paper);font-weight:600}
.checks{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:12px}
.checks label{display:flex;gap:8px;align-items:center;color:var(--dim);font-weight:400}
.checks input{width:auto;margin:0;accent-color:var(--cyan)}

.workspace{padding:38px 0}
.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.editor{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--deep)}
.editor-head{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);font-size:13px}
.text-btn{border:0;background:none;color:var(--cyan);cursor:pointer}
.editor textarea{min-height:390px;border:0;border-radius:0;resize:vertical;font:13px/1.65 var(--mono);padding:16px}
.action-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}
.btn{border:1px solid transparent;border-radius:7px;padding:10px 16px;font:600 13px var(--body);cursor:pointer;transition:.15s}
.btn:hover{transform:translateY(-1px)}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.btn-primary{background:var(--cyan);color:#05202a}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--paper)}
.btn-amber{background:var(--amber);color:#2b1607}
.btn-sm{padding:7px 11px}
.ai-panel{margin-top:14px;padding:16px;display:grid;grid-template-columns:1fr 1.4fr 1fr auto;gap:12px;align-items:end}
.ai-panel p{grid-column:1/-1;font-size:12px;margin:0}

.results{padding:20px 0 75px}
.badge{font:600 12px var(--mono);border-radius:99px;padding:6px 10px}
.badge.good{color:var(--green);background:rgba(117,214,156,.1);border:1px solid rgba(117,214,156,.3)}
.badge.risk{color:var(--red);background:rgba(255,128,120,.1);border:1px solid rgba(255,128,120,.3)}
.metric-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.metric-grid article{background:var(--deep);border:1px solid var(--line);border-radius:10px;padding:16px}
.metric-grid span,.metric-grid small{display:block;color:var(--muted);font-size:11px}
.metric-grid strong{display:block;font:500 25px var(--mono);margin:7px 0 2px}
.metric-grid .accent strong{color:var(--cyan)}
.warning{border:1px solid rgba(255,128,120,.4);background:rgba(255,128,120,.08);color:#ffd5d2;padding:14px 18px;border-radius:9px;margin-top:13px}
.warning ul{margin:8px 0 0}
.report-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;margin-top:12px}
.report-card{padding:19px;min-height:160px}
.report-card h3{font-size:15px;margin-bottom:14px}
.report-card>strong{color:var(--cyan);font:600 19px var(--display)}
.report-card p,.report-card small{font-size:13px}
.stage-list>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid rgba(40,80,108,.7);padding:9px 0}
.stage-list>div:first-child{border:0}
.stage-list span{font-size:13px}
.stage-list small{display:block;color:var(--muted)}
.stage-list b{white-space:nowrap;color:var(--cyan);font:500 12px var(--mono)}
.cost{color:var(--muted);font:12px var(--mono);margin-top:16px}
.bar{height:8px;border-radius:8px;background:var(--bg);overflow:hidden;margin:16px 0}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green));border-radius:8px}
.chips{display:flex;gap:7px;flex-wrap:wrap}
.chips b{color:var(--cyan);margin-left:3px}
.audit{margin-top:12px;padding:17px}
.audit summary span{color:var(--muted)}
#removed-list>div{border-top:1px solid var(--line);padding:11px 0}
#removed-list b{color:var(--amber);font:500 11px var(--mono)}
#removed-list p{font-size:13px;white-space:pre-wrap}
.json-row{display:grid;grid-template-columns:120px 1fr 65px;gap:10px;align-items:center;margin:9px 0;font-size:12px}
.json-row i{height:9px;background:var(--cyan);border-radius:6px}
.json-row b{text-align:right;font-family:var(--mono)}

.feature-section{padding:70px 0;background:rgba(11,37,59,.65);border-top:1px solid var(--line)}
.feature-section h2{font-size:clamp(28px,4vw,44px);max-width:620px;margin:10px 0 32px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.feature-grid article{border-top:1px solid var(--line);padding:17px 0}
.feature-grid b{font-family:var(--display)}
.feature-grid p{font-size:13px}
footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:12px}
footer .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

@media(max-width:900px){
  .config-grid,.checks{grid-template-columns:repeat(2,1fr)}
  .editor-grid,.report-grid{grid-template-columns:1fr}
  .metric-grid{grid-template-columns:repeat(3,1fr)}
  .ai-panel{grid-template-columns:1fr 1fr}
  .ai-panel p{grid-column:1/-1}
  .feature-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){
  .wrap{width:min(var(--max),calc(100% - 28px))}
  .nav-links{display:none}
  .hero{padding-top:50px}
  .hero h1{font-size:39px}
  .config-grid,.checks,.metric-grid,.feature-grid,.ai-panel{grid-template-columns:1fr}
  .query-field span{display:block;margin:2px 0}
  .action-row .btn{width:100%}
  .editor textarea{min-height:300px}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important}
}