:root{--bg-app:var(--bg);--bg-sidebar:var(--surface);--bg-surface:var(--surface);--bg-elevated:var(--surface-2);--bg-editor:var(--bg);--text-primary:var(--text);--text-secondary:var(--text-muted);--text-disabled:var(--text-faint);--blue-primary:var(--accent);--blue-bright:var(--accent-hover);--blue-soft:var(--accent-dim);--orange-primary:var(--heap);--orange-soft:var(--heap-dim);--yellow-primary:var(--changed);--yellow-soft:var(--changed-dim);--border-default:var(--border);--border-active:var(--accent);--focus:var(--border-focus);--selection-bg:#245db5;--selection-text:#ffffff;--motion-fast:140ms;--motion-normal:260ms;--motion-slow:380ms;--ease-standard:cubic-bezier(.2,0,.2,1);--ease-enter:cubic-bezier(.16,1,.3,1);--ease-exit:cubic-bezier(.4,0,1,1);--ease-spring:cubic-bezier(.2,.85,.3,1)}::selection{background:var(--selection-bg);color:var(--selection-text)}textarea#sourceEdit::selection,#examRoot .x-ed textarea.x-editor::selection{background:var(--selection-bg);color:var(--selection-text);-webkit-text-fill-color:var(--selection-text)}textarea#sourceEdit::-moz-selection,#examRoot .x-ed textarea.x-editor::-moz-selection{background:var(--selection-bg);color:var(--selection-text)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}textarea#sourceEdit:focus-visible{outline-offset:-2px}input,select,textarea{accent-color:var(--blue-primary)}.titlebar{background:var(--bg-sidebar)!important;border-bottom:1px solid var(--border-default)}.brand .mark{background:none;border:0;border-radius:7px}.product-page{background:radial-gradient(ellipse at 90% 0%,var(--blue-soft),transparent 52%),var(--bg-app)}.product-heading h1,.c4-h1,.c4-page-h h1{font-weight:720!important;letter-spacing:-.035em!important;line-height:1.18;color:var(--text-primary)}.product-heading h1{font-size:clamp(28px,2.5vw,40px)}.product-eyebrow{color:var(--orange-primary);font-weight:650;letter-spacing:.14em}.product-section h2,.product-page h2{font-weight:650;letter-spacing:-.02em}.c4-main h2{color:var(--blue-bright);letter-spacing:-.02em}.c4-main h3{color:var(--text-primary);font-weight:650}.product-heading p,.c4-sub{color:var(--text-secondary);line-height:1.8}.product-hero{position:relative;border-top:2px solid var(--blue-primary);background:linear-gradient(115deg,var(--bg-elevated),var(--bg-surface));box-shadow:0 10px 30px #0002}.product-signal{color:var(--text-secondary)}.product-signal b{color:var(--orange-primary)}.product-status.available{color:var(--blue-primary)}.product-nav{position:relative;isolation:isolate;background:var(--bg-sidebar)}.product-nav button{position:relative;z-index:1;transition:color var(--motion-fast),transform var(--motion-fast) var(--ease-standard),background var(--motion-fast)}.product-nav button.active{background:transparent;color:var(--blue-bright);box-shadow:none}.product-nav button.active:before{display:none}.product-nav button:hover{background:var(--bg-elevated);color:var(--text-primary)}.product-nav button:active{transform:scale(.98)}.product-nav svg{transition:transform var(--motion-normal) var(--ease-spring),color var(--motion-fast)}.product-nav button:hover svg{transform:translateX(2px)}.product-nav button.active svg{color:var(--blue-primary)}.motion-nav-indicator{position:absolute;left:12px;right:12px;top:0;z-index:0;pointer-events:none;background:var(--blue-soft);border:1px solid var(--border-active);border-left-width:3px;border-radius:6px;transition:transform var(--motion-normal) var(--ease-enter),height var(--motion-fast);will-change:transform}button:not(:disabled),a,summary{touch-action:manipulation}.product-button,.dbtn,.p-btn,.core-controls button,.product-tabs button,.c4-nav-b,.c4-tabs button,.vl-tab,.dock-tab,.product-command{transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast) var(--ease-standard)}.product-button:hover:not(:disabled),.core-controls button:hover:not(:disabled),.dbtn:hover:not(:disabled){border-color:var(--blue-primary);transform:translateY(-1px)}.product-button:active:not(:disabled),.core-controls button:active:not(:disabled),.dbtn:active:not(:disabled){transform:translateY(0) scale(.98)}button.product-row{padding-inline:10px;border-left:2px solid transparent;transition:background var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}button.product-row:hover{border-left-color:var(--blue-primary);background:var(--bg-elevated);transform:translateX(2px)}button.product-row:active{transform:translateX(1px)}.product-tabs button.active{box-shadow:inset 0 -2px var(--blue-primary)}.c4-subject,.core-source{border-left:3px solid var(--orange-primary);padding-left:18px}.piscine-code,.c4-code,.core-source pre{background:var(--bg-editor);border:1px solid var(--border-default)}.core-visual{background:linear-gradient(140deg,var(--bg-elevated),var(--bg-surface));border-top:2px solid var(--blue-primary);border-radius:10px}.core-visual-head span:first-child{color:var(--blue-bright)}.core-node{box-shadow:0 6px 16px #0002;border-radius:7px;background:var(--bg-app)}.core-node small{font-size:11px;letter-spacing:.02em}.core-node strong{font-size:16px}.core-edge{color:var(--blue-primary);font-size:24px}.core-controls [data-player=next]{background:var(--blue-soft);border-color:var(--blue-primary);color:var(--blue-bright)}.core-controls [aria-pressed=true]{border-color:var(--orange-primary);color:var(--orange-primary)}.core-caption{border-left:2px solid var(--yellow-primary);padding-left:12px}.core-motion-note{line-height:1.6}.viz-host{--role-pointer:var(--memory);--role-pointer-dim:var(--memory-dim)}.viz-node{transition-timing-function:var(--ease-standard)}.codeline.active{background:var(--blue-soft);box-shadow:inset 3px 0 var(--yellow-primary);animation:execution-arrive var(--motion-normal) var(--ease-standard)}.codeline.active .ln{color:var(--yellow-primary)}.var.changed,.arr-cell.changed,.wrow.changed,.c4-var.hit,.c4-cell.hit{animation:value-arrive var(--motion-normal) var(--ease-standard)}@keyframes execution-arrive{from{background:var(--yellow-soft)}to{background:var(--blue-soft)}}@keyframes value-arrive{from{background:var(--yellow-soft)}to{background:var(--surface-2)}}@keyframes vzWrite{from{border-color:var(--yellow-primary);background:var(--yellow-soft)}to{background:var(--surface-2)}}@keyframes vzPulse{from{border-color:var(--yellow-primary);background:var(--yellow-soft)}to{background:var(--surface-2)}}.motion-ghost{position:fixed;pointer-events:none!important;z-index:30;overflow:hidden;contain:paint;user-select:none}.motion-ghost *{pointer-events:none!important;animation:none!important;transition:none!important}.motion-dialog-ghost{z-index:1000}.curriculum-identity{display:flex;align-items:center;gap:16px;margin:22px 0;padding-top:18px;border-top:1px solid var(--border-default);font-size:11px;color:var(--text-secondary);flex-wrap:wrap}.curriculum-identity .identity-note{max-width:560px}.identity-link{color:var(--accent);text-decoration:none;white-space:nowrap}.identity-link:hover{text-decoration:underline}.identity-link:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:3px}.identity-sig{margin-left:auto;align-self:center;font-size:10.5px;letter-spacing:.04em;color:var(--text-tertiary,var(--text-secondary));opacity:.75;white-space:nowrap}@media(max-width:700px){.identity-sig{margin-left:0;width:100%;padding-top:4px}}html[data-theme=light]{--info:var(--blue-primary);--info-dim:var(--blue-soft);--changed:#8a5700;--changed-dim:#fff0c7;--warning:#8a5700;--warning-dim:#fff0c7}@media(max-width:1100px){.motion-nav-indicator{left:8px;right:8px}}@media(max-width:800px){.motion-nav-indicator{left:6px;right:6px}.product-heading h1{font-size:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ghost{display:none}.motion-nav-indicator{will-change:auto}}
