:root{
  --obsidian:#060712;--surface:#0b0d1b;--surface-2:#101426;--line:rgba(148,163,184,.18);
  --fg:#f8fafc;--muted:#9aa4b2;--ghost:#667085;--violet:#8b5cf6;--cyan:#22d3ee;--green:#86efac;--amber:#fbbf24;--red:#fb7185;
  --serif:Georgia,'Times New Roman',serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--sans:Inter,ui-sans-serif,system-ui,Segoe UI,Arial,sans-serif;
  --radius:8px;--shadow:0 24px 90px rgba(0,0,0,.42);--px:40px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--obsidian);color:var(--fg);font-family:var(--sans);overflow-x:hidden}
#aura{position:fixed;inset:0;z-index:-2;background:linear-gradient(135deg,#060712 0%,#0b1020 46%,#07151a 100%)}
body:before{content:"";position:fixed;inset:0;z-index:-1;opacity:.16;background-image:linear-gradient(to right,rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.12) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}
.shell{max-width:1440px;margin:auto;padding:0 var(--px) 80px}.glass-line{border:1px solid var(--line);background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(2,6,23,.42));backdrop-filter:blur(14px)}
.nav{position:sticky;top:16px;z-index:10;display:flex;align-items:center;justify-content:space-between;border-radius:999px;padding:14px 18px;margin:16px 0 42px;gap:16px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:12px}.mark{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--cyan);box-shadow:0 0 28px rgba(34,211,238,.4)}.nav-links{display:flex;gap:20px}.nav a{color:var(--muted);text-decoration:none;font-size:13px}.nav a:hover{color:var(--fg)}
.mode-toggle{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.mode-toggle button{border:0;background:transparent;color:var(--muted);padding:8px 10px;font-family:var(--mono);font-size:11px;cursor:pointer}.mode-toggle button.active{background:rgba(34,211,238,.16);color:var(--fg)}
.hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(320px,.78fr);gap:44px;align-items:center;min-height:calc(100vh - 120px)}.eyebrow{display:block;color:var(--cyan);font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}.hero h1,.section-title h2{font-family:var(--serif);font-size:72px;font-weight:400;line-height:.98;letter-spacing:0;margin:0}.upload-card h2,.evidence-card h2,.ai-card h2,.sources-section h2{font-family:var(--serif);font-size:38px;font-weight:400;line-height:1.05;letter-spacing:0;margin:0}.hero p,.section-title p,.upload-card p,.evidence-card p,.ai-card p{color:var(--muted);font-size:17px;line-height:1.75;max-width:740px}.hero-actions,.control-row,.export-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.btn{border:1px solid var(--line);border-radius:3px;padding:12px 16px;background:rgba(15,23,42,.6);color:var(--fg);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:.25s transform,.25s border,.25s box-shadow;white-space:normal}.btn:hover{transform:translateY(-2px);border-color:rgba(34,211,238,.55);box-shadow:0 0 24px rgba(34,211,238,.16)}.btn.primary{background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(34,211,238,.62));color:white}.btn.small{padding:9px 11px;font-size:10px}.hero-panel,.upload-card,.evidence-card,.panel,.ai-card,.limitations-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(16,20,38,.82),rgba(7,10,22,.75));box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-panel{padding:24px}.terminal-head{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}.terminal-head span{width:10px;height:10px;border-radius:50%;background:var(--red)}.terminal-head span:nth-child(2){background:var(--amber)}.terminal-head span:nth-child(3){background:var(--green)}.terminal-head b{margin-left:8px;color:var(--ghost);font-family:var(--mono);font-size:11px;letter-spacing:.14em}pre{color:#c4f1ff;white-space:pre-wrap;font-family:var(--mono);font-size:14px;line-height:1.9}.section-line{height:1px;background:var(--line);margin:36px 0}.section-title{text-align:center;margin:38px auto}.section-title h2{font-size:54px}.section-title.split{display:flex;align-items:end;justify-content:space-between;text-align:left;gap:20px}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.module-card{padding:34px;background:var(--surface);transition:.35s transform,.35s background}.module-card:hover{transform:translateY(-5px);background:#0f1325}.module-card span{font-family:var(--mono);font-size:11px;color:var(--ghost)}.icon{width:42px;height:42px;display:grid;place-items:center;margin:26px 0;border-radius:8px;background:#171b32;color:var(--cyan);box-shadow:0 0 24px rgba(34,211,238,.12)}.module-card h3,.panel h3{font-family:var(--serif);font-size:28px;letter-spacing:0;margin:0 0 8px}.module-card p,.muted{color:var(--muted);line-height:1.65;font-size:14px}.analysis-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;margin-top:80px}.upload-card,.evidence-card,.panel,.ai-card,.limitations-card{padding:28px}.drop-zone{display:grid;place-items:center;text-align:center;min-height:230px;border:1px dashed rgba(34,211,238,.42);border-radius:8px;margin:24px 0;padding:24px;background:rgba(34,211,238,.04);cursor:pointer}.drop-zone input{display:none}.drop-zone.drag{background:rgba(34,211,238,.09);border-color:var(--cyan)}.drop-icon{font-size:40px;color:var(--cyan);filter:drop-shadow(0 0 18px rgba(34,211,238,.4))}.control-row label{color:var(--muted);font-size:12px}.control-row input,.table-head input{display:block;margin-top:8px;width:110px;border:1px solid var(--line);background:#060816;color:var(--fg);border-radius:8px;padding:10px}.status{margin-top:18px;padding:12px;border-radius:8px;font-family:var(--mono);font-size:12px;border:1px solid var(--line)}.status.loading{color:var(--amber)}.status.ok{color:var(--green)}.status.error{color:var(--red)}.refs-list{display:grid;gap:12px;margin:20px 0;max-height:420px;overflow:auto}.ref-item{padding:13px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.025)}.ref-item strong{display:block}.ref-item small{color:var(--muted)}.results{margin-top:80px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}.metric{border:1px solid var(--line);border-radius:8px;background:rgba(16,20,38,.72);padding:22px}.metric span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.13em}.metric strong{display:block;font-size:30px;margin:10px 0;font-family:var(--mono);overflow-wrap:anywhere}.metric small{color:var(--ghost)}.dashboard-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:18px}.panel dl{display:grid;gap:14px}.panel dl div{padding-top:12px;border-top:1px solid var(--line)}dt{color:var(--ghost);font-size:11px;text-transform:uppercase;letter-spacing:.14em}dd{margin:5px 0 0;color:var(--fg);overflow-wrap:anywhere}.spike-map{height:150px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(90deg,rgba(15,23,42,.9),rgba(8,47,73,.52));position:relative;overflow:hidden;margin-top:18px}.spike-map:before{content:"";position:absolute;left:5%;right:5%;top:50%;height:4px;border-radius:999px;background:rgba(248,250,252,.22)}.spike-map span{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted)}.domain-band{position:absolute;top:42%;height:22px;border-radius:3px;background:rgba(34,211,238,.16);border:1px solid rgba(34,211,238,.18)}.mut-dot{position:absolute;top:50%;width:12px;height:12px;border:1px solid #07111d;border-radius:50%;transform:translate(-50%,-50%);background:var(--amber);box-shadow:0 0 18px rgba(251,191,36,.55);cursor:pointer}.mut-dot.known{background:var(--green);box-shadow:0 0 18px rgba(134,239,172,.6)}.domain-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.domain-legend span{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 8px}.interpretation-panel{margin-top:18px}.warnings{color:var(--amber);line-height:1.7}.table-panel{margin-top:18px}.table-head{display:flex;justify-content:space-between;gap:18px;align-items:end}.table-head input{width:min(100%,340px)}.table-wrap{overflow:auto;margin-top:18px;border:1px solid var(--line);border-radius:8px}table{border-collapse:collapse;width:100%;min-width:1050px}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:top}th{color:var(--cyan);font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.13em;background:rgba(255,255,255,.03)}td{color:#dbe4f0}a{color:#7dd3fc}.badge{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px 8px;font-size:11px}.badge.ok{color:var(--green);border-color:rgba(134,239,172,.35)}.badge.warn{color:var(--amber);border-color:rgba(251,191,36,.35)}.badge.err{color:var(--red);border-color:rgba(251,113,133,.35)}.sources-section{margin-top:80px}.sources-list{display:grid;gap:10px;color:#dbe4f0;overflow-wrap:anywhere}.ai-section{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:80px}.ai-output{margin-top:18px;padding:20px;min-height:170px;border:1px solid var(--line);border-radius:8px;background:#050713;color:#dfe7ff;line-height:1.75;white-space:pre-wrap}.limitations-card ul{margin:0;padding-left:18px;color:var(--muted);line-height:1.8}.reveal{opacity:0;transform:translateY(30px);animation:rise .75s ease forwards}.delay-1{animation-delay:.16s}@keyframes rise{to{opacity:1;transform:none}}@media(max-width:980px){:root{--px:24px}.hero,.analysis-grid,.dashboard-grid,.ai-section{grid-template-columns:1fr}.module-grid,.metric-grid{grid-template-columns:repeat(2,1fr)}.section-title.split{display:block}.nav-links{display:none}.hero h1{font-size:56px}}@media(max-width:620px){:root{--px:16px}.module-grid,.metric-grid{grid-template-columns:1fr}.hero h1{font-size:40px}.section-title h2{font-size:36px}.hero-panel,.upload-card,.evidence-card,.panel,.ai-card,.limitations-card{padding:20px}.nav{align-items:flex-start;flex-wrap:wrap}.mode-toggle{width:100%}.mode-toggle button{flex:1}.export-actions{margin-top:14px}}
@media print{#aura,.nav,.hero-actions,.upload-card,.evidence-card,.export-actions,.ai-card button{display:none!important}body{background:white;color:black}.panel,.metric,.ai-card,.limitations-card{box-shadow:none;background:white;color:black;border-color:#ddd}.shell{max-width:none}.metric small,.muted,td,dd{color:#333}}
