.scs-route{min-height:0;grid-template-rows:auto auto}.scs-route__header{display:grid;gap:12px}.scs-route__status{padding:24px}.scs-route__status h1,.scs-route__status p{margin:0}.scs-route__controls{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:.84rem}.scs-route__controls span{display:inline-flex;align-items:center;gap:5px}.scs-route__toggle{display:inline-flex;align-items:center;gap:7px;color:var(--text-color);cursor:pointer}.scs-route__toggle input{accent-color:var(--accent)}.scs-route__controls kbd{min-width:26px;padding:3px 7px;border:1px solid var(--border);border-bottom-color:color-mix(in srgb,var(--border) 45%,white);border-radius:6px;background:var(--surface-strong);color:var(--text-color);text-align:center;box-shadow:0 2px 0 var(--shadow-color)}.scs-route__viewport{position:relative;height:clamp(480px,56vh,720px);min-height:480px;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:#091120;box-shadow:0 18px 50px var(--shadow-color)}.scs-route__auto-boost{position:absolute;left:14px;bottom:14px;z-index:3;display:grid;grid-template-columns:auto auto;gap:3px 12px;min-width:180px;padding:9px 12px;border:1px solid hsl(190 90% 68% / .48);border-left:4px solid hsl(42 100% 58%);border-radius:3px 12px 3px 3px;background:#070e1dd1;color:#a1cfd9;box-shadow:0 6px 18px #02060e6b;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.67rem;letter-spacing:.06em;pointer-events:none}.scs-route__auto-boost output{color:#87aeb5;font-weight:800}.scs-route__auto-boost output[data-enabled=true]{color:#4ef493;text-shadow:0 0 8px hsl(145 100% 55% / .5)}.scs-route__auto-boost strong{color:#ffcd57;font-weight:700}.scs-route__auto-boost small{grid-column:1 / -1;padding-top:3px;border-top:1px solid hsl(190 90% 68% / .16);color:#7ea2a9;font-size:.56rem;letter-spacing:0}.scs-route__auto-boost kbd{color:#a0e1ee;font:inherit}.scs-route__canvas{display:block;width:100%;height:100%;min-height:480px;cursor:grab;touch-action:none}.scs-route__canvas:active{cursor:grabbing}.scs-route__zen-button{position:absolute;z-index:1;top:12px;right:12px;background:color-mix(in srgb,var(--surface-strong) 80%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.scs-route--zen{height:100vh;gap:0;grid-template-rows:minmax(0,1fr)}.scs-route--zen .scs-route__header{display:none}.scs-route--zen .scs-route__viewport,.scs-route--zen .scs-route__canvas{width:100%;height:100%;min-height:0}.scs-route--zen .scs-route__viewport{border:0;border-radius:0}@media(max-width:720px){.scs-route__viewport,.scs-route__canvas{height:clamp(420px,52vh,560px);min-height:420px}}.scs-route__controls-button{position:absolute;top:12px;right:150px;z-index:2}.scs-controls-dialog{width:min(880px,94vw);max-height:88vh;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong);color:var(--text-color);box-shadow:0 18px 50px var(--shadow-color)}.scs-controls-dialog::backdrop{background:#0000008c}.scs-controls-dialog__header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--border)}.scs-controls-dialog__header h2{margin:0;font-size:1.05rem}.scs-controls-dialog__profile{display:inline-flex;align-items:center;gap:6px}.scs-controls-dialog__profile select,.scs-bind-chip__regime{background:var(--surface);color:var(--text-color);border:1px solid var(--border);border-radius:6px;padding:2px 6px}.scs-controls-dialog__profile button,.scs-controls-dialog__close{background:var(--surface);color:var(--text-color);border:1px solid var(--border);border-radius:6px;padding:3px 9px;cursor:pointer}.scs-controls-dialog__close{margin-left:auto}.scs-controls-dialog__tabs{display:flex;gap:4px;padding:10px 18px 0;flex-wrap:wrap}.scs-tab{background:transparent;color:var(--muted);border:1px solid transparent;border-bottom:none;border-radius:8px 8px 0 0;padding:6px 12px;cursor:pointer}.scs-tab--active{color:var(--text-color);background:var(--surface);border-color:var(--border)}.scs-tab--disconnected{opacity:.5}.scs-controls-dialog__body{display:grid;grid-template-columns:1fr 240px;gap:16px;padding:16px 18px;overflow:auto;max-height:64vh}.scs-bind-group{margin-bottom:14px}.scs-bind-group h3{margin:0 0 6px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.scs-bind-row{padding:8px 10px;border:1px solid var(--border);border-radius:8px;margin-bottom:6px;background:color-mix(in srgb,var(--surface) 70%,transparent)}.scs-bind-row--conflict{border-color:#d97a4a}.scs-bind-row__head{display:flex;align-items:center;gap:10px;justify-content:space-between}.scs-bind-row__label{font-size:.9rem}.scs-bind-row__resolved{position:relative;width:80px;height:6px;border-radius:3px;background:var(--surface-strong);overflow:hidden}.scs-bind-row__resolved-fill{position:absolute;left:0;top:0;bottom:0;background:var(--accent)}.scs-bind-row__chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.scs-bind-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 4px 2px 8px;border:1px solid var(--border);border-radius:14px;background:var(--surface);font-size:.8rem}.scs-bind-chip--empty{color:var(--muted);font-style:italic;border-style:dashed}.scs-bind-chip__remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1}.scs-bind-row__actions{display:flex;gap:8px;align-items:center}.scs-bind-rec,.scs-bind-opts-toggle{background:var(--surface);color:var(--text-color);border:1px solid var(--border);border-radius:6px;padding:3px 10px;cursor:pointer;font-size:.82rem}.scs-bind-rec--active{border-color:var(--accent);color:var(--accent);animation:scs-rec-pulse 1s ease-in-out infinite}@keyframes scs-rec-pulse{50%{opacity:.6}}.scs-bind-opts{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;padding-top:6px;border-top:1px dashed var(--border);font-size:.78rem;color:var(--muted)}.scs-bind-opts label{display:inline-flex;align-items:center;gap:5px}.scs-controls-dialog__device{border-left:1px solid var(--border);padding-left:14px}.scs-controls-dialog__device h4{margin:0 0 6px;font-size:.78rem;color:var(--muted)}.scs-live-axes,.scs-live-buttons{list-style:none;margin:0 0 12px;padding:0}.scs-live-axes li{display:flex;align-items:center;gap:6px;margin-bottom:4px}.scs-live-axes__label{width:14px;color:var(--muted);font-size:.75rem}.scs-live-axes__track{position:relative;flex:1;height:8px;border-radius:4px;background:var(--surface-strong)}.scs-live-axes__fill{position:absolute;top:0;bottom:0;background:var(--accent);border-radius:4px}.scs-live-buttons{display:flex;flex-wrap:wrap;gap:4px}.scs-live-buttons li{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--border);border-radius:5px;font-size:.72rem;color:var(--muted)}.scs-live-buttons__on{background:var(--accent);color:#fff;border-color:var(--accent)}.scs-live-keyboard__key{font-size:1.1rem;font-weight:600;margin:0}.primes-route{--prime-cyan: hsl(183 100% 67%);--prime-cyan-dim: hsl(187 70% 45%);--prime-amber: hsl(42 100% 63%);--prime-red: hsl(350 94% 68%);min-width:0;color:#d0edf1;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace}.primes-hero{position:relative;display:flex;align-items:center;justify-content:space-between;overflow:hidden;min-height:128px;padding:24px 30px;border:1px solid hsl(184 88% 63% / .35);border-radius:4px 22px;background:linear-gradient(90deg,#091020f5,#101628e6),repeating-linear-gradient(90deg,transparent 0 39px,hsl(184 100% 70% / .04) 40px);box-shadow:inset 5px 0 0 var(--prime-red),0 16px 45px #02060e80}.primes-hero:after{position:absolute;right:120px;width:260px;height:260px;border:1px solid hsl(184 100% 70% / .13);border-radius:50%;content:"";box-shadow:0 0 0 25px #66f5ff06,0 0 0 55px #66f5ff05}.primes-kicker,.primes-subtitle{margin:0;color:var(--prime-cyan);letter-spacing:.13em}.primes-kicker{font-size:.7rem}.primes-hero h1{margin:9px 0 7px;color:#fff;font-family:IBM Plex Sans,Segoe UI,sans-serif;font-size:clamp(1.55rem,4vw,3rem);font-weight:300;letter-spacing:-.035em;text-transform:uppercase}.primes-subtitle{font-size:.75rem;color:#93b7be}.primes-hero__seal{z-index:1;display:grid;place-items:center;width:76px;height:76px;border:1px solid var(--prime-red);color:var(--prime-red);transform:rotate(3deg)}.primes-hero__seal span{font-family:serif;font-size:2.15rem;line-height:1}.primes-hero__seal small{font-size:.55rem;letter-spacing:.16em}.primes-console{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:16px;min-height:560px}.primes-controls,.primes-display{border:1px solid hsl(184 72% 60% / .27);background-color:#090f1af0;background-image:linear-gradient(hsl(190 100% 80% / .025) 1px,transparent 1px),linear-gradient(90deg,hsl(190 100% 80% / .025) 1px,transparent 1px);background-size:24px 24px;box-shadow:inset 0 0 35px #00ddff06}.primes-copy-hint{position:absolute;top:64px;right:18px;z-index:5;display:grid;gap:2px;max-width:220px;padding:12px 16px;border:3px solid hsl(220 35% 8%);border-radius:50% 45% 52% 46%;background:#faf8f0;color:#0d121c;font-family:IBM Plex Sans,Segoe UI,sans-serif;filter:drop-shadow(5px 6px 0 hsl(350 94% 68% / .85));pointer-events:none;transform:rotate(2deg);animation:primes-hint-exit 9s ease-in forwards}.primes-copy-hint:after{position:absolute;right:28px;bottom:-17px;width:25px;height:25px;border-right:3px solid hsl(220 35% 8%);border-bottom:3px solid hsl(220 35% 8%);background:#faf8f0;content:"";transform:skew(16deg) rotate(36deg)}.primes-copy-hint strong{font-size:.8rem;letter-spacing:.04em}.primes-copy-hint span{font-size:.64rem;font-weight:600}.primes-controls{align-self:start;display:grid;gap:18px;padding:20px;border-radius:3px 3px 3px 18px}.primes-controls__heading{display:grid;gap:2px;padding-bottom:12px;border-bottom:1px solid hsl(184 100% 70% / .2)}.primes-controls__heading span{color:var(--prime-red);font-size:.68rem;letter-spacing:.18em}.primes-controls__heading strong{color:#fff;font-size:.9rem;letter-spacing:.08em}.primes-mode{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0;padding:0;border:0}.primes-mode legend{position:absolute;overflow:hidden;width:1px;height:1px;clip:rect(0 0 0 0)}.primes-mode label{cursor:pointer}.primes-mode input{position:absolute;opacity:0}.primes-mode span{display:block;padding:10px 8px;border:1px solid hsl(184 60% 55% / .22);color:#87aeb5;font-size:.68rem;text-align:center;letter-spacing:.08em}.primes-mode input:checked+span{border-color:var(--prime-cyan);background:#00eeff1a;color:var(--prime-cyan);box-shadow:inset 0 -2px 0 var(--prime-cyan)}.primes-mode input:focus-visible+span{outline:2px solid var(--prime-amber);outline-offset:2px}.primes-fields{display:grid;gap:12px}.primes-field{display:grid;gap:5px;color:#89b4bd;font-size:.65rem;letter-spacing:.1em}.primes-field input{width:100%;min-width:0;padding:10px 11px;border:1px solid hsl(184 74% 57% / .28);border-radius:0;outline:0;background:#040b15;color:var(--prime-amber);font-variant-numeric:tabular-nums}.primes-field input:focus{border-color:var(--prime-cyan);box-shadow:0 0 0 2px #00eeff1a}.primes-execute{display:grid;gap:2px;padding:12px;border:1px solid var(--prime-red);border-radius:0 12px;background:linear-gradient(110deg,#cc143c,#f0383e);color:#fff;cursor:pointer;letter-spacing:.08em}.primes-execute:hover,.primes-execute:focus-visible{filter:brightness(1.15);box-shadow:0 0 20px #fa385840}.primes-execute small{font-size:.58rem;opacity:.72}.primes-limits,.primes-error{margin:0;font-size:.62rem;line-height:1.5}.primes-limits{color:#628b93}.primes-error{padding:9px;border-left:2px solid var(--prime-red);background:#e6193c1a;color:#f9a}.primes-display{position:relative;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;overflow:hidden;border-radius:3px 18px 3px 3px}.primes-display:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;content:"";background:repeating-linear-gradient(180deg,transparent 0,transparent 3px,hsl(0 0% 0% / .12) 4px);mix-blend-mode:multiply}.primes-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid hsl(184 100% 65% / .2);background:#060c18eb}.primes-status__item{display:grid;gap:3px;padding:13px 16px;border-right:1px solid hsl(184 100% 65% / .14)}.primes-status__item span{color:#679aa2;font-size:.58rem;letter-spacing:.12em}.primes-status__item strong{overflow:hidden;color:var(--prime-cyan);font-size:.9rem;text-overflow:ellipsis}.primes-memory-header,.primes-row{display:grid;grid-template-columns:62px repeat(8,minmax(96px,1fr))}.primes-memory-header{color:#588a93;font-size:.58rem;text-align:center}.primes-memory-header span{padding:8px 5px;border-right:1px solid hsl(184 100% 65% / .08)}.primes-memory{min-height:0;max-height:min(68vh,720px);overflow:auto;scrollbar-color:var(--prime-cyan-dim) hsl(220 50% 6%)}.primes-row:nth-child(2n){background:#00e1ff06}.primes-address,.primes-cell{min-width:0;border-top:1px solid hsl(184 100% 65% / .055);border-right:1px solid hsl(184 100% 65% / .07)}.primes-address{padding:12px 8px;color:var(--prime-red);font-size:.63rem;text-align:center}.primes-cell{position:relative;display:grid;gap:3px;width:100%;padding:8px 7px;border-bottom:0;border-left:0;border-radius:0;outline:0;background:transparent;cursor:pointer;text-align:right;font-variant-numeric:tabular-nums;transition:background-color .1s ease,color .1s ease}.primes-cell:hover,.primes-cell:focus-visible{z-index:1;background:#33f1ff17;box-shadow:inset 0 0 0 1px var(--prime-cyan)}.primes-cell b{overflow:hidden;color:var(--prime-cyan);font-size:.82rem;font-weight:600;text-overflow:clip;text-shadow:0 0 8px hsl(184 100% 60% / .35)}.primes-cell small{color:#eec668b8;font-size:.55rem}.primes-cell--flashed{z-index:2;animation:primes-cell-photo .7s steps(2,end)}.primes-cell__flash{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;z-index:3;display:grid;place-items:center;overflow:visible;background:repeating-conic-gradient(from 4deg,white 0deg 7deg,transparent 7deg 19deg);color:#0b111e;font-family:Arial Black,IBM Plex Sans,sans-serif;font-size:.8rem;font-style:normal;font-weight:900;letter-spacing:-.08em;text-shadow:-1px -1px 0 white,1px -1px 0 white,-1px 1px 0 white,1px 1px 0 white;pointer-events:none;animation:primes-camera-flash .72s ease-out forwards}.primes-cell--empty{place-content:center;color:#364649}.primes-empty{display:grid;place-content:center;gap:8px;min-height:330px;color:#67949e;text-align:center}.primes-empty strong{color:var(--prime-red);letter-spacing:.08em}.primes-readout{display:flex;justify-content:space-between;gap:15px;padding:9px 14px;border-top:1px solid hsl(184 100% 65% / .18);background:#050a15;color:#6e9ea6;font-size:.58rem;letter-spacing:.08em}.primes-readout__live{color:#4cf088}.primes-copy-result{position:absolute;left:50%;top:50%;z-index:6;display:grid;place-items:center;min-width:170px;padding:18px 24px 14px;border:4px solid hsl(220 42% 8%);background:#faf8ef;color:#0c121d;font-family:Arial Black,IBM Plex Sans,sans-serif;filter:drop-shadow(8px 9px 0 var(--prime-red));pointer-events:none;transform:translate(-50%,-50%) rotate(-3deg);animation:primes-copy-result 1.15s ease-out forwards}.primes-copy-result:before,.primes-copy-result:after{position:absolute;top:-32px;right:-32px;bottom:-32px;left:-32px;z-index:-1;content:"";background:repeating-conic-gradient(transparent 0deg 10deg,hsl(220 42% 8%) 10deg 12deg,transparent 12deg 25deg)}.primes-copy-result:after{top:-21px;right:-21px;bottom:-21px;left:-21px;background:#fff;clip-path:polygon(50% 0%,57% 34%,76% 8%,70% 40%,100% 28%,75% 51%,100% 70%,68% 62%,74% 100%,54% 68%,43% 100%,42% 67%,8% 88%,31% 58%,0 52%,34% 45%,7% 18%,41% 35%)}.primes-copy-result b{z-index:1;color:var(--prime-red);font-size:1.45rem;letter-spacing:-.04em}.primes-copy-result span,.primes-copy-result small{z-index:1}.primes-copy-result span{font-size:1.1rem}.primes-copy-result small{font-size:.62rem}.primes-copy-result--failed{filter:drop-shadow(8px 9px 0 hsl(42 100% 55%))}.primes-scan-animation{position:fixed;left:22px;bottom:22px;z-index:40;width:min(460px,calc(100vw - 44px));overflow:hidden;border:2px solid hsl(42 100% 58%);border-radius:2px 18px 2px 2px;background:linear-gradient(125deg,#120d30fa,#060d1efa);color:#ffce5c;box-shadow:8px 9px #f33554c7,0 0 38px #ffb60a3d;font-family:IBM Plex Mono,SFMono-Regular,monospace;pointer-events:none;animation:primes-scan-arrive .18s steps(3,end)}.primes-scan-animation:before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;content:"";background:linear-gradient(180deg,transparent 0 47%,hsl(42 100% 75% / .65) 49%,white 50%,hsl(350 100% 65% / .58) 51%,transparent 53%),repeating-linear-gradient(180deg,transparent 0 3px,hsl(0 0% 0% / .2) 4px);mix-blend-mode:screen;opacity:.38;animation:primes-scan-sweep .86s linear infinite}.primes-scan-animation:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;content:"";border:7px solid transparent;border-left-color:#f53d5c;clip-path:polygon(0 0,38% 0,33% 5%,100% 5%,100% 100%,62% 100%,67% 95%,0 95%)}.primes-scan-animation__warning{position:relative;z-index:2;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:6px 11px;background:repeating-linear-gradient(-45deg,#ffbf29 0,#ffbf29 12px,#ffbf29 12px,#ffbf29 16px,#070c22 16px,#070c22 28px);color:#060a1d;text-shadow:0 1px hsl(42 100% 80%)}.primes-scan-animation__warning span{font-family:serif;font-size:.85rem;font-weight:900}.primes-scan-animation__warning b{justify-self:center;padding:1px 8px;background:#ffc338;font-size:.72rem;letter-spacing:.14em}.primes-scan-animation__body{position:relative;z-index:2;display:grid;grid-template-columns:142px minmax(0,1fr);min-height:178px}.primes-scan-animation__robot{position:relative;overflow:hidden;border-right:1px solid hsl(42 100% 60% / .42);background:radial-gradient(circle at 50% 55%,hsl(350 100% 56% / .18),transparent 35%),linear-gradient(145deg,hsl(285 75% 20% / .48),transparent 70%)}.primes-scan-animation__robot:before,.primes-scan-animation__robot:after{position:absolute;content:""}.primes-scan-animation__robot:before{left:13px;top:14px;width:110px;height:150px;border:1px solid hsl(42 100% 65% / .34);border-radius:50%;box-shadow:0 0 0 12px #ffba1a08,inset 0 0 30px #ff33551a;animation:primes-target-spin 4s linear infinite}.primes-scan-animation__robot:after{left:8px;right:8px;top:53%;height:1px;background:#ffd16680;box-shadow:0 -39px #ffd16638,0 39px #ffd16638}.primes-scan-animation__head,.primes-scan-animation__torso,.primes-scan-animation__shoulder,.primes-scan-animation__eye,.primes-scan-animation__core{position:absolute;z-index:2;display:block}.primes-scan-animation__head{left:48px;top:24px;width:44px;height:55px;border:3px solid hsl(42 100% 67%);background:#1c0c3b;clip-path:polygon(18% 0,82% 0,100% 28%,82% 100%,50% 82%,18% 100%,0 28%);box-shadow:inset 0 0 18px #ff335547;animation:primes-robot-jitter .38s steps(2,end) infinite}.primes-scan-animation__head:before,.primes-scan-animation__head:after{position:absolute;top:7px;width:3px;height:42px;background:#ff3d5e;content:""}.primes-scan-animation__head:before{left:7px;transform:rotate(-23deg)}.primes-scan-animation__head:after{right:7px;transform:rotate(23deg)}.primes-scan-animation__eye{left:58px;top:44px;width:24px;height:5px;background:#fff;box-shadow:0 0 5px #fff,0 0 14px #ffc338;animation:primes-eye-pulse .36s steps(2,end) infinite}.primes-scan-animation__torso{left:39px;top:77px;width:62px;height:87px;border:3px solid hsl(42 100% 67%);background:linear-gradient(100deg,hsl(350 82% 42%) 0 12%,transparent 12% 88%,hsl(350 82% 42%) 88%),#1c0e3a;clip-path:polygon(18% 0,82% 0,100% 30%,76% 100%,24% 100%,0 30%)}.primes-scan-animation__shoulder{top:84px;width:39px;height:58px;border:3px solid hsl(42 100% 67%);background:#1c0e3a}.primes-scan-animation__shoulder--left{left:9px;clip-path:polygon(35% 0,100% 18%,75% 100%,0 70%);transform:rotate(12deg)}.primes-scan-animation__shoulder--right{right:9px;clip-path:polygon(0 18%,65% 0,100% 70%,25% 100%);transform:rotate(-12deg)}.primes-scan-animation__core{left:58px;top:101px;display:grid;place-items:center;width:25px;height:25px;border:2px solid hsl(350 100% 65%);border-radius:50%;background:#ffc233;color:#120c31;font-family:serif;font-size:.8rem;font-weight:900;box-shadow:0 0 16px #ff294d;animation:primes-core-pulse .62s ease-in-out infinite alternate}.primes-scan-animation__telemetry{position:relative;display:grid;align-content:start;min-width:0;padding:14px 16px 10px}.primes-scan-animation__telemetry:before{position:absolute;top:0;right:0;bottom:0;left:0;content:"";background:linear-gradient(hsl(42 100% 70% / .06) 1px,transparent 1px),linear-gradient(90deg,hsl(42 100% 70% / .06) 1px,transparent 1px);background-size:18px 18px}.primes-scan-animation__telemetry strong,.primes-scan-animation__report,.primes-scan-animation__telemetry ol{z-index:1}.primes-scan-animation__telemetry strong{color:#ff5773;font-family:Arial Black,IBM Plex Sans,sans-serif;font-size:1.25rem;letter-spacing:.12em;animation:primes-status-flash .52s steps(2,end) infinite}.primes-scan-animation__report{overflow:hidden;margin-top:3px;color:#fff;font-size:.64rem;text-overflow:ellipsis;white-space:nowrap}.primes-scan-animation__telemetry ol{display:grid;gap:6px;margin:12px 0 0;padding:0;color:#ffd470;font-size:.57rem;line-height:1.2;list-style:none}.primes-scan-animation__telemetry li{opacity:.18;animation:primes-report-cycle 1.2s steps(1,end) infinite}.primes-scan-animation__telemetry li:before{margin-right:6px;color:#ff5773;content:"◆"}.primes-scan-animation__telemetry li:nth-child(2){animation-delay:.3s}.primes-scan-animation__telemetry li:nth-child(3){animation-delay:.6s}.primes-scan-animation__telemetry li:nth-child(4){animation-delay:.9s}.primes-scan-animation__footer{position:relative;z-index:2;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:7px 11px;border-top:1px solid hsl(42 100% 60% / .45);color:#ffd166;font-size:.58rem}.primes-scan-animation__footer i{height:4px;overflow:hidden;background:#ffc23326}.primes-scan-animation__footer i:after{display:block;width:38%;height:100%;background:#ffc53d;box-shadow:0 0 8px #ffc53d;content:"";animation:primes-progress .7s ease-in-out infinite alternate}.primes-scan-animation--complete{border-color:#39ef85;color:#5ff29c;box-shadow:8px 9px #11d462b8,0 0 38px #1ded7333}.primes-scan-animation--complete .primes-scan-animation__warning,.primes-scan-animation--complete .primes-scan-animation__warning b{background:#34ef82}.primes-scan-animation--complete .primes-scan-animation__telemetry strong{color:#4cf090;animation:none}.primes-scan-animation--complete .primes-scan-animation__footer i:after{width:100%;background:#39ef85;animation:none}.primes-scan-animation--failed{border-color:#ff4766}@keyframes primes-scan-arrive{0%{opacity:0;transform:translate(-35px) skew(-4deg)}to{opacity:1;transform:none}}@keyframes primes-scan-sweep{0%{background-position:0 -220px,0 0}to{background-position:0 220px,0 0}}@keyframes primes-target-spin{to{transform:rotate(360deg)}}@keyframes primes-robot-jitter{0%,82%{transform:translate(0)}84%{transform:translate(-2px)}88%{transform:translate(2px)}92%{transform:translate(0)}}@keyframes primes-eye-pulse{0%{opacity:.5}to{opacity:1}}@keyframes primes-core-pulse{0%{transform:scale(.88)}to{transform:scale(1.1)}}@keyframes primes-status-flash{0%,72%{opacity:1}73%,to{opacity:.35}}@keyframes primes-report-cycle{0%,24%{opacity:1;color:#fff;transform:translate(3px)}25%,to{opacity:.18;transform:none}}@keyframes primes-progress{0%{transform:translate(0)}to{transform:translate(165%)}}@keyframes primes-hint-exit{0%,78%{opacity:1;transform:rotate(2deg) scale(1)}88%{opacity:1;transform:rotate(-2deg) scale(1.04)}to{opacity:0;visibility:hidden;transform:rotate(2deg) scale(.82)}}@keyframes primes-cell-photo{0%{background:#fff;filter:brightness(3) saturate(0)}35%{background:#ffe180;filter:brightness(1.8) sepia(.8)}to{background:#00eeff14;filter:none}}@keyframes primes-camera-flash{0%{opacity:1;transform:scale(.18) rotate(-8deg)}22%{opacity:1;transform:scale(1.35) rotate(2deg)}to{opacity:0;transform:scale(1.8) rotate(5deg)}}@keyframes primes-copy-result{0%{opacity:0;transform:translate(-50%,-50%) rotate(-8deg) scale(.35)}18%{opacity:1;transform:translate(-50%,-50%) rotate(4deg) scale(1.12)}34%{transform:translate(-50%,-50%) rotate(-3deg) scale(1)}78%{opacity:1}to{opacity:0;visibility:hidden;transform:translate(-50%,-60%) rotate(-3deg) scale(.92)}}@media(max-width:980px){.primes-console{grid-template-columns:1fr}.primes-controls{grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr) auto;align-items:end}.primes-controls__heading,.primes-limits,.primes-error{grid-column:1 / -1}.primes-fields{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.primes-hero{padding:20px}.primes-hero__seal{display:none}.primes-controls{grid-template-columns:1fr}.primes-controls__heading,.primes-limits,.primes-error{grid-column:auto}.primes-fields{grid-template-columns:1fr}.primes-status{grid-template-columns:repeat(2,1fr)}.primes-memory-header{display:none}.primes-copy-hint{top:116px;right:12px;max-width:175px}.primes-readout{flex-wrap:wrap}.primes-scan-animation{left:10px;bottom:10px;width:calc(100vw - 20px)}.primes-scan-animation__body{grid-template-columns:112px minmax(0,1fr)}.primes-scan-animation__robot{transform:scale(.78);transform-origin:center}}.mmt-route{display:grid;grid-template-columns:300px 1fr 280px;gap:1px;height:calc(100vh - var(--topbar-height, 64px));min-height:0;background:var(--mmt-divider, #1b1f26);color:var(--mmt-text, #d6dde6);font-size:13px}.mmt-panel{background:var(--mmt-panel, #14171c);overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:16px}.mmt-viewport{position:relative;min-width:0;min-height:0;background:#14171c}.mmt-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.mmt-section{display:flex;flex-direction:column;gap:8px}.mmt-group-title{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--mmt-muted, #8893a0);border-bottom:1px solid var(--mmt-divider, #262c35);padding-bottom:4px}.mmt-description{margin:0;font-size:12px;color:var(--mmt-muted, #8893a0);line-height:1.4}.mmt-field{display:flex;flex-direction:column;gap:4px}.mmt-field__label{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--mmt-text, #d6dde6)}.mmt-field__value{color:var(--mmt-accent, #6fae9f);font-variant-numeric:tabular-nums}.mmt-field--grow{flex:1}.mmt-row{display:flex;align-items:flex-end;gap:8px}.mmt-select,.mmt-button{background:var(--mmt-control, #1e242c);color:var(--mmt-text, #d6dde6);border:1px solid var(--mmt-divider, #2c333d);border-radius:4px;padding:6px 8px;font-size:12px}.mmt-button{cursor:pointer}.mmt-button:hover{border-color:var(--mmt-accent, #6fae9f)}.mmt-toggle{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}input[type=range]{width:100%;accent-color:var(--mmt-accent, #6fae9f)}.mmt-json{margin:0;background:#0f1216;border:1px solid var(--mmt-divider, #262c35);border-radius:4px;padding:8px;font-size:11px;line-height:1.4;max-height:320px;overflow:auto;white-space:pre}.furigana-input{display:flex;flex-direction:column;gap:.4rem}.furigana-preview{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.15rem .35rem;padding:.35rem .5rem;border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-radius:.5rem;background:color-mix(in srgb,currentColor 4%,transparent);font-size:1.25rem;line-height:2}.furigana-seg{ruby-align:center}.furigana-seg rt{font-size:.55em;color:color-mix(in srgb,currentColor 65%,transparent)}.furigana-seg--unresolved{cursor:pointer;border-radius:.25rem;outline:1px dashed color-mix(in srgb,#e5484d 60%,transparent)}.furigana-seg--unresolved rt{color:#e5484d;font-weight:700}.furigana-seg--unresolved:hover,.furigana-seg--unresolved:focus-visible{background:color-mix(in srgb,#e5484d 12%,transparent)}.furigana-edit{display:flex;align-items:center;gap:.5rem}.furigana-edit__base{font-size:1.15rem;min-width:2.5rem}.aspect-list{display:flex;flex-direction:column;gap:.5rem}.aspect-card{border:1px solid color-mix(in srgb,currentColor 15%,transparent);border-radius:.6rem;padding:.5rem .65rem}.aspect-card__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.aspect-card__title{font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.todos-aspect-host{display:block;position:relative}.ec-devapp-toolbar-shell--aspect-editor{--ec-devapp-toolbar-fixed-width: 24rem;--ec-devapp-toolbar-max-width: 26rem}.ec-devapp-toolbar-shell--aspect-editor .ec-devapp-toolbar-shell__body{max-height:72vh;overflow-y:auto}.aspect-editor{display:flex;flex-direction:column;gap:.75rem}.aspect-editor__existing{display:flex;flex-direction:column;gap:.3rem}.aspect-editor__type{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.85rem}.aspect-editor__badge{margin-left:.4rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;padding:.05rem .35rem;border-radius:.5rem;background:color-mix(in srgb,currentColor 12%,transparent)}.aspect-editor__form{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid color-mix(in srgb,currentColor 15%,transparent);padding-top:.6rem}.aspect-editor__field{display:flex;flex-direction:column;gap:.4rem;padding:.45rem;border:1px solid color-mix(in srgb,currentColor 12%,transparent);border-radius:.5rem}.aspect-editor__required{display:flex;align-items:center;gap:.35rem;font-size:.85rem}.aspect-editor__actions{display:flex;justify-content:space-between;gap:.5rem}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.dashboard-section{display:flex;flex-direction:column;gap:.75rem}.reminder-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.reminder-item{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:.5rem;padding:.45rem .6rem;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:.5rem}.reminder-item--overdue{border-color:color-mix(in srgb,#e5484d 55%,transparent);background:color-mix(in srgb,#e5484d 8%,transparent)}.reminder-item__when{font-variant-numeric:tabular-nums;font-size:.8rem;opacity:.8}.reminder-item__message{grid-column:2 / -1;font-size:.85rem;opacity:.8}.reminder-item__flag{font-size:.7rem;text-transform:uppercase;color:#e5484d}.training-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tier-summary{display:flex;gap:.5rem;font-variant-numeric:tabular-nums}.tier-chip{cursor:pointer;font:inherit;font-variant-numeric:tabular-nums;padding:.2rem .55rem;border-radius:.5rem;border:1px solid color-mix(in srgb,currentColor 16%,transparent);background:color-mix(in srgb,currentColor 4%,transparent);color:inherit}.tier-chip:hover{background:color-mix(in srgb,currentColor 10%,transparent)}.tier-chip--active{border-color:color-mix(in srgb,var(--accent, currentColor) 60%,transparent);background:color-mix(in srgb,var(--accent, currentColor) 14%,transparent)}.tier-list{margin:.75rem 0;padding:.75rem;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:.75rem;display:flex;flex-direction:column;gap:.6rem}.tier-list__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tier-list__header h3{margin:0;text-transform:capitalize}.tier-list__categories{display:flex;flex-wrap:wrap;gap:.35rem}.category-chip{cursor:pointer;font:inherit;font-size:.8rem;padding:.12rem .5rem;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 16%,transparent);background:transparent;color:inherit}.category-chip--active{border-color:color-mix(in srgb,var(--accent, currentColor) 60%,transparent);background:color-mix(in srgb,var(--accent, currentColor) 16%,transparent)}.tier-list__items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem;max-height:340px;overflow-y:auto}.tier-list__item{display:grid;grid-template-columns:minmax(3rem,auto) 1fr auto;align-items:baseline;gap:.5rem;padding:.35rem .5rem;border-radius:.5rem;border:1px solid color-mix(in srgb,currentColor 10%,transparent)}.tier-list__prompt{font-size:1.15rem}.tier-list__answer{opacity:.85}.tier-list__category{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.tier-list__item .card-stats{grid-column:1 / -1}.card-stats{display:inline-flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;font-variant-numeric:tabular-nums}.card-stats__ok{color:color-mix(in srgb,#2ecc71 75%,currentColor)}.card-stats__bad{color:color-mix(in srgb,#e5484d 75%,currentColor)}.card-stats__t{opacity:.7}.speak-button{cursor:pointer;border:none;background:transparent;font-size:1em;padding:0 .25rem;margin-left:.35rem;border-radius:.4rem;opacity:.7;vertical-align:middle}.speak-button:hover{opacity:1;background:color-mix(in srgb,currentColor 12%,transparent)}.quick-badge{--quick-red: #ff2d2d;--quick-yellow: #ffd000;display:inline-block;padding:.12rem .6rem;font-weight:900;font-style:italic;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:linear-gradient(100deg,var(--quick-red) 0%,#ff7a00 55%,var(--quick-yellow) 100%);transform:skew(-10deg) rotate(-3deg);clip-path:polygon(6% 0,100% 4%,94% 100%,0 92%);-webkit-text-stroke:.6px #1a0000;text-shadow:1px 1px 0 #1a0000,2px 2px 0 rgba(0,0,0,.35);box-shadow:0 0 0 2px #1a0000,2px 3px #00000073;animation:quick-pop 1.6s ease-in-out infinite}@keyframes quick-pop{0%,to{transform:skew(-10deg) rotate(-3deg) scale(1)}50%{transform:skew(-10deg) rotate(-3deg) scale(1.08)}}@media(prefers-reduced-motion:reduce){.quick-badge{animation:none}}.flashbulb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;background:radial-gradient(circle at 50% 42%,#fffef2,#fff7e0 45%,#fff);opacity:0;animation:flashbulb-pop .62s ease-out forwards}@keyframes flashbulb-pop{0%{opacity:0}6%{opacity:.97}18%{opacity:.82}to{opacity:0}}@media(prefers-reduced-motion:reduce){.flashbulb{animation:flashbulb-gentle .5s ease-out forwards}@keyframes flashbulb-gentle{0%{opacity:0}30%{opacity:.3}to{opacity:0}}}.training-modes{display:flex;gap:.5rem}.training-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:.75rem}.training-card__meta{display:flex;align-items:center;gap:.75rem;font-size:.8rem;opacity:.85}.training-card__prompt{font-size:1.6rem;line-height:2.2}.training-card__answer{font-size:1.35rem;line-height:2;padding-top:.5rem;border-top:1px dashed color-mix(in srgb,currentColor 20%,transparent)}.training-card__actions{display:flex;justify-content:flex-end;gap:.5rem}.timeline-route{align-items:start}.timeline-route__header{min-width:0}.timeline-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;align-items:end}.timeline-toggle{display:inline-flex;align-items:center;gap:8px;min-height:42px;color:var(--text-color);font-weight:600}.timeline-route__body{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:20px;align-items:start}.timeline-canvas-panel{display:grid;gap:14px;min-width:0}.timeline-canvas-panel--fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;grid-template-rows:auto minmax(0,1fr) auto;border-radius:0;padding:20px;background:var(--page-background)}.timeline-canvas-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.timeline-canvas-panel__header h2{margin:0}.timeline-canvas-panel__legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.86rem}.timeline-canvas-panel__tools{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}.timeline-canvas-panel__legend-item{display:inline-flex;align-items:center;gap:6px}.timeline-canvas-panel__legend-item:before{content:"";width:18px;height:3px;border-radius:999px;background:var(--ok)}.timeline-canvas-panel__legend-item--removed:before{background:var(--error)}.timeline-canvas-frame{display:grid;place-items:center;min-height:340px;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface-muted)}.timeline-canvas-panel--fullscreen .timeline-canvas-frame{min-height:0;height:100%}.timeline-canvas{display:block;max-width:100%;min-height:340px;background:var(--surface-muted);cursor:crosshair;touch-action:none}.timeline-canvas-panel--fullscreen .timeline-canvas{min-height:0}.timeline-canvas-panel__caption{min-height:1.4em;margin:0;color:var(--muted);overflow-wrap:anywhere}.timeline-list{display:grid;gap:18px;min-width:0}.timeline-list__summary{display:flex;align-items:baseline;gap:8px;color:var(--muted)}.timeline-list__summary strong{color:var(--text-color);font-size:1.35rem}.timeline-list__view{max-height:70vh}.timeline-group-row{display:flex;align-items:baseline;align-self:flex-end;gap:12px;flex:1 1 auto;min-width:0;padding:0 4px 8px;border-bottom:1px solid var(--border);color:var(--muted)}.tree-list__sticky-row .timeline-group-row{align-self:center;border-bottom:none}.timeline-group-row__twistie{flex-shrink:0;font-size:.8rem}.timeline-group-row__title{color:var(--text-color);font-size:1rem;font-weight:700;white-space:nowrap}.timeline-group-row__stats{margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-commit{display:grid;grid-template-columns:120px minmax(0,1fr);gap:4px 12px;flex:1 1 auto;min-width:0;margin:4px 0;padding:10px 12px;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface-strong);color:inherit;text-align:left;cursor:pointer}.timeline-commit:hover,.timeline-commit--selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong))}.timeline-commit__date{grid-row:span 2;color:var(--muted);font-size:.86rem}.timeline-commit__subject,.timeline-commit__meta{min-width:0;overflow-wrap:anywhere}.timeline-commit__subject{font-weight:700}.timeline-commit__meta{color:var(--muted);font-size:.86rem}.timeline-details{position:sticky;top:20px;display:grid;gap:18px;min-width:0}.timeline-details__grid{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 12px;margin:0}.timeline-details__grid dt{color:var(--muted);font-weight:700}.timeline-details__grid dd{min-width:0;margin:0;overflow-wrap:anywhere}.timeline-details__hash{font-family:IBM Plex Mono,Cascadia Code,monospace;font-size:.86rem}.timeline-details__body{max-height:320px;margin:0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface-muted);color:var(--text-color)}.timeline-details__checkout{margin-top:12px;align-self:flex-start;font-family:var(--font-mono, ui-monospace, monospace);font-size:.8rem}.timeline-status{color:var(--muted)}.timeline-status--error{color:var(--error)}@media(max-width:1100px){.timeline-controls,.timeline-route__body{grid-template-columns:1fr}.timeline-details{position:static}}@media(max-width:640px){.timeline-canvas-panel__header{display:grid}.timeline-canvas-panel__tools{justify-content:flex-start}.timeline-commit{grid-template-columns:1fr}.timeline-commit__date{grid-row:auto}}:root{font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif;--page-background: hsl(225 24% 10%);--page-background-image: radial-gradient(circle at top left, hsl(18 82% 55% / .2), transparent 30%), radial-gradient(circle at right, hsl(208 88% 56% / .16), transparent 28%), linear-gradient(180deg, hsl(225 25% 12%) 0%, hsl(228 23% 8%) 100%);--text-color: hsl(40 25% 92%);--surface: hsl(225 18% 18% / .84);--surface-strong: hsl(226 18% 22% / .96);--surface-muted: hsl(226 18% 16% / .74);--border: hsl(215 35% 75% / .12);--accent: hsl(206 86% 61%);--accent-strong: hsl(19 88% 60%);--muted: hsl(220 14% 72%);--ok: hsl(151 55% 56%);--error: hsl(8 80% 66%);--canvas-surface: hsl(225 15% 20%);--canvas-mandelbrot: hsl(224 44% 10%);--shadow-color: hsl(225 60% 4% / .35);--crosshair-filter: invert(57%) sepia(92%) saturate(514%) hue-rotate(348deg) brightness(100%) contrast(96%)}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;min-height:100vh;background-color:var(--page-background);background-image:var(--page-background-image);color:var(--text-color)}body,button,input,select{font:inherit}body.is-resizing{-webkit-user-select:none;user-select:none}a{color:inherit}#app{min-height:100vh}.app-page{display:grid;grid-template-rows:auto 1fr;gap:20px;min-height:100vh;padding:20px}.app-page--zen{grid-template-rows:1fr;gap:0;padding:0}.topbar{position:relative;z-index:500;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-lg);background:var(--surface);background-image:var(--panel-overlay);box-shadow:0 8px 24px var(--shadow-color),var(--glow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar__title{display:flex;align-items:center;gap:8px;flex-shrink:0}.topbar__logo{width:80px;max-width:min(20vw,80px);height:auto;display:block}.topbar__title h2{margin:0;font-family:var(--font-display);font-size:.9rem}.panel__header h1,.panel__header h2,.card h3{margin:0;font-family:var(--font-display)}.topbar__title .eyebrow,.topbar__title .detail{display:none}.topbar__nav{display:flex;gap:6px;flex-wrap:wrap}.nav-group{display:flex;align-items:center;gap:4px;padding:3px 6px;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--surface-strong) 82%,transparent)}.nav-group__label{margin:0;padding:0 3px;font-size:.5625rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.nav-group__links{display:flex;gap:3px;flex-wrap:wrap}.nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 9px;font-size:.78rem;border-radius:var(--radius-pill);border:1px solid hsl(0 0% 100% / .08);background:var(--surface-strong);color:var(--muted);text-decoration:none;transition:background-color .12s ease,color .12s ease,border-color .12s ease,transform .12s ease}.nav-link:hover,.nav-link:focus-visible{color:var(--text-color);border-color:#ffffff2e;transform:translateY(-1px)}.nav-link--current{color:#fff;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);border-color:transparent}.nav-link--external{gap:8px;border-color:var(--border);background:transparent;color:var(--text-color);font-weight:600}.nav-link--external:hover,.nav-link--external:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.nav-flyout{position:relative;display:inline-flex}.nav-flyout__menu{position:absolute;top:100%;left:0;z-index:50;display:none;flex-direction:column;gap:4px;margin-top:6px;padding:6px;min-width:max-content;background:var(--surface-strong);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 28px #00000059}.nav-flyout__menu:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.nav-flyout:hover .nav-flyout__menu,.nav-flyout:focus-within .nav-flyout__menu{display:flex}.nav-flyout__menu .nav-link{justify-content:flex-start;width:100%}.nav-flyout__trigger{cursor:pointer}.topbar__utility{display:flex;align-items:center;gap:10px;flex-shrink:0}.route-shell{display:grid;gap:20px}.compare-grid{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:20px;align-items:start}.compare-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.compare-column,.compare-column__canvases,.harness-grid{display:grid;gap:20px}.harness-pair{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:20px;align-items:start}.harness-box{display:flex;align-items:flex-start;justify-content:flex-start;border-radius:20px;border:1px dashed var(--border);background:var(--surface-muted);padding:16px}.harness-box--width{width:420px}.harness-box--width-square{width:320px}.harness-box--height{width:100%;min-height:260px;height:260px}.harness-box--height-square{width:100%;min-height:320px;height:320px}.app-shell{display:grid;grid-template-columns:minmax(280px,360px) minmax(360px,1fr) minmax(260px,320px);gap:20px}.panel{background:var(--surface);background-image:var(--panel-overlay);border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-elevation),var(--glow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.panel__header{display:grid;gap:6px}.panel__header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel__lede,.detail,.field__hint,.notes,.errors{color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.field__static{min-height:46px;display:flex;align-items:center;width:100%;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text-color);font-weight:600}.eyebrow{margin:0;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-strong)}.group+.group{margin-top:24px}.group h2{margin:0 0 14px;font-size:1rem}.control-tabs{display:flex;gap:4px;margin:0 0 20px;padding:4px;border-radius:10px;background:var(--surface-strong);border:1px solid var(--border)}.control-tabs__tab{flex:1;padding:8px 10px;border:none;border-radius:7px;background:transparent;color:var(--text-muted, var(--text-color));font:inherit;font-weight:600;cursor:pointer}.control-tabs__tab:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.control-tabs__tab--active{background:var(--accent);color:var(--accent-contrast, #fff)}.tab-panel[hidden]{display:none}.autosave-list{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto}.autosave-list__item{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong)}.autosave-list__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.autosave-list__meta strong{overflow-wrap:anywhere}.autosave-list__meta small{color:var(--text-muted, var(--text-color));line-height:1.35}.autosave-list__actions{display:flex;gap:6px;flex-wrap:wrap}.autosave-list__actions .button{padding:4px 12px;font-size:.85em}.autosave-toggle{display:flex;align-items:center;gap:8px;margin:14px 0 4px;cursor:pointer}.advanced-settings{border-top:1px solid var(--border);padding-top:20px}.advanced-settings__summary{cursor:pointer;font-weight:700;list-style:none}.advanced-settings__summary::-webkit-details-marker{display:none}.advanced-settings__summary:before{content:"▸";display:inline-block;margin-right:8px;transition:transform .12s ease}.advanced-settings[open] .advanced-settings__summary:before{transform:rotate(90deg)}.advanced-settings__section{margin-top:16px}.advanced-settings__heading{margin:0 0 12px;font-size:.95rem}.field{display:grid;gap:6px;margin-bottom:12px}.field-grid{display:grid;gap:10px}.field-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.field__label{font-size:.92rem;font-weight:600}.field__input{width:100%;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--surface-strong);color:inherit}textarea.field__input{resize:vertical}.field__input:disabled{opacity:.5;cursor:not-allowed}.radio-list{display:grid;gap:8px}.radio-list__item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;cursor:pointer}.radio-list__item input:disabled{cursor:not-allowed}.radio-list__body{display:grid;gap:2px}.radio-list__label{font-size:.9rem;font-weight:600}.radio-list__params{display:grid;gap:6px;margin-top:6px;padding-left:10px;border-left:2px solid var(--color-border, #ccc)}.strategy-results{margin-top:16px;display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--color-border, #ccc)}.strategy-results__title{margin:0}.strategy-results__subtitle{margin:4px 0 0;font-size:.95rem;color:var(--muted)}.strategy-results__grid{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.strategy-results__cell{margin:0;display:grid;gap:4px}.ec-devapp-field-note{margin:2px 0 0;font-size:.6875rem;line-height:1.4;color:var(--text-muted, #888)}.ec-rational-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:stretch}.ec-rational-input__field{min-width:0}.ec-rational-input__stepper{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:4px}.ec-rational-input__button{min-width:24px;min-height:18px;padding:0 6px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);color:inherit;font:inherit;line-height:1;cursor:pointer}.ec-rational-input__button:hover:not(:disabled),.ec-rational-input__button:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-strong))}.ec-rational-input__button:disabled{opacity:.45;cursor:default}.ec-rgba-color-input{display:grid;grid-template-columns:auto minmax(0,1fr) 28px;gap:8px;align-items:center}.ec-rgba-color-input__color{width:56px;min-width:56px;padding:4px}.ec-rgba-color-input__opacity{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px;align-items:center}.ec-rgba-color-input__range{width:100%;accent-color:var(--accent)}.ec-rgba-color-input__preview{width:28px;height:28px;border:1px solid var(--border);border-radius:8px;background-image:linear-gradient(45deg,rgba(255,255,255,.18) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.18) 75%),linear-gradient(45deg,rgba(255,255,255,.18) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.18) 75%);background-position:0 0,6px 6px;background-size:12px 12px;box-shadow:inset 0 0 0 1px #0000002e}.dataset-picker{position:relative}.dataset-picker__button{display:flex;align-items:center;justify-content:space-between;min-height:46px;text-align:left;cursor:pointer}.dataset-picker__menu{position:absolute;z-index:20;top:calc(100% + 8px);left:0;display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,230px);gap:10px;width:min(620px,calc(100vw - 48px));padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong);box-shadow:0 18px 48px var(--shadow-color)}.dataset-picker__list{display:grid;gap:6px;max-height:320px;overflow:auto}.dataset-picker__option{display:grid;gap:3px;width:100%;min-height:52px;padding:9px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-color);text-align:left;cursor:pointer}.dataset-picker__option small,.dataset-picker__preview-header span,.dataset-picker__preview-empty{color:var(--muted)}.dataset-picker__option:hover,.dataset-picker__option:focus-visible,.dataset-picker__option--selected{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.dataset-picker__empty,.dataset-picker__preview{padding:12px;border-radius:12px;background:var(--surface-muted)}.dataset-picker__preview{min-height:180px}.dataset-picker__preview-header{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:.86rem}.dataset-picker__preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dataset-picker__preview-grid img{display:block;width:100%;aspect-ratio:1 / 1;border-radius:8px;border:1px solid var(--border);object-fit:cover;background:var(--canvas-surface)}.dataset-picker__preview-empty{margin:0;font-size:.86rem}.field__input--color{min-height:40px;padding:4px;cursor:pointer;overflow:hidden}.field__input--color:disabled{cursor:not-allowed;opacity:.8}.field__input--color::-webkit-color-swatch-wrapper{padding:0}.field__input--color::-webkit-color-swatch{border:0;border-radius:10px}.field__input--color::-moz-color-swatch{border:0;border-radius:10px}.actions{display:flex;gap:10px;flex-wrap:wrap}.button{border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-pill);clip-path:var(--button-clip);background:var(--surface-strong);color:inherit;padding:10px 16px;cursor:pointer;transition:transform .12s ease,border-color .12s ease,background-color .12s ease}.button:hover:enabled,.button:focus-visible:enabled{transform:translateY(-1px);border-color:#fff3}.button:disabled{cursor:not-allowed;opacity:.45}.button--primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);color:#fff;border-color:transparent}.button--subtle{background:transparent}.button--danger{border-color:#ca2b3073;color:#f99498}.todos-route{align-items:start}.todos-panel,.ec-rule-viewer-panel,.ec-color-lab-panel{display:grid;gap:22px}.ec-cell-lab-panel{display:flex;flex-direction:column;gap:12px;position:relative}.ec-cell-lab-panel__header{padding:0}.ec-cell-lab-panel__header-row{display:flex;align-items:center;gap:10px}.ec-cell-lab-panel__title{font-size:.9rem;font-weight:600;line-height:1;color:var(--text);display:flex;align-items:baseline;gap:6px}.ec-cell-lab-panel__eyebrow{font-size:.65rem;font-weight:400;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.ec-cell-lab-route--zen .ec-cell-lab-panel{background:none;border:none;border-radius:0;padding:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;gap:0}.ec-devapp-panel{display:grid;gap:22px;position:relative}.ec-devapp-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}.ec-devapp-layout--zen{grid-template-columns:1fr;gap:0}.ec-devapp-route--zen{gap:0}.ec-devapp-route--zen .ec-devapp-panel{background:none;border:none;border-radius:0;padding:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;gap:0}.ec-devapp-route--zen .ec-devapp-workbench,.ec-devapp-route--zen .ec-cell-lab-section{gap:0}.ec-devapp-route--zen .ec-cell-lab-pane{padding:0;border:none;border-radius:0;background:none;max-height:none;overflow:visible}.ec-devapp-route--zen .ec-editor-stage{border-radius:0;overflow:hidden}.ec-devapp-route--zen .ec-cell-lab-pane__canvas{border-radius:0;border:none}.ec-devapp-workbench{display:grid;gap:12px}.app-page--devapp{height:100dvh;min-height:0;overflow:hidden;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.app-page--devapp .ec-devapp-panel,.app-page--devapp .ec-devapp-layout,.app-page--devapp .ec-devapp-workbench,.app-page--devapp .ec-devapp-workbench>.card,.app-page--devapp .ec-cell-lab-section,.app-page--devapp .ec-editor-pane-wrap{display:flex;flex-direction:column;min-width:0;min-height:0;align-items:stretch}.app-page--devapp .ec-devapp-panel{height:100%;overflow:hidden;padding:12px;gap:10px;background:none;border:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.ec-devapp-workbench>.card{padding:0;border:none;background:none;border-radius:0;box-shadow:none}.app-page--devapp .ec-devapp-layout,.app-page--devapp .ec-devapp-workbench,.app-page--devapp .ec-devapp-workbench>.card,.app-page--devapp .ec-cell-lab-section,.app-page--devapp .ec-editor-pane-wrap{flex:1 1 auto}.app-page--devapp .panel__header{display:none}.app-page--devapp .ec-cell-lab-pane{flex:1 1 auto;max-height:none;min-width:0;min-height:0;width:auto;padding:6px}.ec-devapp-toolbar-layer{position:absolute;top:54px;right:0;bottom:0;left:0;pointer-events:none;z-index:12}.ec-devapp-toolbar-shell{border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 10px 24px color-mix(in srgb,var(--background-color) 56%,transparent);pointer-events:auto}.ec-devapp-toolbar-shell--floating{position:absolute;z-index:15;width:var(--ec-devapp-toolbar-fixed-width, fit-content);max-width:min(calc(100vw - 56px),var(--ec-devapp-toolbar-max-width, 32rem));pointer-events:auto}.ec-devapp-toolbar-shell--clustered{box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 18%,var(--background-color) 58%)}.ec-devapp-toolbar-shell--preview-target{border-color:color-mix(in srgb,var(--accent) 44%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 20%,transparent),0 10px 26px color-mix(in srgb,var(--accent) 16%,var(--background-color) 58%)}.ec-devapp-toolbar-shell--raised{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 80%,transparent),0 0 28px color-mix(in srgb,var(--accent) 55%,transparent),0 18px 40px color-mix(in srgb,var(--background-color) 55%,transparent)}.ec-devapp-toolbar-shell--raised .ec-devapp-toolbar-shell__header{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 18%,transparent);border-bottom-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.ec-devapp-toolbar-shell__header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;font-size:.76rem;font-weight:600;color:var(--muted);border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none}.ec-devapp-toolbar-shell__header:active{cursor:grabbing}.ec-devapp-toolbar-shell__header:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 76%,white);outline-offset:-2px}.ec-devapp-toolbar-shell__body{padding:8px}.ec-devapp-toolbar-shell__close.button{padding:0;min-width:26px;width:26px;height:26px;border-radius:7px}.ec-devapp-toolbar-shell--simulation{--ec-devapp-toolbar-max-width: 30rem}.ec-devapp-toolbar-shell--cell-tools{--ec-devapp-toolbar-max-width: 29rem}.ec-devapp-toolbar-shell--layers{--ec-devapp-toolbar-max-width: 18rem}.ec-devapp-toolbar-shell--layer-properties{--ec-devapp-toolbar-max-width: 21rem}.ec-devapp-toolbar-shell--pattern-selector{--ec-devapp-toolbar-fixed-width: 18rem;--ec-devapp-toolbar-max-width: 18rem}.ec-devapp-toolbar-shell--monitoring{--ec-devapp-toolbar-max-width: 21rem}.ec-devapp-toolbar-shell--player{--ec-devapp-toolbar-fixed-width: 22rem;--ec-devapp-toolbar-max-width: 22rem}.ec-devapp-toolbar-shell--views{--ec-devapp-toolbar-max-width: 21rem}.ec-devapp-toolbar-shell--png-export,.ec-devapp-toolbar-shell--load-save{--ec-devapp-toolbar-max-width: 24rem}.ec-devapp-toolbar-shell--examples{--ec-devapp-toolbar-fixed-width: 30rem;--ec-devapp-toolbar-max-width: 30rem}.ec-devapp-examples{display:flex;flex-direction:column;gap:6px;font-size:.74rem}.ec-devapp-examples__table{width:100%;border-collapse:collapse}.ec-devapp-examples__table th{text-align:left;padding:2px 4px;border-bottom:1px solid var(--border)}.ec-devapp-examples__table td{padding:2px 4px;border-bottom:1px solid var(--border-subtle, rgba(127, 127, 127, .18))}.ec-devapp-examples__sort{background:none;border:0;color:inherit;font:inherit;font-weight:600;cursor:pointer;padding:0}.ec-devapp-examples__name{max-width:15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-devapp-examples__date,.ec-devapp-examples__size{white-space:nowrap;font-variant-numeric:tabular-nums;opacity:.85}.ec-devapp-examples__actions{white-space:nowrap;text-align:right}.ec-devapp-examples__actions .button{padding:1px 6px;font-size:.72rem}.ec-devapp-examples__delete{opacity:.7}.ec-devapp-examples--compact .ec-devapp-examples__table th,.ec-devapp-examples--compact .ec-devapp-examples__table td{padding:0 4px;font-size:.68rem}.ec-devapp-examples__paging{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ec-devapp-examples__paging .button{padding:1px 8px}.ec-devapp-examples__pageinfo{font-variant-numeric:tabular-nums;opacity:.8}.ec-devapp-examples__pagesize{width:auto;min-height:22px;padding:1px 6px;font-size:.72rem}.ec-devapp-examples__compact{display:flex;align-items:center;gap:4px}.ec-devapp-toolbar-shell--monitoring .ec-devapp-toolbar-shell__body{padding:6px}.ec-devapp-fa-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;transition:transform .14s ease,color .14s ease,opacity .14s ease}.ec-devapp-fa-icon__svg{width:100%;height:100%}.ec-devapp-icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:30px;padding:6px 10px;border-radius:9px;background:color-mix(in srgb,var(--surface-strong) 92%,transparent)}.ec-devapp-icon-button:hover:enabled .ec-devapp-fa-icon,.ec-devapp-icon-button:focus-visible:enabled .ec-devapp-fa-icon{transform:scale(1.08)}.ec-devapp-icon-button--icon-only{min-width:30px;width:30px;padding:0}.ec-devapp-icon-button__label{font-size:.78rem;line-height:1}@keyframes ec-devapp-icon-blink{0%,to{opacity:1}50%{opacity:.35}}.ec-devapp-icon-button--blink{animation:ec-devapp-icon-blink 1.1s ease-in-out infinite;border-color:var(--accent)}@media(prefers-reduced-motion:reduce){.ec-devapp-icon-button--blink{animation:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 45%,transparent)}}.ec-slider{display:flex;align-items:center;height:22px;padding:0;cursor:pointer;touch-action:none}.ec-slider:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.ec-slider__track{position:relative;width:100%;height:4px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border)}.ec-slider__fill{position:absolute;top:0;left:0;height:100%;border-radius:999px;background:var(--accent)}.ec-slider__detent{position:absolute;top:50%;width:2px;height:10px;transform:translate(-50%,-50%);background:color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:1px}.ec-slider__thumb{position:absolute;top:50%;width:14px;height:14px;transform:translate(-50%,-50%);border-radius:50%;background:var(--accent);border:2px solid var(--surface-strong);box-shadow:0 1px 3px #0006}.ec-slider[aria-disabled=true]{cursor:default;opacity:.5}.ec-devapp-toolbar{display:grid;gap:8px}.ec-devapp-icon-flip-x svg{transform:scaleX(-1)}.ec-devapp-toolbar-launcher{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:40;display:flex;gap:2px;padding:3px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface-strong) 88%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--background-color) 56%,transparent);pointer-events:auto;max-width:calc(100vw - 24px);flex-wrap:wrap;justify-content:center}.ec-devapp-toolbar-launcher__divider{align-self:stretch;width:1px;margin:2px 4px;background:var(--border)}.ec-devapp-toolbar-launcher .button--primary{box-shadow:0 0 0 1.5px color-mix(in srgb,var(--accent) 75%,transparent),0 0 12px color-mix(in srgb,var(--accent) 45%,transparent)}.ec-devapp-toolbar-launcher .button--primary:after{content:"";position:absolute;bottom:2px;left:50%;width:4px;height:4px;border-radius:999px;background:var(--accent-strong);transform:translate(-50%)}.ec-devapp-toolbar-launcher .ec-devapp-icon-button{position:relative}@keyframes ec-devapp-launcher-active-pulse{0%,to{transform:scale(1.08);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 90%,transparent),0 0 14px color-mix(in srgb,var(--accent) 55%,transparent)}50%{transform:scale(1.16);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 100%,transparent),0 0 28px color-mix(in srgb,var(--accent) 90%,transparent)}}.ec-devapp-toolbar-launcher .ec-devapp-launcher-icon--active{z-index:1;animation:ec-devapp-launcher-active-pulse 1.6s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.ec-devapp-toolbar-launcher .ec-devapp-launcher-icon--active{animation:none;transform:scale(1.14);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 100%,transparent),0 0 20px color-mix(in srgb,var(--accent) 70%,transparent)}}.ec-devapp-timeline{width:17rem;font-size:.8rem}.ec-devapp-timeline__listwrap{position:relative}.ec-devapp-timeline__list{max-height:46vh}.ec-devapp-timeline__run{display:flex;align-items:center;flex:1 1 auto;min-width:0;height:100%;padding:0 4px;opacity:.6;font-size:.72rem;white-space:nowrap;overflow:hidden}.ec-devapp-timeline__run--current{opacity:.9}.ec-devapp-timeline__edit{display:flex;align-items:center;justify-content:space-between;gap:6px;flex:1 1 auto;min-width:0;height:100%;padding:0 4px;border-radius:5px;background:color-mix(in srgb,var(--surface) 70%,transparent)}.ec-devapp-timeline__edit-actions{display:inline-flex;gap:2px;flex-shrink:0}.ec-devapp-timeline__edit--current{outline:1px solid var(--accent)}.ec-devapp-timeline__editor-popover{position:absolute;left:4px;right:4px;z-index:5;max-height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:6px;background:var(--surface-2, hsl(0 0% 14%));box-shadow:0 8px 24px #00000080}.ec-devapp-timeline__footer{padding:4px 4px 0;font-size:.7rem;color:var(--text-muted);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.ec-devapp-timeline__editor{display:grid;gap:6px;padding:6px;border-radius:6px;background:color-mix(in srgb,var(--surface-muted) 80%,transparent)}.ec-devapp-timeline__field{display:flex;align-items:center;justify-content:space-between;gap:8px}.ec-devapp-timeline__field .field__input{width:11rem}.ec-devapp-timeline__editor-actions{display:flex;gap:6px;justify-content:flex-end}.ec-devapp-timeline__edit-label{display:inline-flex;align-items:baseline;gap:6px;min-width:0}.ec-devapp-timeline__edit-gen{font-variant-numeric:tabular-nums}.ec-devapp-shape-brushes{display:grid;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.ec-devapp-shape-brush{display:inline-flex;align-items:center;gap:6px;max-width:190px;font-size:.74rem}.ec-devapp-shape-brush__preview{width:18px;height:18px;flex:0 0 auto;border:1px solid currentColor;background:color-mix(in srgb,currentColor 28%,transparent)}.ec-devapp-shape-brush__preview--circle{border-radius:50%}.ec-devapp-shape-brush__preview--line{height:3px;transform:rotate(-35deg)}.ec-devapp-shape-brush__preview--preset-shape{transform:rotate(45deg) scale(.72)}.ec-devapp-toolbar-row{display:flex;align-items:center;gap:8px}.ec-devapp-toolbar-row--wrap{flex-wrap:wrap}.ec-devapp-toolbar-row--split{justify-content:space-between;flex-wrap:wrap}.ec-devapp-toolbar-group{display:inline-flex;align-items:center;gap:6px;min-width:0}.ec-devapp-toolbar-group--dense{gap:4px;flex-wrap:wrap}.ec-devapp-toolbar-group--inline-form{flex-wrap:wrap;justify-content:flex-end}.ec-devapp-toolbar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px 8px;align-items:end}.ec-devapp-toolbar-grid .field{margin-bottom:0}.ec-devapp-toolbar-grid .field__label{font-size:.72rem}.ec-devapp-toolbar-grid .field__input{min-height:30px;padding:5px 8px;border-radius:9px;font-size:.78rem}.ec-devapp-toolbar-toggle{gap:6px;font-size:.78rem;white-space:nowrap}.ec-devapp-toolbar-hint{display:block;font-size:.68rem;margin-top:2px;max-width:180px;white-space:normal}.ec-devapp-toolbar-hint--warning{color:var(--warning, #b8860b)}.ec-devapp-toolbar--simulation .field{display:flex;align-items:center;gap:6px;margin-bottom:0}.ec-devapp-toolbar--simulation .field__label{font-size:.72rem;white-space:nowrap}.ec-devapp-toolbar--simulation .field__input{width:60px;min-height:30px;padding:5px 8px;border-radius:9px}.ec-devapp-toolbar--monitoring{width:100%}.ec-devapp-monitoring-toolbar{display:grid}.ec-devapp-pattern-selector__page-label{min-width:4.5rem;text-align:center}.ec-devapp-pattern-tile__delete.button{justify-self:end;min-width:24px;width:24px;height:24px;padding:0;border-radius:7px}.ec-devapp-toolbar-dock-preview{position:absolute;z-index:14;border:2px dashed color-mix(in srgb,var(--accent) 78%,white);border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent);pointer-events:none}.ec-devapp-toolbar-dock-preview__label{position:absolute;top:-12px;left:12px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 88%,var(--accent));border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));color:var(--text-primary);font-size:.74rem;letter-spacing:.02em;white-space:nowrap}.ec-devapp-layer-toolbar{display:grid;gap:0;min-width:220px}.ec-devapp-layer-list{list-style:none;margin:0;padding:0;display:grid;gap:0}.ec-devapp-layer-row{display:flex;align-items:center;gap:0;padding:3px 4px;border-radius:6px}.ec-devapp-layer-row--active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.ec-devapp-layer-row__eye{flex:0 0 24px;min-width:24px;padding:2px 4px;background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:.75rem;line-height:1}.ec-devapp-layer-row__eye:hover{color:var(--text-color);background:color-mix(in srgb,var(--text-color) 8%,transparent)}.ec-devapp-layer-row__name{flex:1 1 0;min-width:0;text-align:left;background:none;border:none;color:var(--text-color);cursor:pointer;font-size:.8rem;padding:2px 6px;border-radius:4px;display:flex;align-items:center;gap:5px}.ec-devapp-layer-row__name-text{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:0}.ec-devapp-layer-row__name-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ec-devapp-layer-row__rule-label{font-size:.65rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ec-devapp-layer-row__name:hover{background:color-mix(in srgb,var(--text-color) 8%,transparent)}.ec-devapp-layer-row__badge{flex:0 0 auto;font-size:.65rem;font-weight:700;padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent);letter-spacing:.04em}.ec-devapp-layer-row__menu-wrap{position:relative;flex:0 0 auto}.ec-devapp-layer-row__swatch{flex:0 0 auto;width:18px;height:18px;padding:0;border:1px solid color-mix(in srgb,var(--text-color) 25%,transparent);border-radius:4px;background:none;cursor:pointer}.ec-devapp-layer-row__swatch::-webkit-color-swatch-wrapper{padding:0}.ec-devapp-layer-row__swatch::-webkit-color-swatch{border:none;border-radius:3px}.ec-devapp-layer-row__swatch--canvas,.ec-devapp-layer-row__swatch--canvas::-webkit-color-swatch{border-radius:50%}.ec-devapp-layer-row__menu-btn{padding:2px 6px;background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:.8rem;line-height:1}.ec-devapp-layer-row__menu-btn:hover,.ec-devapp-layer-row__menu-btn[aria-expanded=true]{color:var(--text-color);background:color-mix(in srgb,var(--text-color) 10%,transparent)}.ec-devapp-layer-menu{position:absolute;right:0;top:calc(100% + 2px);z-index:200;list-style:none;margin:0;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:160px;box-shadow:0 4px 16px #0000003d}.ec-devapp-layer-menu li button{display:block;width:100%;text-align:left;background:none;border:none;border-radius:5px;padding:5px 10px;font-size:.8rem;color:var(--text-color);cursor:pointer;white-space:nowrap}.ec-devapp-layer-menu li button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 12%,transparent)}.ec-devapp-layer-menu li button:disabled{color:var(--text-muted);cursor:default}.ec-devapp-layer-menu__separator{height:1px;background:var(--border);margin:3px 6px}.ec-devapp-layer-toolbar__footer{padding:6px 4px 2px;border-top:1px solid var(--border);margin-top:4px}.ec-devapp-views-compose{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ec-devapp-views-compose .button{font-size:.72rem;padding:3px 7px}.ec-devapp-views-capture{display:flex;align-items:center;gap:6px;padding:6px 4px 2px;border-top:1px solid var(--border);margin-top:4px}.ec-devapp-player-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px;align-items:center;font-size:.72rem}.ec-devapp-player-panel__deadzone,.ec-devapp-player-panel__body,.ec-devapp-player-panel__footprint,.ec-devapp-player-panel>.control-tabs,.ec-devapp-player-panel__tab,.ec-devapp-player-panel__physics,.ec-devapp-player-panel__readback,.ec-devapp-player-panel__camera-follow-algorithm{grid-column:1 / -1}.ec-devapp-player-panel__camera-follow-algorithm span{white-space:nowrap}.ec-devapp-player-panel__camera-follow-algorithm select{flex:1;min-width:0}.ec-devapp-player-panel__deadzone{display:flex;flex-direction:column;gap:3px}.ec-devapp-player-panel__render-on{flex-direction:column;align-items:stretch;gap:1px}.ec-devapp-player-panel__render-on>span{font-size:.66rem;font-weight:600;opacity:.82;text-align:left}.ec-devapp-player-panel__render-on select{min-width:0}.ec-devapp-player-panel .field{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;column-gap:6px;row-gap:1px;margin-bottom:0}.ec-devapp-player-panel .settings-grid__field{grid-template-columns:minmax(0,auto) minmax(0,1fr);justify-items:end}.ec-devapp-player-panel .field__label{font-size:.66rem;font-weight:600;opacity:.82;white-space:nowrap}.ec-devapp-player-panel .field__input,.ec-devapp-player-panel select.field__input{width:100%;min-height:20px;padding:1px 6px;border-radius:7px;font-size:.72rem}.ec-devapp-player-panel .field input[type=number]{max-width:82px}.ec-devapp-player-panel .ec-rgba-color-input__opacity{grid-template-columns:minmax(0,110px) 64px}.ec-devapp-player-panel .control-tabs__tab{padding:4px 8px}.ec-devapp-player-panel__tab .detail{font-size:.68rem}.ec-devapp-player-panel__active,.ec-devapp-player-panel__toggle{display:flex;align-items:center;gap:5px;font-size:.74rem;cursor:pointer}.ec-devapp-player-panel__body{display:flex;gap:6px;align-items:flex-start}.ec-devapp-player-panel__tab{display:flex;flex-direction:column;gap:7px}.ec-devapp-player-panel__tab .detail{margin:0;opacity:.8;line-height:1.35}.ec-devapp-player-panel__preset-row{display:flex;gap:6px;align-items:flex-end}.ec-devapp-player-panel__preset-row .field-block{flex:1;margin-bottom:0}.ec-devapp-player-panel__preset-row input[type=text]{flex:1;min-height:22px}.ec-devapp-player-panel__preset-row .button{white-space:nowrap}.ec-devapp-player-panel__controls{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.ec-devapp-player-panel__row2{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ec-devapp-player-panel__row2 .field{grid-template-columns:minmax(0,1fr)}.ec-devapp-player-panel__preview{flex:0 0 auto;width:56px;height:56px;border:1px solid var(--border);border-radius:6px;background:var(--surface-sunken, rgba(0, 0, 0, .25))}.ec-devapp-player-panel__physics{padding-top:5px;border-top:1px solid var(--border)}.ec-devapp-player-panel__physics>summary{cursor:pointer;font-size:.7rem;opacity:.82;-webkit-user-select:none;user-select:none}.ec-devapp-player-panel__physics-grid{margin-top:5px}.ec-devapp-player-panel__readback{display:flex;flex-direction:column;gap:4px;padding-top:5px;border-top:1px solid var(--border)}.ec-devapp-player-panel__readback-perf{font-size:.66rem;font-variant-numeric:tabular-nums;opacity:.78}.settings-grid{display:grid;gap:3px 10px}.settings-grid__field.field{display:grid;grid-template-columns:minmax(0,1fr) 56px;align-items:center;column-gap:6px;margin-bottom:0}.settings-grid__field .field__label{font-size:.66rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-grid__field .field__input{width:100%;min-height:22px;padding:2px 6px;border-radius:8px;font-size:.74rem;text-align:right}.settings-grid__field .field__input--color{padding:1px;min-height:22px}.settings-grid__toggle{justify-self:end;width:16px;height:16px;margin:0}.ec-devapp-views-capture__label{display:flex;align-items:center;gap:4px;font-size:.72rem}.ec-devapp-views-capture__label input{width:52px}.ec-devapp-views-capture .button{font-size:.72rem;padding:3px 7px}.ec-devapp-postfx{border-top:1px solid var(--border);margin-top:4px;padding:6px 4px 2px;display:flex;flex-direction:column;gap:6px}.ec-devapp-postfx__head{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.ec-devapp-postfx__empty{font-size:.72rem;opacity:.6;margin:0}.ec-devapp-postfx__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.ec-devapp-postfx__item{border:1px solid var(--border);border-radius:6px;padding:5px 6px;display:flex;flex-direction:column;gap:4px}.ec-devapp-postfx__row{display:flex;align-items:center;justify-content:space-between;gap:6px}.ec-devapp-postfx__toggle{display:flex;align-items:center;gap:6px;font-size:.78rem;cursor:pointer}.ec-devapp-postfx__actions{display:flex;gap:2px}.ec-devapp-postfx__todo{font-size:.68rem;color:var(--warning, #b8860b);margin:0}.ec-devapp-postfx__param{display:grid;grid-template-columns:64px 1fr 34px;align-items:center;gap:6px;font-size:.72rem}.ec-devapp-postfx__param input[type=range]{width:100%}.ec-devapp-postfx__param-value{text-align:right;font-variant-numeric:tabular-nums;opacity:.8}.ec-devapp-postfx__add{display:flex;gap:4px;align-items:center}.ec-devapp-postfx__select{flex:1;min-width:0}.ec-devapp-postfx__patreon{display:inline-block;text-align:center;font-size:.74rem;padding:5px 8px;border-radius:6px;background:var(--accent-soft, rgba(233, 30, 99, .12));color:var(--accent, #e91e63);text-decoration:none}.ec-devapp-postfx__patreon:hover{text-decoration:underline}.ec-devapp-layer-properties{min-width:220px;max-width:280px}.ec-devapp-layer-properties__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ec-devapp-layer-properties__grid .field{margin-bottom:0}.ec-devapp-layer-properties__grid .field__label{font-size:.75rem}.ec-devapp-layer-properties__grid .field__input{min-height:30px;padding:5px 8px;font-size:.8rem}.ec-devapp-layer-properties__grid .ec-rational-input__button{min-width:22px;min-height:13px;padding:0 4px;font-size:.72rem}.ec-devapp-layer-properties__pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ec-devapp-layer-properties__span-2{grid-column:1 / -1}.ec-devapp-layer-properties__pair .field{margin-bottom:0}.ec-devapp-layer-properties__readonly-field{display:flex;align-items:center;gap:6px}.ec-devapp-layer-properties__readonly-value{flex:1 1 0;font-size:.8rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-rule-selector{position:relative}.ec-rule-selector__trigger{width:100%;text-align:left;font-size:.8rem;min-height:30px;padding:5px 8px}.ec-rule-selector__popover-shell{position:absolute;top:calc(100% + 2px);left:0;z-index:300;width:340px;background:var(--surface-2, hsl(0 0% 14%));border:1px solid hsl(0 0% 100% / .12);border-radius:6px;box-shadow:0 8px 24px #00000080;overflow:hidden}.ec-rule-selector__popover{max-height:320px}.ec-rule-selector__group-label{display:flex;align-items:center;gap:4px;flex:1 1 auto;min-width:0;padding:0 10px 0 6px;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);-webkit-user-select:none;user-select:none}.ec-rule-selector__item{display:flex;align-items:center;gap:0;flex:1 1 auto;min-width:0;height:100%;padding:0 10px 0 4px;font-size:.8rem;color:var(--text);text-align:left}.ec-rule-selector__item:hover{background:#ffffff12}.ec-rule-selector__item--selected{background:#258cf438;color:#a3d1ff}.ec-rule-selector__item--selected:hover{background:#258cf44d}.ec-rule-selector__item-name{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:3px}.ec-rule-selector__item-id{font-size:.68rem;font-family:monospace;color:var(--text-muted);white-space:nowrap;margin-left:5px}.ec-rule-selector__item-source{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:0;text-align:right;margin-left:5px}.ec-rule-selector__loading,.ec-rule-selector__error{margin:4px 10px;font-size:.78rem;color:var(--text-muted)}.ec-rule-selector__error{color:#f99498}.ec-devapp-rule-label{margin:2px 0 0;font-size:.7rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-palette-selector{position:relative}.ec-palette-selector__trigger{display:flex;align-items:center;gap:6px;width:100%;text-align:left;font-size:.8rem;min-height:30px;padding:5px 8px}.ec-palette-selector__popover-shell{position:absolute;top:calc(100% + 2px);left:0;z-index:300;width:280px;background:var(--surface-2, hsl(0 0% 14%));border:1px solid hsl(0 0% 100% / .12);border-radius:6px;box-shadow:0 8px 24px #00000080;overflow:hidden}.ec-palette-selector__popover{max-height:280px}.ec-palette-selector__item{display:flex;align-items:center;gap:6px;flex:1 1 auto;min-width:0;height:100%;padding:0 10px;font-size:.8rem;color:var(--text);text-align:left}.ec-palette-selector__item:hover{background:#ffffff12}.ec-palette-selector__item--selected{background:#258cf438;color:#a3d1ff}.ec-palette-selector__item--selected:hover{background:#258cf44d}.ec-palette-selector__group-header{display:flex;align-items:center;gap:4px;flex:1 1 auto;min-width:0;padding:0 10px 0 6px;font-size:.68rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;-webkit-user-select:none;user-select:none}.ec-palette-selector__twistie,.ec-rule-selector__twistie{display:inline-flex;justify-content:center;width:10px;flex-shrink:0;font-size:.6rem}.ec-palette-selector__search,.ec-rule-selector__search{display:flex;align-items:center;gap:4px;padding:6px 8px 4px}.ec-palette-selector__search-input,.ec-rule-selector__search-input{flex:1 1 auto;min-width:0;font-size:.72rem;padding:3px 6px}.ec-palette-selector__search-mode,.ec-rule-selector__search-mode{flex-shrink:0;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em;padding:3px 6px;border:1px solid hsl(0 0% 100% / .15);border-radius:4px;background:none;color:var(--text-muted);cursor:pointer}.ec-palette-selector__search-mode--on,.ec-rule-selector__search-mode--on{background:#258cf438;border-color:#258cf473;color:#a3d1ff}.ec-palette-selector__item--match,.ec-rule-selector__item--match{background:#f4c0251f}.ec-palette-selector__item--match-active,.ec-rule-selector__item--match-active{background:#f4c02547;color:#ffecb3}.ec-palette-selector__item-source{font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 0}.ec-palette-selector__swatch{display:inline-flex;gap:1px;flex-shrink:0}.ec-palette-selector__swatch-dot{display:inline-block;width:8px;height:8px;border-radius:1px}.ec-palette-selector__loading,.ec-palette-selector__error{margin:4px 10px;font-size:.78rem;color:var(--text-muted)}.ec-palette-selector__error{color:#f99498}.ec-palette-selector__footer,.ec-rule-selector__footer{padding:5px 10px;font-size:.68rem;color:var(--text-muted);border-top:1px solid hsl(0 0% 100% / .08);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.ec-cell-lab-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr) minmax(260px,320px);gap:22px;align-items:start}.ec-cell-lab-sidebar,.ec-cell-lab-workbench,.ec-cell-lab-detail,.ec-cell-lab-records,.ec-cell-lab-node-list,.ec-cell-lab-section{display:grid;gap:12px;min-width:0}.ec-cell-lab-toolbar{display:flex;gap:10px;flex-wrap:wrap}.ec-devapp-pattern-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.ec-devapp-pattern-gallery.ec-devapp-pattern-gallery--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ec-devapp-pattern-tile{display:grid;gap:6px;justify-items:center;align-content:start;min-width:0;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);color:var(--text-color);text-align:center;cursor:pointer}.ec-devapp-pattern-tile:hover,.ec-devapp-pattern-tile:focus-visible,.ec-devapp-pattern-tile--selected{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}.ec-devapp-pattern-tile span{font-size:.78rem;color:var(--muted);width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ec-devapp-pattern-preview-canvas{border:1px solid var(--border);background:#000;image-rendering:pixelated;display:block;max-width:100%}.ec-cell-lab-section h2{margin:0;font-size:1rem}.ec-cell-lab-record,.ec-cell-lab-node{display:grid;gap:4px;width:100%;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted);color:var(--text-color);text-align:left;cursor:pointer}.ec-cell-lab-record:hover,.ec-cell-lab-record:focus-visible,.ec-cell-lab-record--selected,.ec-cell-lab-node:hover,.ec-cell-lab-node:focus-visible,.ec-cell-lab-node--selected{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}.ec-cell-lab-record span,.ec-cell-lab-node span{color:var(--muted);font-size:.84rem}.ec-forest-tree-shell{display:grid;gap:8px}.ec-forest-tree{max-height:480px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.ec-forest-tree__select{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;height:100%;padding:0 10px 0 4px;cursor:pointer;color:var(--text-color);white-space:nowrap}.ec-forest-tree__select:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}.ec-forest-tree__select--selected{background:color-mix(in srgb,var(--accent) 18%,var(--surface-muted))}.ec-forest-tree__twistie{display:inline-flex;justify-content:center;width:12px;flex-shrink:0;font-size:.7rem;color:var(--muted)}.ec-forest-tree__name{flex:0 0 auto}.ec-forest-tree__id{-webkit-user-select:text;user-select:text;font-size:.85rem}.ec-forest-tree__mode,.ec-forest-tree__name,.ec-forest-tree__status,.ec-forest-tree__description,.ec-forest-tree__meta{color:var(--muted);font-size:.8rem}.ec-forest-tree__name{color:var(--text-color)}.ec-forest-tree__mode,.ec-forest-tree__meta,.ec-forest-tree__status,.ec-forest-tree__description{overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.ec-forest-tree__warning{color:color-mix(in srgb,#ff9f43 80%,var(--text-color));font-size:.8rem;flex-shrink:0}.route-empty-state{display:grid;gap:12px}.route-empty-state__actions{display:flex;gap:10px;flex-wrap:wrap}.ec-cell-lab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ec-cell-lab-selector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.ec-cell-lab-selector-slot{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted)}.ec-cell-lab-pane{display:grid;place-items:center;padding:12px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--canvas-surface) 82%,black);min-width:0;max-height:78vh;overflow:hidden;-webkit-user-select:none;user-select:none}.ec-cell-lab-pane__canvas{width:min(100%,640px);aspect-ratio:1 / 1;image-rendering:pixelated;image-rendering:crisp-edges;border-radius:12px;border:1px solid var(--border);background:#12151c}.ec-editor-stage{position:relative;max-width:100%;overflow:hidden;border-radius:12px;-webkit-user-select:none;user-select:none}.ec-editor-stage>*{position:absolute;top:0;left:0}.ec-editor-stage__overlay{background:transparent;border:none;touch-action:none;cursor:crosshair}.ec-editor-stage__visual-layer{background:transparent;border:none;pointer-events:none}.ec-devapp-cursor{position:absolute;display:block;transform:translate(-50%,-50%);filter:var(--crosshair-filter);pointer-events:none;-webkit-user-select:none;user-select:none}.ec-devapp-deadzone-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px dashed rgba(255,214,90,.85);border-radius:4px;box-shadow:0 0 0 1px #00000073;pointer-events:none;z-index:4}.ec-editor-pane-wrap{display:flex;flex-direction:column;min-width:0}.ec-editor-status-bar{padding:3px 10px;font-family:monospace;font-size:.6875rem;line-height:1.4;color:var(--text-secondary, #aaa);background:color-mix(in srgb,var(--canvas-surface, #111) 75%,black);border:1px solid var(--border, #333);border-top:none;border-radius:0 0 12px 12px;min-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ec-editor-settings-dialog{position:fixed;z-index:40;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 32px);border:none;padding:0;border-radius:22px;background:transparent;color:inherit;overflow:auto}.ec-editor-settings-dialog::backdrop{background:#050812b8}.ec-editor-settings-dialog__surface{display:grid;gap:18px;padding:22px;border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,black)}.ec-editor-settings-dialog__header,.ec-editor-settings-dialog__footer{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}.ec-editor-settings-dialog__header h3{margin:4px 0 0}.ec-editor-settings-dialog__body,.ec-editor-settings-dialog__section,.ec-editor-settings-dialog__toggles{display:grid;gap:14px}.ec-editor-settings-dialog__section h4{margin:0}.som-bundle-warnings{display:grid;gap:4px}.som-bundle-warnings ul{margin:0;padding-left:18px;display:grid;gap:2px}.field__input--color{min-height:44px;padding:6px}.dataset-images-dialog{position:fixed;z-index:50;width:min(900px,calc(100vw - 32px));max-height:calc(100vh - 32px);border:none;padding:0;border-radius:22px;background:transparent;color:inherit;overflow:auto}.dataset-images-dialog::backdrop{background:#050812b8}.datasets-route{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);max-width:1100px;margin:0 auto;padding:20px}.datasets-route__form-and-preview{display:grid;gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}@media(max-width:720px){.datasets-route__form-and-preview{grid-template-columns:minmax(0,1fr)}}.datasets-route__form,.generator-form{display:flex;flex-direction:column;gap:10px}.datasets-route__preview{display:flex;flex-direction:column;gap:8px}.datasets-route__preview-canvas{width:100%;height:auto;max-height:360px;object-fit:contain;image-rendering:pixelated;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 90%,black)}.datasets-route__items{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:12px}.datasets-route__item{border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.datasets-route__item-head{display:flex;gap:12px;align-items:baseline;justify-content:space-between}.detail--error{color:var(--danger, #e26d6d)}.detail--success{color:var(--success, #4fae7a)}.dataset-images-dialog__surface{display:grid;border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,black);overflow:hidden}.dataset-images-dialog__header{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}.dataset-images-dialog__header h3{margin:4px 0 0}.dataset-images-dialog__thumbnails{display:flex;flex-wrap:wrap;gap:8px;padding:16px 22px;min-height:104px}.dataset-images-dialog__thumb-btn{padding:0;border:2px solid transparent;border-radius:10px;background:none;cursor:pointer;flex-shrink:0;overflow:hidden;transition:border-color .1s}.dataset-images-dialog__thumb-btn:hover,.dataset-images-dialog__thumb-btn:focus-visible{border-color:var(--muted);outline:none}.dataset-images-dialog__thumb-btn--selected{border-color:var(--accent)}.dataset-images-dialog__thumb-btn img{display:block;width:80px;height:80px;object-fit:cover}.dataset-images-dialog__pagination{display:flex;align-items:center;gap:10px;padding:4px 22px 12px}.dataset-images-dialog__page-label{color:var(--muted);font-size:.85rem}.dataset-images-dialog__viewer{display:flex;align-items:center;justify-content:center;padding:20px 22px;border-top:1px solid var(--border);min-height:220px;background:var(--canvas-surface)}.dataset-images-dialog__viewer-inner{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:100%}.dataset-images-dialog__viewer-inner img{max-width:100%;max-height:52vh;object-fit:contain;border-radius:8px}.dataset-images-dialog__viewer-caption{margin:0;color:var(--muted);font-size:.82rem;text-align:center}.dataset-images-dialog__footer{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:14px 22px;border-top:1px solid var(--border)}.dataset-images-dialog__hint{color:var(--muted);font-size:.82rem}.checkbox-field{display:inline-flex;gap:10px;align-items:center}.ec-cell-lab-pane-grid{display:grid;gap:14px}.ec-cell-lab-pane-grid--1{grid-template-columns:minmax(0,1fr)}.ec-cell-lab-pane-grid--2,.ec-cell-lab-pane-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-cell-lab-pane-card{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface) 88%,var(--canvas-surface))}.ec-cell-lab-pane-card--focused{border-color:color-mix(in srgb,var(--accent) 52%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent)}.ec-cell-lab-pane-card--inactive{opacity:.64}.ec-cell-lab-pane-card__header{display:flex;gap:10px;flex-wrap:wrap;align-items:start;justify-content:space-between}.ec-cell-lab-pane-card__header h4{margin:4px 0 0}.ec-color-lab-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;align-items:start}.ec-color-lab-sidebar,.ec-color-lab-detail,.ec-color-lab-records,.ec-color-lab-colors,.ec-color-lab-section,.ec-color-lab-preview,.ec-color-lab-preview__swatches,.ec-color-lab-generator-toggles,.ec-color-lab-export-buttons{display:grid;gap:12px}.ec-color-lab-toolbar,.ec-color-lab-color__header{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between}.ec-color-lab-section h2{margin:0;font-size:1rem}.ec-color-lab-record,.ec-color-lab-color,.ec-color-lab-swatch{display:grid;gap:6px;width:100%;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted);color:var(--text-color);text-align:left}.ec-color-lab-record{cursor:pointer}.ec-color-lab-record:hover,.ec-color-lab-record:focus-visible,.ec-color-lab-record--selected{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}.ec-color-lab-record span,.ec-color-lab-swatch span,.ec-color-lab-color__title span{color:var(--muted);font-size:.84rem}.ec-color-lab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ec-color-lab-grid--channels{grid-template-columns:repeat(3,minmax(0,1fr))}.ec-color-lab-preview__gradient{min-height:82px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(90deg,#ffffff14,#ffffff05)}.ec-color-lab-export-buttons{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.ec-color-lab-dropzone{display:grid;gap:10px;padding:14px;border:1px dashed color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--surface-muted) 82%,var(--accent) 8%);transition:border-color .14s ease,background .14s ease}.ec-color-lab-dropzone--active{border-color:color-mix(in srgb,var(--accent) 62%,white 8%);background:color-mix(in srgb,var(--surface-muted) 70%,var(--accent) 16%)}.ec-color-lab-preview__swatches{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.ec-color-lab-swatch{justify-items:start}.ec-color-lab-swatch__chip{width:100%;min-height:38px;border-radius:10px;border:1px solid hsl(0 0% 100% / .12)}.ec-color-lab-color__title{display:grid;gap:2px}.field__input--color{min-height:52px;padding:6px}.ec-rule-viewer-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;align-items:start}.ec-rule-viewer-sidebar,.ec-rule-viewer-detail,.ec-rule-viewer-records,.ec-rule-viewer-documents,.ec-rule-viewer-nodes,.ec-rule-viewer-forest,.ec-rule-viewer-section{display:grid;gap:12px}.ec-rule-viewer-toolbar{display:flex;gap:10px;flex-wrap:wrap}.ec-rule-viewer-section h2{margin:0;font-size:1rem}.ec-rule-viewer-record,.ec-rule-viewer-document,.ec-rule-viewer-node{display:grid;gap:4px;width:100%;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted);color:var(--text-color);text-align:left;cursor:pointer}.ec-rule-viewer-record:hover,.ec-rule-viewer-document:hover,.ec-rule-viewer-node:hover,.ec-rule-viewer-record:focus-visible,.ec-rule-viewer-document:focus-visible,.ec-rule-viewer-node:focus-visible,.ec-rule-viewer-record--selected,.ec-rule-viewer-document--selected,.ec-rule-viewer-node--selected{border-color:color-mix(in srgb,var(--accent) 46%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-muted))}.ec-rule-viewer-record span,.ec-rule-viewer-document span,.ec-rule-viewer-node span{color:var(--muted);font-size:.84rem}.ec-rule-viewer-code{margin:0;padding:14px;border:1px solid var(--border);border-radius:16px;background:#1b1e27f2;color:#f0ece6;overflow:auto;font-size:.84rem;line-height:1.45}.ec-rule-viewer-compatibility,.ec-rule-viewer-compatibility-grid,.ec-rule-viewer-export-buttons,.ec-rule-viewer-import-report{display:grid;gap:12px}.ec-rule-viewer-compatibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-rule-viewer-export-buttons{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.ec-rule-viewer-import-report__details{display:grid;gap:12px}.ec-rule-viewer-import-report__details summary{cursor:pointer;color:var(--muted)}.ec-rule-viewer-dropzone{display:grid;gap:10px;padding:14px;border:1px dashed color-mix(in srgb,var(--accent) 36%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--surface-muted) 82%,var(--accent) 8%);transition:border-color .14s ease,background .14s ease}.ec-rule-viewer-dropzone--active{border-color:color-mix(in srgb,var(--accent) 62%,white 8%);background:color-mix(in srgb,var(--surface-muted) 70%,var(--accent) 16%)}.todos-layout{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:22px;align-items:start}.todos-form,.todos-list,.todo-cards{display:grid;gap:12px}.todos-textarea{min-height:94px}.todos-list__toolbar{display:grid;grid-template-columns:minmax(0,220px) auto;gap:10px;align-items:center}.todos-list__refresh{justify-self:start}.todo-card{display:grid;gap:12px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface-muted)}.todo-card__header,.todo-card__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.todo-card h2,.todo-card p,.todo-meta,.todo-meta dd{margin:0}.todo-card h2{font-size:1.05rem}.todo-status{flex:0 0 auto;padding:4px 8px;border-radius:999px;border:1px solid var(--border);font-size:.76rem;font-weight:700;text-transform:uppercase}.todo-status--done{color:var(--ok)}.todo-status--cancelled{color:var(--muted)}.todo-status--open{color:var(--accent-strong)}.todo-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.todo-meta dt{color:var(--muted);font-size:.74rem;text-transform:uppercase}.todo-meta dd{overflow-wrap:anywhere;font-weight:600}.todo-tags{display:flex;flex-wrap:wrap;gap:6px}.todo-tags span{padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text-color);font-size:.78rem}.file-input{display:none}.status-card,.card{background:var(--surface-strong);border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-lg);padding:18px}.status-card__row{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.status-card--compact{margin-top:14px;padding:12px}.status-card--compact .status-card__row{align-items:baseline}.status-card--compact .status-card__row strong{max-width:58%;overflow-wrap:anywhere;text-align:right}.performance-panel{display:grid;gap:14px}.performance-panel__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.performance-panel__metric{display:grid;gap:4px;min-height:94px;padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--surface-muted)}.performance-panel__label,.performance-panel__detail{color:var(--muted)}.performance-panel__label{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.performance-panel__value{font-size:1.18rem}.performance-panel__detail{font-size:.82rem;line-height:1.35}.performance-panel__breakdown{padding:12px;border-radius:14px;border:1px solid var(--border);background:var(--surface-muted)}.performance-panel__breakdown .status-card__row:last-child{margin-bottom:0}.progress-bar{height:12px;border-radius:999px;background:#ffffff14;overflow:hidden;margin:14px 0 18px}.progress-bar__fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-strong) 100%)}.progress-bar--secondary{height:6px;margin:6px 0 14px}.status-card__actions{display:flex;align-items:center;gap:8px;margin:8px 0}.status-card__phase{flex:1;margin:0}.result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.viewer-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:16px;margin-top:20px}.explorer-layout{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:16px;margin-top:20px}.viewer-stack{display:grid;gap:16px;align-content:start}.card--map,.card--viewer{display:flex;flex-direction:column}.explorer-viewer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.explorer-viewer-header__title{display:grid;gap:4px}.explorer-viewer-header__title>*{margin:0}.explorer-viewer-actions{display:flex;flex:0 0 auto;gap:8px;flex-wrap:wrap;justify-content:flex-end}.canvas-frame{position:relative;margin-top:14px;border-radius:18px;overflow:hidden;background:var(--canvas-surface);border:1px solid var(--border)}.tile-preview{display:grid;place-items:center;flex:1;min-height:260px;margin-top:14px;border-radius:18px;overflow:hidden;background:var(--canvas-surface);border:1px solid var(--border)}.tile-preview__canvas{display:block;width:100%;max-height:520px;object-fit:contain;image-rendering:pixelated}.sample-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:8px;max-height:260px;overflow:auto;margin-top:12px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted)}.sample-preview--virtualized{display:block;max-height:none;overflow:visible;padding:0}.dataset-info{display:flex;flex-direction:column;gap:12px;margin-top:12px}.dataset-info__actions{display:flex;flex-wrap:wrap;gap:8px}.stats-dialog{min-width:min(420px,92vw);max-width:92vw;border:1px solid var(--border);border-radius:14px;padding:20px;background:var(--surface);color:var(--text)}.stats-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.stats-dialog__body{display:flex;flex-direction:column;gap:12px}.stats-dialog__actions{display:flex;justify-content:flex-end;margin-top:16px}.virtual-grid{border:1px solid var(--border);border-radius:14px;background:var(--surface-muted)}.sample-tile--empty{width:100%;aspect-ratio:1 / 1}.sample-tile{display:grid;gap:4px;margin:0}.sample-tile__canvas{width:100%;aspect-ratio:1 / 1;border:1px solid var(--border);border-radius:8px;background:var(--canvas-surface);image-rendering:pixelated}.sample-tile figcaption{color:var(--muted);font-size:.68rem;text-align:center}.canvas-stage{position:relative;max-width:100%;max-height:100%}.canvas-stage>.canvas{width:100%;height:100%}.canvas-overlay{position:absolute;top:10px;left:10px;z-index:2;padding:6px 10px;border-radius:999px;background:#151d28c7;color:#f4efe1;font-size:.75rem;line-height:1;letter-spacing:.04em;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.canvas-overlay--right{left:auto;right:10px}.canvas-frame--map{overflow:auto}.canvas{display:block;width:100%;height:auto;background:var(--canvas-surface)}.canvas--overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:transparent;z-index:1}.canvas--map{width:auto;height:auto;max-width:none;max-height:none;image-rendering:pixelated;image-rendering:crisp-edges}.canvas--viewer{aspect-ratio:1 / 1}.canvas-frame--mandelbrot{background:var(--canvas-mandelbrot);aspect-ratio:3 / 2}.canvas-frame--viewer{aspect-ratio:1 / 1}.canvas--mandelbrot{aspect-ratio:3 / 2}.canvas-frame--mandelbrot,.canvas-frame--viewer{touch-action:none}.mandelbrot-crosshair{position:absolute;width:36px;height:36px;transform:translate(-50%,-50%);filter:var(--crosshair-filter);pointer-events:none}.mandelbrot-crosshair--active{filter:invert(33%) sepia(89%) saturate(2871%) hue-rotate(342deg) brightness(101%) contrast(105%)}.mandelbrot-crosshair--hover-mandelbrot{filter:invert(52%) sepia(89%) saturate(1828%) hue-rotate(191deg) brightness(102%) contrast(102%)}.mandelbrot-crosshair--hover-julia{filter:invert(77%) sepia(61%) saturate(1141%) hue-rotate(129deg) brightness(99%) contrast(93%)}.marker-legend{margin-top:16px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-muted)}.marker-legend__items{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.marker-legend__item{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--text-color)}.marker-legend__swatch{width:12px;height:12px;border-radius:999px;background:currentColor}.marker-legend__swatch--active{color:#ff3f52}.marker-legend__swatch--hover-mandelbrot{color:#2fa8ff}.marker-legend__swatch--hover-julia{color:#2edcc8}.metric{margin:8px 0 0;font-weight:600}.metric--large{font-size:1.4rem;line-height:1.3}.detail{margin:8px 0 0;font-size:.92rem}.ok{color:var(--ok)}.errors,.notes{margin:12px 0 0;padding-left:18px}.error-banner{margin:12px 0 0;color:var(--error);font-weight:600}.settings-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}.settings-section{margin-top:26px;display:grid;gap:14px}.settings-section__head h2{margin:0;font-family:var(--font-display)}.settings-section__head .detail{margin:2px 0 0}.aesthetic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.aesthetic-card{display:grid;gap:8px;padding:12px;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-md);background:var(--surface)}.aesthetic-card--selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.aesthetic-card__main{text-align:left;display:grid;gap:4px;border:none;background:none;color:inherit;cursor:pointer;padding:0}.aesthetic-card__main strong{font-family:var(--font-display)}.aesthetic-card__preview{display:block;pointer-events:none;margin-bottom:4px}.aesthetic-card__preview .asx-panel{display:grid;gap:7px;padding:10px 11px;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-lg);background:var(--surface-strong);background-image:var(--panel-overlay);box-shadow:var(--glow)}.aesthetic-card__preview .asx-head{font-family:var(--font-display);text-transform:var(--tt-display);letter-spacing:var(--ls-display);font-size:.95rem;line-height:1.15;border-bottom:var(--header-accent);padding-bottom:3px}.aesthetic-card__preview .asx-row{display:flex;align-items:center;gap:8px}.aesthetic-card__preview .asx-btn{font-family:var(--font-body);font-size:.68rem;padding:3px 12px;border:var(--border-width) var(--border-style) var(--border);border-radius:var(--radius-pill);clip-path:var(--button-clip);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);color:#08090d}.aesthetic-card__preview .asx-chip{flex:1;height:7px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 40%,transparent)}.aesthetic-card__foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.segmented{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted)}.segmented__btn{min-height:30px;padding:0 14px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer}.segmented__btn--active{color:#fff;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%)}.font-control{display:grid;gap:8px}.typeface-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}.typeface-card{text-align:left;display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:inherit;cursor:pointer}.typeface-card--selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.typeface-card__samples{display:flex;flex-direction:column;gap:2px;margin-top:4px}.typeface-card__sample{font-family:var(--font-body)}.typeface-card__sample--display{font-family:var(--font-display);font-size:1.1rem}.typeface-card__sample--mono{font-family:var(--font-mono);opacity:.85}.theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.theme-card{width:100%;display:grid;gap:14px;padding:16px;border-radius:22px;border:1px solid var(--border);background:var(--surface);color:inherit;cursor:pointer;text-align:left;box-shadow:0 16px 38px var(--shadow-color);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.theme-card:hover,.theme-card:focus-visible{transform:translateY(-3px);border-color:#fff3}.theme-card--selected{border-color:var(--accent);box-shadow:0 16px 38px var(--shadow-color),0 0 0 1px var(--accent) inset}.theme-card__preview{padding:14px;border-radius:18px;border:1px solid var(--border);background-color:var(--page-background);background-image:var(--page-background-image);box-shadow:inset 0 0 0 1px #ffffff0a}.theme-card__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.theme-card__meta strong{display:block;font-size:1rem}.theme-card__badge{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:30px;padding:0 10px;border-radius:999px;background:var(--surface-strong);border:1px solid var(--border);color:var(--muted);text-transform:capitalize;font-size:.76rem}.theme-card__badge--selected{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%);color:#fff;border-color:transparent}.theme-preview{display:grid;gap:10px;min-height:176px;padding:12px;border-radius:16px;border:1px solid var(--border);background:var(--surface);box-shadow:0 12px 28px var(--shadow-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.theme-preview__masthead{display:flex;gap:8px}.theme-preview__pill{width:42px;height:10px;border-radius:999px;background:var(--surface-muted)}.theme-preview__pill--accent{background:var(--accent)}.theme-preview__pill--strong{background:var(--accent-strong)}.theme-preview__body{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px}.theme-preview__sidebar,.theme-preview__panel,.theme-preview__hero,.theme-preview__canvas{border:1px solid var(--border);background:var(--surface-strong)}.theme-preview__sidebar{display:grid;gap:8px;align-content:start;padding:10px;border-radius:12px}.theme-preview__line{display:block;height:8px;border-radius:999px;background:var(--surface-muted)}.theme-preview__line--short{width:68%}.theme-preview__content{display:grid;gap:10px}.theme-preview__hero{min-height:44px;border-radius:12px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%)}.theme-preview__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.theme-preview__panel{min-height:38px;border-radius:12px}.theme-preview__panel--accent{background:linear-gradient(135deg,var(--surface-strong) 0%,hsl(0 0% 100% / .04) 100%),linear-gradient(135deg,var(--accent) 0%,var(--accent-strong) 100%)}.theme-preview__canvas{min-height:48px;border-radius:12px;background:linear-gradient(135deg,#ffffff08,#ffffff03),var(--canvas-mandelbrot)}.app-shell--zen{grid-template-columns:minmax(0,1fr);align-items:start;gap:0;min-height:100vh}.app-shell--explorer{grid-template-columns:minmax(280px,340px) minmax(0,1fr) minmax(260px,320px)}.panel--hidden,.status-card--hidden,.result-grid--hidden{display:none}.panel--summary-zen{min-height:100vh;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;align-items:center;justify-content:center}.panel--summary-zen-explorer{display:block}.viewer-layout--zen{width:min(100vw,160vh);height:min(100vh,62.5vw);grid-template-columns:5fr 3fr;align-items:stretch;min-height:0;min-width:0;margin-top:0;gap:0}.explorer-layout--zen{width:100vw;height:100vh;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr);align-items:stretch;min-height:0;min-width:0;margin-top:0;gap:0}.panel--summary-zen>.panel__header{display:none}.viewer-layout--zen .card--map{min-height:0;padding:0;border-radius:0;border-top:0;border-bottom:0;border-left:0;display:flex;align-items:stretch;justify-content:center}.viewer-layout--zen .canvas--map{width:auto;height:auto;max-height:none}.viewer-stack--zen{display:grid;grid-auto-rows:minmax(0,1fr);gap:0;min-height:0;height:100%;align-content:stretch}.viewer-stack--zen .card--viewer{min-height:0;padding:0;border-radius:0;border-top:0;border-right:0}.viewer-layout--zen .card,.viewer-layout--zen .status-card{box-shadow:none}.explorer-layout--zen .card{min-height:0;padding:0;border-radius:0;box-shadow:none}.card--viewer-zen-pane{position:relative;overflow:hidden}.explorer-layout--zen .explorer-viewer-header{position:absolute;z-index:3;top:12px;left:50%;transform:translate(-50%)}.explorer-layout--zen .explorer-viewer-header__title{display:none}.explorer-layout--zen .explorer-viewer-actions .button{border-color:color-mix(in srgb,var(--border) 72%,transparent);background:color-mix(in srgb,var(--surface) 82%,transparent);box-shadow:0 8px 24px var(--shadow-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.viewer-layout--zen .card--viewer+.card--viewer{border-top:1px solid var(--border)}.viewer-layout--zen .card>.eyebrow,.viewer-layout--zen .card>h3,.viewer-layout--zen .card>.detail{display:none}.explorer-layout--zen .card>.eyebrow,.explorer-layout--zen .card>h3,.explorer-layout--zen .card>.detail{display:none}.viewer-layout--zen .canvas-frame,.explorer-layout--zen .canvas-frame{flex:1 1 auto;width:100%;height:100%;border-left:0;border-right:0;border-radius:0;margin-top:0;display:flex;align-items:center;justify-content:center}.explorer-layout--zen .canvas-frame--mandelbrot,.explorer-layout--zen .canvas-frame--viewer{aspect-ratio:auto}.explorer-layout--zen .canvas-stage{max-width:none;max-height:none;flex:none}.zen-separator{position:relative;overflow:visible;z-index:3;background:linear-gradient(180deg,#ffffff0f,#ffffff05),var(--surface-strong);border-left:1px solid var(--border);border-right:1px solid var(--border);cursor:col-resize;display:flex;align-items:center;justify-content:center;outline:none;touch-action:none}.zen-separator__hitbox{position:absolute;top:-18px;right:-18px;bottom:-18px;left:-18px;z-index:2;pointer-events:auto}.zen-separator--horizontal{border-left:0;border-right:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);cursor:row-resize}.zen-separator:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);z-index:2}.zen-separator__handle{position:relative;z-index:3;width:4px;height:68px;border-radius:999px;background:linear-gradient(180deg,var(--accent),var(--accent-strong));opacity:.8}.zen-separator--horizontal .zen-separator__handle{width:68px;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent-strong))}.ec-cell-lab-tree-view{display:grid;gap:0;min-width:200px;max-width:320px}.ec-cell-lab-tree-view__toolbar{display:flex;gap:4px;align-items:center;padding:4px 8px;border-bottom:1px solid var(--border)}.ec-cell-lab-tree-view__list{overflow-y:auto;max-height:300px;padding:4px 0}.ec-cell-lab-tree-view__empty{margin:0;padding:10px 12px;font-size:.8rem;color:var(--text-muted)}.ec-cell-lab-tree-node{display:flex;align-items:center;gap:6px;padding-top:3px;padding-bottom:3px;padding-right:10px;cursor:grab;border-radius:4px;-webkit-user-select:none;user-select:none}.ec-cell-lab-tree-node:hover{background:var(--surface-hover, var(--surface-muted))}.ec-cell-lab-tree-node--kept .ec-cell-lab-tree-node__label{font-weight:600}.ec-cell-lab-tree-node--unkept{opacity:.55}.ec-cell-lab-tree-node__label{flex:1;font-size:.8rem;font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ec-cell-lab-tree-node__pin{font-size:.7rem;color:var(--accent);flex-shrink:0}.ec-cell-lab-tree-load-panel{border-top:1px solid var(--border);padding:4px 0;display:grid;gap:2px;max-height:200px;overflow-y:auto}.ec-cell-lab-tree-load-panel__status,.ec-cell-lab-tree-load-panel__error{margin:0;padding:8px 12px;font-size:.8rem;color:var(--text-muted)}.ec-cell-lab-tree-load-panel__error{color:var(--error, #e05c5c)}.ec-cell-lab-tree-load-panel__record{text-align:left;padding:6px 12px;font-size:.8rem;width:100%;border-radius:0}@media(pointer:fine){.zen-separator__hitbox{top:-6px;right:-6px;bottom:-6px;left:-6px}}.viewer-layout--zen .canvas-frame--map{align-items:flex-start;justify-content:flex-start;overflow:auto}.viewer-layout--zen .canvas--viewer,.viewer-layout--zen .canvas--mandelbrot{width:100%;height:100%;object-fit:contain}.explorer-layout--zen .canvas--viewer,.explorer-layout--zen .canvas--mandelbrot{width:100%;height:100%}.viewer-layout--zen .card--viewer .canvas-frame{min-height:0}.viewer-layout--zen .tile-preview,.viewer-layout--zen .sample-preview{flex:1 1 auto;min-height:0;max-height:none;height:100%;margin-top:0;border-radius:0;border-left:0;border-right:0}@media(max-width:1280px){.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1100px){.app-shell,.compare-grid,.compare-columns,.app-shell--zen,.result-grid,.viewer-layout,.explorer-layout{grid-template-columns:1fr}.viewer-layout--zen{grid-template-columns:1fr;grid-template-rows:auto auto;width:100%;height:auto}.explorer-layout--zen{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 12px minmax(0,1fr);width:100%;height:100vh}.viewer-stack{display:grid;gap:16px}.harness-pair{grid-template-columns:1fr}.harness-box--width,.harness-box--width-square{width:100%}.viewer-stack--zen{height:auto;min-height:0}.viewer-layout--zen .card--map,.viewer-layout--zen .card--viewer,.explorer-layout--zen .card--viewer-zen-pane{min-height:50vh}.viewer-layout--zen .canvas--map{min-height:0}}@media(max-width:860px){.app-page{padding:14px}.topbar{flex-direction:column;align-items:stretch}.topbar__nav{width:100%;flex-direction:column}.nav-group,.nav-group__links{width:100%}.nav-link{flex:1 1 160px}.settings-summary,.field-inline,.dataset-picker__menu,.ec-devapp-layout,.ec-cell-lab-layout,.ec-cell-lab-grid,.ec-color-lab-layout,.ec-color-lab-grid,.ec-color-lab-grid--channels,.ec-rule-viewer-layout,.ec-rule-viewer-compatibility-grid,.todos-layout,.todo-meta,.theme-grid{grid-template-columns:1fr}.panel__header-row{flex-direction:column;align-items:stretch}.performance-panel__grid{grid-template-columns:minmax(0,1fr)}}.ec-devapp-capture-panel{display:grid;gap:10px}.ec-devapp-capture-panel__row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ec-devapp-capture-panel__label{font-size:.8rem;opacity:.7;white-space:nowrap}.ec-devapp-capture-panel__status{font-size:.78rem;opacity:.65;margin:0;line-height:1.4}.ec-devapp-capture-chip-group{display:flex;gap:4px;flex-wrap:wrap}.ec-devapp-capture-chip{border:1px solid var(--border);border-radius:999px;background:transparent;color:inherit;padding:4px 12px;font-size:.8rem;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.ec-devapp-capture-chip:disabled{opacity:.45;cursor:not-allowed}.ec-devapp-capture-chip--active{background:var(--accent);border-color:var(--accent);color:#fff}.ec-devapp-capture-chip:hover:enabled:not(.ec-devapp-capture-chip--active){border-color:#ffffff4d}.floating-panel{position:fixed;z-index:50;background:var(--surface-strong, #1c2230);border:1px solid var(--border, #3a4254);border-radius:10px;box-shadow:0 8px 28px #00000059;-webkit-user-select:none;user-select:none;overflow:hidden}.floating-panel__header{display:flex;align-items:center;gap:8px;padding:8px 12px;font-weight:600;cursor:grab;background:color-mix(in srgb,var(--accent) 18%,transparent);border-bottom:1px solid var(--border, #3a4254);touch-action:none}.floating-panel__header:active{cursor:grabbing}.layers-panel{width:280px}.models-panel{width:300px}.blend-toolbar{min-width:248px}.blend-toolbar__body{display:grid;gap:10px;padding:10px 12px}.layers-panel__empty{margin:0;padding:12px;color:var(--muted, #8a93a6);font-size:.85rem}.layers-panel__list{list-style:none;margin:0;padding:6px;display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow-y:auto}.layer-row{padding:6px 8px;border:1px solid var(--border, #3a4254);border-radius:8px;background:var(--surface-muted, #232a39)}.layer-row--hidden{opacity:.55}.layer-row--pending{border-style:dashed}.layer-row__top{display:flex;align-items:center;gap:8px}.layer-row__eye{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-color, #e8ecf3);cursor:pointer;flex-shrink:0}.layer-row__eye[aria-pressed=false]{color:var(--muted, #8a93a6)}.layer-row__eye:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.layer-row__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.layer-row__reorder{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.layer-row__reorder button{width:22px;height:14px;padding:0;line-height:1;font-size:.6rem;border:1px solid var(--border, #3a4254);border-radius:4px;background:var(--surface-strong, #1c2230);color:var(--text-color, #e8ecf3);cursor:pointer}.layer-row__reorder button:disabled{opacity:.3;cursor:default}.layers-panel__compare{display:grid;gap:6px;padding:8px;margin-bottom:8px;border:1px solid var(--border, #3a4254);border-radius:6px;background:var(--surface-strong, #1c2230)}.layers-panel__add{position:relative;margin-top:8px}.layers-panel__add-menu{list-style:none;margin:4px 0 0;padding:4px;display:grid;gap:2px;border:1px solid var(--border, #3a4254);border-radius:6px;background:var(--surface-strong, #1c2230);max-height:220px;overflow-y:auto}.layers-panel__add-menu button{width:100%;text-align:left;padding:4px 8px;border:0;border-radius:4px;background:transparent;color:var(--text-color, #e8ecf3);cursor:pointer;font-size:.8rem}.layers-panel__add-menu button:hover{background:var(--surface, #232a3a)}.layer-row__controls{display:flex;align-items:center;gap:6px;margin-top:6px}.layer-row__blend{flex-shrink:0;font-size:.75rem;padding:2px 4px;border-radius:5px;background:var(--surface-strong, #1c2230);color:var(--text-color, #e8ecf3);border:1px solid var(--border, #3a4254)}.layer-row__opacity{flex:1;min-width:0}.layer-row__opacity-value{flex-shrink:0;width:36px;text-align:right;font-size:.72rem;color:var(--muted, #8a93a6)}.models-panel__actions{padding:8px 8px 0}.models-panel__empty{margin:0;padding:12px;color:var(--muted, #8a93a6);font-size:.85rem}.models-panel__list{list-style:none;margin:0;padding:8px;display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow-y:auto}.model-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px;border:1px solid var(--border, #3a4254);border-radius:8px;background:var(--surface-muted, #232a39)}.model-row__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.model-row__meta small{color:var(--muted, #8a93a6);font-size:.72rem}.model-row .button{flex-shrink:0}.toast-host{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:2000;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;max-width:min(90vw,560px)}.toast{pointer-events:auto;margin:0;padding:9px 16px;border-radius:10px;border:var(--border-width) var(--border-style) var(--border-subtle);background:color-mix(in srgb,var(--surface-strong) 94%,transparent);color:var(--text-primary);font:inherit;font-size:.85rem;line-height:1.35;text-align:center;cursor:pointer;box-shadow:0 6px 20px var(--shadow-color);animation:toast-in .16s ease-out}.toast--error{border-color:color-mix(in srgb,#e5484d 60%,var(--border-subtle));box-shadow:0 6px 20px color-mix(in srgb,#e5484d 25%,var(--shadow-color))}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.toast{animation:none}}.ec-devapp-toolbar-readout{font-size:.78rem;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 4px}.tree-list{position:relative;overflow-y:auto;overflow-x:hidden}.tree-list__spacer{position:relative;width:100%}.tree-list__row{position:absolute;left:0;right:0;display:flex;align-items:stretch;box-sizing:border-box;outline:none;cursor:pointer}.tree-list__row--selected{background:color-mix(in srgb,var(--accent) 22%,transparent)}.tree-list__row--focused{box-shadow:inset 0 0 0 1px var(--accent)}.tree-list__guide{flex:none;align-self:stretch;position:relative}.tree-list__guide:before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - .5px);width:1px;background:var(--tree-list-guide-color, hsl(0 0% 100% / .1))}.tree-list__sticky{position:sticky;top:0;height:0;z-index:2}.tree-list__sticky-row{display:flex;align-items:stretch;box-sizing:border-box;cursor:pointer;background:var(--tree-list-sticky-bg, var(--surface-2, hsl(0 0% 14%)));border-bottom:1px solid hsl(0 0% 100% / .1)}.tree-list-lab{display:flex;flex-direction:column;gap:.75rem;padding:1rem;height:100%;box-sizing:border-box}.tree-list-lab__controls{display:flex;gap:.5rem;align-items:center}.tree-list-lab__count{color:var(--text-muted);font-variant-numeric:tabular-nums}.tree-list-lab__view{height:70vh;border:1px solid var(--border);border-radius:4px}.tree-list-lab__row{display:flex;align-items:center;gap:.4rem;width:100%;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;white-space:nowrap}.tree-list-lab__twistie{display:inline-block;width:1em;flex:none}:root{--font-scale: 1;--font-display: "IBM Plex Serif", Georgia, serif;--font-body: "IBM Plex Sans", "Avenir Next", "Segoe UI", sans-serif;--font-highlight: "IBM Plex Sans", "Avenir Next", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--radius-sm: 10px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;--border-width: 1px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: normal;--tt-display: none;--shadow-elevation: 0 18px 50px var(--shadow-color);--button-clip: none;--header-accent: none}html{font-size:calc(16px * var(--font-scale))}[data-font-size=xl]{--font-scale: 1.25}[data-font-size=lg]{--font-scale: 1.12}[data-font-size=md]{--font-scale: 1}[data-font-size=sm]{--font-scale: .9}[data-font-size=micro]{--font-scale: .8}body{font-family:var(--font-body)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--ls-display);text-transform:var(--tt-display)}.eyebrow{font-family:var(--font-display)}strong,b,em,mark,.highlight{font-family:var(--font-highlight)}code,pre,kbd,samp,.mono{font-family:var(--font-mono)}.panel__header h1,.panel__header h2{border-bottom:var(--header-accent)}[data-aesthetic=batcave]{--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-pill: 4px;--border-width: 1px;--border-style: solid;--glow: 0 0 22px color-mix(in srgb, var(--accent) 30%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--accent) 16%, transparent);--panel-overlay: linear-gradient(180deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 42%);--ls-display: .14em;--tt-display: uppercase;--shadow-elevation: 0 10px 40px var(--shadow-color);--font-display: "Poiret One", "Jost", system-ui, sans-serif;--font-body: "Jost", system-ui, sans-serif;--font-highlight: "Poiret One", "Jost", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-aesthetic=victorian]{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-pill: 999px;--border-width: 2px;--border-style: double;--glow: 0 0 0 transparent;--panel-overlay: radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent) 9%, transparent), transparent 60%);--ls-display: .04em;--tt-display: none;--shadow-elevation: 0 12px 30px var(--shadow-color);--font-display: "Cinzel", Georgia, serif;--font-body: "EB Garamond", Georgia, serif;--font-highlight: "Cinzel", Georgia, serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-aesthetic=industrial]{--radius-sm: 0;--radius-md: 0;--radius-lg: 2px;--radius-pill: 2px;--border-width: 2px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: .08em;--tt-display: uppercase;--shadow-elevation: 0 6px 0 var(--shadow-color);--font-display: "Oswald", "Arial Narrow", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Oswald", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-aesthetic=robots]{--radius-sm: 12px;--radius-md: 16px;--radius-lg: 22px;--radius-pill: 999px;--border-width: 1px;--border-style: solid;--glow: 0 0 18px color-mix(in srgb, var(--accent-strong) 45%, transparent);--panel-overlay: repeating-linear-gradient( 180deg, transparent 0 3px, color-mix(in srgb, var(--accent-strong) 5%, transparent) 3px 4px );--ls-display: .16em;--tt-display: uppercase;--shadow-elevation: 0 14px 36px var(--shadow-color);--font-display: "Orbitron", "Jost", sans-serif;--font-body: "Jost", system-ui, sans-serif;--font-highlight: "Orbitron", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-aesthetic=corporate-ceo]{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-pill: 999px;--border-width: 1px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: .02em;--tt-display: none;--shadow-elevation: 0 24px 60px var(--shadow-color);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Playfair Display", Georgia, serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-aesthetic=corporate-upper]{--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--border-width: 1px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: .02em;--tt-display: none;--shadow-elevation: 0 14px 36px var(--shadow-color);--font-display: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-aesthetic=corporate-office]{--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-pill: 4px;--border-width: 1px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: normal;--tt-display: none;--shadow-elevation: 0 2px 6px var(--shadow-color);--font-display: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-aesthetic=union]{--radius-sm: 0;--radius-md: 0;--radius-lg: 0;--radius-pill: 0;--border-width: 3px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: none;--ls-display: .06em;--tt-display: uppercase;--shadow-elevation: 8px 8px 0 var(--shadow-color);--font-display: "Anton", "Oswald", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Anton", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-aesthetic=birds-and-bees]{--radius-sm: 14px;--radius-md: 18px;--radius-lg: 26px;--radius-pill: 999px;--border-width: 1px;--border-style: solid;--glow: 0 0 0 transparent;--panel-overlay: radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%);--ls-display: normal;--tt-display: none;--shadow-elevation: 0 16px 30px var(--shadow-color);--font-display: "Quicksand", system-ui, sans-serif;--font-body: "Quicksand", system-ui, sans-serif;--font-highlight: "Quicksand", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-aesthetic=ghetto]{--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-pill: 4px;--border-width: 2px;--border-style: dashed;--glow: 0 0 0 transparent;--panel-overlay: repeating-linear-gradient( 45deg, transparent 0 6px, color-mix(in srgb, var(--accent) 6%, transparent) 6px 7px );--ls-display: .02em;--tt-display: uppercase;--shadow-elevation: 6px 6px 0 var(--shadow-color);--font-display: "Permanent Marker", "Anton", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Permanent Marker", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-typeface=deco]{--font-display: "Poiret One", "Jost", system-ui, sans-serif;--font-body: "Jost", system-ui, sans-serif;--font-highlight: "Poiret One", "Jost", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-typeface=serif]{--font-display: "Cinzel", Georgia, serif;--font-body: "EB Garamond", Georgia, serif;--font-highlight: "Cinzel", Georgia, serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-typeface=industrial]{--font-display: "Oswald", "Arial Narrow", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Oswald", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-typeface=robotic]{--font-display: "Orbitron", "Jost", sans-serif;--font-body: "Jost", system-ui, sans-serif;--font-highlight: "Orbitron", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-typeface=corporate]{--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Playfair Display", Georgia, serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-typeface=playful]{--font-display: "Quicksand", system-ui, sans-serif;--font-body: "Quicksand", system-ui, sans-serif;--font-highlight: "Quicksand", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace}[data-typeface=street]{--font-display: "Permanent Marker", "Anton", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-highlight: "Permanent Marker", sans-serif;--font-mono: "Share Tech Mono", ui-monospace, monospace}[data-aesthetic=batcave]{--button-clip: polygon(7px 0, 100% 0, 100% calc(100% - 7px) , calc(100% - 7px) 100%, 0 100%, 0 7px);--header-accent: 1px solid color-mix(in srgb, var(--accent) 55%, transparent);--panel-overlay: linear-gradient(var(--accent), var(--accent)) 0 0 / 16px 2px no-repeat, linear-gradient(var(--accent), var(--accent)) 0 0 / 2px 16px no-repeat, linear-gradient(var(--accent), var(--accent)) 100% 0 / 16px 2px no-repeat, linear-gradient(var(--accent), var(--accent)) 100% 0 / 2px 16px no-repeat, linear-gradient(var(--accent), var(--accent)) 0 100% / 16px 2px no-repeat, linear-gradient(var(--accent), var(--accent)) 0 100% / 2px 16px no-repeat, linear-gradient(var(--accent), var(--accent)) 100% 100% / 16px 2px no-repeat, linear-gradient(var(--accent), var(--accent)) 100% 100% / 2px 16px no-repeat, linear-gradient(180deg, color-mix(in srgb, var(--accent) 8%, transparent), transparent 42%)}[data-aesthetic=industrial]{--button-clip: none;--header-accent: 3px solid var(--accent);--panel-overlay: repeating-linear-gradient( 45deg, var(--accent) 0 9px, color-mix(in srgb, var(--text-color) 16%, transparent) 9px 18px ) top / 100% 6px no-repeat}[data-aesthetic=robots]{--header-accent: 1px solid color-mix(in srgb, var(--accent-strong) 50%, transparent);--panel-overlay: linear-gradient(var(--accent-strong), var(--accent-strong)) top / 100% 3px no-repeat, repeating-linear-gradient( 180deg, transparent 0 3px, color-mix(in srgb, var(--accent-strong) 6%, transparent) 3px 4px )}[data-aesthetic=union]{--button-clip: none;--header-accent: 4px solid var(--accent);--panel-overlay: linear-gradient(var(--accent), var(--accent)) top / 100% 7px no-repeat}[data-aesthetic=victorian]{--header-accent: 3px double color-mix(in srgb, var(--accent) 60%, transparent);--panel-overlay: radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent) 9%, transparent), transparent 60%)}[data-aesthetic=corporate-ceo]{--header-accent: 1px solid color-mix(in srgb, var(--accent) 45%, transparent);--panel-overlay: none}[data-aesthetic=birds-and-bees]{--header-accent: none;--panel-overlay: radial-gradient(circle, color-mix(in srgb, var(--accent) 16%, transparent) 1.5px, transparent 2.2px) 0 0 / 20px 20px, radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 55%)}[data-aesthetic=ghetto]{--header-accent: 2px dashed var(--accent);--panel-overlay: repeating-linear-gradient( 45deg, transparent 0 6px, color-mix(in srgb, var(--accent) 7%, transparent) 6px 7px )}.help-window-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2200;pointer-events:none}.help-window{position:fixed;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;min-width:320px;min-height:220px;border:1px solid var(--border);border-radius:8px;background:var(--surface-strong);box-shadow:0 22px 60px var(--shadow-color);color:var(--text-color);pointer-events:auto}.help-window--minimized{height:auto!important;min-height:0}.help-window--minimized .help-window__content,.help-window--minimized .help-window__resize{display:none}.help-window__header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:8px 10px 8px 14px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-strong) 90%,black);cursor:grab;touch-action:none}.help-window__header:active{cursor:grabbing}.help-window__title{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.help-window__actions{display:flex;flex:0 0 auto;gap:6px}.help-window__button{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--border);border-radius:6px;background:var(--surface-muted);color:var(--text-color);cursor:pointer;line-height:1}.help-window__button:hover,.help-window__button:focus-visible{border-color:var(--accent)}.help-window__content{overflow:auto;padding:18px 22px 24px;line-height:1.55}.help-window__resize{position:absolute;right:0;bottom:0;width:18px;height:18px;cursor:nwse-resize;touch-action:none}.help-window__resize:after{position:absolute;right:5px;bottom:5px;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);content:""}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3{margin:1.2em 0 .45em;font-family:"IBM Plex Serif",Georgia,serif;line-height:1.18}.markdown-content h1{font-size:1.45rem}.markdown-content h2{font-size:1.18rem}.markdown-content h3{font-size:1rem}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content blockquote,.markdown-content pre{margin:0 0 1em}.markdown-content ul,.markdown-content ol{padding-left:1.4em}.markdown-content li+li{margin-top:.3em}.markdown-content a{color:var(--accent)}.markdown-content code{border:1px solid var(--border);border-radius:5px;background:var(--surface-muted);padding:.08em .35em;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-size:.92em}.markdown-content pre{overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);padding:12px}.markdown-content pre code{border:0;background:transparent;padding:0}.markdown-content blockquote{border-left:3px solid var(--accent);padding-left:12px;color:var(--muted)}.markdown-content img{max-width:100%;border-radius:8px}.topbar{flex-wrap:wrap}.topbar__nav{flex:1 1 auto}.topbar__help{display:flex;flex:0 0 auto;gap:10px;flex-wrap:wrap}@media(max-width:860px){.help-window{max-width:calc(100vw - 24px)}.topbar__help{width:100%}.topbar__help .button{flex:1 1 0}}
