.orb-lab-page{padding-bottom:4rem}.orb-hero{max-width:min(100%,1180px);margin:0 auto;padding:clamp(4.5rem,9vw,7rem) clamp(1.5rem,4vw,4rem) clamp(2rem,4vw,3rem)}.orb-hero .surface-eyebrow{margin-bottom:1.6rem}.orb-hero-title{font-size:clamp(2.25rem,2rem + 1.4vw,3.5rem);font-weight:500;letter-spacing:-.018em;line-height:1.08;margin:0 0 var(--space-20);color:var(--ink)}.orb-hero-lede{font-size:var(--text-lead);line-height:1.55;color:var(--muted);margin:0;max-width:56ch;text-wrap:pretty}.orb-stage-wrap{max-width:min(100%,1180px);margin:0 auto;padding:0 clamp(1.5rem,4vw,4rem) clamp(3rem,6vw,5rem)}.orb-lab{display:grid;grid-template-columns:1fr;grid-gap:clamp(2rem,4vw,3rem);gap:clamp(2rem,4vw,3rem);align-items:start}@media (min-width:880px){.orb-lab{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,4rem)}}.orb-canvas-wrap{position:relative;width:100%;aspect-ratio:1/1;border-radius:var(--radius-lg);background:var(--paper);overflow:hidden;background-image:radial-gradient(ellipse 60% 50% at 50% 48%,rgba(54,167,255,.06) 0,rgba(54,167,255,.02) 40%,transparent 70%)}.orb-canvas,.orb-fallback{position:absolute;inset:0}.orb-fallback{display:flex;align-items:center;justify-content:center;padding:var(--space-24);font-size:var(--text-body);color:var(--muted);text-align:center;max-width:32ch;margin:auto}.orb-controls{gap:var(--space-20);padding-top:.5rem}.orb-controls,.orb-param{display:flex;flex-direction:column}.orb-param{gap:var(--space-fine-40)}.orb-param-label{display:flex;align-items:baseline;justify-content:space-between;font-size:var(--text-label);color:var(--ink);font-weight:500;letter-spacing:0}.orb-param-value{font-family:var(--mono);font-size:var(--text-label);color:var(--muted-dim);font-variant-numeric:tabular-nums;font-feature-settings:"tnum","tnum"}.orb-param-hint{font-size:var(--text-label);color:var(--muted-dim);line-height:1.45}.orb-param input[type=range]{--v:50;width:100%;height:var(--space-24);margin:0;padding:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.orb-param input[type=range]::-webkit-slider-runnable-track{height:var(--space-2);border-radius:var(--radius-sm);background:linear-gradient(to right,var(--signal-access) calc(var(--v) * 1%),var(--line-strong) 0)}.orb-param input[type=range]::-moz-range-track{height:var(--space-2);border-radius:var(--radius-sm);background:var(--line-strong)}.orb-param input[type=range]::-moz-range-progress{height:var(--space-2);border-radius:var(--radius-sm);background:var(--signal-access)}.orb-param input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--space-16);height:var(--space-16);margin-top:calc((var(--space-2) - var(--space-16)) / 2);border-radius:50%;background:var(--signal-access);box-shadow:0 0 0 2px var(--paper);cursor:-webkit-grab;cursor:grab;-webkit-transition:transform var(--duration-quick) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);transition:transform var(--duration-quick) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.orb-param input[type=range]::-moz-range-thumb{width:var(--space-16);height:var(--space-16);border:0;border-radius:50%;background:var(--signal-access);box-shadow:0 0 0 2px var(--paper);cursor:grab}@media (hover:hover) and (pointer:fine){.orb-param input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.1)}}.orb-param input[type=range]:active::-webkit-slider-thumb{cursor:-webkit-grabbing;cursor:grabbing;transform:scale(.97)}.orb-param input[type=range]:focus-visible{outline:2px solid var(--signal-access);outline-offset:2px;box-shadow:none}.orb-param input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px var(--paper),0 0 0 6px color-mix(in srgb,var(--signal-access) 35%,transparent)}.orb-param input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px var(--paper),0 0 0 6px color-mix(in srgb,var(--signal-access) 35%,transparent)}@media (prefers-reduced-motion:reduce){.orb-param input[type=range]::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.orb-actions{display:flex;flex-wrap:wrap;gap:var(--space-12);margin-top:.75rem;padding-top:1.25rem;border-top:1px solid var(--line-faint)}.orb-button-ghost,.orb-button-primary{font-size:var(--text-body);font-weight:500;letter-spacing:0;padding:var(--space-10) var(--space-18);border-radius:999px;cursor:pointer;transition:transform .16s var(--ease-out),background-color .2s var(--ease),border-color .2s var(--ease);border:1px solid transparent;min-height:2.75rem;font-family:inherit}.orb-button-primary{background:var(--signal);color:var(--paper-on-signal)}@media (hover:hover){.orb-button-primary:hover{background:var(--signal-light)}}.orb-button-primary:active{transform:scale(.97)}.orb-button-primary:focus-visible{outline:2px solid var(--signal-access);outline-offset:2px}.orb-button-ghost{background:transparent;color:var(--muted);border-color:var(--line)}@media (hover:hover){.orb-button-ghost:hover{background:var(--surface-soft);color:var(--ink);border-color:var(--line-strong)}}.orb-button-ghost:active{transform:scale(.97)}.orb-button-ghost:focus-visible{outline:2px solid var(--signal-access);outline-offset:2px;border-color:var(--signal-access)}.orb-attr{max-width:min(100%,1180px);margin:0 auto;padding:0 clamp(1.5rem,4vw,4rem) clamp(3rem,6vw,5rem)}.orb-attr p{font-size:var(--text-label);color:var(--muted-dim);line-height:1.5;margin:0;font-family:var(--mono)}.orb-attr-link{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line-faint);transition:color .16s var(--ease-out),border-color .16s var(--ease-out)}@media (hover:hover){.orb-attr-link:hover{color:var(--ink);border-bottom-color:var(--signal-light)}}.orb-attr-link:focus-visible{outline:2px solid transparent;outline-offset:0;background-color:var(--signal-access);color:var(--paper);border-bottom-color:transparent;border-radius:2px;box-shadow:none}@media (prefers-reduced-motion:no-preference){.orb-canvas-wrap{animation:orb-mark-settle .48s cubic-bezier(.16,1,.3,1) both}}@keyframes orb-mark-settle{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion:reduce){.orb-canvas-wrap{animation:none!important}}@media (max-width:560px){.orb-hero{padding-top:clamp(3.5rem,12vw,4.5rem)}.orb-canvas-wrap{aspect-ratio:1/1;max-width:88vw;margin:0 auto}.orb-actions{flex-direction:column;align-items:stretch}.orb-button-ghost,.orb-button-primary{width:100%}}