:root{--color-accent:#e1ff51;--color-base:#00272c;--panel-width:min(92vw, 68rem)}*{box-sizing:border-box}::selection{background:var(--color-accent);color:var(--color-base)}html{background:var(--color-base)}body{background:var(--color-base);min-height:100vh;color:var(--color-accent);margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}body.digital-twin-active{overflow-y:auto}button,input{font:inherit}button{cursor:pointer;border:0}h1,h2,h3,p{margin:0}.app-shell{background:var(--color-base);min-height:100vh;position:relative}.screen{width:100%}.screen-ingress,.screen-processing{background:var(--color-base);z-index:4;place-items:center;padding:2rem;transition:opacity .5s,visibility .5s;display:grid;position:fixed;inset:0}.screen-twin{background:var(--color-base);min-height:400vh;position:relative}.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.panel{width:var(--panel-width);border:1px solid var(--color-accent);background:var(--color-base)}.panel-ingress{gap:1.5rem;padding:clamp(1.5rem,3vw,3rem);display:grid}.panel-processing{text-align:center;justify-items:center;gap:1.5rem;padding:clamp(1.5rem,4vw,3.5rem);display:grid}.eyebrow{letter-spacing:.18em;text-transform:uppercase;font-size:.78rem}.body-copy{max-width:42rem;font-size:1rem;line-height:1.6}.panel-ingress h1,.panel-processing h2,.hud-top h2,.scroll-panel h3{text-transform:uppercase;max-width:18ch;font-size:clamp(2.5rem,6vw,5.5rem);line-height:.95}.dropzone{border:1px dashed var(--color-accent);text-align:center;cursor:pointer;place-items:center;gap:.5rem;min-height:18rem;padding:2rem;transition:background .3s,transform .3s;display:grid}.dropzone:hover,.dropzone.is-dragging{background:var(--color-accent);color:var(--color-base);transform:translateY(-.25rem)}.dropzone-title{text-transform:uppercase;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1}.dropzone-caption{max-width:20rem;font-size:.95rem;line-height:1.5}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ingress-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.file-chip,.hud-chip,.processing-step{border:1px solid var(--color-accent);background:var(--color-base);min-height:2.75rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em;align-items:center;padding:.75rem 1rem;line-height:1.2;display:inline-flex}.cta{background:var(--color-accent);min-width:16rem;min-height:3.25rem;color:var(--color-base);text-transform:uppercase;letter-spacing:.12em;padding:.85rem 1.4rem;transition:transform .3s,opacity .3s}.cta:hover:not(:disabled){transform:translateY(-.2rem)}.cta:disabled{opacity:1;cursor:not-allowed}.processing-loader{aspect-ratio:1;width:clamp(8rem,16vw,12rem);position:relative}.loader-ring,.loader-core{border:1px solid var(--color-accent);margin:auto;position:absolute;inset:0}.loader-ring--outer{width:100%;height:100%}.loader-ring--middle{width:68%;height:68%}.loader-core{background:var(--color-accent);width:30%;height:30%}.processing-steps{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}#twin-canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.twin-overlay{z-index:2;pointer-events:none;flex-direction:column;justify-content:space-between;padding:1.5rem;display:flex;position:fixed;inset:0}.hud{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.hud-stack{justify-items:end;gap:.75rem;display:grid}.hud-card{border:1px solid var(--color-accent);background:var(--color-base);width:min(100%,24rem);padding:1rem}.hud-card h3{text-transform:uppercase;margin:.5rem 0 .75rem;font-size:1.4rem;line-height:1.1}.hud-card p+p{margin-top:.45rem}.matrix-feed{gap:.5rem;margin-top:.85rem;display:grid}.matrix-row{border-top:1px solid var(--color-accent);text-transform:uppercase;padding-top:.5rem;font-size:.86rem;line-height:1.5}.matrix-row.is-active{background:var(--color-accent);color:var(--color-base);padding:.5rem}.toggle-container{pointer-events:auto;border:1px solid var(--color-accent);background:var(--color-base);display:flex}.toggle-btn{text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);background:0 0;padding:.5rem 1rem;font-size:.8rem;transition:all .3s}.toggle-btn.active{background:var(--color-accent);color:var(--color-base)}.back-btn{pointer-events:auto;border:1px solid var(--color-accent);background:var(--color-base);color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:700;transition:all .3s;display:inline-flex}.back-btn:hover{background:var(--color-accent);color:var(--color-base);transform:translateY(-.1rem)}.timeline-card{pointer-events:auto}.slider-container{margin-top:1rem}.timeline-slider{appearance:none;background:#e1ff514d;outline:none;width:100%;height:2px;margin-bottom:.5rem}.timeline-slider::-webkit-slider-thumb{appearance:none;background:var(--color-accent);cursor:pointer;border-radius:50%;width:1rem;height:1rem}.timeline-slider:disabled{opacity:.3;cursor:not-allowed}.slider-labels{text-transform:uppercase;color:#e1ff51b3;justify-content:space-between;font-size:.75rem;display:flex}.scroll-panel{align-content:center;gap:1rem;width:min(24rem,100vw - 3rem);min-height:100vh;margin-left:auto;padding:2rem 1.5rem;display:grid}.scroll-panel-center{margin-left:1.5rem}.scroll-panel-end{margin-left:auto}.scroll-panel p:last-child{line-height:1.6}@media (width<=900px){.screen-ingress,.screen-processing{padding:1rem}.panel-ingress h1,.panel-processing h2,.hud-top h2,.scroll-panel h3{max-width:none;font-size:clamp(2.2rem,10vw,4rem)}.hud,.hud-bottom,.ingress-footer{flex-direction:column;align-items:stretch}.hud-bottom{gap:.75rem}.hud-stack{justify-items:stretch}.hud-card,.scroll-panel{width:100%}.scroll-panel,.scroll-panel-center,.scroll-panel-end{margin-left:0}}.report-modal-overlay{z-index:50;pointer-events:auto;background:#00272cd9;place-items:center;display:grid;position:fixed;inset:0}.report-modal-content{width:min(90vw,40rem);padding:2.5rem;box-shadow:0 10px 30px #00000080}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input::placeholder{color:var(--color-accent);opacity:1}
