:root{--ink:#0b1a1c;--mist:#e7f2ee;--muted:#9bb5ad;--copper:#e08a45;--lime:#c8e86a;--panel:#0a1c1ed1;--font-display:"Syne", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;font-family:var(--font-body);background:var(--ink);color:var(--mist);margin:0;overflow:hidden}.app{width:100%;height:100%;position:relative}.canvas-wrap{position:absolute;inset:0}.canvas-wrap-loading{opacity:0;pointer-events:none}.skip-link{z-index:30;background:var(--lime);color:#102010;pointer-events:auto;border-radius:999px;padding:.5rem .85rem;font-weight:600;text-decoration:none;position:absolute;top:-3rem;left:1rem}.skip-link:focus{outline:3px solid var(--copper);outline-offset:2px;top:1rem}.boot{z-index:5;text-align:center;background:radial-gradient(ellipse 50% 40% at 50% 30%, #e08a452e, transparent), var(--ink);place-content:center;gap:.5rem;padding:2rem;display:grid;position:absolute;inset:0}.boot-brand{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:1.6rem;font-weight:800}.boot-error{pointer-events:auto}.boot-detail{color:var(--muted);justify-self:center;max-width:36ch;margin:.35rem 0 .75rem;font-size:.9rem}:focus-visible{outline:3px solid var(--lime);outline-offset:2px}.btn:focus:not(:focus-visible),.chip-button:focus:not(:focus-visible),.btn-text:focus:not(:focus-visible),.slider:focus:not(:focus-visible){outline:none}.hud{z-index:2;pointer-events:none;padding:1rem clamp(1rem,3vw,1.5rem);position:absolute;inset:0}.top-bar{pointer-events:auto;justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:1.15rem;font-weight:800}.brand span{color:var(--lime);margin-left:.35rem;font-size:.85rem;font-weight:700}.chip{background:var(--panel);color:var(--muted);border:1px solid #e7f2ee2e;border-radius:999px;padding:.4rem .85rem;font-size:.85rem}.companion-panel{pointer-events:auto;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e7f2ee29;border-radius:1rem;width:min(26rem,100% - 2rem);padding:1rem 1.1rem;position:absolute;bottom:clamp(1rem,3vw,1.5rem);left:clamp(1rem,3vw,1.5rem)}.companion-name{font-family:var(--font-display);color:var(--copper);letter-spacing:-.02em;margin:0 0 .35rem;font-weight:700}.companion-line{color:var(--mist);margin:0;line-height:1.45}.hint{color:var(--muted);margin:.75rem 0 0;font-size:.85rem}.control-panel{pointer-events:auto;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #e7f2ee29;border-radius:1rem;width:min(22rem,100% - 2rem);padding:1rem 1.1rem 1.15rem;position:absolute;top:4.25rem;right:clamp(1rem,3vw,1.5rem)}.control-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.control-header h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.05rem}.btn-text{color:var(--lime);cursor:pointer;text-underline-offset:.15em;background:0 0;border:none;padding:0;text-decoration:underline}.slider-label{color:var(--muted);justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.35rem;font-size:.9rem;display:flex}.slider-label strong{color:var(--mist);font-size:1.15rem;font-family:var(--font-display)}.slider{width:100%;accent-color:var(--copper);margin-bottom:.9rem}.readouts{gap:.55rem;margin-bottom:.9rem;display:grid}.readouts>div{gap:.15rem;display:grid}.readout-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.readout-value{font-family:var(--font-display);font-size:1.05rem;font-weight:700}.readout-words{font-family:var(--font-body);font-size:.92rem;font-weight:500;line-height:1.35}.btn-row{flex-wrap:wrap;gap:.5rem;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:2.4rem;padding:.45rem .95rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--copper);color:#1a1008}.btn-ghost{color:var(--mist);background:0 0;border-color:#e7f2ee47}.tele-hint{color:var(--muted);word-break:break-word;margin:.75rem 0 0;font-size:.72rem}.model-card{color:var(--muted);border-top:1px solid #e7f2ee24;margin-top:.9rem;padding-top:.85rem;font-size:.88rem}.model-card h3{font-family:var(--font-display);color:var(--mist);margin:0 0 .25rem;font-size:.95rem}.model-id{color:var(--lime);margin:0 0 .65rem;font-size:.72rem}.model-card p{margin:0 0 .5rem}.model-card ul{margin:.35rem 0 0;padding-left:1.1rem}.model-card li{margin-bottom:.25rem}.chip-button{cursor:pointer;font:inherit;color:var(--mist)}.chip-button:hover{border-color:#c8e86a73}.concept-bank{pointer-events:auto;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3;border:1px solid #e7f2ee29;border-radius:1rem;width:min(22rem,100% - 2rem);padding:1rem 1.1rem 1.15rem;position:absolute;top:4.25rem;left:clamp(1rem,3vw,1.5rem)}.bank-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.bank-list li{color:var(--muted);align-items:flex-start;gap:.55rem;font-size:.88rem;display:flex}.bank-list li.got{color:var(--mist)}.bank-list li.soon{opacity:.72}.bank-list strong{font-family:var(--font-display);font-size:.95rem;display:block}.bank-list em{color:var(--muted);font-size:.8rem;font-style:normal}.save-line{color:var(--lime);margin:0 0 .75rem;font-size:.8rem}.bank-clear{width:100%;margin-top:.85rem}.hotkey-hint{color:var(--muted);margin:-.35rem 0 .75rem;font-size:.75rem}.lab-data-toggle{margin-top:.75rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.companion-actions{margin-top:.85rem}.predict-row{flex-wrap:wrap;gap:.45rem;margin-top:.85rem;display:flex}.btn.selected{border-color:var(--lime);color:var(--lime)}.btn:disabled{opacity:.45;cursor:not-allowed}.slider:disabled{opacity:.45}@media (width<=720px){.control-panel{top:auto;bottom:calc(7.5rem + env(safe-area-inset-bottom,0px));width:auto;left:clamp(.75rem,3vw,1.25rem);right:clamp(.75rem,3vw,1.25rem)}.concept-bank{width:auto;left:clamp(.75rem,3vw,1.25rem);right:clamp(.75rem,3vw,1.25rem)}.companion-panel{width:auto;right:clamp(.75rem,3vw,1.25rem)}}
