:root{--c:#00f0ff;--m:#ff2bd6;--bg:#070912;--g:rgba(255,255,255,.06)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#e6ecff;font:15px/1.6 system-ui,sans-serif}
.bg{position:fixed;inset:0;z-index:-1;background:radial-gradient(600px 400px at 15% 10%,rgba(0,240,255,.18),transparent),radial-gradient(600px 400px at 85% 90%,rgba(255,43,214,.16),transparent),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0/40px 40px}
header{text-align:center;padding:28px 12px 8px}h1{font-size:2.2rem;margin:0;letter-spacing:1px}h1 span{color:var(--c);text-shadow:0 0 18px var(--c)}header p{margin:4px 0;color:#9fb0d8}
.ticker{display:inline-block;margin-top:8px;padding:3px 14px;border:1px solid var(--c);border-radius:20px;color:var(--c);font:12px monospace}
main{max-width:1150px;margin:auto;padding:12px}.card{background:var(--g);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;margin-bottom:16px;box-shadow:0 0 30px rgba(0,240,255,.07)}
.tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}button,select,input,textarea{font:inherit;color:inherit}
.tabs button,.exp button{background:var(--g);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:7px 14px;cursor:pointer;transition:.2s}
.tabs button.on,.tabs button:hover,.exp button:hover{border-color:var(--c);box-shadow:0 0 12px var(--c)}
.pane{display:none}.pane.on{display:block}.drop{display:block;border:2px dashed var(--c);border-radius:14px;padding:32px 12px;text-align:center;cursor:pointer;transition:.2s}.drop.over{background:rgba(0,240,255,.1)}
#files{list-style:none;padding:0;margin:8px 0 0}#files li{display:flex;justify-content:space-between;padding:4px 8px;background:var(--g);border-radius:8px;margin-top:4px;font-size:13px}#files li span{cursor:pointer;color:var(--m)}
textarea{width:100%;min-height:200px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:10px;font-family:monospace}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}select,input:not([type=range]):not([type=checkbox]){background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:8px}option{background:#111}
.chk{display:block;margin-top:8px;font-size:13px}.ctl{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-top:14px}.ctl>div{flex:1;min-width:220px}input[type=range]{width:100%;accent-color:var(--c)}
.go{background:linear-gradient(90deg,var(--c),var(--m));color:#000;font-weight:700;border:0;border-radius:12px;padding:11px 24px;cursor:pointer;box-shadow:0 0 20px rgba(0,240,255,.4)}.go:disabled{opacity:.5}
.hide{display:none}.metrics{display:flex;gap:10px;flex-wrap:wrap}.metrics div{flex:1;min-width:110px;text-align:center;background:var(--g);border-radius:12px;padding:8px}.metrics b{display:block;font-size:1.4rem;color:var(--c)}
.pills{margin:12px 0;display:flex;flex-wrap:wrap;gap:6px}.pill,mark{background:rgba(0,240,255,.14);border:1px solid var(--c);color:#bffaff;border-radius:20px;padding:0 9px;font-size:.9em;box-shadow:0 0 8px rgba(0,240,255,.5)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:760px){.split{grid-template-columns:1fr}}
pre,#summary{background:rgba(0,0,0,.35);border-radius:12px;padding:10px;max-height:480px;overflow:auto;white-space:pre-wrap;word-break:break-word;font:13px/1.55 monospace;margin:0}#summary{font:14px/1.6 system-ui}
#summary code{background:rgba(255,255,255,.1);padding:0 4px;border-radius:4px}.exp{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
footer{text-align:center;padding:20px;color:#6f7fa8;font-size:12px;letter-spacing:1px}
@media print{body>*:not(main),header,.bg,#up,.tabs,.ctl,.exp,.split>div:first-child,#kw,.metrics,main>section:first-child{display:none!important}body,#summary{background:#fff;color:#000;max-height:none}.split{display:block}}
#fx{position:fixed;inset:0;z-index:-1;pointer-events:none}.ghost{background:var(--g);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:10px 16px;cursor:pointer}.ghost:hover{border-color:var(--c)}
details.card summary{cursor:pointer}#hl{list-style:none;padding:0;margin:8px 0 0}#hl li{padding:6px 10px;background:var(--g);border-radius:8px;margin-top:4px;cursor:pointer;font-size:13px}#hl li:hover{outline:1px solid var(--c)}
#graph{width:100%;background:rgba(0,0,0,.35);border-radius:12px}.flip{min-height:150px;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;border-radius:14px;border:1px solid var(--m);box-shadow:0 0 18px rgba(255,43,214,.3);cursor:pointer;background:rgba(0,0,0,.35)}
.flip>div:last-child{display:none;color:var(--c)}.flip.on>div:first-child{display:none}.flip.on>div:last-child{display:block}.fcn{text-align:center;margin-top:8px}.fcn button{background:var(--g);border:1px solid var(--c);color:inherit;border-radius:8px;padding:2px 12px;cursor:pointer}
h1{background:linear-gradient(90deg,#fff,var(--c),var(--m));-webkit-background-clip:text;background-clip:text}.metrics div:hover{box-shadow:0 0 14px var(--c)}
.fk{margin-top:12px}.fk input{width:100%}mark.f,.pill.f{background:rgba(255,43,214,.22);border-color:var(--m);color:#ffd6f7;box-shadow:0 0 10px rgba(255,43,214,.6)}
.trace{margin-top:10px;max-height:170px;font-size:12px;color:var(--c)}#copybox{margin-top:8px;min-height:240px;font:14px/1.7 system-ui;white-space:pre-wrap}#cp{margin-top:28px}

header nav{display:flex;gap:18px;justify-content:center;margin-bottom:6px}header nav a{color:#9fb0d8;text-decoration:none;font-size:13px;letter-spacing:1px}header nav a:hover{color:var(--c)}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.chips button{background:var(--g);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:4px 12px;color:inherit;cursor:pointer;font-size:13px}.chips button:hover{border-color:var(--c);box-shadow:0 0 10px var(--c)}
.src{background:rgba(255,220,0,.25);outline:1px solid #ffd800;border-radius:3px}#summary li{cursor:pointer;margin:4px 0}#summary li.sel{outline:1px solid var(--c);border-radius:6px;background:rgba(0,240,255,.08)}
.about{margin-top:28px}.about h2{margin-top:0;color:var(--c)}.about h3{margin:18px 0 6px}.about ol{padding-left:20px}
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.feat div{background:var(--g);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px;font-size:13px;color:#9fb0d8}.feat b{display:block;color:#e6ecff;font-size:14px}
