@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-1{top:var(--spacing)}.isolate{isolation:isolate}.z-100{z-index:100}.row-0{grid-row:0}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.p-2{padding:calc(var(--spacing) * 2)}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}*,:before,:after{box-sizing:border-box}:root{--paper:#f2f4ec;--paper-raised:#fcfdf8;--ink:#1e2922;--ink-soft:#607066;--line:#d5ded4;--accent:#2f8f5b;--accent-soft:#e4f1e9;--success-soft:#e4f1e9;--success-line:#a9cfb8;--viz-untouched:#9aa3ad;--viz-active:#2e5aac;--viz-settled:#2f8f5b;--viz-cached:#b07c24;--viz-pruned:#c34a3d;--viz-pointer:#7a4fa3;--dur-fast:.15s;--dur-med:.25s;--dur-slow:.4s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-8:32px;--radius:10px;--shadow-raised:0 1px 2px #1a1d210f, 0 4px 16px #1a1d210f;--section-gap:40px;--stack-gap:12px;--paper-grid:none;--app-header-height:52px;--mobile-header-height:calc(60px + env(safe-area-inset-top));--mobile-tabbar-height:calc(68px + env(safe-area-inset-bottom))}@media (prefers-color-scheme:dark){:root[data-theme=system],:root:not([data-theme]){--paper:#14161a;--paper-raised:#1c1f24;--ink:#e8e6e1;--ink-soft:#9aa3ad;--line:#2a2d33;--accent-soft:#1c2a4a;--success-soft:#183426;--success-line:#2f8f5b}}:root[data-theme=paper]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#faf9f6;--paper-raised:#fff;--ink:#1a1d21;--ink-soft:#5c6470;--line:#e4e1da;--success-soft:#e8f5ed;--success-line:#b8dec8}:root[data-theme=ink]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#14161a;--paper-raised:#1c1f24;--ink:#e8e6e1;--ink-soft:#9aa3ad;--line:#2a2d33;--success-soft:#183426;--success-line:#2f8f5b}:root[data-theme=moss]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f2f4ec;--paper-raised:#fcfdf8;--ink:#1e2922;--ink-soft:#607066;--line:#d5ded4;--accent:#2b6b51;--success-soft:#e4f1e9;--success-line:#a9cfb8}:root[data-theme=violet]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#17151f;--paper-raised:#221e2d;--ink:#f0ecf8;--ink-soft:#a9a1b7;--line:#393247;--accent:#b79cff;--success-soft:#20352e;--success-line:#58b58a}:root[data-theme=sunset]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fbf4ec;--paper-raised:#fffdf9;--ink:#33251f;--ink-soft:#806c60;--line:#e8d9cb;--accent:#b55335;--success-soft:#f2ebdd;--success-line:#d8b88e}:root[data-theme=ocean]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#eff5fa;--paper-raised:#fbfdff;--ink:#13202b;--ink-soft:#57708a;--line:#d2e2ee;--accent:#1e6fa8;--success-soft:#e3f1ea;--success-line:#a9cfbe}:root[data-theme=carbon]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#15171a;--paper-raised:#1e2125;--ink:#eaeae7;--ink-soft:#9aa2ab;--line:#2b2f35;--accent:#7da5e8;--success-soft:#1a2b23;--success-line:#2f8f5b}:root{--on-accent:#fff}:root[data-theme=nothing]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0a0a0b;--paper-raised:#141416;--ink:#f4f3ef;--ink-soft:#8e8e93;--line:#27272a;--accent:#e02020;--success-soft:#14201a;--success-line:#3aa06b}:root[data-theme=opone]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#e9e7de;--paper-raised:#f6f4eb;--ink:#191813;--ink-soft:#6d6a5d;--line:#d2cfc0;--accent:#e04a00;--success-soft:#e9efe0;--success-line:#a9bf8e}:root[data-theme=swiss]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f1f0ed;--paper-raised:#fff;--ink:#111114;--ink-soft:#55555c;--line:#deddd8;--accent:#d92b2b;--success-soft:#e7eee7;--success-line:#afc7af}:root[data-theme=nord]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#2e3440;--paper-raised:#3b4252;--ink:#eceff4;--ink-soft:#aeb8c6;--line:#434c5e;--accent:#88c0d0;--success-soft:#2e3d43;--success-line:#81a1a0}:root[data-theme=solarized]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#002b36;--paper-raised:#073642;--ink:#d5dcce;--ink-soft:#839496;--line:#12586a;--accent:#2aa198;--success-soft:#0d4540;--success-line:#2aa198}:root[data-theme=braun]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#e6e5e0;--paper-raised:#f4f3ef;--ink:#17171b;--ink-soft:#6e6e74;--line:#cfcfc8;--accent:#c08a00;--success-soft:#e4ebdd;--success-line:#a8bc94}:root[data-accent=cobalt]{--accent:#2e5aac}:root[data-accent=ember]{--accent:#b55335}:root[data-accent=violet]{--accent:#7655b8}:root[data-accent=mint]{--accent:#2f8f5b}:root[data-accent=gold]{--accent:#a26c19}:root[data-text-scale=large]{font-size:112.5%}:root[data-text-scale=xlarge]{font-size:125%}:root[data-motion=reduce] *,:root[data-motion=reduce] :before,:root[data-motion=reduce] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}.settings-page{max-width:680px;min-height:calc(100dvh - 52px);padding:clamp(28px, 7vw, 56px) clamp(16px, 5vw, 32px) calc(112px + env(safe-area-inset-bottom));font-family:var(--font-ui);margin:0 auto}.settings-intro-line{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-intro-line>span{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.12em}.settings-intro h1{margin:var(--sp-2) 0;font:700 clamp(32px, 10vw, 46px)/1.05 var(--font-narrative)}.settings-intro p{color:var(--ink-soft);font:18px/1.5 var(--font-narrative);margin:0}.settings-section{margin-top:var(--section-gap)}.settings-section h2{margin:0 0 var(--sp-3);color:var(--ink-soft);font:700 11px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.theme-options{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);display:grid}.theme-option{min-height:112px;padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);text-align:left;font-family:var(--font-ui);flex-direction:column;justify-content:space-between;display:flex}.theme-option.selected{border:2px solid var(--accent);background:var(--accent-soft)}.theme-option strong{font-size:15px}.theme-option span{color:var(--ink-soft);font-size:12px;line-height:1.35}.theme-option i{border:1px solid var(--ink);width:28px;height:28px;display:block}@supports (color:color-mix(in lab, red, red)){.theme-option i{border:1px solid color-mix(in srgb, var(--ink) 16%, transparent)}}.theme-option i{border-radius:9px}.settings-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-reset,.settings-remove-logo{color:var(--accent);font:600 11px var(--font-ui);cursor:pointer;background:0 0;border:0}.accent-options{flex-wrap:wrap;gap:8px;display:flex}.accent-option{border:1px solid var(--line);background:var(--paper-raised);min-height:38px;color:var(--ink);font:600 12px var(--font-ui);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;display:inline-flex;position:relative}.accent-option.selected{border-color:var(--accent);background:var(--accent-soft)}.accent-option i{border-radius:50%;width:16px;height:16px;box-shadow:inset 0 0 0 1px #ffffff73}.custom-accent input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.identity-preview{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:15px;display:flex}.identity-preview>div:first-child{gap:3px;display:grid}.identity-preview strong{font:700 22px var(--font-narrative)}.identity-preview small{color:var(--ink-soft);font:12px var(--font-ui)}.identity-logo-preview{background:var(--viz-settled);width:52px;height:52px;color:var(--paper);border-radius:15px;place-items:center;display:grid;overflow:hidden}.settings-logo-letter{font:700 34px/1 var(--font-narrative);font-style:italic}.settings-logo-image{object-fit:cover;width:100%;height:100%}.pwa-status-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);align-items:flex-start;gap:11px;padding:13px;display:flex}.pwa-status-dot{background:var(--ink-soft);width:10px;height:10px;box-shadow:0 0 0 4px var(--ink-soft);border-radius:50%;flex:none;margin-top:4px}@supports (color:color-mix(in lab, red, red)){.pwa-status-dot{box-shadow:0 0 0 4px color-mix(in srgb, var(--ink-soft) 12%, transparent)}}.pwa-status-dot.ready{background:var(--viz-settled);box-shadow:0 0 0 4px var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.pwa-status-dot.ready{box-shadow:0 0 0 4px color-mix(in srgb, var(--viz-settled) 15%, transparent)}}.pwa-status-card strong{font:700 13px var(--font-ui)}.pwa-status-card p{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin:4px 0 0}.pwa-install-button{min-height:38px;margin-top:10px;padding:8px 11px;font-size:11px}.pwa-install-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pwa-install-actions .pwa-install-button{margin-top:10px}.pwa-install-actions span{color:var(--ink-soft);font:10px/1.35 var(--font-ui)}.pwa-download-link{color:var(--accent);font:600 11px var(--font-ui);margin-top:9px;text-decoration:none;display:inline-block}.pwa-download-link:hover{text-decoration:underline}.pwa-native-icon-link{color:var(--viz-settled);font:600 11px var(--font-ui);margin-top:9px;text-decoration:none;display:inline-block}.pwa-native-icon-link:hover{text-decoration:underline}.settings-field{color:var(--ink-soft);font:700 11px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;gap:6px;margin-top:10px;display:grid}.settings-field input:not([type=file]){border:1px solid var(--line);background:var(--paper-raised);width:100%;min-height:44px;color:var(--ink);font:15px var(--font-ui);letter-spacing:0;border-radius:10px;padding:10px 12px}.settings-field small{color:var(--ink-soft);font:11px var(--font-ui);letter-spacing:0;text-transform:none}.logo-controls{grid-template-columns:1fr;gap:12px;display:grid}.logo-controls .btn-ghost{justify-self:start;min-height:40px}.visually-hidden-input{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.type-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.type-option{border:1px solid var(--line);background:var(--paper-raised);min-height:92px;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;gap:7px;padding:12px;display:grid}.type-option.selected{border-color:var(--accent);background:var(--accent-soft)}.type-option strong{font:700 13px var(--font-ui)}.type-option span{color:var(--ink-soft);font:11px/1.35 var(--font-ui)}.style-presets{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.style-preset{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:118px;color:var(--ink);text-align:left;cursor:pointer;transition:transform var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);gap:8px;padding:12px;display:grid;position:relative;overflow:hidden}.style-preset:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.style-preset strong{z-index:1;font:700 13px var(--font-ui);position:relative}.style-preset small{z-index:1;color:var(--ink-soft);font:11px/1.35 var(--font-ui);position:relative}.preset-spark{background:var(--accent);border-radius:50%;width:86px;height:86px;position:absolute;top:-24px;right:-18px}@supports (color:color-mix(in lab, red, red)){.preset-spark{background:color-mix(in srgb, var(--accent) 25%, transparent)}}.preset-spark{box-shadow:-20px 24px 0 var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.preset-spark{box-shadow:-20px 24px 0 color-mix(in srgb, var(--viz-pointer) 12%, transparent)}}.preset-mini{border:1px solid;flex-direction:column;gap:4px;height:64px;padding:8px 9px;display:flex;position:relative;overflow:hidden}.preset-mini-bar{border-bottom:1px solid;height:7px;margin:-2px -3px 1px;display:block}.preset-mini-title{letter-spacing:.01em;font-size:11px;font-weight:700;line-height:1}.preset-mini-line{border-radius:2px;width:78%;height:3px;display:block}.preset-mini-line.short{width:52%}.preset-mini-cta{width:30%;height:7px;margin-top:auto;display:block}.preset-mini-grid{opacity:.14;pointer-events:none;background-image:linear-gradient(90deg,currentColor 1px,#0000 1px),linear-gradient(currentColor 1px,#0000 1px);background-size:12px 12px;position:absolute;inset:0}.preset-mini-dots{grid-template-columns:repeat(3,5px);gap:2.5px;display:grid;position:absolute;top:6px;right:6px}.preset-mini-dots b{aspect-ratio:1;background:#e02020;border-radius:50%;width:5px}.choice-group{border-top:1px solid var(--line);gap:8px;padding:12px 0;display:grid}.choice-group:last-child{border-bottom:1px solid var(--line)}.choice-group-label{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.choice-group-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.choice-group-option{border-radius:calc(var(--radius) - 2px);background:var(--paper-raised);min-height:58px;color:var(--ink);text-align:left;cursor:pointer;border:1px solid #0000;gap:4px;padding:9px 10px;display:grid}.choice-group-option.selected{border-color:var(--accent);background:var(--accent-soft)}.choice-group-option strong{font:650 12px var(--font-ui)}.choice-group-option small{color:var(--ink-soft);font:10px/1.3 var(--font-ui)}.workspace-preview{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:var(--shadow-raised);overflow:hidden}.workspace-preview-bar{border-bottom:1px solid var(--line);color:var(--ink-soft);font:11px var(--font-ui);align-items:center;gap:9px;padding:11px 13px;display:flex}.workspace-preview-bar b{color:var(--ink);font:700 13px var(--font-narrative)}.workspace-preview-bar i{color:var(--accent);font:10px var(--font-mono);text-transform:uppercase;margin-left:auto;font-style:normal}.preview-dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%}.workspace-preview-body{grid-template-columns:1.3fr .7fr;gap:14px;padding:17px;display:grid}.preview-copy{align-content:start;gap:7px;display:grid}.preview-copy strong{max-width:330px;font:700 23px/1.05 var(--font-narrative)}.preview-copy p{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin:0}.preview-action{border-radius:calc(var(--radius) - 2px);background:var(--accent);color:var(--paper-raised);font:700 11px var(--font-ui);border:0;justify-self:start;margin-top:5px;padding:9px 11px}.preview-instrument{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--paper);align-content:center;gap:7px;padding:13px;display:grid}.preview-instrument span{color:var(--accent);font:700 9px var(--font-mono);letter-spacing:.07em}.preview-instrument b{font:700 22px var(--font-mono)}.preview-instrument small{color:var(--ink-soft);font:10px var(--font-ui)}.custom-logo-image{display:block}img,svg,canvas,video{max-width:100%}pre,code{overflow-wrap:anywhere}.identity-logo-preview .custom-logo-image{object-fit:cover;width:100%;height:100%}.observatory-page{max-width:1180px;min-height:calc(100dvh - var(--app-header-height));padding:clamp(28px, 5vw, 64px) clamp(16px, 4vw, 48px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.observatory-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:24px;padding-bottom:32px;display:flex}.observatory-hero h1{max-width:720px;font:700 clamp(36px, 6vw, 68px)/.98 var(--font-narrative);letter-spacing:-.045em;margin:8px 0 10px}.observatory-hero p{max-width:650px;color:var(--ink-soft);font:16px/1.55 var(--font-narrative);margin:0}.observatory-hero-signal{border:1px solid var(--accent);border-radius:calc(var(--radius) + 2px);background:var(--accent-soft);min-width:136px;padding:14px;display:grid}.observatory-hero-signal span{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.observatory-hero-signal strong{font:700 34px var(--font-mono);margin-top:2px}.observatory-hero-signal small{color:var(--ink-soft);font:11px var(--font-ui)}.observatory-now{border:1px solid var(--accent);border-radius:calc(var(--radius) + 6px);background:var(--accent-soft);box-shadow:var(--shadow-raised);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:24px;padding:clamp(20px,4vw,32px);display:grid}.observatory-now-copy{gap:8px;display:grid}.observatory-now h2{font:700 clamp(25px, 4vw, 38px)/1.05 var(--font-narrative);letter-spacing:-.025em;margin:0}.observatory-now p{max-width:640px;color:var(--ink-soft);font:14px/1.5 var(--font-ui);margin:0 0 5px}.observatory-primary{border-radius:calc(var(--radius) - 2px);background:var(--accent);color:var(--paper-raised);font:700 12px var(--font-ui);transition:transform var(--dur-fast), box-shadow var(--dur-fast);justify-self:start;padding:11px 14px;text-decoration:none}.observatory-primary:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.observatory-stage-map{grid-template-columns:repeat(9,31px);align-self:end;gap:5px;display:grid}.observatory-stage-map span{border:1px solid var(--accent);place-items:center;width:31px;height:31px;display:grid}@supports (color:color-mix(in lab, red, red)){.observatory-stage-map span{border:1px solid color-mix(in srgb, var(--accent) 25%, var(--line))}}.observatory-stage-map span{color:var(--ink-soft);font:700 10px var(--font-mono);border-radius:50%}.observatory-stage-map span.done{background:var(--accent);border-color:var(--accent);color:var(--paper-raised)}.observatory-stage-map span.current{border:2px solid var(--accent);color:var(--accent);background:var(--paper-raised)}.observatory-grid{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:16px;margin-top:16px;display:grid}.observatory-panel{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:var(--paper-raised);min-width:0;box-shadow:var(--shadow-raised);padding:clamp(17px,3vw,24px)}.observatory-panel-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.observatory-panel-head h2{font:700 25px var(--font-narrative);letter-spacing:-.02em;margin:4px 0 0}.observatory-panel-head a{color:var(--accent);font:700 11px var(--font-ui);flex-shrink:0;text-decoration:none}.observatory-panel-intro{color:var(--ink-soft);font:13px/1.5 var(--font-ui);margin:16px 0}.observatory-stats{grid-template-columns:repeat(3,1fr);gap:7px;margin:17px 0;display:grid}.observatory-stats div{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:2px;padding:10px;display:grid}.observatory-stats b{font:700 21px var(--font-mono)}.observatory-stats span{color:var(--ink-soft);font:10px var(--font-ui)}.observatory-filters{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.observatory-filters>div{flex-wrap:wrap;gap:5px;display:flex}.observatory-filters button{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:600 10px var(--font-ui);cursor:pointer;border-radius:999px;padding:6px 8px}.observatory-filters button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.observatory-filters select{border:1px solid var(--line);background:var(--paper);max-width:140px;color:var(--ink);font:11px var(--font-ui);border-radius:8px;padding:7px 8px}.pattern-constellation{grid-template-columns:repeat(auto-fill,minmax(126px,1fr));gap:7px;min-height:124px;display:grid}.constellation-node{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:76px;color:var(--ink);text-align:left;cursor:pointer;transition:transform var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);align-content:space-between;gap:8px;padding:10px;display:grid}.constellation-node:hover,.constellation-node.selected{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.constellation-node span{font:650 12px/1.2 var(--font-ui)}.constellation-node small{color:var(--ink-soft);font:9px var(--font-mono);text-transform:uppercase}.constellation-node.transferred{border-left:3px solid var(--viz-settled)}.constellation-node.review{border-left:3px solid var(--viz-pruned)}.constellation-node.recognized{border-left:3px solid var(--accent)}.observatory-empty{color:var(--ink-soft);font:12px var(--font-ui)}.pattern-detail{border-left:3px solid var(--accent);background:var(--accent-soft);gap:7px;margin-top:14px;padding:14px;display:grid}.pattern-detail h3{font:700 21px var(--font-narrative);margin:0}.pattern-detail p{font:14px/1.45 var(--font-ui);margin:0}.pattern-detail>small{color:var(--ink-soft);font:11px/1.45 var(--font-ui)}.pattern-detail>div{flex-wrap:wrap;gap:5px;display:flex}.pattern-detail>div span{background:var(--paper-raised);color:var(--ink-soft);font:10px var(--font-mono);border-radius:999px;padding:5px 7px}.system-weather{gap:7px;display:grid}.system-weather-row{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);transition:transform var(--dur-fast), border-color var(--dur-fast);grid-template-columns:32px 1fr auto;align-items:center;gap:9px;padding:10px;text-decoration:none;display:grid}.system-weather-row:hover{border-color:var(--accent);transform:translate(2px)}.system-weather-row.active{border-left:3px solid var(--accent)}.system-weather-id{color:var(--accent);font:700 11px var(--font-mono)}.system-weather-row span:not(.system-weather-id){gap:2px;min-width:0;display:grid}.system-weather-row strong{text-overflow:ellipsis;white-space:nowrap;font:650 12px var(--font-ui);overflow:hidden}.system-weather-row small{color:var(--ink-soft);font:10px var(--font-ui)}.system-weather-row i{color:var(--ink-soft);font:9px var(--font-mono);text-transform:uppercase;font-style:normal}.system-observatory-footer{color:var(--ink-soft);font:11px var(--font-mono);justify-content:space-between;gap:8px;margin-top:12px;display:flex}.system-observatory-footer b{color:var(--viz-settled)}.topic-observatory{margin-top:16px}.topic-observatory-grid{grid-template-columns:repeat(7,1fr);gap:7px;margin-top:17px;display:grid}.topic-observatory-card{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);transition:border-color var(--dur-fast), transform var(--dur-fast);gap:10px;padding:10px;text-decoration:none;display:grid}.topic-observatory-card:hover{border-color:var(--accent);transform:translateY(-2px)}.topic-observatory-card>span{justify-content:space-between;gap:5px;display:flex}.topic-observatory-card strong{text-overflow:ellipsis;white-space:nowrap;font:600 11px var(--font-ui);overflow:hidden}.topic-observatory-card small{color:var(--ink-soft);font:9px var(--font-mono)}.topic-observatory-card>div{background:var(--line);border-radius:99px;height:4px;overflow:hidden}.topic-observatory-card i{border-radius:inherit;background:var(--accent);height:100%;display:block}.preference-row{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4) 0;border-top:1px solid var(--line);display:flex}.preference-row:last-child{border-bottom:1px solid var(--line)}.preference-row strong,.preference-row small{display:block}.preference-row strong{font-size:15px}.preference-row small{color:var(--ink-soft);margin-top:3px;font-size:13px;line-height:1.35}.preference-row input{width:44px;height:24px;accent-color:var(--accent)}.segmented-row{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4) 0;border-top:1px solid var(--line);display:flex}.segmented-row>span strong{font-size:15px;display:block}.segmented-row>span small{color:var(--ink-soft);margin-top:3px;font-size:13px;line-height:1.35;display:block}.segmented{border:1px solid var(--line);background:var(--paper-raised);border-radius:999px;flex:none;display:inline-flex;overflow:hidden}.segmented button{min-width:60px;min-height:40px;color:var(--ink-soft);font:600 13px var(--font-ui);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);background:0 0;border:0}.segmented button.selected{background:var(--accent);color:var(--paper-raised)}.data-intro{color:var(--ink-soft);font:13px/1.55 var(--font-ui);margin:0}.data-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.data-actions .data-export{border-radius:var(--radius);background:var(--accent);min-height:46px;color:var(--paper-raised);font:700 13px var(--font-ui);cursor:pointer;border:0;flex:200px;padding:0 16px}.data-import{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:46px;color:var(--ink);font:600 13px var(--font-ui);cursor:pointer;flex:160px;justify-content:center;align-items:center;display:inline-flex;position:relative}.data-import input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.btn-danger{border:1px solid var(--viz-pruned);flex:160px;min-height:46px;padding:0 16px}@supports (color:color-mix(in lab, red, red)){.btn-danger{border:1px solid color-mix(in srgb, var(--viz-pruned) 50%, var(--line))}}.btn-danger{border-radius:var(--radius);background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.btn-danger{background:color-mix(in srgb, var(--viz-pruned) 8%, var(--paper-raised))}}.btn-danger{color:var(--viz-pruned);font:700 13px var(--font-ui);cursor:pointer}.data-message{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:10px 0 0}.error-boundary{max-width:560px;padding:clamp(48px, 10vw, 96px) 24px calc(112px + env(safe-area-inset-bottom));text-align:center;font-family:var(--font-ui);margin:0 auto}.error-boundary span{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.13em}.error-boundary h1{font:700 clamp(30px, 6vw, 44px)/1.05 var(--font-narrative);letter-spacing:-.03em;margin:12px 0 10px}.error-boundary p{color:var(--ink-soft);font:15px/1.55 var(--font-ui);margin:0 0 20px}.error-boundary-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.error-boundary-actions button{border-radius:var(--radius);background:var(--accent);min-height:46px;color:var(--paper-raised);font:700 14px var(--font-ui);cursor:pointer;border:0;padding:0 22px}.error-boundary-actions .error-boundary-reload{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink)}.settings-note{padding:var(--sp-4);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);margin-top:40px}.settings-note strong{font-size:13px}.settings-note p{margin:var(--sp-2) 0 0;color:var(--ink-soft);font:15px/1.5 var(--font-narrative)}.android-page{--android-accent:var(--viz-settled);--android-accent-soft:var(--success-soft);--android-accent-line:var(--success-line);--android-mascot:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.android-page{--android-mascot:color-mix(in srgb, var(--viz-settled) 70%, white)}}.android-page{max-width:860px;min-height:calc(100dvh - var(--app-header-height));padding:clamp(28px, 7vw, 72px) clamp(16px, 5vw, 40px) calc(112px + env(safe-area-inset-bottom));background:radial-gradient(circle at 10% 8%, var(--android-accent), transparent 24rem);margin:0 auto}@supports (color:color-mix(in lab, red, red)){.android-page{background:radial-gradient(circle at 10% 8%, color-mix(in srgb, var(--android-accent) 12%, transparent), transparent 24rem)}}.android-hero,.android-install-guide{border:1px solid var(--android-accent-line);border-radius:calc(var(--radius) + 6px);background:var(--paper-raised);box-shadow:var(--shadow-raised)}.android-hero{background:linear-gradient(125deg, var(--android-accent-soft), var(--paper-raised) 58%);padding:clamp(22px,5vw,42px);position:relative;overflow:hidden}.android-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(270px,.92fr);align-items:stretch;gap:clamp(24px,5vw,48px);display:grid}.android-hero-copy{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;display:flex;position:relative}.android-kicker{color:var(--android-accent);font:700 10px var(--font-ui);letter-spacing:.13em}.android-hero-copy h1{max-width:520px;color:var(--android-accent);font:700 clamp(38px, 6vw, 66px)/.94 var(--font-narrative);letter-spacing:-.05em;margin:10px 0 12px}.android-hero-copy>p{max-width:500px;color:var(--ink-soft);font:17px/1.5 var(--font-narrative);margin:0}.android-hero-visual{border:1px solid var(--android-accent);place-items:center;min-height:350px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.android-hero-visual{border:1px solid color-mix(in srgb, var(--android-accent) 25%, var(--android-accent-line))}}.android-hero-visual{border-radius:calc(var(--radius) + 8px);background:var(--android-accent)}@supports (color:color-mix(in lab, red, red)){.android-hero-visual{background:color-mix(in srgb, var(--android-accent) 8%, var(--paper-raised))}}.android-visual-orbit{border:1px solid var(--android-accent);width:300px;height:300px;position:absolute}@supports (color:color-mix(in lab, red, red)){.android-visual-orbit{border:1px solid color-mix(in srgb, var(--android-accent) 28%, transparent)}}.android-visual-orbit{box-shadow:0 0 0 24px var(--android-accent), 0 0 0 48px var(--android-accent);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.android-visual-orbit{box-shadow:0 0 0 24px color-mix(in srgb, var(--android-accent) 5%, transparent), 0 0 0 48px color-mix(in srgb, var(--android-accent) 3%, transparent)}}.android-visual-stamp{z-index:1;place-items:center;display:grid;position:relative}.android-icon{border:4px solid var(--android-accent);width:176px;height:176px;box-shadow:0 0 0 7px var(--android-accent), 0 18px 36px var(--ink);border-radius:42px}@supports (color:color-mix(in lab, red, red)){.android-icon{box-shadow:0 0 0 7px color-mix(in srgb, var(--android-accent) 14%, transparent), 0 18px 36px color-mix(in srgb, var(--ink) 18%, transparent)}}.android-mascot{border:2px solid var(--android-accent);background:var(--android-accent-soft);width:106px;height:106px;box-shadow:var(--shadow-raised);border-radius:30px;padding:9px;position:absolute;bottom:-25px;right:-42px}.android-visual-caption{color:var(--android-accent);font:700 9px var(--font-mono);letter-spacing:.1em;position:absolute;bottom:14px;right:16px}.android-build-meta{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:34px;display:grid}.android-build-meta div{border:1px solid var(--android-accent);gap:4px;padding:11px;display:grid}@supports (color:color-mix(in lab, red, red)){.android-build-meta div{border:1px solid color-mix(in srgb, var(--android-accent) 30%, var(--line))}}.android-build-meta div{border-radius:var(--radius);background:var(--android-accent-soft)}@supports (color:color-mix(in lab, red, red)){.android-build-meta div{background:color-mix(in srgb, var(--android-accent-soft) 42%, var(--paper-raised))}}.android-build-meta span{color:var(--android-accent);font:700 9px var(--font-ui);letter-spacing:.1em}.android-build-meta strong{color:var(--ink);font:700 13px var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.android-download{border-radius:calc(var(--radius) - 2px);background:var(--android-accent);color:var(--paper-raised);font:700 13px var(--font-ui);transition:transform var(--dur-fast), box-shadow var(--dur-fast);align-items:center;gap:8px;margin-top:25px;padding:13px 16px;text-decoration:none;display:inline-flex}.android-download:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.android-note{color:var(--ink-soft);font:11px/1.45 var(--font-ui);margin:12px 0 0}.android-pwa-option{border-top:1px solid var(--android-accent);justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding-top:18px;display:flex}@supports (color:color-mix(in lab, red, red)){.android-pwa-option{border-top:1px solid color-mix(in srgb, var(--android-accent) 22%, var(--line))}}.android-pwa-option-kicker{color:var(--android-accent);font:700 9px var(--font-ui);letter-spacing:.12em}.android-pwa-option h2{color:var(--ink);font:700 18px/1.15 var(--font-narrative);margin:4px 0 3px}.android-pwa-option p{max-width:460px;color:var(--ink-soft);font:11px/1.45 var(--font-ui);margin:0}.android-pwa-option-button{border:1px solid var(--android-accent);border-radius:calc(var(--radius) - 2px);color:var(--android-accent);font:700 11px var(--font-ui);cursor:pointer;transition:background var(--dur-fast), color var(--dur-fast);background:0 0;flex:none;align-items:center;gap:7px;padding:10px 12px;display:inline-flex}.android-pwa-option-button:hover{background:var(--android-accent);color:var(--paper-raised)}.android-install-guide{margin-top:16px;padding:clamp(20px,4vw,32px)}.android-install-guide h2{color:var(--android-accent);font:700 clamp(26px, 4vw, 38px)/1.05 var(--font-narrative);letter-spacing:-.025em;margin:8px 0 22px}.android-install-guide ol{counter-reset:android-step;gap:0;margin:0;padding:0;list-style:none;display:grid}.android-install-guide li{border-top:1px solid var(--android-accent);grid-template-columns:30px 1fr;column-gap:10px;padding:14px 0;display:grid}@supports (color:color-mix(in lab, red, red)){.android-install-guide li{border-top:1px solid color-mix(in srgb, var(--android-accent) 22%, var(--line))}}.android-install-guide li{counter-increment:android-step}.android-install-guide li:before{content:counter(android-step, decimal-leading-zero);color:var(--android-accent);font:700 11px var(--font-mono)}.android-install-guide li strong,.android-install-guide li span{grid-column:2}.android-install-guide li strong{font:700 13px var(--font-ui)}.android-install-guide li span{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin-top:3px}.android-app-callout{border:1px solid var(--success-line);background:linear-gradient(110deg, var(--success-soft), var(--paper-raised));border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 32px;padding:18px 20px;display:flex}.android-app-callout-copy{min-width:0}.android-app-callout-kicker{color:var(--viz-settled);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.android-app-callout h2{color:var(--viz-settled);font:700 23px/1.1 var(--font-narrative);margin:5px 0 4px}.android-app-callout p{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin:0}.android-app-callout-link{border-radius:calc(var(--radius) - 2px);background:var(--viz-settled);color:var(--paper-raised);font:700 12px var(--font-ui);transition:transform var(--dur-fast), box-shadow var(--dur-fast);flex:none;align-items:center;gap:8px;padding:11px 14px;text-decoration:none;display:inline-flex}.android-app-callout-link:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.icpc-page{max-width:980px;min-height:calc(100dvh - var(--app-header-height));padding:clamp(28px, 6vw, 64px) clamp(16px, 4vw, 40px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.icpc-hero{border:1px solid var(--accent);border-radius:calc(var(--radius) + 8px);background:radial-gradient(circle at 90% 0%, var(--accent), transparent 42%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised));grid-template-columns:minmax(0,1.25fr) auto;align-items:center;gap:24px;padding:clamp(22px,4vw,36px);display:grid}@supports (color:color-mix(in lab, red, red)){.icpc-hero{background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 42%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised))}}.icpc-hero{box-shadow:var(--shadow-raised)}.icpc-kicker{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.13em}.icpc-hero h1{font:700 clamp(34px, 5vw, 56px)/.98 var(--font-narrative);letter-spacing:-.045em;margin:12px 0 10px}.icpc-hero p{max-width:560px;color:var(--ink-soft);font:15px/1.55 var(--font-ui);margin:0}.icpc-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.icpc-primary{border-radius:calc(var(--radius) - 2px);background:var(--accent);color:var(--paper-raised);font:700 13px var(--font-ui);transition:transform var(--dur-fast), box-shadow var(--dur-fast);align-items:center;gap:8px;padding:12px 16px;text-decoration:none;display:inline-flex}.icpc-primary:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.icpc-hero-meta{color:var(--ink-soft);font:11px var(--font-ui)}.icpc-hero-signal{border:1px solid var(--accent);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);gap:4px;min-width:150px;padding:16px;display:grid}.icpc-hero-signal span{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.12em}.icpc-hero-signal strong{font:700 30px var(--font-mono)}.icpc-hero-signal small{color:var(--ink-soft);font:10px var(--font-ui)}.icpc-signal-track{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.icpc-signal-track div{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-slow) var(--ease-standard)}.icpc-ladder{grid-template-columns:minmax(0,1fr);gap:12px;margin:24px 0 0;padding:0;list-style:none;display:grid}.icpc-section{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:var(--shadow-raised);padding:18px}.icpc-section.complete{border-color:var(--success-line)}.icpc-section-head{align-items:center;gap:14px;display:flex}.icpc-section-num{border:1px solid var(--accent);flex:none;place-items:center;width:44px;height:44px;display:grid}@supports (color:color-mix(in lab, red, red)){.icpc-section-num{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line))}}.icpc-section-num{background:var(--accent-soft);color:var(--accent);font:700 15px var(--font-mono);border-radius:12px}.icpc-section.complete .icpc-section-num{background:var(--success-soft);border-color:var(--success-line);color:var(--viz-settled)}.icpc-section-title{flex:1;min-width:0}.icpc-section-title h2{font:700 19px var(--font-narrative);letter-spacing:-.01em;margin:0}.icpc-section-title span{color:var(--ink-soft);font:11px var(--font-ui)}.icpc-section-count{color:var(--ink-soft);font:700 12px var(--font-mono)}.icpc-section-count.done{color:var(--viz-settled)}.icpc-problem-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:14px 0 0;padding:0;list-style:none;display:grid}.icpc-problem{border:1px solid var(--line);background:var(--paper);min-width:0;min-height:44px;color:var(--ink);transition:border-color var(--dur-fast), transform var(--dur-fast);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.icpc-problem:hover{border-color:var(--accent);transform:translate(2px)}.icpc-problem.done .icpc-problem-name{color:var(--viz-settled)}.icpc-problem-dot{border:1px solid var(--line);background:var(--paper-raised);width:24px;height:24px;color:var(--ink-soft);font:700 10px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.icpc-problem.done .icpc-problem-dot{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.icpc-problem-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:600 12px var(--font-ui);flex:1;overflow:hidden}.icpc-diff{font:700 9px var(--font-mono);letter-spacing:.04em;border-radius:999px;flex:none;padding:2px 7px}.icpc-diff-easy{color:var(--viz-settled);background:var(--success-soft);border:1px solid var(--success-line)}.icpc-diff-medium{color:var(--viz-cached);background:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.icpc-diff-medium{background:color-mix(in srgb, var(--viz-cached) 10%, var(--paper))}}.icpc-diff-medium{border:1px solid var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.icpc-diff-medium{border:1px solid color-mix(in srgb, var(--viz-cached) 40%, var(--line))}}.icpc-diff-hard{color:var(--viz-pruned);background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.icpc-diff-hard{background:color-mix(in srgb, var(--viz-pruned) 10%, var(--paper))}}.icpc-diff-hard{border:1px solid var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.icpc-diff-hard{border:1px solid color-mix(in srgb, var(--viz-pruned) 40%, var(--line))}}.icpc-section-cta{color:var(--accent);font:700 12px var(--font-ui);align-items:center;gap:7px;margin-top:14px;text-decoration:none;display:inline-flex}.icpc-section-cta:hover{text-decoration:underline}.super-page{max-width:860px;min-height:calc(100dvh - var(--app-header-height));padding:clamp(24px, 5vw, 56px) clamp(16px, 4vw, 40px) calc(128px + env(safe-area-inset-bottom));gap:16px;margin:0 auto;display:grid}.super-kicker{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.13em}.super-primary{border-radius:calc(var(--radius) - 2px);background:var(--accent);min-height:48px;color:var(--on-accent);font:700 13px var(--font-ui);transition:transform var(--dur-fast), box-shadow var(--dur-fast);justify-content:center;align-items:center;gap:8px;padding:0 18px;text-decoration:none;display:inline-flex}.super-primary:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.super-ghost{border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:var(--paper-raised);min-height:48px;color:var(--ink);font:600 13px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast);justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.super-ghost:hover{border-color:var(--accent);color:var(--accent)}.super-field{color:var(--ink-soft);font:700 11px var(--font-ui);letter-spacing:.06em;text-transform:uppercase;gap:8px;display:grid}.super-field select{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:48px;color:var(--ink);font:15px var(--font-ui);padding:0 12px}.super-field input:not([type=range]),.super-field textarea{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:48px;color:var(--ink);font:15px var(--font-ui);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);padding:0 12px}.super-field textarea{resize:vertical;min-height:104px;line-height:1.55;font:14px/1.55 var(--font-ui);padding:12px}.super-field input:not([type=range]):focus,.super-field textarea:focus,.super-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.super-field input[type=range]{width:100%;accent-color:var(--accent)}.app-hero{border:1px solid var(--line);border-radius:calc(var(--radius) + 8px);background:radial-gradient(circle at 92% 0%, var(--accent), transparent 46%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised));gap:6px;padding:clamp(20px,4vw,30px);display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.app-hero{background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--accent) 15%, transparent), transparent 46%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised))}}.app-hero{box-shadow:var(--shadow-raised);margin-bottom:18px}.app-hero>.super-kicker{color:var(--accent)}.app-hero h1{font:700 clamp(26px, 5vw, 40px)/1.02 var(--font-narrative);letter-spacing:-.03em;margin:2px 0 0}.app-hero p{max-width:600px;color:var(--ink-soft);font:13px/1.55 var(--font-ui);margin:0}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.pick-list{gap:8px;display:grid;position:relative}.pick-label{color:var(--ink-soft);font:700 11px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}.pick-trigger{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:48px;color:var(--ink);font:600 14px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);justify-content:space-between;align-items:center;gap:10px;padding:0 12px;display:flex}.pick-trigger i{color:var(--ink-soft);font-size:15px;font-style:normal}.pick-trigger:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.pick-menu{z-index:80;overscroll-behavior:contain;border:1px solid var(--line);background:var(--paper-raised);max-height:300px;animation:menu-in .16s var(--ease-standard);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #1a1d2138}.pick-option{width:100%;min-height:42px;color:var(--ink);text-align:left;font:500 14px var(--font-ui);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;display:flex}.pick-option:hover{background:var(--accent-soft)}.pick-option.selected{background:var(--accent);color:var(--paper-raised);font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.contest-hero,.review-hero,.daily-hero{border:1px solid var(--accent);border-radius:calc(var(--radius) + 8px);background:radial-gradient(circle at 90% 0%, var(--accent), transparent 44%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised));grid-template-columns:minmax(0,1.3fr) auto;align-items:center;gap:20px;padding:clamp(20px,4vw,32px);display:grid}@supports (color:color-mix(in lab, red, red)){.contest-hero,.review-hero,.daily-hero{background:radial-gradient(circle at 90% 0%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 44%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised))}}.contest-hero,.review-hero,.daily-hero{box-shadow:var(--shadow-raised)}.contest-hero h1,.review-hero h1,.daily-hero h1{font:700 clamp(30px, 5vw, 48px)/.98 var(--font-narrative);letter-spacing:-.04em;margin:10px 0 8px}.contest-hero p,.review-hero p,.daily-hero p{max-width:520px;color:var(--ink-soft);font:14px/1.55 var(--font-ui);margin:0}.contest-history-signal,.review-signal,.daily-streak{border:1px solid var(--accent);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);text-align:center;gap:3px;min-width:130px;padding:15px;display:grid}.contest-history-signal span,.review-signal span,.daily-streak span{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.12em}.contest-history-signal strong,.review-signal strong,.daily-streak strong{font:700 30px var(--font-mono)}.contest-history-signal small,.review-signal small,.daily-streak small{color:var(--ink-soft);font:10px var(--font-ui)}.contest-setup,.contest-live,.contest-result,.review-card,.review-empty,.daily-card,.interview-debrief{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:var(--paper-raised);box-shadow:var(--shadow-raised);gap:14px;padding:clamp(18px,3vw,26px);display:grid}.contest-setup .super-primary,.contest-result .super-primary,.review-empty .super-primary,.interview-debrief .super-primary{justify-self:start}.contest-clock{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.contest-clock span{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.12em}.contest-clock strong{font:700 clamp(40px, 8vw, 64px)/1 var(--font-mono);font-variant-numeric:tabular-nums}.contest-live.up .contest-clock strong{color:var(--viz-pruned)}.contest-status{border:1px solid var(--accent);justify-self:start;padding:5px 11px}@supports (color:color-mix(in lab, red, red)){.contest-status{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line))}}.contest-status{background:var(--accent-soft);color:var(--accent);font:700 11px var(--font-ui);border-radius:999px}.contest-problems{gap:8px;margin:0;padding:0;list-style:none;display:grid}.contest-problems a{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:52px;color:var(--ink);transition:border-color var(--dur-fast);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.contest-problems a:hover{border-color:var(--accent)}.contest-problems li.solved a{border-color:var(--success-line);background:var(--success-soft)}.contest-problems li.solved .contest-problem-name{color:var(--viz-settled)}.contest-problem-mark{border:1px solid var(--line);background:var(--paper-raised);width:28px;height:28px;color:var(--ink-soft);font:700 11px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.contest-problems li.solved .contest-problem-mark{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.contest-problem-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:600 13px var(--font-ui);flex:1;overflow:hidden}.contest-problem-time{color:var(--ink-soft);font:700 12px var(--font-mono)}.contest-live-actions{flex-wrap:wrap;gap:8px;display:flex}.contest-live-actions>*{flex:180px}.contest-note{color:var(--ink-soft);font:11px/1.5 var(--font-ui);margin:0}.contest-score{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.contest-score div{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:2px;padding:12px;display:grid}.contest-score span{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.1em}.contest-score strong{font:700 24px var(--font-mono)}.contest-solve-list,.contest-history ul,.review-upcoming ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.contest-solve-list li,.contest-history li,.review-upcoming li{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);font:600 12px var(--font-ui);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;display:flex}.contest-solve-list em,.contest-history em,.review-upcoming em{color:var(--ink-soft);font:700 11px var(--font-mono);font-style:normal}.contest-history,.review-upcoming{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);gap:10px;padding:16px;display:grid}.contest-history-signal{justify-self:end}.review-card{gap:10px}.review-family{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.review-cue{font:700 clamp(22px, 4vw, 30px)/1.2 var(--font-narrative);letter-spacing:-.02em;margin:4px 0 6px}.review-reveal{justify-self:start}.review-move{border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);padding:14px}.review-move-label{color:var(--accent);font:700 11px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.review-move p{font:16px/1.5 var(--font-narrative);margin:6px 0 0}.review-grades{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.review-grade{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:60px;color:var(--ink);cursor:pointer;transition:border-color var(--dur-fast), transform var(--dur-fast);gap:2px;padding:10px 8px;display:grid}.review-grade:hover{transform:translateY(-2px)}.review-grade strong{font:700 13px var(--font-ui)}.review-grade small{color:var(--ink-soft);font:10px var(--font-ui)}.review-grade.grade-again:hover{border-color:var(--viz-pruned);color:var(--viz-pruned)}.review-grade.grade-hard:hover{border-color:var(--viz-cached);color:var(--viz-cached)}.review-grade.grade-good:hover{border-color:var(--viz-settled);color:var(--viz-settled)}.review-grade.grade-easy:hover{border-color:var(--accent);color:var(--accent)}.review-drop{color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;background:0 0;border:0;justify-self:start;text-decoration:underline}.review-empty strong{font:700 24px var(--font-narrative)}.review-empty p{color:var(--ink-soft);font:14px/1.55 var(--font-ui);margin:0}.review-empty-actions{flex-wrap:wrap;gap:8px;display:flex}.interview-problem{font:700 20px var(--font-narrative);margin:0}.interview-rubric-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.interview-rubric-row strong{font:700 13px var(--font-ui);display:block}.interview-rubric-row small{color:var(--ink-soft);font:11px var(--font-ui);margin-top:2px;display:block}.interview-note{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:90px;color:var(--ink);font:14px/1.5 var(--font-ui);resize:vertical;padding:12px}@media (max-width:480px){.contest-hero{grid-template-columns:1fr;gap:14px}.contest-history-signal{justify-self:stretch}.interview-rubric-row{flex-direction:column;align-items:stretch;gap:8px}.contest-live-actions>*{flex:100%}.contest-problems a{gap:10px;padding:10px}}.daily-card.done{border-color:var(--success-line);background:linear-gradient(135deg, var(--success-soft), var(--paper-raised))}.daily-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.daily-topic{color:var(--ink-soft);font:700 11px var(--font-mono)}.daily-card h2{font:700 clamp(24px, 4vw, 34px)/1.1 var(--font-narrative);letter-spacing:-.02em;margin:2px 0 4px}.daily-pattern{color:var(--ink-soft);font:12px var(--font-ui);margin:0}.daily-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.daily-actions>*{flex:180px}.daily-done-note,.daily-share-note{color:var(--viz-settled);font:700 12px var(--font-ui);margin:0}.daily-history{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);gap:12px;padding:16px;display:grid}.daily-calendar{grid-template-columns:repeat(14,1fr);gap:5px;display:grid}.daily-cell{aspect-ratio:1;border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:700 10px var(--font-mono);border-radius:8px;place-items:center;display:grid}.daily-cell.done{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.daily-cell.today{box-shadow:0 0 0 2px var(--accent)}.daily-history-note{color:var(--ink-soft);font:11px/1.5 var(--font-ui);margin:0}.cheatsheet-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.cheatsheet-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:var(--shadow-raised);gap:8px;padding:16px;display:grid}.cheatsheet-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.cheatsheet-family{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.cheatsheet-card h2{font:700 17px var(--font-narrative);letter-spacing:-.01em;margin:3px 0 0}.cheatsheet-head-actions{flex:none;gap:6px;display:flex}.cheatsheet-copy,.cheatsheet-toggle{border:1px solid var(--line);background:var(--paper);min-height:34px;color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast);border-radius:999px;padding:0 12px}.cheatsheet-copy:hover,.cheatsheet-toggle:hover{border-color:var(--accent);color:var(--accent)}.cheatsheet-when{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:0}.cheatsheet-complexity{color:var(--accent);font:700 10px var(--font-mono);margin:0}.cheatsheet-code{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font:12px/1.6 var(--font-mono);white-space:pre;margin:0;padding:12px;overflow-x:auto}.cheatsheet-foot{justify-content:space-between;align-items:center;gap:8px;min-height:20px;display:flex}.cheatsheet-copied{color:var(--viz-settled);font:700 11px var(--font-ui)}.cheatsheet-practice{color:var(--accent);font:700 11px var(--font-ui);text-decoration:none}.cheatsheet-practice:hover{text-decoration:underline}.playground-examples{gap:8px;display:grid}.playground-example-row{flex-wrap:wrap;gap:8px;display:flex}.playground-example-row .super-ghost{min-height:40px;padding:0 14px;font-size:12px}.playground-ed{min-height:300px}.releases-timeline{gap:14px;margin:0;padding:0;list-style:none;display:grid}.release-entry{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:var(--paper-raised);box-shadow:var(--shadow-raised);grid-template-columns:92px 1fr;gap:16px;padding:18px;display:grid}.release-entry.latest{border-color:var(--accent)}.release-rail{align-content:start;gap:4px;display:grid}.release-version{font:700 24px var(--font-mono);color:var(--accent)}.release-date{color:var(--ink-soft);font:700 10px var(--font-mono)}.release-head{align-items:center;gap:10px;display:flex}.release-head h2{font:700 22px var(--font-narrative);letter-spacing:-.02em;margin:0}.release-badge{background:var(--accent);color:var(--paper-raised);font:700 9px var(--font-ui);letter-spacing:.1em;border-radius:999px;padding:3px 9px}.release-tagline{color:var(--ink-soft);font:14px/1.55 var(--font-narrative);margin:6px 0 0}.release-highlights{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.release-highlights li{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:2px;padding:10px 12px;display:grid}.release-highlights strong{font:700 13px var(--font-ui)}.release-highlights span{color:var(--ink-soft);font:12px/1.5 var(--font-ui)}.release-footer{justify-content:center;display:flex}.interview-chip{z-index:60;right:14px;bottom:calc(84px + env(safe-area-inset-bottom));border:1px solid var(--viz-pruned);background:var(--paper-raised);color:var(--viz-pruned);font:700 11px var(--font-mono);box-shadow:var(--shadow-raised);border-radius:999px;align-items:center;gap:8px;padding:9px 13px;text-decoration:none;display:inline-flex;position:fixed}.interview-chip.contest-live-chip{border-color:var(--viz-cached);color:var(--viz-cached)}.floating-focus{z-index:90;left:14px;bottom:calc(84px + env(safe-area-inset-bottom));border:1px solid var(--viz-settled);align-items:center;gap:7px;padding:8px 12px;display:inline-flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.floating-focus{border:1px solid color-mix(in srgb, var(--viz-settled) 55%, var(--line))}}.floating-focus{background:var(--paper-raised);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.floating-focus{background:color-mix(in srgb, var(--paper-raised) 88%, transparent)}}.floating-focus{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--viz-settled);font:700 12px var(--font-mono);box-shadow:var(--shadow-raised);animation:rise-in .3s var(--ease-standard) both;text-decoration:none}.floating-focus i{background:var(--viz-settled);width:8px;height:8px;animation:splash-pulse 1.4s var(--ease-standard) infinite alternate;border-radius:50%}.floating-focus span{color:var(--ink-soft);font:600 10px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}@media (min-width:701px){.floating-focus{bottom:18px;left:18px}}.floating-osc{z-index:90;right:14px;bottom:calc(84px + env(safe-area-inset-bottom));border:1px solid var(--accent);align-items:stretch;display:inline-flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.floating-osc{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--line))}}.floating-osc{background:var(--paper-raised);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.floating-osc{background:color-mix(in srgb, var(--paper-raised) 88%, transparent)}}.floating-osc{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-raised);animation:rise-in .3s var(--ease-standard) both;overflow:hidden}.floating-osc-link{color:var(--accent);font:700 12px var(--font-mono);align-items:center;gap:7px;padding:8px 12px;text-decoration:none;display:inline-flex}.floating-osc-link i{background:var(--accent);width:8px;height:8px;animation:splash-pulse 1.1s var(--ease-standard) infinite alternate;border-radius:50%}.floating-osc-link span{color:var(--ink-soft);font:600 10px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}.floating-osc-stop{border:none;border-left:1px solid var(--line);color:var(--ink-soft);cursor:pointer;background:0 0;padding:0 11px;font-size:11px}.floating-osc-stop:hover{color:var(--ink);background:var(--paper-raised)}@media (min-width:701px){.floating-osc{bottom:18px;right:18px}}.super-day{margin:16px 0 32px}.super-day-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;display:flex}.super-day-head h2{font:700 clamp(22px, 4vw, 30px) var(--font-narrative);letter-spacing:-.02em;margin:4px 0 0}.super-day-new{color:var(--accent);font:700 11px var(--font-ui);flex:none;text-decoration:none}.super-day-new:hover{text-decoration:underline}.super-day-tiles{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.super-day-tile{border:1px solid var(--line);background:var(--paper-raised);min-height:108px;color:var(--ink);transition:transform var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:16px;align-content:space-between;gap:3px;padding:14px;text-decoration:none;display:grid}.super-day-tile:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.super-day-tile span{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.super-day-tile strong{font:700 15px/1.25 var(--font-narrative);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.super-day-tile em{color:var(--ink-soft);font:10px var(--font-ui);font-style:normal}.super-day-tile.tile-daily:hover{border-color:var(--viz-settled)}.super-day-tile.tile-review:hover{border-color:var(--viz-cached)}.super-day-tile.tile-contest:hover{border-color:var(--viz-pruned)}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes app-open{0%{opacity:0;transform:translateY(12px)scale(.99)}to{opacity:1;transform:none}}.super-page,.icpc-page,.practice-wrap,.os-home,.settings-page,.dashboard-page,.android-page{animation:app-open .32s var(--ease-standard) both}@keyframes orb-drift{0%{transform:translate(0)scale(1)}to{transform:translate(-20px,16px)scale(1.18)}}@keyframes shimmer-slide{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes burst-pop{0%{opacity:1;transform:translate(0)scale(.4)}75%{opacity:1}to{transform:translate(var(--bx,40px), var(--by,-60px)) scale(1);opacity:0}}.stagger>*{animation:rise-in .55s var(--ease-standard) both}.stagger>:first-child{animation-delay:20ms}.stagger>:nth-child(2){animation-delay:70ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.17s}.stagger>:nth-child(5){animation-delay:.22s}.stagger>:nth-child(6){animation-delay:.27s}.stagger>:nth-child(7){animation-delay:.32s}.stagger>:nth-child(8){animation-delay:.37s}.stagger>:nth-child(9){animation-delay:.42s}.stagger>:nth-child(10){animation-delay:.47s}.stagger>:nth-child(11){animation-delay:.52s}.stagger>:nth-child(12){animation-delay:.57s}.stagger>:nth-child(n+13){animation-delay:.62s}.btn:active,.btn-p:active{transform:scale(.97)}.super-primary:active{transform:translateY(0)scale(.97)}.super-ghost:active{transform:scale(.97)}*{scrollbar-width:thin;scrollbar-color:var(--ink-soft) transparent}@supports (color:color-mix(in lab, red, red)){*{scrollbar-color:color-mix(in srgb, var(--ink-soft) 38%, transparent) transparent}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ink-soft) 32%, transparent)}}::-webkit-scrollbar-thumb{background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--ink-soft) 55%, transparent)}}::-webkit-scrollbar-thumb:hover{background-clip:content-box;border:3px solid #0000}.contest-hero,.review-hero,.daily-hero,.icpc-hero{position:relative;overflow:hidden}.contest-hero:after,.review-hero:after,.daily-hero:after,.icpc-hero:after{content:"";background:radial-gradient(circle, var(--accent), transparent 70%);border-radius:50%;width:210px;height:210px;position:absolute;top:-70px;right:-50px}@supports (color:color-mix(in lab, red, red)){.contest-hero:after,.review-hero:after,.daily-hero:after,.icpc-hero:after{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%)}}.contest-hero:after,.review-hero:after,.daily-hero:after,.icpc-hero:after{animation:orb-drift 9s var(--ease-standard) infinite alternate;pointer-events:none}.home-page .landing-header{position:relative;overflow:hidden}.home-page .landing-header:after{content:"";background:radial-gradient(circle, var(--accent), transparent 70%);border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-60px}@supports (color:color-mix(in lab, red, red)){.home-page .landing-header:after{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 18%, transparent), transparent 70%)}}.home-page .landing-header:after{animation:orb-drift 11s var(--ease-standard) infinite alternate;pointer-events:none}.run-shimmer{background:linear-gradient(90deg, var(--line) 25%, var(--accent) 50%, var(--line) 75%);border-radius:999px;height:4px;margin-bottom:12px}@supports (color:color-mix(in lab, red, red)){.run-shimmer{background:linear-gradient(90deg, var(--line) 25%, color-mix(in srgb, var(--accent) 45%, var(--line)) 50%, var(--line) 75%)}}.run-shimmer{background-size:200% 100%;animation:1.1s linear infinite shimmer-slide}.solve-burst{z-index:400;pointer-events:none;position:fixed;inset:0}.solve-burst i{background:var(--viz-settled);width:10px;height:10px;animation:burst-pop .9s var(--ease-standard) forwards;border-radius:50%;position:absolute;top:38%;left:50%}.progress-ring{place-items:center;display:grid;position:relative}.progress-ring svg{position:absolute;inset:0}.progress-ring-fill{transition:stroke-dashoffset var(--dur-slow) var(--ease-standard)}.progress-ring-text{text-align:center;gap:0;display:grid;position:relative}.progress-ring-text strong{font:700 20px var(--font-mono)}.progress-ring-text small{color:var(--ink-soft);font:700 8px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.empty-mark{justify-content:center;display:flex}.home-momentum-head{flex-wrap:wrap;align-items:center}.atlas-head{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;display:flex}.atlas-head h1{font:700 clamp(30px, 5vw, 48px)/.98 var(--font-narrative);letter-spacing:-.04em;margin:10px 0 8px}.atlas-head p{max-width:520px;color:var(--ink-soft);font:14px/1.55 var(--font-ui);margin:0 0 8px}.atlas-complexity{color:var(--accent);font:700 11px var(--font-mono)}.atlas-stage{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:var(--paper-raised);min-height:260px;box-shadow:var(--shadow-raised);padding:clamp(16px,3vw,28px);display:grid;position:relative;overflow:hidden}.atlas-desc{border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);padding:14px 16px}.atlas-desc p{font:15px/1.55 var(--font-narrative);margin:6px 0 0}.atlas-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.atlas-ctrl{border:1px solid var(--line);background:var(--paper-raised);width:46px;height:46px;color:var(--ink);font:700 15px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), transform var(--dur-fast);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.atlas-ctrl:hover:not(:disabled){border-color:var(--accent)}.atlas-ctrl:active{transform:scale(.95)}.atlas-ctrl:disabled{opacity:.35;cursor:default}.atlas-play{background:var(--accent);border-color:var(--accent);color:var(--paper-raised)}.atlas-speed{width:56px;font-size:12px}.atlas-scrub{min-width:140px;accent-color:var(--accent);cursor:pointer;flex:1;height:44px}.atlas-keyboard-hint{text-align:center;color:var(--ink-soft);font:11px var(--font-mono)}.atlas-code-wrap{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-raised);overflow:hidden}.atlas-code{background:var(--paper);font:13px/1.7 var(--font-mono);margin:0;padding:12px 0;overflow-x:auto}.atlas-code>div{border-left:3px solid #0000;gap:14px;padding:1px 16px;display:flex}.atlas-code>div.active{border-left-color:var(--accent);background:var(--accent-soft)}.atlas-code>div.active code{color:var(--accent);font-weight:700}.atlas-line-no{text-align:right;color:var(--ink-soft);opacity:.55;-webkit-user-select:none;user-select:none;flex:0 0 22px}.atlas-array{align-content:end;gap:10px;display:grid;position:relative}.atlas-window{border:2px dashed var(--viz-cached);background:var(--viz-cached);border-radius:12px;position:absolute;top:0;bottom:34px}@supports (color:color-mix(in lab, red, red)){.atlas-window{background:color-mix(in srgb, var(--viz-cached) 8%, transparent)}}.atlas-bars{z-index:1;align-items:end;gap:6px;height:190px;display:flex;position:relative}.atlas-bar-slot{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex;position:relative}.atlas-bar{background:var(--ink-soft);border-radius:6px 6px 2px 2px;width:100%}@supports (color:color-mix(in lab, red, red)){.atlas-bar{background:color-mix(in srgb, var(--ink-soft) 45%, var(--line))}}.atlas-bar{transition:height var(--dur-med) var(--ease-standard), background var(--dur-fast)}.atlas-bar.compare{background:var(--viz-active)}.atlas-bar.swap{background:var(--viz-pruned)}.atlas-bar.settled{background:var(--viz-settled)}.atlas-bar-value{font:700 11px var(--font-mono);color:var(--ink);position:absolute;top:-18px}.atlas-bar-index{font:700 9px var(--font-mono);color:var(--ink-soft)}.atlas-pointers{height:22px;position:relative}.atlas-pointer{background:var(--viz-pointer);color:var(--paper-raised);font:700 10px var(--font-mono);white-space:nowrap;border-radius:999px;padding:2px 8px;position:absolute;transform:translate(-50%)}.atlas-aux{flex-wrap:wrap;gap:8px;display:flex}.atlas-aux span{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:700 11px var(--font-mono);border-radius:999px;padding:4px 10px}.atlas-aux b{color:var(--accent)}.atlas-graph svg{width:100%;max-height:300px}.atlas-edge{stroke:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.atlas-edge{stroke:color-mix(in srgb, var(--ink-soft) 45%, transparent)}}.atlas-edge{stroke-width:.8px}.atlas-edge.active{stroke:var(--viz-pruned);stroke-width:1.4px}.atlas-edge-weight{fill:var(--viz-cached);font:700 3.2px var(--font-mono);text-anchor:middle}.atlas-node{fill:var(--paper);stroke:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.atlas-node{stroke:color-mix(in srgb, var(--ink-soft) 55%, transparent)}}.atlas-node{stroke-width:.7px;transition:fill var(--dur-fast)}.atlas-node.visited{fill:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.atlas-node.visited{fill:color-mix(in srgb, var(--viz-settled) 30%, var(--paper))}}.atlas-node.visited{stroke:var(--viz-settled)}.atlas-node.frontier{fill:var(--viz-active)}@supports (color:color-mix(in lab, red, red)){.atlas-node.frontier{fill:color-mix(in srgb, var(--viz-active) 30%, var(--paper))}}.atlas-node.frontier{stroke:var(--viz-active)}.atlas-node.current{fill:var(--viz-active);stroke:var(--viz-pointer);stroke-width:1.2px}.atlas-node-label{fill:var(--ink);font:700 3.4px var(--font-mono);text-anchor:middle}.atlas-node-dist{fill:var(--accent);font:700 3px var(--font-mono);text-anchor:middle}.atlas-stack-note{color:var(--ink-soft);font:700 11px var(--font-mono);margin:8px 0 0}.atlas-stack{align-content:center;justify-items:center;gap:10px;min-height:240px;display:grid}.atlas-stack-frame{border:2px solid var(--line);background:var(--paper);border-radius:14px;flex-direction:column-reverse;justify-content:flex-start;gap:6px;width:min(320px,100%);min-height:200px;padding:10px;display:flex}.atlas-stack-item{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font:700 13px var(--font-mono);text-align:center;animation:rise-in .3s var(--ease-standard) both;border-radius:10px;padding:11px 14px}.atlas-stack-item.top{border-color:var(--viz-active);background:var(--accent-soft);color:var(--accent)}.atlas-stack-item.flash{border-color:var(--viz-pruned);color:var(--viz-pruned)}.atlas-stack-empty{color:var(--ink-soft);font:700 12px var(--font-ui);text-align:center;padding:20px}.atlas-stack-base{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.atlas-family{gap:10px;display:grid}.atlas-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.atlas-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);color:var(--ink);transition:transform var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);align-content:start;gap:5px;padding:16px;text-decoration:none;display:grid}.atlas-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-3px)}.atlas-card-glyph{color:var(--accent);font-size:24px;line-height:1}.atlas-card strong{font:700 16px var(--font-narrative);letter-spacing:-.01em}.atlas-card small{color:var(--ink-soft);font:12px/1.5 var(--font-ui)}.atlas-card em{color:var(--accent);font:700 10px var(--font-mono);font-style:normal}.playground-editor{background:var(--paper);display:flex}.playground-gutter{text-align:right;min-width:42px;color:var(--ink-soft);font:13px/1.65 var(--font-mono);-webkit-user-select:none;user-select:none;border-right:1px solid var(--line);opacity:.6;flex:none;padding:12px 8px 12px 14px;overflow:hidden}.playground-gutter span{display:block}.playground-ed{flex:1;min-height:360px}.active-example{border-color:var(--accent)!important;color:var(--accent)!important;background:var(--accent-soft)!important}.playground-output-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.playground-elapsed{color:var(--ink-soft);font:11px/1.5 var(--font-ui);margin:0}.toolkit-tabs{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.toolkit-tab{border:1px solid var(--line);background:var(--paper-raised);min-height:84px;color:var(--ink);cursor:pointer;transition:transform var(--dur-fast), border-color var(--dur-fast);border-radius:14px;align-content:center;justify-items:center;gap:2px;padding:10px 6px;display:grid}.toolkit-tab:hover{border-color:var(--accent);transform:translateY(-2px)}.toolkit-tab.active{border-color:var(--accent);background:var(--accent-soft)}.toolkit-tab-glyph{color:var(--accent);font-size:20px;line-height:1}.toolkit-tab strong{font:700 13px var(--font-ui)}.toolkit-tab small{color:var(--ink-soft);font:10px var(--font-ui)}.toolkit-panel{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:var(--paper-raised);box-shadow:var(--shadow-raised);padding:clamp(16px,3vw,24px)}.tool-body{gap:14px;display:grid}.tool-center{justify-items:center}.tool-input-row{gap:8px;display:flex}.tool-input-row input{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-width:0;min-height:48px;color:var(--ink);font:15px var(--font-ui);flex:1;padding:0 14px}.tool-input-row select{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:48px;color:var(--ink);font:14px var(--font-ui);padding:0 10px}.tool-center-row{justify-content:center}.tool-empty{color:var(--ink-soft);font:13px var(--font-ui);text-align:center;margin:0;padding:12px 0}.tool-error{color:var(--viz-pruned);font:700 12px var(--font-mono);overflow-wrap:anywhere;margin:0}.tool-slider-row{color:var(--ink-soft);font:700 12px var(--font-ui);gap:8px;display:grid}.tool-slider-row b{color:var(--accent)}.tool-slider-row input{width:100%;accent-color:var(--accent)}.task-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.task-list li{border:1px solid var(--line);background:var(--paper);border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:8px 10px;display:flex}.task-list li.done{opacity:.55}.task-list li.done .task-text{text-decoration:line-through}.task-check{border:1.5px solid var(--line);background:var(--paper-raised);width:28px;height:28px;color:var(--viz-settled);font:700 13px var(--font-ui);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.task-list li.done .task-check{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.task-text{min-width:0;font:600 14px var(--font-ui);overflow-wrap:anywhere;flex:1}.task-delete{width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;flex:none;font-size:18px}.task-delete:hover{color:var(--viz-pruned)}.focus-ring{place-items:center;display:grid;position:relative}.focus-time{text-align:center;gap:2px;display:grid;position:absolute}.focus-time strong{font:700 44px/1 var(--font-mono);font-variant-numeric:tabular-nums}.focus-time small{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.habit-list{gap:10px;display:grid}.habit-row{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:12px 14px}.habit-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.habit-head strong{font:700 14px var(--font-ui)}.habit-head-actions{align-items:center;gap:8px;display:flex}.habit-streak{background:var(--success-soft);color:var(--viz-settled);font:700 11px var(--font-mono);border-radius:999px;padding:2px 9px}.habit-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.habit-cell{aspect-ratio:1;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink-soft);font:700 12px var(--font-mono);cursor:pointer;border-radius:10px;place-items:center;display:grid}.habit-cell.today{box-shadow:0 0 0 2px var(--accent)}@supports (color:color-mix(in lab, red, red)){.habit-cell.today{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent)}}.habit-cell.done{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.calc-display{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:4px;padding:14px;display:grid}.calc-expression{color:var(--ink-soft);font:700 13px var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calc-result{color:var(--accent);font:700 26px var(--font-mono)}.calc-error{color:var(--viz-pruned);font:700 13px var(--font-mono)}.calc-pad{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.calc-key{border:1px solid var(--line);background:var(--paper-raised);min-height:48px;color:var(--ink);font:700 16px var(--font-mono);cursor:pointer;border-radius:12px}.calc-key:hover{border-color:var(--accent);color:var(--accent)}.calc-key:active{transform:scale(.96)}.calc-wide{color:var(--viz-pruned)}.converter-arrow{color:var(--ink-soft);font:700 16px var(--font-ui);align-self:center}.converter-results{gap:6px;margin:0;padding:0;list-style:none;display:grid}.converter-results li{border:1px solid var(--line);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 14px;display:flex}.converter-results strong{font:700 16px var(--font-mono);overflow-wrap:anywhere}.converter-results span{color:var(--ink-soft);font:700 11px var(--font-mono)}.regex-flags{flex:0 0 70px}.regex-preview{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);font:13px/1.7 var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap;padding:14px}.regex-preview mark{background:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.regex-preview mark{background:color-mix(in srgb, var(--viz-cached) 35%, transparent)}}.regex-preview mark{color:var(--ink);border-radius:4px;padding:0 2px}.regex-groups{gap:6px;margin:0;padding:0;list-style:none;display:grid}.regex-groups li{border:1px solid var(--line);background:var(--paper);font:700 12px var(--font-mono);border-radius:10px;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.regex-groups b{color:var(--accent)}.regex-groups span{color:var(--ink-soft);overflow-wrap:anywhere}.password-output{border:1px dashed var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font:700 15px var(--font-mono);text-align:center;overflow-wrap:anywhere;padding:18px 14px}.json-input{min-height:160px}.notebook-search{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:48px;color:var(--ink);font:15px var(--font-ui);padding:0 14px}.notebook-group{gap:8px;display:grid}.notebook-group-label{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.notebook-list{gap:8px;display:grid}.notebook-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);gap:6px;padding:12px 14px;display:grid}.notebook-item-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.notebook-item-title{font:700 13px var(--font-ui);color:var(--ink)}.notebook-item-preview{color:var(--ink-soft);font:12px/1.5 var(--font-ui);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.notebook-actions{flex:none;gap:6px;display:flex}.notebook-small-btn{min-height:34px;padding:0 12px;font-size:11px}.notebook-editor{gap:8px;display:grid}.notebook-editor textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:120px;color:var(--ink);font:14px/1.55 var(--font-ui);resize:vertical;padding:12px}.notebook-editor-text{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:140px;color:var(--ink);font:14px/1.55 var(--font-mono);resize:vertical;padding:12px}.complexity-picker{flex-wrap:wrap;gap:8px;display:flex}.complexity-story{border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);padding:14px 16px}.complexity-story strong{font:700 15px var(--font-narrative)}.complexity-story p{color:var(--ink-soft);font:13px/1.5 var(--font-ui);margin:4px 0 0}.complexity-ed{min-height:260px}.complexity-chart{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);padding:14px}.complexity-chart svg{width:100%;height:auto;display:block}.complexity-gridline{stroke:var(--line);stroke-width:.5px}.complexity-axis{fill:var(--ink-soft);font:700 8px var(--font-mono)}.complexity-line{fill:none;stroke-width:2px}.line-a{stroke:var(--viz-pruned)}.line-b{stroke:var(--viz-settled)}.complexity-dot.dot-a{fill:var(--viz-pruned)}.complexity-dot.dot-b{fill:var(--viz-settled)}.complexity-legend{gap:6px;margin-top:10px;display:grid}.complexity-legend span{color:var(--ink-soft);font:600 12px var(--font-ui);align-items:center;gap:8px;display:flex}.legend-dot{border-radius:50%;flex:none;width:10px;height:10px}.legend-dot.dot-a{background:var(--viz-pruned)}.legend-dot.dot-b{background:var(--viz-settled)}.app-library-group{gap:8px;display:grid}.app-library-label{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.app-library-grid{grid-template-columns:repeat(4,1fr);gap:12px 8px;display:grid}.app-tile{justify-items:center;gap:6px;text-decoration:none;display:grid}.app-tile-icon{color:#fff;width:62px;height:62px;font:700 22px/1 var(--font-ui);box-shadow:inset 0 1px 0 #ffffff4d, var(--shadow-raised);transition:transform var(--dur-fast), box-shadow var(--dur-fast);border-radius:18px;place-items:center;display:grid}.app-tile:hover .app-tile-icon{box-shadow:0 10px 24px var(--ink);transform:translateY(-3px)scale(1.04)}@supports (color:color-mix(in lab, red, red)){.app-tile:hover .app-tile-icon{box-shadow:0 10px 24px color-mix(in srgb, var(--ink) 22%, transparent)}}.app-tile:active .app-tile-icon{transform:scale(.94)}.app-tile-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink);font:600 11px var(--font-ui);overflow:hidden}.app-tile-icon{text-shadow:0 1px 2px #00000047;width:62px;height:62px;box-shadow:inset 0 1px 0 #ffffff4d, var(--shadow-raised);border-radius:18px;position:relative;overflow:hidden}.app-tile-icon:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff3d,#0000 46%);position:absolute;inset:0}.app-tile-badge{z-index:2;background:var(--viz-pruned);min-width:20px;height:20px;color:var(--paper-raised);font:700 11px var(--font-mono);box-shadow:0 0 0 2px var(--paper);border-radius:999px;place-items:center;padding:0 5px;font-style:normal;display:grid;position:absolute;top:-6px;right:-8px}.app-tile-dot{z-index:2;background:var(--viz-cached);width:12px;height:12px;box-shadow:0 0 0 2.5px var(--paper);border-radius:50%;position:absolute;top:-3px;right:-3px}:root[data-icons=nothing] .app-tile-icon,:root[data-icons=nothing] .store-icon,[data-icons=nothing] .icon-pack-preview .app-tile-icon{text-shadow:none;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 1px #ffffff14;color:#f4f3ef!important;background:linear-gradient(145deg,#26262a,#060607)!important}:root[data-icons=nothing] .app-tile-icon:after,[data-icons=nothing] .icon-pack-preview .app-tile-icon:after{background:radial-gradient(circle at 50% 118%,#e020208c,#0000 46%)}:root[data-icons=teenage] .app-tile-icon,:root[data-icons=teenage] .store-icon,[data-icons=teenage] .icon-pack-preview .app-tile-icon{text-shadow:none;box-shadow:inset 0 0 0 1px #c6c1ac,inset 0 -8px 14px #1918130d;color:#191813!important;background:linear-gradient(145deg,#f8f6ee,#ddd9c8)!important}:root[data-icons=teenage] .app-tile-icon:after,[data-icons=teenage] .icon-pack-preview .app-tile-icon:after{background:linear-gradient(#ffffff80,#0000 40%)}:root[data-icons=nothing] .app-tile-badge,:root[data-icons=nothing] .app-tile-dot{background:#e02020}:root[data-icons=teenage] .app-tile-badge,:root[data-icons=teenage] .app-tile-dot{background:#e04a00}.doticon{aspect-ratio:1;grid-template-columns:repeat(7,1fr);gap:6%;width:30px;display:grid}.doticon b{aspect-ratio:1;background:currentColor;border-radius:50%;width:100%;display:block}@supports (color:color-mix(in lab, red, red)){.doticon b{background:color-mix(in srgb, currentColor 13%, transparent)}}.doticon b.on{background:currentColor;box-shadow:0 0 3px}@supports (color:color-mix(in lab, red, red)){.doticon b.on{box-shadow:0 0 3px color-mix(in srgb, currentColor 45%, transparent)}}.teicon{width:26px;height:26px;display:block}.icon-pack-preview .doticon{width:21px}.icon-pack-preview .teicon{width:18px;height:18px}.icon-pack-preview .app-tile-icon{border-radius:13px;width:46px;height:46px;font-size:17px}.curriculum-explore{content-visibility:auto;contain-intrinsic-size:auto 620px}.settings-hint{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:-4px 0 12px}.settings-section{content-visibility:auto;contain-intrinsic-size:auto 320px}.icon-pack-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.icon-pack-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);text-align:left;cursor:pointer;transition:border-color var(--dur-fast), box-shadow var(--dur-fast), transform var(--dur-fast);justify-items:start;gap:6px;padding:14px;display:grid}.icon-pack-card:hover{border-color:var(--accent);transform:translateY(-2px)}.icon-pack-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.icon-pack-card strong{font:700 14px var(--font-ui)}.icon-pack-card>span{color:var(--ink-soft);font:12px/1.45 var(--font-ui)}.icon-pack-card small{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.icon-pack-preview{gap:8px;margin-top:4px;display:flex}.pack-preview-bar{background:var(--paper);width:100%;box-shadow:inset 0 0 0 1px var(--line);border-radius:18px;gap:5px;margin-top:8px;padding:5px 6px;display:flex}@supports (color:color-mix(in lab, red, red)){.pack-preview-bar{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--line) 80%, transparent)}}.pack-preview-tab{min-width:0;min-height:52px;color:var(--ink-soft);font:650 10px var(--font-ui);border-radius:15px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;display:flex;position:relative}.pack-preview-tab.active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab, red, red)){.pack-preview-tab.active{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 18%, transparent)}}.pack-preview-tab.active:before{content:"";background:var(--accent);border-radius:999px;width:18px;height:2px;margin-left:-9px;position:absolute;top:4px;left:50%}.pack-preview-tab .teicon{width:21px;height:21px}.pack-preview-tab .doticon{width:22px}.pack-preview-tab .glyphicon{font-size:17px}.glyphicon{line-height:1;font-family:var(--font-ui);justify-content:center;align-items:center;display:inline-flex}.navslot-icon{flex:none}.logo-style-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;max-width:560px;margin-top:12px;display:grid}.logo-style-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);text-align:left;cursor:pointer;transition:border-color var(--dur-fast), box-shadow var(--dur-fast), transform var(--dur-fast);justify-items:start;gap:3px;padding:13px;display:grid}.logo-style-card:hover{border-color:var(--accent);transform:translateY(-2px)}.logo-style-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.logo-style-card strong{font:700 13px var(--font-ui)}.logo-style-card small{color:var(--ink-soft);font:11.5px/1.4 var(--font-ui)}.logo-style-note{color:var(--ink-soft);opacity:.75;font:600 9px var(--font-ui);letter-spacing:.07em;text-transform:uppercase}.nav-slot-preview{border:1px solid var(--line);background:var(--paper-raised);border-radius:18px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-width:460px;margin-top:14px;padding:10px 8px;display:grid}@supports (color:color-mix(in lab, red, red)){.nav-slot-preview{background:color-mix(in srgb, var(--paper-raised) 96%, transparent)}}.nav-slot-cell{background:var(--paper);min-height:52px;color:var(--ink-soft);font:650 9.5px var(--font-ui);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.nav-slot-cell .teicon{width:20px;height:20px}.nav-slot-cell .doticon{width:20px}.nav-slot-cell .glyphicon{font-size:15px}.nav-slot-cell{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;position:relative}.nav-slot-cell.dragging{cursor:grabbing;box-shadow:0 0 0 2px var(--accent), var(--shadow-raised);z-index:2;color:var(--ink);background:var(--paper-raised);transform:scale(1.05)}.nav-slot-more{color:var(--accent);cursor:default;touch-action:auto}.nav-slot-nudge{opacity:0;pointer-events:none;transition:opacity var(--dur-fast);justify-content:space-between;display:flex;position:absolute;inset:auto 4px 3px}.nav-slot-cell:focus-within .nav-slot-nudge,.nav-slot-nudge:focus-within{opacity:1;pointer-events:auto}.nav-slot-nudge button{background:var(--paper-raised);width:18px;height:16px;color:var(--ink-soft);cursor:pointer;box-shadow:inset 0 0 0 1px var(--line);border:none;border-radius:6px;place-items:center;font-size:11px;line-height:1;display:grid}.nav-slot-nudge button:hover{color:var(--ink);background:var(--accent-soft)}.nav-style-list{gap:10px;max-width:460px;margin-top:14px;display:grid}.nav-style-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);grid-template-columns:76px 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.nav-style-label{color:var(--ink-soft);font:700 11.5px var(--font-ui);letter-spacing:.04em;text-transform:uppercase}.nav-style-options{flex-wrap:wrap;gap:8px;display:flex}.nav-style-tile{border:1px solid var(--line);background:var(--paper);width:46px;height:46px;color:var(--ink-soft);cursor:pointer;transition:border-color var(--dur-fast), box-shadow var(--dur-fast), color var(--dur-fast), transform var(--dur-fast);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.nav-style-tile:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.nav-style-tile.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);color:var(--accent)}.nav-style-tile .teicon{width:20px;height:20px}.nav-style-tile .doticon{width:20px}.nav-style-tile .glyphicon{font-size:16px}.nav-style-tile small{font:700 7.5px var(--font-ui);letter-spacing:.06em;text-transform:uppercase}:root[data-focus=on]{--accent:#e04a00;--accent-soft:#e04a00}@supports (color:color-mix(in lab, red, red)){:root[data-focus=on]{--accent-soft:color-mix(in srgb, #e04a00 13%, var(--paper-raised))}}.focus-page{place-items:center;min-height:100dvh;padding:32px 16px;display:grid}.focus-shell{text-align:center;justify-items:center;gap:8px;width:min(440px,100%);display:grid}.focus-dial-wrap{width:min(320px,82vw);margin-top:12px;position:relative}.focus-dial{touch-action:none;cursor:grab;width:100%}.focus-dial.locked{cursor:default}.focus-dial-face{fill:var(--paper-raised);stroke:var(--line)}.focus-dial-tick{stroke:var(--ink-soft);stroke-width:2px;opacity:.5}.focus-dial-track{fill:none;stroke:var(--line);stroke-width:6px}.focus-dial-progress{fill:none;stroke:var(--accent);stroke-width:6px;stroke-linecap:round;transition:stroke-dashoffset .5s linear}.focus-dial-hand{stroke:var(--ink);stroke-width:3px;stroke-linecap:round}.focus-dial-knob{fill:var(--paper-raised);stroke:var(--accent);stroke-width:3px}.focus-readout{font:700 44px var(--font-mono);letter-spacing:-.02em;color:var(--ink);pointer-events:none;font-variant-numeric:tabular-nums;place-items:center;display:grid;position:absolute;inset:0}.focus-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:14px;display:flex}.glyph-studio{gap:12px;max-width:420px;display:grid}.glyph-grid{border:1px solid var(--line);background:var(--paper);border-radius:14px;grid-template-columns:repeat(7,26px);justify-content:center;gap:5px;padding:12px;display:grid}.glyph-cell{aspect-ratio:1;background:currentColor;border-radius:50%}@supports (color:color-mix(in lab, red, red)){.glyph-cell{background:color-mix(in srgb, currentColor 10%, transparent)}}.glyph-cell{cursor:pointer;transition:background var(--dur-fast), transform var(--dur-fast)}.glyph-cell.on{background:var(--accent);box-shadow:0 0 6px var(--accent)}@supports (color:color-mix(in lab, red, red)){.glyph-cell.on{box-shadow:0 0 6px color-mix(in srgb, var(--accent) 45%, transparent)}}.glyph-cell:hover{transform:scale(1.12)}.style-preset.locked{opacity:.55;cursor:not-allowed}.style-preset.locked:hover{border-color:var(--line);box-shadow:none;transform:none}.preset-lock{z-index:1;background:var(--ink);border-radius:999px;justify-self:start;padding:2px 8px;position:relative}@supports (color:color-mix(in lab, red, red)){.preset-lock{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.preset-lock{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}textarea.settings-field-input{border:1px solid var(--line);background:var(--paper-raised);width:100%;color:var(--ink);font:12px/1.5 var(--font-mono);resize:vertical;border-radius:10px;padding:10px 12px}textarea.settings-field-input:focus{border-color:var(--accent);outline:none}.new-badge.new-badge{background:var(--accent);color:var(--on-accent);font:800 8.5px var(--font-ui);letter-spacing:.1em;vertical-align:middle;border-radius:999px;margin-left:6px;padding:2px 7px;display:inline-block}.settings-toc{flex-wrap:wrap;gap:7px;padding:0 0 4px;display:flex}.settings-toc .app-chip{text-decoration:none}.settings-search{align-items:center;gap:10px;margin-bottom:12px;display:flex}.settings-search input[type=search]{border:1px solid var(--line);background:var(--paper-raised);min-height:44px;color:var(--ink);font:600 13px var(--font-ui);border-radius:12px;flex:1;padding:0 14px}.settings-search input[type=search]:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.glyph-launcher{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);max-width:460px;color:var(--ink);transition:border-color var(--dur-fast), transform var(--dur-fast), box-shadow var(--dur-fast);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.glyph-launcher:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.glyph-launcher strong{font:700 14px var(--font-ui);display:block}.glyph-launcher small{color:var(--ink-soft);font:11.5px var(--font-ui)}.glyph-launcher i{color:var(--accent);margin-left:auto;font-size:20px;font-style:normal}.glyph-app{max-width:1060px;min-height:100dvh;padding:26px 18px calc(40px + env(safe-area-inset-bottom));margin:0 auto}.glyph-head{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.glyph-head h1{font:700 clamp(24px, 5vw, 32px)/1.1 var(--font-narrative);letter-spacing:-.02em}.glyph-layout{grid-template-columns:minmax(0,1fr) minmax(0,300px);align-items:start;gap:22px;display:grid}.glyph-canvas-col,.glyph-panel{min-width:0}.glyph-canvas{max-width:100%;overflow-x:auto}@media (max-width:900px){.glyph-layout{grid-template-columns:1fr}}.glyph-canvas-col{gap:14px;display:grid}.glyph-toolbar{gap:8px;display:grid}.glyph-canvas{touch-action:none;-webkit-user-select:none;user-select:none;width:fit-content;box-shadow:inset 0 0 0 1px var(--line), var(--shadow-raised);border-radius:20px;gap:3px;padding:clamp(10px,3vw,20px);display:inline-grid}@supports (color:color-mix(in lab, red, red)){.glyph-canvas{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--line) 70%, transparent), var(--shadow-raised)}}.glyph-canvas-row{gap:3px;display:flex}.glyph-pixel{aspect-ratio:1;cursor:crosshair;border:0;width:clamp(18px,2.875vw,34px);padding:0;transition:transform 60ms linear}.glyph-pixel:not(.on):hover{background:currentColor!important}@supports (color:color-mix(in lab, red, red)){.glyph-pixel:not(.on):hover{background:color-mix(in srgb, currentColor 14%, transparent)!important}}.glyph-previews span:first-child{color:var(--ink-soft);font:700 9.5px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.glyph-preview-strip{align-items:flex-end;gap:10px;margin-top:8px;display:flex}.glyph-preview-tile{border-radius:8px;display:block;position:relative;overflow:hidden}.glyph-preview-tile.dark{background:#0a0a0b;box-shadow:inset 0 0 0 1px #27272a}.glyph-preview-tile.light{background:#f4f3ef;box-shadow:inset 0 0 0 1px #cfcfc8}.glyph-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);gap:12px;padding:18px;display:grid;position:sticky;top:16px}.glyph-panel h2{font:700 10.5px var(--font-ui);letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}.glyph-field{gap:6px;display:grid}.glyph-field>span{color:var(--ink-soft);font:600 11px var(--font-ui)}.glyph-field input[type=range]{accent-color:var(--accent);width:100%}.glyph-field select{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:600 12px var(--font-ui);border-radius:10px;padding:8px 10px}.swatch-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.swatch{cursor:pointer;width:26px;height:26px;transition:transform var(--dur-fast), box-shadow var(--dur-fast);border-radius:9px;box-shadow:inset 0 0 0 1px #80808059}.swatch:hover{transform:scale(1.1)}.swatch.selected{box-shadow:0 0 0 3px var(--accent-soft), inset 0 0 0 1px #80808059}.glyph-export-row{flex-wrap:wrap;gap:8px;display:flex}.glyph-message{color:var(--ink-soft);font:600 11px/1.5 var(--font-ui)}.glyph-frames-bar{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;gap:8px;padding:12px;display:grid}.glyph-frames-label{color:var(--ink-soft);font:700 9.5px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.glyph-thumb{border:1px solid var(--line);cursor:pointer;width:40px;height:40px;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:9px;padding:0;position:relative;overflow:hidden}.glyph-thumb.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.glyph-thumb b{position:absolute}.glyph-inline-field{color:var(--ink-soft);font:700 11px var(--font-ui);align-items:center;gap:6px;display:inline-flex}.glyph-inline-field input[type=range]{accent-color:var(--accent);width:90px}.glyph-patterns{gap:8px;display:grid}.onion-layer{pointer-events:none;position:absolute;inset:clamp(10px,3vw,20px)}@media (prefers-reduced-motion:no-preference){.mobile-tab.active:before{animation:pill-in .22s var(--ease-standard) both}@keyframes pill-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.mobile-more-sheet{animation:.26s cubic-bezier(.2,.9,.25,1.05) both sheet-spring}@keyframes sheet-spring{0%{opacity:.6;transform:translateY(9%)}to{opacity:1;transform:translateY(0)}}.style-preset,.logo-style-card,.icon-pack-card{will-change:transform}}.offline-banner{background:var(--viz-cached);padding:7px 16px}@supports (color:color-mix(in lab, red, red)){.offline-banner{background:color-mix(in srgb, var(--viz-cached) 18%, var(--paper-raised))}}.offline-banner{border-bottom:1px solid var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.offline-banner{border-bottom:1px solid color-mix(in srgb, var(--viz-cached) 45%, var(--line))}}.offline-banner{color:var(--ink);font:600 12px var(--font-ui);text-align:center}.install-banner{border:1px solid var(--accent);background:linear-gradient(120deg, var(--accent-soft), var(--paper-raised));border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:13px 15px;display:flex}.install-banner span{color:var(--ink);font:600 13px/1.45 var(--font-ui)}.install-banner strong{font-weight:800}.install-banner-actions{align-items:center;gap:6px;display:flex}.install-cta{min-height:40px;padding:0 16px}.install-dismiss{width:34px;height:34px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;font-size:20px}.page-loading{min-height:calc(100dvh - var(--app-header-height));color:var(--ink-soft);font:600 13px var(--font-ui);place-items:center;padding:24px;display:grid}.page-loading:before{content:"◆";color:var(--accent);animation:splash-pulse 1.1s var(--ease-standard) infinite alternate;margin-bottom:12px;font-size:30px;display:block}@keyframes splash-pulse{0%{opacity:.55;transform:scale(.82)rotate(-8deg)}to{opacity:1;transform:scale(1.06)rotate(6deg)}}.mobile-more-sheet{touch-action:pan-y}.ed,.complexity-ed,.atlas-code,.out,.json-output,.playground-gutter,.mobile-more-links,.desktop-more-menu{scrollbar-width:none}.ed::-webkit-scrollbar{display:none}.complexity-ed::-webkit-scrollbar{display:none}.atlas-code::-webkit-scrollbar{display:none}.out::-webkit-scrollbar{display:none}.json-output::-webkit-scrollbar{display:none}.playground-gutter::-webkit-scrollbar{display:none}.mobile-more-links::-webkit-scrollbar{display:none}.desktop-more-menu::-webkit-scrollbar{display:none}.ed-wrap{transition:border-color var(--dur-fast)}.ed-wrap:focus-within{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ed-wrap:focus-within{border-color:color-mix(in srgb, var(--accent) 55%, var(--line))}}body.app-mode-active .super-page,body.app-mode-active .icpc-page,body.app-mode-active .settings-page,body.app-mode-active .dashboard-page,body.app-mode-active .android-page,body.app-mode-active .os-home{min-height:auto;padding-bottom:28px;overflow-x:clip}body.app-mode-active .practice-wrap .main{padding-bottom:28px}.android-store-hero{border:1px solid var(--line);border-radius:calc(var(--radius) + 8px);background:linear-gradient(135deg, var(--accent-soft), var(--paper-raised));box-shadow:var(--shadow-raised);align-items:center;gap:20px;padding:clamp(18px,4vw,28px);display:flex}.android-store-icon{color:#f2f4ec;width:92px;height:92px;font:italic 700 46px/1 var(--font-narrative);box-shadow:inset 0 1px 0 #ffffff4d, var(--shadow-raised);background:linear-gradient(135deg,#2f8f5b,#1e6b45);border-radius:24px;flex:none;place-items:center;display:grid}.android-store-id h1{font:700 clamp(28px, 5vw, 40px)/1 var(--font-narrative);letter-spacing:-.03em;margin:6px 0 4px}.android-store-id p{color:var(--ink-soft);font:14px/1.5 var(--font-narrative);margin:0}.android-store-meta{color:var(--ink-soft);font:700 11px var(--font-mono);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.android-store-meta i{background:var(--ink-soft);border-radius:50%;width:3px;height:3px}.android-store-actions{gap:10px;display:grid}.android-store-cta{border-radius:calc(var(--radius) + 2px);background:var(--accent);min-height:56px;color:var(--paper-raised);font:700 16px var(--font-ui);box-shadow:0 8px 22px var(--accent);justify-content:center;align-items:center;gap:10px;text-decoration:none;display:flex}@supports (color:color-mix(in lab, red, red)){.android-store-cta{box-shadow:0 8px 22px color-mix(in srgb, var(--accent) 32%, transparent)}}.android-store-cta{transition:transform var(--dur-fast), box-shadow var(--dur-fast)}.android-store-cta:hover{box-shadow:0 12px 28px var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.android-store-cta:hover{box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 38%, transparent)}}.android-store-cta:active{transform:scale(.98)}.android-store-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:var(--shadow-raised);gap:12px;padding:clamp(16px,3vw,24px);display:grid}.android-verified{align-items:flex-start;gap:12px;display:flex}.android-verified-mark{background:var(--viz-settled);width:34px;height:34px;color:var(--paper-raised);font:800 16px var(--font-ui);border-radius:50%;flex:none;place-items:center;display:grid}.android-verified strong{font:700 14px var(--font-ui);display:block}.android-verified p{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:3px 0 0}.android-whatsnew{gap:8px;margin:0;padding:0;list-style:none;display:grid}.android-whatsnew li{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:2px;padding:10px 12px;display:grid}.android-whatsnew strong{font:700 13px var(--font-ui)}.android-whatsnew span{color:var(--ink-soft);font:12px/1.5 var(--font-ui)}.android-store-link{color:var(--accent);font:700 12px var(--font-ui);text-decoration:none}.android-store-link:hover{text-decoration:underline}.android-features{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.android-feature{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);align-content:start;gap:4px;padding:12px;display:grid}.android-feature-glyph{color:var(--accent);font:700 18px/1 var(--font-ui)}.android-feature strong{font:700 12px var(--font-ui)}.android-feature-body{color:var(--ink-soft);font:11px/1.45 var(--font-ui)}.android-store-card .android-install-guide{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:0;padding:0}@media (max-width:700px){.android-store-hero{align-items:flex-start}.android-store-icon{border-radius:20px;width:72px;height:72px;font-size:36px}.android-features{grid-template-columns:1fr}}@media (max-width:480px){.tool-center-row{flex-wrap:wrap}.tool-center-row .super-primary,.tool-center-row .super-ghost{flex:100%}}.out{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);font:13px/1.7 var(--font-mono);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:12px 16px;overflow-x:auto}.json-output{white-space:pre}@media (max-width:480px){.tool-center-row{flex-wrap:wrap}.tool-center-row .super-primary,.tool-center-row .super-ghost{flex:100%}}@media (min-width:640px){.app-library-grid{grid-template-columns:repeat(6,1fr)}}@media (min-width:1000px){.app-library-grid{grid-template-columns:repeat(8,1fr)}}.os-home{flex-direction:column;min-height:100vh;display:flex}.os-header{width:100%;max-width:1100px;margin:0 auto;padding:clamp(18px,4vw,32px) clamp(16px,4vw,44px) 0}.os-status{justify-content:space-between;align-items:center;gap:14px;display:flex}.os-date{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.os-greeting{font:700 clamp(26px, 5vw, 40px)/1 var(--font-narrative);letter-spacing:-.03em;margin:4px 0 0}.os-search{border:1px solid var(--line);background:var(--paper-raised);min-height:44px;color:var(--ink-soft);font:600 13px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast);border-radius:999px;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.os-search:hover{border-color:var(--accent);color:var(--accent)}.os-search kbd{border:1px solid var(--line);font:700 10px var(--font-mono);border-radius:6px;padding:2px 6px}.os-widgets{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;display:grid}.os-widget{border:1px solid var(--line);background:var(--paper-raised);min-height:92px;color:var(--ink);transition:transform var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:16px;align-content:start;gap:3px;padding:13px 14px;text-decoration:none;display:grid}.os-widget:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.os-widget-featured{background:linear-gradient(120deg, var(--accent-soft), var(--paper-raised) 70%);border-color:var(--accent);grid-area:span 1/1/auto/-1}@supports (color:color-mix(in lab, red, red)){.os-widget-featured{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.os-widget-kicker{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.os-widget strong{font:700 14px/1.25 var(--font-narrative);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.os-widget em{color:var(--ink-soft);font:10px var(--font-ui);font-style:normal}.os-widget-cta{color:var(--accent);font:700 12px var(--font-ui);margin-top:auto}.os-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:20px clamp(16px,4vw,44px) 56px}.app-library{gap:16px;margin:0 0 28px;display:grid}.app-library-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.app-library-chips{flex-wrap:wrap;gap:6px;display:flex}.app-chip{border:1px solid var(--line);background:var(--paper-raised);min-height:36px;color:var(--ink-soft);font:600 12px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast), background var(--dur-fast);border-radius:999px;padding:0 13px}.app-chip.active{border-color:var(--accent);background:var(--accent);color:var(--paper-raised)}.app-library-search{border:1px solid var(--line);background:var(--paper-raised);max-width:240px;min-height:38px;color:var(--ink);font:600 13px var(--font-ui);border-radius:999px;flex:180px;padding:0 14px}.os-footnote{color:var(--ink-soft);font:13px/1.6 var(--font-ui);margin:0 0 24px}.os-footnote a{color:var(--accent);font-weight:600}@media (max-width:700px){.os-widgets{grid-template-columns:repeat(2,1fr)}.os-widget-featured{grid-column:1/-1;min-height:104px}.os-search-text{display:none}.app-library-search{flex:100%;order:2;max-width:none}.atlas-grid{grid-template-columns:1fr}.atlas-stage{min-height:220px}.atlas-bars{height:150px}.observatory-stage-map{grid-template-columns:repeat(9,1fr);width:100%}.observatory-stage-map span{aspect-ratio:1;width:auto;height:auto;font-size:9px}.toolkit-tabs{grid-template-columns:repeat(2,1fr)}.toolkit-tab{min-height:76px}.super-field .segmented{grid-template-columns:1fr;gap:6px;width:100%;display:grid}.super-field .segmented button{min-height:46px}}@media (max-width:480px){.tool-input-row{flex-wrap:wrap}.tool-input-row input{flex:100%}.tool-input-row select{flex:1}.tool-input-row .super-primary{flex:100%}.converter-arrow{display:none}.os-widgets{gap:6px}}@media (max-width:700px){.contest-hero,.review-hero,.daily-hero{grid-template-columns:1fr}.contest-history-signal,.review-signal,.daily-streak{order:-1;justify-self:start;min-width:120px}.cheatsheet-grid{grid-template-columns:1fr}.release-entry{grid-template-columns:1fr;gap:10px}.release-rail{grid-auto-flow:column;justify-content:start;align-items:baseline;gap:10px}.review-grades{grid-template-columns:repeat(2,1fr)}.daily-calendar{grid-template-columns:repeat(7,1fr)}.interview-rubric-row{flex-direction:column;align-items:stretch;gap:8px}.interview-rubric-row .segmented{width:100%}.interview-rubric-row .segmented button{flex:1}.contest-hero h1,.review-hero h1,.daily-hero h1{font-size:clamp(26px,7.5vw,34px)}.contest-hero p,.review-hero p,.daily-hero p{font-size:13px}.contest-clock strong{font-size:clamp(34px,10vw,44px)}.daily-card h2{font-size:clamp(20px,5.5vw,26px)}.review-cue{font-size:clamp(19px,5.5vw,24px)}.atlas-head h1{font-size:clamp(26px,7.5vw,34px)}.os-greeting{font-size:clamp(22px,6.5vw,30px)}}@media (min-width:701px){.super-page{padding-bottom:64px}}.one-kicker{font-family:var(--font-mono)}.one-tier{border-top:1px dashed var(--line);align-items:baseline;gap:12px;margin:34px 0 -6px;padding-top:10px;display:flex}.one-tier-name{color:var(--accent);font:700 13px var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.one-tier-note{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font:11px var(--font-ui);flex:1;overflow:hidden}.one-tier-count{color:var(--ink-soft);font:700 11px var(--font-mono)}.one-tier-progress{background:var(--line);border-radius:999px;height:3px;margin-top:12px;overflow:hidden}.one-tier-progress div{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-slow) var(--ease-standard)}@media (max-width:700px){.one-tier{gap:8px}.icpc-hero{grid-template-columns:minmax(0,1fr)}.icpc-hero-signal{order:-1;justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.icpc-problem-list{grid-template-columns:minmax(0,1fr)}}.lld-skill,.db-skill{text-overflow:ellipsis;white-space:nowrap;max-width:175px;color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);overflow:hidden}@media (max-width:420px){.lld-skill,.db-skill{max-width:132px}}.res-ghost-btn{border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:var(--paper);color:var(--ink);font:700 13px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), transform var(--dur-fast);align-items:center;padding:12px 16px;display:inline-flex}.res-ghost-btn:hover{border-color:var(--accent);transform:translateY(-2px)}.res-pipeline{grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0 0;display:grid}.res-pipe-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:var(--paper-raised);box-shadow:var(--shadow-raised);align-content:start;gap:5px;padding:14px;display:grid}.res-pipe-num{color:var(--accent);font:700 11px var(--font-mono);letter-spacing:.08em}.res-pipe-card b{font:700 14px var(--font-ui);letter-spacing:-.01em}.res-pipe-card p{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:0}.res-pipe-card small{color:var(--ink-soft);font:10px/1.4 var(--font-ui);opacity:.85}.res-pipeline-note{color:var(--ink-soft);font:11px/1.5 var(--font-ui);margin:10px 0 0}.res-h2{font:700 24px var(--font-narrative);letter-spacing:-.02em;margin:42px 0 14px}.res-method-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.res-method-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:var(--paper-raised);box-shadow:var(--shadow-raised);align-content:start;gap:6px;padding:16px 14px 14px;display:grid;position:relative}.res-method-num{color:var(--accent);font:700 12px var(--font-mono);opacity:.7;position:absolute;top:12px;right:12px}.res-method-card b{font:700 15px var(--font-ui);letter-spacing:-.01em}.res-method-card p{color:var(--ink-soft);font:12px/1.55 var(--font-ui);margin:0}.res-method-card blockquote{border-left:2px solid var(--accent);color:var(--ink);font:12px/1.5 var(--font-ui);margin:4px 0 0;padding-left:10px;font-style:italic}.res-bank-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.res-filters{flex-wrap:wrap;gap:6px;display:flex}.res-filters button{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast);border-radius:999px;padding:6px 11px}.res-filters button:hover{border-color:var(--accent);color:var(--ink)}.res-filters button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.res-qlist{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.res-q{border:1px solid var(--line);border-radius:calc(var(--radius) + 2px);background:var(--paper-raised);box-shadow:var(--shadow-raised)}.res-q.open{border-color:var(--accent)}.res-q.done{border-color:var(--success-line)}.res-q-head{width:100%;min-height:52px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:10px 14px;display:flex}.res-q-dot{border:1px solid var(--line);background:var(--paper);width:26px;height:26px;color:var(--ink-soft);font:700 10px var(--font-mono);border-radius:50%;flex:none;place-items:center;display:grid}.res-q.done .res-q-dot{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.res-q-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:650 13px var(--font-ui);flex:1;overflow:hidden}.res-q-domain{color:var(--ink-soft);font:600 10px var(--font-ui);letter-spacing:.04em;text-transform:uppercase}.res-q-chevron{color:var(--accent);font:700 15px var(--font-mono)}.res-q-body{border-top:1px dashed var(--line);gap:12px;padding:4px 14px 16px;display:grid}.res-q-setup{color:var(--ink-soft);font:12px/1.55 var(--font-ui);margin:10px 0 0}.res-q-prompt{color:var(--ink);font:650 15px/1.5 var(--font-narrative);margin:0}.res-q-source{border-left:2px solid var(--viz-cached);background:var(--paper);color:var(--ink-soft);font:600 11px/1.5 var(--font-ui);border-radius:0 8px 8px 0;margin:0;padding:8px 12px}.res-drill .res-q-source{margin-top:6px}.res-steps{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.res-step{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:12px}.res-step b{color:var(--accent);font:700 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;display:block}.res-step p{color:var(--ink);font:12px/1.55 var(--font-ui);margin:0}.res-followups{gap:8px;display:grid}.res-sub{color:var(--accent);font:700 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.res-followup{border-left:2px solid var(--accent);background:var(--paper);border-radius:0 10px 10px 0;padding:11px 12px}.res-followup b{font:650 12px var(--font-ui);margin-bottom:4px;display:block}.res-followup p{color:var(--ink-soft);font:12px/1.55 var(--font-ui);margin:0}.res-q-foot{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:10px;display:grid}.res-pitfalls ul{color:var(--ink-soft);font:12px/1.6 var(--font-ui);margin:6px 0 0;padding-left:16px}.res-takeaway{border:1px solid var(--accent);margin:0;padding:12px}@supports (color:color-mix(in lab, red, red)){.res-takeaway{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--line))}}.res-takeaway{background:var(--accent-soft);color:var(--ink);font:650 12px/1.55 var(--font-ui);border-radius:10px}.res-q-actions{align-items:center;gap:10px;display:flex}.res-drill-btn{border-radius:calc(var(--radius) - 2px);background:var(--accent);color:var(--paper-raised);font:700 12px var(--font-ui);cursor:pointer;transition:transform var(--dur-fast), box-shadow var(--dur-fast);border:0;align-items:center;padding:10px 14px;display:inline-flex}.res-drill-btn:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.res-mark-btn{border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:var(--paper);color:var(--ink);font:700 12px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast);align-items:center;padding:10px 14px;display:inline-flex}.res-mark-btn:hover{border-color:var(--accent)}.res-drill{border:1px solid var(--accent);border-radius:calc(var(--radius) + 6px);background:radial-gradient(circle at 92% 0%, var(--accent), transparent 40%), var(--paper-raised);margin:26px 0 0;padding:clamp(18px,3vw,28px)}@supports (color:color-mix(in lab, red, red)){.res-drill{background:radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 40%), var(--paper-raised)}}.res-drill{box-shadow:var(--shadow-raised)}.res-drill-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.res-drill-clock{font:700 clamp(30px, 5vw, 44px)/1 var(--font-mono);letter-spacing:.02em;color:var(--ink);font-variant-numeric:tabular-nums}.res-drill-clock[data-low=true]{color:var(--viz-pruned)}.res-drill-actions{flex-wrap:wrap;gap:8px;display:flex}.res-drill-actions button{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:700 12px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast);border-radius:10px;padding:9px 13px}.res-drill-actions button:hover{border-color:var(--accent)}.res-drill-actions .res-drill-done{border-color:var(--viz-settled);background:var(--viz-settled);color:var(--paper-raised)}.res-drill-meta{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase;margin-top:8px;display:block}.res-drill-setup{color:var(--ink-soft);font:13px/1.55 var(--font-ui);margin:8px 0 0}.res-drill-q{font:700 clamp(18px, 2.6vw, 24px)/1.35 var(--font-narrative);letter-spacing:-.015em;margin:6px 0 14px}.res-drill-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.res-drill-steps button{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink-soft);text-align:left;cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast);border-radius:10px;gap:3px;padding:10px 12px;display:grid}.res-drill-steps button b{color:var(--ink);font:700 12px var(--font-ui)}.res-drill-steps button span{font:11px/1.45 var(--font-ui);font-style:italic}.res-drill-steps li.touched button{border-color:var(--viz-settled);background:var(--success-soft)}.res-drill-steps li.touched button span:after{content:" ✓";color:var(--viz-settled);font-style:normal;font-weight:700}.res-drill-reveals{gap:8px;display:grid}.res-drill-reveals details{border:1px solid var(--line);background:var(--paper);border-radius:10px}.res-drill-reveals summary{color:var(--accent);font:700 12px var(--font-ui);cursor:pointer;padding:12px 14px}.res-drill-reveals details[open] summary{border-bottom:1px dashed var(--line)}.res-drill-reveals details>:not(summary){padding:0 14px 12px}.res-drill-reveals .res-steps,.res-drill-reveals .res-followups{margin-top:12px}.res-drill-note{color:var(--ink-soft);font:11px/1.5 var(--font-ui);margin:12px 0 0}@media (max-width:860px){.res-pipeline,.res-method-grid,.res-drill-steps{grid-template-columns:repeat(2,1fr)}.res-q-foot{grid-template-columns:1fr}}@media (max-width:620px){.res-pipeline,.res-method-grid,.res-drill-steps,.res-steps{grid-template-columns:1fr}.res-q-domain{display:none}}.dashboard-page{color:var(--ink)}.dashboard-inner>h1{letter-spacing:-.03em}.dashboard-track-card,.dashboard-topic-card{transition:transform var(--dur-fast) var(--ease-standard), border-color var(--dur-fast), box-shadow var(--dur-fast)}.dashboard-track-card:hover,.dashboard-topic-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px);border-color:var(--accent)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}html{font-family:Inter,system-ui,sans-serif;overflow-x:clip}html,body{max-width:100%}html{overflow-x:clip}body{background:var(--paper);background-image:radial-gradient(circle at 88% 0%, var(--accent), transparent 28rem), radial-gradient(circle at 8% 32%, var(--viz-pointer), transparent 24rem), var(--paper-grid);overflow-x:clip}@supports (color:color-mix(in lab, red, red)){body{background-image:radial-gradient(circle at 88% 0%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 28rem), radial-gradient(circle at 8% 32%, color-mix(in srgb, var(--viz-pointer) 4%, transparent), transparent 24rem), var(--paper-grid)}}body{color:var(--ink);background-size:auto,auto,28px 28px;background-attachment:fixed;margin:0}.logo-wordmark{color:var(--ink);align-items:center;gap:8px;display:inline-flex}.logo-wordmark>span{font:700 19px/1 var(--font-narrative);letter-spacing:-.04em;font-style:italic}.app-shell-header{box-shadow:0 1px 0 var(--accent), 0 8px 24px var(--ink)}@supports (color:color-mix(in lab, red, red)){.app-shell-header{box-shadow:0 1px 0 color-mix(in srgb, var(--accent) 8%, transparent), 0 8px 24px color-mix(in srgb, var(--ink) 4%, transparent)}}.nav-link,.nav-more{transition:color var(--dur-fast), transform var(--dur-fast)}.nav-link:hover,.nav-more:hover{color:var(--accent);transform:translateY(-1px)}.command-trigger{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;transition:border-color var(--dur-fast), color var(--dur-fast), box-shadow var(--dur-fast);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:inline-flex}.command-trigger:hover{border-color:var(--accent);color:var(--accent);box-shadow:var(--shadow-raised)}.command-trigger kbd{border:1px solid var(--line);color:var(--ink-soft);font:10px var(--font-mono);border-radius:4px;padding:2px 4px}.command-mobile-trigger{border:1px solid var(--line);background:var(--paper-raised);width:38px;height:38px;color:var(--ink-soft);border-radius:12px;place-items:center;display:none}.command-backdrop{z-index:500;background:var(--ink);justify-content:center;align-items:flex-start;padding:12vh 16px 24px;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.command-backdrop{background:color-mix(in srgb, var(--ink) 38%, transparent)}}.command-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.command-center{border:1px solid var(--accent);width:min(680px,100%);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.command-center{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line))}}.command-center{border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:0 24px 80px var(--ink)}@supports (color:color-mix(in lab, red, red)){.command-center{box-shadow:0 24px 80px color-mix(in srgb, var(--ink) 28%, transparent)}}.command-input-wrap{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:13px 15px;display:flex}.command-input-wrap>span{color:var(--accent);font:700 24px/1 var(--font-ui);transform:rotate(-20deg)}.command-input-wrap input{min-width:0;color:var(--ink);font:16px var(--font-ui);background:0 0;border:0;outline:0;flex:1}.command-input-wrap input::placeholder{color:var(--ink-soft)}.command-input-wrap kbd,.command-footer kbd{border:1px solid var(--line);color:var(--ink-soft);font:9px var(--font-mono);border-radius:4px;padding:3px 5px}.command-results{gap:3px;max-height:min(58vh,520px);padding:8px;display:grid;overflow-y:auto}.command-result{border-radius:calc(var(--radius) - 4px);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.command-result:hover,.command-result.active{border-color:var(--accent);background:var(--accent-soft)}.command-result-mark{background:var(--paper);width:26px;height:26px;color:var(--accent);font:700 13px var(--font-mono);border-radius:8px;place-items:center;display:grid}.command-result>span:nth-child(2){gap:2px;min-width:0;display:grid}.command-result strong{text-overflow:ellipsis;white-space:nowrap;font:650 13px var(--font-ui);overflow:hidden}.command-result small{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);font:10px var(--font-ui);overflow:hidden}.command-result-enter{color:var(--ink-soft);font:11px var(--font-mono);opacity:.7}.command-empty{color:var(--ink-soft);font:13px var(--font-ui);margin:20px 10px}.command-footer{border-top:1px solid var(--line);color:var(--ink-soft);font:10px var(--font-ui);gap:14px;padding:9px 13px;display:flex}.command-footer span{align-items:center;gap:4px;display:inline-flex}.app-content{min-height:calc(100dvh - var(--app-header-height))}.page-loading{color:var(--ink-soft);font:600 13px var(--font-ui);place-items:center;padding:24px;display:grid}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 70%, transparent)}}:focus-visible{outline-offset:3px}.dashboard-focus{transition:transform var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard)}.dashboard-focus:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.expedition-home,.expedition-session{width:100%;max-width:760px;min-height:calc(100dvh - 52px);padding:clamp(28px, 7vw, 64px) clamp(16px, 5vw, 32px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.expedition-hero{flex-direction:column;gap:6px;margin-bottom:32px;display:flex}.expedition-hero .narrative{max-width:620px;color:var(--ink-soft)}.expedition-focus{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);flex-direction:column;gap:12px;padding:clamp(20px,5vw,32px);display:flex}.expedition-focus-top,.expedition-focus-footer,.expedition-session-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.expedition-time,.expedition-counter{color:var(--ink-soft);font:12px var(--font-mono)}.expedition-focus h2{font:700 clamp(24px, 6vw, 32px) var(--font-narrative);margin:0}.expedition-focus .narrative{margin:0}.expedition-progress{background:var(--accent);border-radius:999px;height:6px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.expedition-progress{background:color-mix(in srgb, var(--accent) 18%, transparent)}}.expedition-progress span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard);display:block}.expedition-focus-footer>span{color:var(--ink-soft);font:13px var(--font-ui)}.expedition-focus-footer .btn-primary{width:auto;min-height:44px;padding:10px 16px;font-size:13px}.expedition-principles{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin:32px 0;display:grid;overflow:hidden}.expedition-principles div{background:var(--paper-raised);flex-direction:column;gap:4px;min-height:86px;padding:14px;display:flex}.expedition-principles b{color:var(--accent);font:700 12px var(--font-ui)}.expedition-principles span{color:var(--ink-soft);font:12px/1.35 var(--font-ui)}.expedition-secondary-link,.expedition-back{color:var(--accent);font:600 13px var(--font-ui);text-decoration:none}.expedition-missing{text-align:center;font-family:var(--font-ui);padding:80px 24px}.expedition-session{max-width:680px}.expedition-session-top{margin-bottom:18px}.expedition-stepper{scrollbar-width:none;gap:6px;margin-bottom:42px;padding-bottom:4px;display:flex;overflow-x:auto}.expedition-stepper::-webkit-scrollbar{display:none}.expedition-stepper span{border:1px solid var(--line);color:var(--ink-soft);font:600 11px var(--font-ui);border-radius:999px;flex:none;padding:8px 10px}.expedition-stepper span.current{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.expedition-stepper span.complete{border-color:var(--viz-settled);color:var(--viz-settled)}.expedition-act{flex-direction:column;gap:20px;display:flex}.expedition-act>.narrative{color:var(--ink-soft)}.expedition-question{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;gap:14px;padding:18px;display:flex}.expedition-question h2{font:600 clamp(18px, 4vw, 22px)/1.35 var(--font-narrative);margin:0}.expedition-options{flex-direction:column;gap:8px;display:flex}.expedition-option{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:54px;color:var(--ink);text-align:left;font:500 14px/1.4 var(--font-ui);cursor:pointer;padding:13px 15px}.expedition-option.selected{border-color:var(--accent);background:var(--accent-soft)}.expedition-option.correct{border-color:var(--viz-settled);background:var(--success-soft)}.expedition-option.wrong{border-color:var(--viz-pruned)}.expedition-feedback{border-radius:var(--radius);font:14px/1.5 var(--font-ui);padding:13px}.expedition-feedback p{margin:5px 0 0}.expedition-feedback.correct{border:1px solid var(--success-line);background:var(--success-soft)}.expedition-feedback.wrong{border:1px solid var(--viz-pruned);background:var(--paper)}.confidence-control{color:var(--ink-soft);font:13px var(--font-ui);flex-direction:column;gap:8px;display:flex}.confidence-control b{color:var(--accent)}.confidence-control input{width:100%;accent-color:var(--accent)}.broken-trace{border-left:3px solid var(--viz-pruned);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;gap:6px;padding:16px;display:flex}.broken-trace code{color:var(--ink-soft);font:13px/1.5 var(--font-mono)}.trace-next{border:1px solid var(--viz-pruned);border-radius:var(--radius);min-height:44px;color:var(--viz-pruned);font:700 13px var(--font-ui);cursor:pointer;background:0 0;align-self:flex-start;margin-top:6px;padding:9px 14px}.trace-stopped{color:var(--viz-pruned);font:700 12px var(--font-ui);margin-top:6px}.question-locked{opacity:.72}.expedition-hint{color:var(--ink-soft);font:12px var(--font-ui);margin:-8px 0 0}.expedition-own-words{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:150px;color:var(--ink);font:17px/1.5 var(--font-narrative);resize:vertical;padding:14px}.expedition-evidence{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);grid-template-columns:110px 1fr;gap:8px 14px;padding:16px;display:grid}.expedition-evidence span{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.expedition-evidence b{font:14px var(--font-ui)}.expedition-finished{flex-direction:column;gap:18px;display:flex}.expedition-finished blockquote{border-left:3px solid var(--accent);color:var(--ink-soft);font:italic 17px/1.5 var(--font-narrative);margin:0;padding:16px}.expedition-breadcrumb{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);font:14px/1.4 var(--font-ui);flex-direction:column;gap:5px;padding:16px;display:flex}.expedition-breadcrumb span{color:var(--ink-soft);font-size:12px}.expedition-finished-actions{flex-direction:column;gap:10px;display:flex}.games-home,.game-session{width:100%;min-width:0;max-width:720px;min-height:calc(100dvh - 52px);padding:clamp(28px, 7vw, 64px) clamp(16px, 5vw, 32px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.games-intro{max-width:600px;color:var(--ink-soft);margin:8px 0 32px}.game-card{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);color:var(--ink);box-shadow:var(--shadow-raised);flex-direction:column;gap:12px;padding:clamp(20px,5vw,32px);text-decoration:none;display:flex}.game-card,.game-engine-card{width:100%;min-width:0;overflow:hidden}.game-card-art{border-radius:calc(var(--radius) - 2px);perspective:700px;background:linear-gradient(135deg,#14274e,#5b21b6 56%,#ec4899);height:112px;position:relative;overflow:hidden}.game-card-art:after{content:"";background:linear-gradient(120deg,#0000 20%,#fff3 45%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.art-orbit{border:1px solid #ffffff6b;border-radius:50%;width:110px;height:46px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotateX(62deg)rotate(-20deg)}.orbit-b{border-color:#ffffff38;width:150px;height:62px;transform:translate(-50%,-50%)rotateX(62deg)rotate(58deg)}.art-core{background:#faf9f6;border-radius:11px;width:38px;height:38px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotateX(18deg)rotateY(32deg)rotate(45deg);box-shadow:0 0 24px #ffffff7a}.art-piece{background:#fbbf24;border-radius:5px;width:15px;height:15px;position:absolute;box-shadow:0 0 15px #fbbf24b3}.piece-a{top:24px;left:27%}.piece-b{background:#34d399;animation-delay:-1.4s;bottom:22px;right:22%;box-shadow:0 0 15px #34d399b3}.piece-c{background:#22d3ee;animation-delay:-2.7s;top:23px;right:27%;box-shadow:0 0 15px #22d3eeb3}.art-invariant-inspector{background:linear-gradient(135deg,#123b4a,#0e7490 58%,#34d399)}.art-frontier-runner{background:linear-gradient(135deg,#172554,#1d4ed8 55%,#22d3ee)}.art-decision-garden{background:linear-gradient(135deg,#3b0764,#7e22ce 55%,#f472b6)}.art-state-forge{background:linear-gradient(135deg,#451a03,#b45309 55%,#facc15)}.art-compression-workshop{background:linear-gradient(135deg,#052e16,#047857 55%,#5eead4)}.art-proof-arena{background:linear-gradient(135deg,#450a0a,#be123c 55%,#fb7185)}.concept-galaxy-shell{border-radius:var(--radius);background:radial-gradient(circle at 50% 45%,#182d5a,#0b1224 70%);border:1px solid #8ba2ff5c;min-height:300px;margin:28px 0;position:relative;overflow:hidden;box-shadow:0 18px 45px #13214d38}.concept-galaxy{cursor:crosshair;height:300px}.concept-galaxy canvas{width:100%;height:100%;display:block}.galaxy-fallback{place-items:center;display:grid;position:absolute;inset:0}.galaxy-fallback span{background:hsl(calc(var(--i) * 48) 80% 68%);width:24px;height:24px;box-shadow:0 0 24px hsl(calc(var(--i) * 48) 80% 68% / .6);transform:rotate(calc(var(--i) * 51deg)) translateY(-94px) rotate(calc(var(--i) * -51deg));border-radius:8px;position:absolute}.galaxy-fallback:before{content:"";background:#faf9f6;border-radius:16px;width:54px;height:54px;box-shadow:0 0 30px #faf9f680}.concept-galaxy-caption{color:#faf9f6;pointer-events:none;align-items:baseline;gap:10px;display:flex;position:absolute;bottom:14px;left:16px;right:16px}.concept-galaxy-caption span{color:#faf9f699;font:10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.concept-galaxy-caption b{font:700 18px var(--font-narrative)}.concept-galaxy-caption small{color:#faf9f6a6;font:11px var(--font-mono)}@keyframes art-sheen{0%,65%{transform:translate(-100%)}85%,to{transform:translate(100%)}}@keyframes art-float{0%,to{margin-top:-4px}50%{margin-top:5px}}@keyframes art-orbit{0%{transform:translate(0)scale(.8)}50%{transform:translate3d(20px,16px,12px)scale(1.25)}to{transform:translate(0)scale(.8)}}.game-card:hover{box-shadow:0 8px 24px var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.game-card:hover{box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 18%, transparent)}}.game-card-top,.game-card-footer,.game-session-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.game-duration,.game-card-footer span,.game-session-top>span{color:var(--ink-soft);font:12px var(--font-mono)}.game-card h2{font:700 clamp(25px, 6vw, 34px) var(--font-narrative);margin:0}.game-card p{color:var(--ink-soft);font:16px/1.5 var(--font-narrative);margin:0}.game-card p,.games-intro,.game-engine-card p{overflow-wrap:anywhere}.game-card-footer b{color:var(--accent);font:700 13px var(--font-ui)}.game-design-note{border-left:3px solid var(--accent);background:var(--paper-raised);color:var(--ink-soft);font:14px/1.5 var(--font-ui);margin:24px 0;padding:16px}.game-design-note p{margin:6px 0 0}.game-engine-list{flex-direction:column;gap:10px;margin-top:32px;display:flex}.game-section-label{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.game-engine-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);transition:transform var(--dur-fast) var(--ease-standard), border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;gap:12px;padding:16px;text-decoration:none;display:flex}.game-engine-card.playable:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.game-engine-card:not(.playable){opacity:.72}.game-engine-card h2{font:700 20px var(--font-narrative);margin:3px 0 0}.game-engine-card p{color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:5px 0 0}.game-engine-verb{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.game-patterns{flex-wrap:wrap;gap:5px;display:flex}.game-patterns span{background:var(--accent-soft);color:var(--accent);font:11px var(--font-ui);border-radius:999px;padding:5px 8px}.game-coming{color:var(--ink-soft);font:11px var(--font-mono);align-self:flex-start}.game-missing{flex-direction:column;align-items:flex-start;gap:18px;width:min(100% - 32px,620px);min-height:calc(100dvh - 52px);margin:0 auto;padding:clamp(48px,12vw,112px) 0;display:flex}.game-missing h1{font:700 clamp(32px, 8vw, 52px)/1.02 var(--font-narrative);margin:0}.game-missing p{max-width:520px;color:var(--ink-soft);font:17px/1.5 var(--font-narrative);margin:0}.game-session{max-width:620px}.game-session-top{margin-bottom:16px}.game-sound-toggle{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink-soft);font:11px var(--font-ui);cursor:pointer;border-radius:999px;flex:none;padding:6px 9px}.game-sound-toggle[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.game-sound-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.game-meter{background:var(--line);border-radius:999px;height:6px;margin-bottom:42px;overflow:hidden}.game-meter span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard);display:block}.game-act,.game-finished{flex-direction:column;gap:18px;display:flex}.game-act>.narrative,.game-finished>.narrative{color:var(--ink-soft)}.game-act,.game-finished,.game-act>.stage-title,.game-act>.narrative{overflow-wrap:anywhere;min-width:0;max-width:100%}.stack-climber-3d{border-radius:var(--radius);background:radial-gradient(circle at 50% 40%,#273d75,#0b1224 76%);border:1px solid #8ba2ff52;height:220px;overflow:hidden}.stack-climber-3d canvas{width:100%;height:100%;display:block}.stack-3d-fallback{perspective:600px;flex-direction:column;justify-content:center;align-items:center;gap:5px;height:100%;display:flex}.stack-3d-fallback span{border:1px solid hsl(calc(var(--i) * 48) 80% 70%);background:hsl(calc(var(--i) * 48) 80% 62% / .82);color:#fff;width:150px;font:12px var(--font-mono);text-align:center;transform:translateZ(calc(var(--i) * 4px)) rotateX(12deg);border-radius:7px;padding:8px 12px;box-shadow:0 5px 12px #0003}.pattern-relay-scene{border-radius:var(--radius);background:radial-gradient(circle at 50% 45%,#273d75,#0b1224 76%);border:1px solid #8ba2ff57;height:230px;overflow:hidden}.pattern-relay-scene canvas{width:100%;height:100%;display:block}.frontier-runner-scene{border:1px solid var(--frontier-color);height:270px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.frontier-runner-scene{border:1px solid color-mix(in srgb, var(--frontier-color) 42%, transparent)}}.frontier-runner-scene{border-radius:var(--radius);background:radial-gradient(circle at 50% 42%,#273d75,#0b1224 78%)}.frontier-runner-scene canvas{touch-action:manipulation;width:100%;height:100%;display:block}.frontier-scene-hint,.frontier-scene-key{z-index:1;color:#faf9f6b3;font:10px var(--font-ui);pointer-events:none;position:absolute}.frontier-scene-hint{top:12px;left:14px}.frontier-scene-key{color:#faf9f68c;bottom:12px;right:14px}.frontier-motion-key{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.frontier-route-status{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);font:12px var(--font-ui);grid-template-columns:auto 1fr auto 1fr;align-items:baseline;gap:8px 12px;padding:12px 14px;display:grid}.frontier-route-status span{color:var(--ink-soft)}.frontier-route-status b{color:var(--accent);font-family:var(--font-mono);overflow-wrap:anywhere}.frontier-choice-box .game-choice{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.frontier-choice-box .game-choice small{color:var(--ink-soft);font:11px var(--font-mono)}.subway-switch-scene{border:1px solid var(--subway-accent);height:280px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.subway-switch-scene{border:1px solid color-mix(in srgb, var(--subway-accent) 42%, transparent)}}.subway-switch-scene{border-radius:var(--radius);background:radial-gradient(circle at 50% 44%,#273d75,#0b1224 78%)}.subway-switch-scene canvas{touch-action:manipulation;width:100%;height:100%;display:block}.subway-scene-hint,.subway-scene-memory{z-index:1;color:#faf9f6b3;font:10px var(--font-ui);pointer-events:none;position:absolute}.subway-scene-hint{top:12px;left:14px}.subway-scene-memory{color:#faf9f699;font-family:var(--font-mono);bottom:12px;right:14px}.subway-motion-key{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.subway-station-status{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);font:12px var(--font-ui);grid-template-columns:auto 1fr auto 1.3fr;align-items:baseline;gap:8px 12px;padding:12px 14px;display:grid}.subway-station-status span{color:var(--ink-soft)}.subway-station-status b{color:var(--accent);font-family:var(--font-mono);overflow-wrap:anywhere}.subway-choice-box .game-choice{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.subway-choice-box .game-choice small{color:var(--viz-pruned);font:11px var(--font-mono)}.subway-choice-box .game-choice.blocked{opacity:.72;border-style:dashed}.relay-fallback{justify-content:center;align-items:center;gap:12px;height:100%;display:flex}.relay-fallback span{color:#faf9f68c;width:38px;height:38px;font:700 13px var(--font-mono);background:#faf9f61f;border:1px solid #faf9f647;border-radius:12px;place-items:center;display:grid}.relay-fallback span.active{background:var(--accent);color:#fff;box-shadow:0 0 18px var(--accent)}@supports (color:color-mix(in lab, red, red)){.relay-fallback span.active{box-shadow:0 0 18px color-mix(in srgb, var(--accent) 70%, transparent)}}.relay-summary{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--viz-settled);font:13px var(--font-ui);grid-template-columns:1fr 1fr;gap:8px;padding:14px;display:grid}.arena-visual{border:1px solid var(--line);border-radius:var(--radius);color:#fff;background:linear-gradient(135deg,#162a52,#3b1d68);flex-direction:column;justify-content:space-between;gap:12px;min-height:190px;padding:16px;display:flex;position:relative;overflow:hidden}.arena-visual:before{content:"";border:1px solid #ffffff26;border-radius:50%;position:absolute;inset:-45%;transform:rotate(24deg)}.arena-label,.arena-status{z-index:1;font:700 11px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;position:relative}.arena-status{color:#ffffffb3;font-size:10px}.arena-field{z-index:1;justify-content:center;align-items:center;gap:12px;min-height:70px;display:flex;position:relative}.arena-piece{width:26px;height:26px;animation:arena-pop .45s var(--ease-standard) both;animation-delay:calc(var(--i,1) * 45ms);background:#5b8def;border-radius:8px;display:block;transform:rotate(45deg);box-shadow:0 0 20px #5b8def8c}.arena-piece:nth-child(2){background:#34d399;box-shadow:0 0 20px #34d3998c}.arena-piece:nth-child(3){background:#fbbf24;box-shadow:0 0 20px #fbbf248c}.arena-piece:nth-child(4){background:#e879f9;box-shadow:0 0 20px #e879f98c}.arena-piece:nth-child(5){background:#fb7185;box-shadow:0 0 20px #fb71858c}.arena-piece:nth-child(6){background:#22d3ee;box-shadow:0 0 20px #22d3ee8c}.arena-piece:nth-child(7){background:#a78bfa;box-shadow:0 0 20px #a78bfa8c}.arena-repair{background:linear-gradient(135deg,#0e3b52,#0e7490 55%,#34d399)}.arena-frontier{background:linear-gradient(135deg,#172554,#1d4ed8 55%,#22d3ee)}.arena-garden{background:linear-gradient(135deg,#3b0764,#7e22ce 55%,#f472b6)}.arena-state{background:linear-gradient(135deg,#451a03,#b45309 55%,#facc15)}.arena-compress{background:linear-gradient(135deg,#052e16,#047857 55%,#5eead4)}.arena-proof{background:linear-gradient(135deg,#450a0a,#be123c 55%,#fb7185)}@keyframes arena-pop{0%{opacity:0;transform:rotate(45deg)translateY(25px)scale(.5)}to{opacity:1;transform:rotate(45deg)translateY(0)scale(1)}}.concept-visual{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:190px;box-shadow:var(--shadow-raised);flex-direction:column;gap:16px;padding:16px;display:flex}.concept-visual.is-broken{border-color:var(--viz-pruned)}.concept-visual.is-repaired,.concept-visual.is-settled,.concept-visual.is-forged,.concept-visual.is-compressed,.concept-visual.is-tested{border-color:var(--viz-settled)}.concept-visual-top{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;display:flex}.concept-visual-top b{color:var(--accent);font:700 10px var(--font-mono)}.concept-visual small{color:var(--ink-soft);font:12px/1.4 var(--font-ui)}.concept-visual code{color:var(--ink-soft);font:13px/1.5 var(--font-mono);overflow-wrap:anywhere}.inspector-nodes{flex-wrap:wrap;align-items:center;gap:9px;min-height:56px;display:flex}.inspector-node{border:1px solid var(--line);background:var(--accent-soft);min-width:48px;min-height:44px;color:var(--accent);font:700 13px var(--font-mono);transition:border-color var(--dur-med), background var(--dur-med), color var(--dur-med);border-radius:999px;place-items:center;padding:8px 10px;display:grid}.inspector-node.is-broken{border-color:var(--viz-pruned);background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.inspector-node.is-broken{background:color-mix(in srgb, var(--viz-pruned) 12%, var(--paper-raised))}}.inspector-node.is-broken{color:var(--viz-pruned);animation:1.2s ease-in-out infinite invariant-pulse}.inspector-board.is-repaired .inspector-node{border-color:var(--success-line);background:var(--success-soft);color:var(--viz-settled)}@keyframes invariant-pulse{50%{transform:translateY(-3px)}}.garden-path,.garden-frontier{border-radius:var(--radius);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:8px;min-height:48px;padding:10px;display:flex}.garden-frontier{background:var(--paper)}.garden-path small,.garden-frontier small{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;flex-basis:100%}.garden-seed,.garden-frontier span{background:var(--viz-settled);color:#fff;min-width:36px;height:32px;font:700 13px var(--font-mono);border-radius:999px;place-items:center;display:inline-grid}.garden-frontier span{background:var(--paper-raised);color:var(--accent);border:1px solid var(--accent)}.garden-empty{color:var(--ink-soft);font:12px var(--font-mono)}.state-cells{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.state-cells span{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);min-height:52px;color:var(--ink-soft);font:12px var(--font-mono);text-align:center;overflow-wrap:anywhere;place-items:center;padding:7px;display:grid}.state-cells span.state-focus{border-color:var(--viz-cached);background:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.state-cells span.state-focus{background:color-mix(in srgb, var(--viz-cached) 11%, var(--paper-raised))}}.state-cells span.state-focus{color:var(--viz-cached)}.state-cells span.state-filled{border-color:var(--viz-settled);background:var(--success-soft);color:var(--viz-settled);animation:forge-cell .4s var(--ease-standard) both}@keyframes forge-cell{0%{opacity:.3;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.compression-rows,.proof-trace{border-radius:var(--radius);background:var(--paper);flex-direction:column;justify-content:center;gap:7px;min-height:86px;padding:12px;display:flex}.compression-rows code,.proof-trace code{white-space:pre-wrap;display:block}.compression-board.is-compressed .compression-rows,.proof-board.is-tested .proof-trace{background:var(--success-soft)}.compression-trie .compression-rows{border-left:3px solid var(--viz-pointer)}.compression-heap .compression-rows{border-left:3px solid var(--viz-cached)}.compression-mask .compression-rows{border-left:3px solid var(--accent)}.compression-elimination .compression-rows{border-left:3px solid var(--viz-pruned)}.proof-board>strong{color:var(--viz-pruned);font:700 16px/1.35 var(--font-narrative)}.proof-board.is-tested>strong{color:var(--viz-settled)}.proof-trace{border-left:3px solid var(--viz-pruned)}.proof-board.is-tested .proof-trace{border-left-color:var(--viz-settled)}.stack-visual{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;gap:8px;padding:16px;display:flex;position:relative;overflow:hidden}.game-motion{z-index:2;background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 7px var(--accent-soft), 0 0 18px var(--accent);border-radius:50%;position:absolute;top:18px;right:18px}@supports (color:color-mix(in lab, red, red)){.game-motion{box-shadow:0 0 0 7px var(--accent-soft), 0 0 18px color-mix(in srgb, var(--accent) 70%, transparent)}}.game-motion{pointer-events:none}.game-motion.descend{animation:game-descend .7s var(--ease-standard) both}.game-motion.return{background:var(--viz-settled);box-shadow:0 0 0 7px var(--success-soft), 0 0 18px var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.game-motion.return{box-shadow:0 0 0 7px var(--success-soft), 0 0 18px color-mix(in srgb, var(--viz-settled) 70%, transparent)}}.game-motion.return{animation:game-return .7s var(--ease-standard) both}.game-motion.base{background:var(--viz-cached);box-shadow:0 0 0 7px var(--viz-cached), 0 0 18px var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.game-motion.base{box-shadow:0 0 0 7px color-mix(in srgb, var(--viz-cached) 18%, transparent), 0 0 18px color-mix(in srgb, var(--viz-cached) 70%, transparent)}}.game-motion.base{animation:game-base .55s var(--ease-standard) both}@keyframes game-descend{0%{opacity:0;transform:translateY(-4px)scale(.6)}35%{opacity:1}to{opacity:0;transform:translateY(170px)scale(1)}}@keyframes game-return{0%{opacity:0;transform:translateY(170px)scale(.6)}35%{opacity:1}to{opacity:0;transform:translateY(-4px)scale(1)}}@keyframes game-base{0%{opacity:0;transform:scale(.6)}55%{opacity:1;transform:scale(1.35)}to{opacity:0;transform:scale(1)}}.stack-card{border:1px solid var(--line);border-radius:var(--radius);min-height:50px;color:var(--ink-soft);font:14px var(--font-mono);animation:stack-card-enter .4s var(--ease-standard) both;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.stack-card.active{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent)}@keyframes stack-card-enter{0%{opacity:0;transform:translate(42px)scale(.94)}to{opacity:1;transform:translate(0)scale(1)}}.stack-card span{font:11px var(--font-ui)}.base-marker{border:1px dashed var(--viz-settled);border-radius:var(--radius);color:var(--viz-settled);font:700 12px var(--font-ui);text-align:center;padding:10px}.stack-return-lane{border-radius:var(--radius);background:var(--success-soft);color:var(--viz-settled);font:700 11px var(--font-ui);align-items:center;gap:8px;padding:9px 10px;display:flex}.stack-return-dot{background:var(--viz-settled);width:10px;height:10px;box-shadow:0 0 0 5px var(--viz-settled);border-radius:50%;flex:0 0 10px}@supports (color:color-mix(in lab, red, red)){.stack-return-dot{box-shadow:0 0 0 5px color-mix(in srgb, var(--viz-settled) 18%, transparent)}}.game-choice-box{flex-direction:column;gap:9px;width:100%;min-width:0;display:flex}.game-choice{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-width:0;max-width:100%;min-height:58px;color:var(--ink);text-align:left;font:14px/1.4 var(--font-ui);cursor:pointer;box-shadow:var(--shadow-raised);overflow-wrap:anywhere;padding:13px 16px}.game-choice b{color:var(--accent);font-family:var(--font-mono)}.game-choice.selected{border-color:var(--accent);background:var(--accent-soft)}.game-feedback{border-radius:var(--radius);font:14px/1.5 var(--font-ui);padding:14px}.game-feedback.correct{border:1px solid var(--success-line);background:var(--success-soft)}.game-feedback.wrong{border:1px solid var(--viz-pruned);background:var(--paper)}.concept-map{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);grid-template-columns:repeat(2,1fr);gap:8px;padding:14px;display:grid}.concept-map>span{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;grid-column:1/-1}.concept-map>div{border-radius:var(--radius);background:var(--paper);grid-template-columns:26px 1fr;gap:2px 7px;padding:10px;display:grid}.concept-map b{color:var(--accent);font:700 11px var(--font-mono);grid-row:1/span 2}.concept-map strong{font:700 13px var(--font-ui)}.concept-map small{color:var(--ink-soft);font:11px/1.35 var(--font-ui)}.game-result{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);font:13px var(--font-ui);grid-template-columns:1fr 1fr;gap:10px 14px;padding:16px;display:grid}.game-result span{color:var(--ink-soft)}.game-actions{flex-direction:column;gap:10px;display:flex}@media (max-width:600px){.games-home,.game-session{width:auto;max-width:none;margin-left:16px;margin-right:16px;padding-left:0;padding-right:0;overflow:hidden}.game-session .pattern-relay-scene,.game-session .game-choice-box,.game-session .game-choice{width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.relay-session .stage-title,.pattern-game-session .stage-title{max-width:310px}.relay-session .narrative,.pattern-game-session .narrative{max-width:calc(100vw - 48px)}.game-card-footer{flex-direction:column;align-items:flex-start}.game-card-footer b{padding-top:4px}.pattern-game-session .stage-title{white-space:normal;word-break:break-word;max-width:calc(100vw - 32px);font-size:30px;line-height:1.08}.concept-map{grid-template-columns:1fr}.concept-map>span{grid-column:auto}.concept-galaxy-shell,.concept-galaxy{height:260px;min-height:260px}.concept-galaxy-caption{flex-wrap:wrap;gap:4px 8px}.concept-galaxy-caption span{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.game-card-art:after,.art-core,.art-piece{animation:none}}@media (max-width:600px){.expedition-home,.expedition-session{width:auto;max-width:none;margin-left:16px;margin-right:16px;padding-left:0;padding-right:0;overflow:hidden}.expedition-hero .narrative,.expedition-focus .narrative{overflow-wrap:anywhere;width:100%}.expedition-focus-footer{flex-direction:column;align-items:stretch}.expedition-focus-footer .btn-primary{width:100%}.expedition-principles{grid-template-columns:repeat(2,1fr)}.expedition-stepper{margin-bottom:28px}.expedition-evidence{grid-template-columns:1fr}.expedition-act>.btn-primary{box-shadow:none}}@media (max-width:700px){.command-trigger{display:none}.command-mobile-trigger{display:grid}.command-backdrop{align-items:flex-start;padding:10px}.command-center{border-radius:18px;margin-top:62px}.command-input-wrap input{font-size:15px}.command-footer{justify-content:space-between;gap:4px}.observatory-page{padding:24px 16px calc(112px + env(safe-area-inset-bottom))}.observatory-hero{flex-direction:column;align-items:start;gap:18px}.observatory-hero h1{font-size:45px}.observatory-hero-signal{grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;width:100%}.observatory-hero-signal strong{margin:0}.observatory-now{grid-template-columns:1fr}.observatory-stage-map{grid-template-columns:repeat(9,1fr);width:100%}.observatory-stage-map span{border-radius:8px;width:100%;height:28px}.observatory-grid{grid-template-columns:1fr}.observatory-filters{flex-direction:column;align-items:stretch}.observatory-filters select{max-width:none}.topic-observatory-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:701px) and (max-width:1050px){.topic-observatory-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:440px){.observatory-hero h1{font-size:39px}.topic-observatory-grid{grid-template-columns:1fr 1fr}.pattern-constellation{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){html,body{max-width:100%;overflow-x:hidden}.landing-header,.landing-main{overflow:hidden;width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important}.landing-header>p{max-width:100%!important}.landing-actions{flex-direction:column}.landing-actions a{text-align:center;width:100%}.next-move-card{flex-direction:column;align-items:stretch;gap:10px}.next-move-card strong{align-self:flex-start}.continue-derivation-head{flex-direction:column;align-items:flex-start!important;gap:6px!important}.expedition-callout{grid-template-columns:1fr;gap:6px}.expedition-callout .discovery-kicker{margin-bottom:4px}}@media (prefers-color-scheme:dark){:root[data-theme=system] .topic-card,:root:not([data-theme]) .topic-card{background:var(--paper-raised)!important;border-color:var(--line)!important}}:root[data-theme=ink] .topic-card,:root[data-theme=violet] .topic-card{background:var(--paper-raised)!important;border-color:var(--line)!important}:root{--font-narrative:"Newsreader", Georgia, serif;--font-ui:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", Menlo, Consolas, monospace}:root[data-type=technical]{--font-narrative:"Inter", system-ui, sans-serif;--font-ui:"Inter", system-ui, sans-serif}:root[data-type=humanist]{--font-narrative:Georgia, "Times New Roman", serif;--font-ui:"Inter", system-ui, sans-serif}:root[data-type=dotmatrix]{--font-narrative:"Doto", "JetBrains Mono", monospace;--font-ui:"Inter", system-ui, sans-serif}:root[data-type=instrument]{--font-narrative:"Space Grotesk", "Inter", sans-serif;--font-ui:"Space Grotesk", "Inter", sans-serif}:root[data-density=calm]{--section-gap:40px;--stack-gap:16px}:root[data-density=focused]{--section-gap:28px;--stack-gap:12px}:root[data-density=compact]{--section-gap:20px;--stack-gap:8px}:root[data-shape=soft]{--radius:14px;--shadow-raised:0 1px 2px var(--ink), 0 10px 28px var(--ink)}@supports (color:color-mix(in lab, red, red)){:root[data-shape=soft]{--shadow-raised:0 1px 2px color-mix(in srgb, var(--ink) 7%, transparent), 0 10px 28px color-mix(in srgb, var(--ink) 8%, transparent)}}:root[data-shape=precise]{--radius:7px;--shadow-raised:0 1px 1px var(--ink), 0 4px 12px var(--ink)}@supports (color:color-mix(in lab, red, red)){:root[data-shape=precise]{--shadow-raised:0 1px 1px color-mix(in srgb, var(--ink) 8%, transparent), 0 4px 12px color-mix(in srgb, var(--ink) 6%, transparent)}}:root[data-texture=grid]{--paper-grid:linear-gradient(var(--ink) 1px, transparent 1px), linear-gradient(90deg, var(--ink) 1px, transparent 1px)}@supports (color:color-mix(in lab, red, red)){:root[data-texture=grid]{--paper-grid:linear-gradient(color-mix(in srgb, var(--ink) 5%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink) 5%, transparent) 1px, transparent 1px)}}.narrative{font-family:var(--font-narrative)}code,pre{font-family:var(--font-mono)}.viz-untouched{color:var(--viz-untouched)}.viz-active{color:var(--viz-active);fill:var(--viz-active)}.viz-settled{color:var(--viz-settled);fill:var(--viz-settled)}.viz-cached{color:var(--viz-cached);fill:var(--viz-cached)}.viz-pruned{color:var(--viz-pruned);fill:var(--viz-pruned)}.viz-pointer{color:var(--viz-pointer);fill:var(--viz-pointer)}.mobile-picker{min-width:0}.mobile-picker-trigger{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:58px;color:var(--ink);text-align:left;font-family:var(--font-ui);box-shadow:var(--shadow-raised);grid-template-columns:1fr auto;grid-template-areas:"kicker chevron""value chevron";gap:2px 12px;padding:10px 14px;display:grid}.mobile-picker-kicker,.mobile-sheet-kicker{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;grid-area:kicker;font-size:10px;font-weight:700}.mobile-picker-value{text-overflow:ellipsis;white-space:nowrap;grid-area:value;font-size:14px;font-weight:650;overflow:hidden}.mobile-picker-chevron{color:var(--accent);grid-area:chevron;align-self:center;font-size:20px}.mobile-sheet-backdrop{z-index:100;background:#1a1d216b;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-sheet{width:100%;max-height:min(76dvh,680px);padding:var(--sp-2) var(--sp-4) calc(var(--sp-4) + env(safe-area-inset-bottom));background:var(--paper-raised);color:var(--ink);animation:sheet-enter var(--dur-med) var(--ease-standard);border-radius:20px 20px 0 0;overflow:hidden;box-shadow:0 -12px 32px #1a1d212e}.mobile-sheet-handle{width:36px;height:4px;margin:0 auto var(--sp-3);background:var(--line);border-radius:4px}.mobile-sheet-heading{margin-bottom:var(--sp-3);justify-content:space-between;align-items:center;display:flex}.mobile-sheet-heading h2{font-family:var(--font-narrative);margin:3px 0 0;font-size:24px;line-height:1.1}.mobile-sheet-close{border:1px solid var(--line);background:var(--paper);width:40px;height:40px;color:var(--ink-soft);font:300 26px/1 var(--font-ui);border-radius:50%}.mobile-sheet-list{overscroll-behavior:contain;max-height:calc(min(76dvh,680px) - 118px);padding-bottom:var(--sp-2);overflow-y:auto}.mobile-sheet-group{margin:var(--sp-4) 0 var(--sp-2)}.mobile-sheet-group>span{margin:0 0 var(--sp-2);color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.mobile-sheet-row{justify-content:space-between;align-items:center;gap:var(--sp-3);width:100%;min-height:52px;padding:var(--sp-3);border-radius:var(--radius);color:var(--ink);text-align:left;font:500 14px var(--font-ui);background:0 0;border:1px solid #0000;display:flex}.mobile-sheet-row>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mobile-sheet-row>span:last-child{color:var(--ink-soft);font:11px var(--font-mono);flex-shrink:0}.mobile-sheet-row b{width:22px;height:22px;margin-right:var(--sp-2);background:var(--accent-soft);color:var(--accent);font:700 11px var(--font-mono);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.mobile-sheet-row.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}@keyframes sheet-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.continue-derivation{transition:transform var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard)}.continue-derivation:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.continue-derivation-rail{background:var(--accent);border-radius:999px;height:5px;margin-top:16px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.continue-derivation-rail{background:color-mix(in srgb, var(--accent) 18%, transparent)}}.continue-derivation-rail span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard);display:block}.home-eyebrow{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:20px;display:flex}.home-eyebrow:before{content:"";background:var(--accent);width:28px;height:1px}.home-eyebrow-index{color:var(--accent);font-family:var(--font-mono)}.home-eyebrow>span:last-child{color:var(--ink-soft);font:10px var(--font-mono);letter-spacing:0;text-transform:none;margin-left:5px}.landing-actions a{max-width:100%}.continue-derivation-head>span:first-child{overflow-wrap:anywhere;min-width:0}.continue-derivation{width:100%;max-width:100%;overflow:hidden}.landing-header>p{overflow-wrap:anywhere;width:100%}.landing-primary-action,.landing-drill-action{transition:transform var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), background var(--dur-fast)}.landing-primary-action:hover,.landing-drill-action:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.landing-drill-action{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink)}.today-session{border:1px solid var(--accent);background:var(--accent-soft);box-shadow:var(--shadow-raised);border-radius:22px;margin:0 0 18px;padding:clamp(20px,4vw,30px)}.today-session-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.today-session-head h2{font:700 clamp(26px, 4vw, 36px) var(--font-narrative);letter-spacing:-.025em;margin:5px 0 0}.today-session-time{color:var(--ink-soft);font:11px var(--font-mono);white-space:nowrap}.today-session-copy{max-width:670px;color:var(--ink);font:18px/1.55 var(--font-narrative);margin:13px 0 18px}.today-session-proof{color:var(--ink-soft);font:11px var(--font-ui);flex-wrap:wrap;align-items:center;gap:7px 10px;margin-bottom:20px;display:flex}.today-session-proof span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.today-session-proof b{color:var(--ink);font-weight:700}.today-session-actions{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.today-session-actions a{border-radius:var(--radius);min-height:42px;font:700 12px var(--font-ui);justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;text-decoration:none;display:inline-flex}.today-session-primary{background:var(--accent);color:var(--paper-raised)}.today-session-primary:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.today-session-primary:hover{background:color-mix(in srgb, var(--accent) 88%, var(--ink))}}.today-session-secondary{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.today-session-secondary{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line))}}.today-session-secondary{background:var(--paper-raised);color:var(--ink)}.today-session-secondary:hover{border-color:var(--accent);color:var(--accent)}.today-session-secondary span{color:var(--ink-soft);font:10px var(--font-mono)}.today-session .continue-derivation-rail{background:var(--accent);margin-top:22px}@supports (color:color-mix(in lab, red, red)){.today-session .continue-derivation-rail{background:color-mix(in srgb, var(--accent) 22%, transparent)}}.today-session-progress{color:var(--ink-soft);font:11px var(--font-mono);margin-top:7px;display:block}.stuck-callout{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);grid-template-columns:minmax(180px,.7fr) 1.6fr auto;align-items:center;gap:10px 18px;margin:0 0 32px;padding:16px 18px;display:grid}.stuck-callout h2{font:700 20px var(--font-narrative);margin:4px 0 0}.stuck-callout p{color:var(--ink-soft);font:13px/1.5 var(--font-ui);margin:0}.stuck-callout>div:last-child{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.stuck-callout a{color:var(--accent);font:700 12px var(--font-ui);white-space:nowrap;text-decoration:none}.stuck-callout a:hover{text-decoration:underline}.compact-momentum{margin-bottom:24px}.curriculum-explore{border-top:1px solid var(--line);margin-top:24px}.curriculum-explore summary{color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;list-style:none;display:flex}.curriculum-explore summary::-webkit-details-marker{display:none}.curriculum-explore summary:after{content:"＋";color:var(--accent);font:18px var(--font-ui)}.curriculum-explore[open] summary:after{content:"−"}.curriculum-explore summary span{font:700 18px var(--font-narrative)}.curriculum-explore summary small{color:var(--ink-soft);font:11px var(--font-ui);margin-left:auto}.explore-actions{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:28px;display:grid}.explore-link{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-height:88px;color:var(--ink);flex-direction:column;justify-content:space-between;gap:8px;padding:12px;text-decoration:none;display:flex}.explore-link:hover{border-color:var(--accent);box-shadow:var(--shadow-raised)}.explore-link b{font:700 13px var(--font-ui)}.explore-link span{color:var(--ink-soft);font:11px/1.35 var(--font-ui)}.curriculum-explore h3{color:var(--ink-soft);font:700 11px var(--font-ui);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}.topic-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;width:100%;min-width:0;display:grid}.topic-card{border-radius:var(--radius);width:100%;min-width:0;max-width:100%;min-height:76px;transition:transform var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;justify-content:space-between;gap:8px;padding:14px 16px;text-decoration:none;display:flex;overflow:hidden}.topic-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.topic-card-title{width:100%;min-width:0;font:700 14px var(--font-narrative);align-items:center;gap:8px;display:flex}.topic-card-title b{border-radius:50%;flex-shrink:0;width:7px;height:7px}.topic-card-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.topic-card-title em{color:var(--ink-soft);font:11px var(--font-mono);margin-left:auto;font-style:normal}.topic-card-stages{color:var(--ink-soft);font:10px var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next-move-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);box-shadow:var(--shadow-raised);justify-content:space-between;align-items:center;gap:18px;margin:-16px 0 32px;padding:14px 18px;text-decoration:none;display:flex}.next-move-card>div{flex-direction:column;gap:3px;min-width:0;display:flex}.next-move-card b{font:700 18px var(--font-narrative)}.next-move-card>div>span:last-child{color:var(--ink-soft);font:13px var(--font-ui);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next-move-card strong{color:var(--accent);font:700 12px var(--font-ui);white-space:nowrap;flex-shrink:0}.next-move-card:hover{border-color:var(--accent)}.home-momentum{border:1px solid var(--line);background:var(--paper-raised);box-shadow:var(--shadow-raised);border-radius:22px;margin:0 0 32px;padding:22px}.home-momentum-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.home-momentum-head h2{font:700 clamp(24px, 4vw, 32px) var(--font-narrative);letter-spacing:-.02em;margin:4px 0 0}.home-momentum-total{color:var(--ink-soft);font:12px var(--font-mono)}.home-momentum-grid{grid-template-columns:1.2fr 1fr 1fr;gap:9px;display:grid}.home-momentum-card{border:1px solid var(--line);background:var(--paper);min-height:166px;color:var(--ink);transition:transform var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:16px;flex-direction:column;gap:7px;padding:16px;text-decoration:none;display:flex}.home-momentum-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.home-momentum-card.primary{border-color:var(--accent);background:var(--accent-soft)}.home-momentum-card.quiz{background:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.home-momentum-card.quiz{background:color-mix(in srgb, var(--viz-cached) 9%, var(--paper))}}.home-momentum-card.path{background:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.home-momentum-card.path{background:color-mix(in srgb, var(--viz-pointer) 8%, var(--paper))}}.home-momentum-label{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.home-momentum-card b{font:700 21px/1.1 var(--font-narrative)}.home-momentum-card span:not(.home-momentum-label){color:var(--ink-soft);font:13px/1.4 var(--font-ui)}.home-momentum-card strong{color:var(--accent);font:700 12px var(--font-ui);margin-top:auto}.home-finish-line{flex-direction:column;gap:7px;margin-top:16px;display:flex}.home-finish-line>div:first-child{color:var(--ink-soft);font:11px var(--font-ui);justify-content:space-between;align-items:center;gap:12px;display:flex}.home-finish-line b{color:var(--ink);font-weight:700}.home-finish-track{background:var(--line);border-radius:999px;height:7px;overflow:hidden}.home-finish-track span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--viz-pointer));height:100%;transition:width var(--dur-slow) var(--ease-standard);display:block}.mastery-momentum{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.mastery-momentum>div{border:1px solid var(--line);background:var(--paper);border-radius:13px;flex-direction:column;justify-content:center;gap:4px;min-height:58px;padding:10px 12px;display:flex}.mastery-momentum span{color:var(--ink-soft);font:10px var(--font-ui);text-transform:uppercase;letter-spacing:.08em}.mastery-momentum b{color:var(--ink);font:700 13px var(--font-ui)}.theory-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);gap:9px;margin:0 0 14px;padding:16px 18px;display:grid}.theory-kicker{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;display:block}.theory-card h3{color:var(--ink);font:700 19px/1.2 var(--font-narrative);margin:4px 0 0}.theory-card textarea{resize:vertical;border:1px solid var(--line);background:var(--paper);width:100%;min-height:78px;color:var(--ink);font:14px/1.5 var(--font-narrative);border-radius:9px;outline:none;padding:11px 12px}.theory-card textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.theory-hint{color:var(--ink-soft);font:11px/1.4 var(--font-ui)}.learning-checkpoint{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--success-line);border-radius:var(--radius);background:var(--success-soft);font-family:var(--font-ui);grid-template-columns:auto 1fr auto;align-items:start;margin:0 0 14px;display:grid}.learning-checkpoint .completion-mark{background:var(--viz-settled);width:24px;height:24px;color:var(--paper-raised);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.learning-checkpoint .completion-kicker{color:var(--viz-settled);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;display:block}.learning-checkpoint strong{font:700 18px var(--font-narrative);display:block}.learning-checkpoint p{color:var(--ink-soft);font:14px/1.45 var(--font-narrative);margin:4px 0 0}.learning-checkpoint .completion-next{border:1px solid var(--success-line);border-radius:var(--radius);background:var(--paper-raised);min-height:36px;color:var(--viz-settled);font:700 12px var(--font-ui);cursor:pointer;padding:6px 10px;text-decoration:none}.notification-center{flex-shrink:0;position:relative}.notification-trigger{width:36px;height:36px;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.notification-trigger:hover,.notification-trigger[aria-expanded=true]{border-color:var(--line);background:var(--paper);color:var(--accent)}.notification-count{background:var(--viz-pruned);color:#fff;width:16px;height:16px;font:700 9px var(--font-mono);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-1px;right:-1px}.notification-panel{z-index:100;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:min(360px,100vw - 32px);box-shadow:var(--shadow-raised);position:fixed;top:60px;right:16px;overflow:hidden}.notification-panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.notification-panel-head>div{flex-direction:column;gap:3px;display:flex}.notification-reminder{border-bottom:1px solid var(--line);background:var(--accent-soft);color:var(--ink-soft);font:12px/1.35 var(--font-ui);justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;display:flex}.notification-reminder button,.notification-reminder a{color:var(--accent);font:700 12px var(--font-ui);cursor:pointer;background:0 0;border:0;flex-shrink:0;text-decoration:none}.notification-reminder.blocked{background:var(--paper)}.notification-kicker{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.notification-panel-head b{font:700 19px var(--font-narrative)}.notification-mark{color:var(--ink-soft);font:11px var(--font-ui);cursor:pointer;background:0 0;border:none;text-decoration:underline}.notification-list{flex-direction:column;max-height:min(62vh,420px);display:flex;overflow-y:auto}.notification-item{border-bottom:1px solid var(--line);color:var(--ink);flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;display:flex}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--accent-soft)}.notification-item.read{opacity:.56}.notification-item b{font:650 14px var(--font-ui)}.notification-item>span:last-child{color:var(--ink-soft);font:12px/1.4 var(--font-ui)}.notification-kind{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.notification-setting{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.notification-setting strong{font-size:15px}.notification-setting p{max-width:480px;color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:5px 0 0}.notification-setting .btn-ghost{flex-shrink:0}.home-game-button{border-radius:var(--radius);color:#fff;font:700 14px var(--font-ui);box-shadow:0 6px 18px var(--viz-pointer);background:linear-gradient(110deg,#162a52,#7c3aed,#ec4899,#162a52) 0 0/220% 100%;justify-content:center;align-items:center;gap:8px;padding:12px 24px;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.home-game-button{box-shadow:0 6px 18px color-mix(in srgb, var(--viz-pointer) 28%, transparent)}}.home-game-button{transition:transform var(--dur-fast), box-shadow var(--dur-fast)}.home-game-button:hover{box-shadow:0 10px 24px var(--viz-pointer);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.home-game-button:hover{box-shadow:0 10px 24px color-mix(in srgb, var(--viz-pointer) 30%, transparent)}}.game-mode-glyph{border:1px solid;border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;display:inline-grid}.expedition-callout{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:8px 14px;margin:-16px 0 32px;padding:16px 18px;text-decoration:none;display:grid}.expedition-callout .discovery-kicker{grid-column:1/-1}.expedition-callout b{font:700 17px var(--font-narrative)}.expedition-callout>span:not(.discovery-kicker){color:var(--ink-soft);font:13px var(--font-ui)}.expedition-callout strong{color:var(--accent);font:700 13px var(--font-ui);white-space:nowrap}.expedition-callout:hover{border-color:var(--accent);box-shadow:var(--shadow-raised)}@media (min-width:801px){.mobile-picker{display:none}}.lesson-page{background:var(--paper);min-height:calc(100dvh - 52px)}.lesson-body{display:flex}.lesson-surface{flex:1;min-width:0;max-width:860px;margin:0 auto;padding:clamp(16px,4vw,40px) clamp(16px,5vw,48px) 120px}.lesson-missing{text-align:center;font-family:var(--font-ui);padding:80px 24px}.lesson-missing a{color:var(--accent)}.stage-shell{gap:var(--sp-6);--stage-accent:var(--accent);--stage-soft:var(--accent-soft);flex-direction:column;display:flex}.stage-shell.stage-understand,.stepper-cell.stage-understand{--stage-accent:var(--accent);--stage-soft:var(--accent-soft)}.stage-shell.stage-play,.stepper-cell.stage-play{--stage-accent:var(--viz-pointer);--stage-soft:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.stage-shell.stage-play,.stepper-cell.stage-play{--stage-soft:color-mix(in srgb, var(--viz-pointer) 10%, var(--paper-raised))}}.stage-shell.stage-reason,.stepper-cell.stage-reason{--stage-accent:var(--viz-cached);--stage-soft:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.stage-shell.stage-reason,.stepper-cell.stage-reason{--stage-soft:color-mix(in srgb, var(--viz-cached) 11%, var(--paper-raised))}}.stage-shell.stage-discover,.stepper-cell.stage-discover{--stage-accent:var(--viz-active);--stage-soft:var(--accent-soft)}.stage-shell.stage-design,.stepper-cell.stage-design{--stage-accent:var(--viz-pointer);--stage-soft:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.stage-shell.stage-design,.stepper-cell.stage-design{--stage-soft:color-mix(in srgb, var(--viz-pointer) 10%, var(--paper-raised))}}.stage-shell.stage-implement,.stepper-cell.stage-implement{--stage-accent:var(--accent);--stage-soft:var(--accent-soft)}.stage-shell.stage-execute,.stepper-cell.stage-execute{--stage-accent:var(--viz-settled);--stage-soft:var(--success-soft)}.stage-shell.stage-reflect,.stepper-cell.stage-reflect{--stage-accent:var(--viz-cached);--stage-soft:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.stage-shell.stage-reflect,.stepper-cell.stage-reflect{--stage-soft:color-mix(in srgb, var(--viz-cached) 11%, var(--paper-raised))}}.stage-shell.stage-generalize,.stepper-cell.stage-generalize{--stage-accent:var(--viz-pointer);--stage-soft:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.stage-shell.stage-generalize,.stepper-cell.stage-generalize{--stage-soft:color-mix(in srgb, var(--viz-pointer) 10%, var(--paper-raised))}}.stage-shell>.stage-head{border:1px solid var(--stage-accent);padding:12px 18px 14px}@supports (color:color-mix(in lab, red, red)){.stage-shell>.stage-head{border:1px solid color-mix(in srgb, var(--stage-accent) 28%, var(--line))}}.stage-shell>.stage-head{border-left:4px solid var(--stage-accent);background:var(--stage-soft);border-radius:0 14px 14px 0}.stage-head-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.stage-head-tag{color:var(--stage-accent)}@supports (color:color-mix(in lab, red, red)){.stage-head-tag{color:color-mix(in srgb, var(--stage-accent) 78%, var(--ink))}}.stage-head-tag{font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.stage-kicker{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.stage-shell .stage-kicker{color:var(--stage-accent)}.stage-title{margin:var(--sp-2) 0 0;font:700 clamp(26px, 7vw, 38px)/1.1 var(--font-narrative)}.stage-move{margin:var(--sp-2) 0 0;color:var(--ink-soft);font:13px var(--font-ui)}.stage-move b{color:var(--ink);font-style:italic;font-family:var(--font-narrative);font-size:14px}.stage-shell .stage-move b{color:var(--stage-accent)}.stage-prose{gap:var(--sp-4);flex-direction:column;display:flex}.stage-prose .narrative,.narrative{font:17px/1.65 var(--font-narrative);margin:0}.prose-heading{margin:var(--sp-2) 0 0;font:700 20px var(--font-narrative)}.stage-split{gap:var(--sp-6);flex-direction:column;display:flex}@media (min-width:900px){.stage-split{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.stage-split.workbench-first .workbench{order:0}.stage-split.workbench-first .textbook{order:1}}@media (max-width:899px){.stage-split.workbench-first .workbench{order:-1}}.btn-primary{border-radius:var(--radius);background:var(--accent);color:#fff;width:100%;min-height:52px;font:650 15px var(--font-ui);cursor:pointer;transition:opacity var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);border:none;padding:14px 20px}.stage-shell .stage-cta .btn-primary:not(:disabled){background:linear-gradient(110deg, var(--stage-accent), var(--stage-accent), var(--stage-accent))}@supports (color:color-mix(in lab, red, red)){.stage-shell .stage-cta .btn-primary:not(:disabled){background:linear-gradient(110deg, var(--stage-accent), color-mix(in srgb, var(--stage-accent) 72%, white), var(--stage-accent))}}.stage-shell .stage-cta .btn-primary:not(:disabled){box-shadow:0 8px 18px var(--stage-accent);background-size:220% 100%}@supports (color:color-mix(in lab, red, red)){.stage-shell .stage-cta .btn-primary:not(:disabled){box-shadow:0 8px 18px color-mix(in srgb, var(--stage-accent) 20%, transparent)}}.stage-shell .stage-cta .btn-primary:not(:disabled){animation:4.5s ease-in-out infinite stage-action-shimmer}.stage-shell .stage-cta .btn-primary:disabled{background:var(--stage-accent)}@supports (color:color-mix(in lab, red, red)){.stage-shell .stage-cta .btn-primary:disabled{background:color-mix(in srgb, var(--stage-accent) 30%, var(--line))}}.stage-shell .stage-cta .btn-primary:disabled{color:var(--ink-soft);opacity:1}.stage-shell .stage-cta .btn-primary:not(:disabled):hover{transform:translateY(-1px)}.stage-shell .stage-cta .btn-primary:not(:disabled):active{transform:translateY(1px)}@keyframes stage-action-shimmer{0%,55%{background-position:0}80%,to{background-position:100%}}@media (prefers-reduced-motion:reduce){.stage-shell .stage-cta .btn-primary:not(:disabled){animation:none}}.btn-primary:disabled{opacity:.45;cursor:default}.btn-ghost{border:1px solid var(--line);border-radius:var(--radius);min-height:44px;color:var(--ink);font:600 14px var(--font-ui);cursor:pointer;background:0 0;padding:10px 18px}.btn-ghost:disabled{opacity:.45;cursor:default}.btn-primary.as-link,.btn-ghost.as-link{justify-content:center;align-items:center;text-decoration:none;display:flex}.home-pattern-button{border:1px solid var(--accent);justify-content:center;align-items:center;min-width:160px;min-height:44px;padding:12px 20px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.home-pattern-button{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--viz-pointer))}}.home-pattern-button{border-radius:var(--radius);background:linear-gradient(110deg, var(--accent), var(--viz-pointer), var(--accent));color:#fff;font:700 14px var(--font-ui);text-align:center;box-shadow:0 7px 18px var(--viz-pointer);background-size:200% 100%;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.home-pattern-button{box-shadow:0 7px 18px color-mix(in srgb, var(--viz-pointer) 22%, transparent)}}.home-pattern-button{transition:transform var(--dur-fast), box-shadow var(--dur-fast)}.home-pattern-button>span,.home-pattern-button>small{z-index:1;position:relative}.pattern-mode-copy{justify-content:center;align-items:baseline;gap:8px;display:inline-flex}.home-pattern-button:hover{box-shadow:0 10px 24px var(--viz-pointer);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.home-pattern-button:hover{box-shadow:0 10px 24px color-mix(in srgb, var(--viz-pointer) 32%, transparent)}}.landing-secondary-action{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink)}.landing-secondary-action:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.landing-drill-action{border:1px solid var(--viz-pointer);background:linear-gradient(110deg, #172554, var(--accent), var(--viz-pointer));color:#fff;box-shadow:0 6px 18px var(--viz-pointer);background-size:180% 100%}@supports (color:color-mix(in lab, red, red)){.landing-drill-action{box-shadow:0 6px 18px color-mix(in srgb, var(--viz-pointer) 22%, transparent)}}.landing-drill-action:hover{border-color:var(--accent);color:#fff;background-position:100%}.stage-cta{margin-top:var(--sp-4)}@media (max-width:700px){.stage-cta{margin:var(--sp-4) 0 0;background:0 0;border-top:0;padding:0;position:static}}.probe-options{gap:var(--sp-2);flex-direction:column;display:flex}.opt-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:52px;color:var(--ink);text-align:left;font:500 15px var(--font-ui);cursor:pointer;box-shadow:var(--shadow-raised);transition:border-color var(--dur-fast);padding:14px 16px}.stage-shell .opt-card{border-color:var(--stage-accent)}@supports (color:color-mix(in lab, red, red)){.stage-shell .opt-card{border-color:color-mix(in srgb, var(--stage-accent) 24%, var(--line))}}.stage-shell .opt-card{background:var(--stage-accent)}@supports (color:color-mix(in lab, red, red)){.stage-shell .opt-card{background:color-mix(in srgb, var(--stage-accent) 4%, var(--paper-raised))}}.stage-shell .opt-card:hover{border-color:var(--stage-accent);background:var(--stage-soft)}.opt-card.selected{border-color:var(--accent);background:var(--accent-soft)}.stage-shell .opt-card.selected{border-color:var(--stage-accent);background:var(--stage-soft)}.opt-card.correct{border-color:var(--viz-settled);background:var(--success-soft)}.opt-card.wrong{border-color:var(--viz-pruned)}.opt-card code{font-family:var(--font-mono);font-size:14px}.example-panel{gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;display:flex}@supports (color:color-mix(in lab, red, red)){.example-panel{background:color-mix(in srgb, var(--paper-raised) 72%, var(--accent-soft))}}.example-panel-head{color:var(--ink-soft);font:12px var(--font-ui);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.example-panel-head .stage-kicker{font-size:9px}.example-strip{gap:var(--sp-2);flex-wrap:wrap;display:flex}.example-chip{border:1px solid var(--line);background:var(--paper-raised);min-height:44px;color:var(--ink);cursor:pointer;font-size:14px;font-family:var(--font-ui);transition:border-color var(--dur-fast), background var(--dur-fast), transform var(--dur-fast);border-radius:12px;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}.example-chip:hover{border-color:var(--accent);background:var(--accent-soft)}.example-chip:active{transform:scale(.98)}.example-chip.revealed{border-color:var(--success-line);background:var(--success-soft)}.example-chip code{font-family:var(--font-mono);font-size:13px}.example-result{color:var(--viz-settled);font-weight:700}.prediction-card,.experiment-card,.socratic-card{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;display:flex}.prediction-prompt{font:600 16px var(--font-ui);margin:0}.prediction-reveal{padding:var(--sp-3);border-radius:var(--radius);font-size:14px;line-height:1.5}.prediction-reveal p{margin:6px 0 0}.prediction-reveal.correct{background:var(--success-soft);border:1px solid var(--success-line)}.prediction-reveal.wrong{background:var(--accent-soft);border:1px solid var(--accent)}.peel-sandbox{gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;display:flex}.peel-equation{font:16px var(--font-mono);flex-wrap:wrap;align-items:center;gap:6px;min-height:28px;display:flex}.peel-total{color:var(--accent);font-weight:800}.peel-held-num{color:var(--viz-pointer);font-weight:700}.peel-stripsum{color:var(--ink-soft)}.peel-stripsum.floor{color:var(--viz-settled);font-weight:800}.peel-strip{align-items:center;gap:6px;min-height:56px;display:flex}.peel-block{border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);width:52px;height:52px;color:var(--accent);font:700 18px var(--font-mono);transition:all var(--dur-med) var(--ease-standard);justify-content:center;align-items:center;display:flex}.peel-block.floor{border-color:var(--viz-settled);background:var(--success-soft);color:var(--viz-settled)}.peel-block.held{border-color:var(--viz-pointer);color:var(--viz-pointer);opacity:.8;background:0 0}.peel-holding{align-items:center;gap:6px;min-height:24px;display:flex}.peel-holding-label{font:600 11px var(--font-ui);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.peel-holding .peel-block{width:40px;height:40px;font-size:14px}.peel-controls{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.peel-btn{border-radius:var(--radius);background:var(--accent);color:#fff;min-height:56px;font:650 15px var(--font-ui);cursor:pointer;border:none}.peel-btn.secondary{color:var(--ink);border:1px solid var(--line);background:0 0}.peel-btn:disabled{opacity:.4;cursor:default}.peel-floor-note{color:var(--viz-settled);font:600 13px var(--font-ui);margin:0}.experiment-kicker{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.experiment-prompt,.socratic-question{font:600 16px/1.5 var(--font-ui);margin:0}.experiment-hint{color:var(--ink-soft);font:13px var(--font-ui);margin:0;font-style:italic}.experiment-reveal{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);flex-direction:column;display:flex}.experiment-reveal p{font:15px/1.55 var(--font-narrative);margin:0}.socratic-feedback{padding:var(--sp-3);border-radius:var(--radius);font:14px/1.5 var(--font-ui);gap:var(--sp-3);flex-direction:column;display:flex}.socratic-feedback p{margin:0}.socratic-feedback.correct{background:var(--success-soft);border:1px solid var(--success-line)}.socratic-feedback.wrong{background:var(--paper);border:1px solid var(--viz-pruned)}.discovery-ceremony{gap:var(--sp-2);padding:var(--sp-4);border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);flex-direction:column;display:flex}.discovery-kicker{color:var(--accent);font:700 11px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.slot-builder{gap:var(--sp-4);flex-direction:column;display:flex}.slot-group{gap:var(--sp-2);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;display:flex}.slot-group.wrong{border-color:var(--viz-pruned)}.slot-label{font:16px var(--font-ui);margin:0}.slot-blank{border-bottom:2px dashed var(--viz-untouched);text-align:center;min-width:88px;color:var(--viz-untouched);font-family:var(--font-mono);padding:2px 10px;display:inline-block}.slot-blank.filled{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}.slot-options{gap:var(--sp-2);flex-wrap:wrap;display:flex}.slot-chip{border:1px solid var(--line);background:var(--paper);min-height:44px;color:var(--ink);font:600 14px var(--font-mono);cursor:pointer;border-radius:999px;padding:8px 16px}.slot-chip.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.design-field{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;display:flex}.design-field.wrong{border-color:var(--viz-pruned)}.design-field.correct{border-color:var(--viz-settled)}.design-prompt{font:600 15px/1.5 var(--font-ui);margin:0}.design-wrong-feedback{color:var(--viz-pruned);font:13px/1.5 var(--font-ui);margin:0}.design-derivation{color:var(--viz-settled);font:13px/1.5 var(--font-ui);margin:0}.signature-form{font:16px var(--font-mono);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.signature-form input{border:1px solid var(--accent);background:var(--accent-soft);width:130px;min-height:44px;color:var(--ink);font:700 15px var(--font-mono);border-radius:6px;padding:6px 10px}.signature-form .param-input{width:64px}.contract-recap{padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;gap:4px;display:flex}.contract-recap p{font:14px/1.5 var(--font-ui);margin:0}.contract-recap code{color:var(--accent);font-family:var(--font-mono)}.code-editor{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:240px;color:var(--ink);font:14px/1.6 var(--font-mono);resize:vertical;box-shadow:var(--shadow-raised);box-sizing:border-box;padding:16px}.test-list{flex-direction:column;gap:6px;display:flex}.test-row{border-radius:var(--radius);font:13px var(--font-mono);align-items:center;gap:10px;padding:10px 14px;display:flex}.test-row.ok{background:var(--success-soft);border:1px solid var(--success-line)}.test-row.fail{background:var(--paper-raised);border:1px solid var(--viz-pruned)}.test-icon{font-weight:800}.test-row.ok .test-icon{color:var(--viz-settled)}.test-row.fail .test-icon{color:var(--viz-pruned)}.test-expect{color:var(--ink-soft);text-align:right;margin-left:auto}.test-error{padding:var(--sp-3);border:1px solid var(--viz-pruned);border-radius:var(--radius);font-size:13px}.stuck-recovery{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--viz-cached);display:flex}@supports (color:color-mix(in lab, red, red)){.stuck-recovery{border:1px solid color-mix(in srgb, var(--viz-cached) 46%, var(--line))}}.stuck-recovery{border-radius:var(--radius);background:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.stuck-recovery{background:color-mix(in srgb, var(--viz-cached) 8%, var(--paper-raised))}}.stuck-recovery>div:first-child{flex-direction:column;gap:4px;display:flex}.stuck-recovery>div:first-child b{font:700 17px var(--font-narrative)}.stuck-recovery>div:first-child p{color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:0}.stuck-recovery-actions{gap:var(--sp-2);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;display:flex}.hint-ladder{gap:var(--sp-2);flex-direction:column;align-items:flex-start;display:flex}.hint{gap:var(--sp-3);width:100%;padding:var(--sp-3);border-radius:var(--radius);background:var(--paper-raised);border:1px solid var(--line);display:flex}.hint.assertion{border-color:var(--viz-cached)}.hint-level{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);font:700 11px var(--font-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.hint.assertion .hint-level{background:var(--viz-cached);color:#fff}.hint p{font:14px/1.5 var(--font-ui);margin:4px 0 0}.solution-link{color:var(--ink-soft);font:13px var(--font-ui);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:8px 0;text-decoration:underline}.solution-block{padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);font:14px/1.6 var(--font-mono);overflow-x:auto}.confirm-card{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--viz-cached);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;display:flex}.confirm-card p{font:14px/1.5 var(--font-ui);margin:0}.confirm-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.callstack-panel{gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;min-height:260px;display:flex}.callstack-frames{flex-direction:column-reverse;justify-content:flex-end;gap:6px;min-height:200px;display:flex}.callstack-empty{color:var(--ink-soft);font:14px var(--font-ui);text-align:center;padding:40px 0;font-style:italic}.callstack-frame{align-items:center;gap:var(--sp-3);border:2px solid var(--viz-untouched);border-radius:var(--radius);font:14px var(--font-mono);transition:border-color var(--dur-med) var(--ease-standard), background var(--dur-med);padding:10px 16px;display:flex}.callstack-frame.top{border-color:var(--viz-active);background:var(--accent-soft)}.callstack-fn{color:var(--ink);font-weight:800}.callstack-arg{color:var(--ink-soft)}.callstack-waiting{color:var(--accent);font:12px var(--font-ui);margin-left:auto;font-style:italic}.callstack-meta{gap:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line);color:var(--ink-soft);font:13px var(--font-ui);display:flex}.callstack-meta b{color:var(--ink);font-family:var(--font-mono)}.trace-caption{min-height:24px;color:var(--ink);font:600 15px var(--font-ui);margin:0}.trace-note{color:var(--ink-soft);font:13px var(--font-ui);margin:0}.trace-evidence{margin-top:var(--sp-4);padding:var(--sp-3);border-left:3px solid var(--viz-settled);background:var(--success-soft)}.trace-evidence p{color:var(--ink-soft);font:13px/1.5 var(--font-ui);margin:4px 0 0}.trace-loading{text-align:center;color:var(--ink-soft);font:14px var(--font-ui);padding:60px 0}.transport{align-items:center;gap:var(--sp-2);display:flex}.transport-btn{border:1px solid var(--line);background:var(--paper-raised);width:48px;height:48px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:16px}.transport-btn:disabled{opacity:.4;cursor:default}.transport-play{background:var(--accent);color:#fff;border-color:var(--accent)}.transport-scrub{accent-color:var(--accent);flex:1;height:32px}.transport-count{font:12px var(--font-mono);color:var(--ink-soft);text-align:right;min-width:48px}.reflect-prompt{gap:var(--sp-3);align-items:flex-start;display:flex}.reflect-num{border:1px solid var(--accent);width:26px;height:26px;color:var(--accent);font:700 12px var(--font-mono);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:3px;display:flex}.pattern-deposit{gap:var(--sp-3);flex-direction:column;display:flex}.ownwords{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:96px;color:var(--ink);font:15px/1.5 var(--font-narrative);resize:vertical;box-sizing:border-box;padding:14px}.pattern-card.earned{gap:var(--sp-3);padding:var(--sp-6);border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);flex-direction:column;display:flex}.pattern-name{font:700 26px var(--font-narrative);margin:0}.ownwords-quote{padding-left:var(--sp-3);border-left:3px solid var(--accent);color:var(--ink-soft);font:italic 15px/1.5 var(--font-narrative);margin:0}.related-list{gap:var(--sp-3);flex-direction:column;display:flex}.related-card{padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);box-shadow:var(--shadow-raised);flex-direction:column;gap:6px;text-decoration:none;display:flex}.related-card.selected{border-color:var(--accent);background:var(--accent-soft)}.related-pick{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:6px;padding:0;display:flex}.related-card b{font:700 15px var(--font-ui)}.related-card p{color:var(--ink-soft);font:14px/1.5 var(--font-narrative);margin:0}.related-go{color:var(--accent);font:650 13px var(--font-ui)}.pattern-chip{background:var(--accent-soft);color:var(--accent);font:650 12px var(--font-ui);border-radius:999px;padding:6px 12px;display:inline-block}.patterns-page,.pattern-quiz-page{width:100%;min-height:calc(100dvh - 52px);padding:clamp(28px, 7vw, 56px) clamp(16px, 5vw, 32px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.patterns-page{flex-direction:column;gap:40px;max-width:1080px;display:flex}.patterns-head{flex-direction:column;gap:4px;max-width:680px;display:flex}.pattern-desk-hero{border:1px solid var(--accent);background:radial-gradient(circle at 100% 0%, var(--viz-pointer), transparent 46%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised));border-radius:22px;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:stretch;gap:24px;padding:28px;display:grid}@supports (color:color-mix(in lab, red, red)){.pattern-desk-hero{background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--viz-pointer) 20%, transparent), transparent 46%), linear-gradient(135deg, var(--accent-soft), var(--paper-raised))}}.pattern-desk-hero{box-shadow:0 14px 36px var(--accent)}@supports (color:color-mix(in lab, red, red)){.pattern-desk-hero{box-shadow:0 14px 36px color-mix(in srgb, var(--accent) 12%, transparent)}}.pattern-desk-hero .stage-title{letter-spacing:-.04em;font-size:clamp(36px,6vw,58px)}.pattern-desk-hero .stage-move{max-width:590px;font-size:16px;line-height:1.5}.pattern-desk-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.pattern-desk-launch{background:var(--accent);color:#fff;font:700 13px var(--font-ui);box-shadow:0 8px 18px var(--accent);border-radius:13px;padding:12px 17px;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.pattern-desk-launch{box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 25%, transparent)}}.pattern-desk-secondary{color:var(--accent);font:700 12px var(--font-ui);text-decoration:none}.pattern-journal-priority{gap:14px}.pattern-desk-stats{grid-template-columns:1fr;gap:8px;display:grid}.pattern-desk-stats>div{border:1px solid var(--accent);grid-template-rows:1fr 1fr;grid-template-columns:52px 1fr;align-items:center;column-gap:10px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.pattern-desk-stats>div{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--line))}}.pattern-desk-stats>div{background:var(--paper-raised);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.pattern-desk-stats>div{background:color-mix(in srgb, var(--paper-raised) 76%, transparent)}}.pattern-desk-stats b{color:var(--accent);font:700 28px var(--font-mono);grid-row:1/span 2}.pattern-desk-stats span{color:var(--ink);font:700 13px var(--font-ui)}.pattern-desk-stats small{color:var(--ink-soft);font:11px var(--font-ui)}.pattern-quiz-banner{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);box-shadow:var(--shadow-raised);grid-template-columns:1fr auto;align-items:center;gap:24px;padding:clamp(20px,5vw,32px);display:grid}.pattern-quiz-banner h2,.pattern-section-heading h2{font:700 clamp(22px, 4vw, 30px)/1.15 var(--font-narrative);margin:4px 0 0}.pattern-quiz-banner p{color:var(--ink-soft);font:14px/1.45 var(--font-ui);margin:8px 0 0}.pattern-quiz-banner .btn-primary{white-space:nowrap;width:auto}.pattern-learning-path{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;gap:16px;padding:20px;display:flex}.pattern-guide-intro{max-width:760px;color:var(--ink-soft);font:15px/1.5 var(--font-narrative);margin:-4px 0 0}.pattern-path-list{flex-direction:column;gap:8px;display:flex}.pattern-path-step{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.pattern-path-step-head{grid-template-columns:36px 1fr auto;align-items:start;gap:12px;display:grid}.pattern-route-number{color:var(--viz-untouched);font:12px var(--font-mono)}.pattern-path-step .pattern-family{font-size:10px}.pattern-path-step h3{font:700 20px/1.1 var(--font-narrative);margin:3px 0 0}.pattern-path-status{color:var(--ink-soft);font:11px var(--font-mono);white-space:nowrap}.pattern-path-step.current{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}@supports (color:color-mix(in lab, red, red)){.pattern-path-step.current{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 12%, transparent)}}.pattern-path-step.complete{border-color:var(--success-line)}.pattern-path-step.complete .pattern-path-status{color:var(--viz-settled)}.pattern-path-step.current .pattern-path-status{color:var(--accent);font-weight:700}.pattern-path-progress{background:var(--line);border-radius:999px;height:4px;overflow:hidden}.pattern-path-progress span{border-radius:inherit;background:var(--viz-settled);height:100%;transition:width var(--dur-med) var(--ease-standard);display:block}.pattern-path-link{color:var(--accent);font:650 12px var(--font-ui);white-space:nowrap;text-decoration:none}.pattern-path-why{max-width:850px;color:var(--ink-soft);font:14px/1.5 var(--font-narrative);margin:0}.pattern-path-patterns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.pattern-path-patterns>div{flex-wrap:wrap;align-content:flex-start;gap:5px;display:flex}.pattern-path-patterns>div>span{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;flex-basis:100%}.pattern-path-patterns a,.pattern-path-patterns em{background:var(--accent-soft);color:var(--accent);font:11px/1.25 var(--font-ui);border-radius:999px;padding:5px 8px;text-decoration:none}.pattern-path-patterns em{color:var(--ink-soft);font-style:normal}.pattern-guide-next{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink-soft);font:13px/1.45 var(--font-ui);grid-template-columns:auto 1fr;gap:10px;padding:13px 15px;display:grid}.pattern-guide-next b{color:var(--accent);white-space:nowrap}.pattern-directory,.pattern-journal-section{flex-direction:column;gap:18px;display:flex}.pattern-section-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.pattern-count{color:var(--ink-soft);font:12px var(--font-mono);white-space:nowrap}.pattern-controls{flex-direction:column;gap:10px;display:flex}.pattern-search input{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:46px;color:var(--ink);font:14px var(--font-ui);padding:11px 14px}.pattern-filters{scrollbar-width:none;gap:6px;padding-bottom:3px;display:flex;overflow-x:auto}.pattern-filters::-webkit-scrollbar{display:none}.pattern-filters button{border:1px solid var(--line);background:var(--paper-raised);min-height:36px;color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;border-radius:999px;flex:none;padding:7px 11px}.pattern-filters button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.pattern-directory-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:10px;display:grid}.pattern-directory-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);min-width:0;box-shadow:var(--shadow-raised);flex-direction:column;gap:10px;padding:17px;scroll-margin-top:72px;display:flex}.pattern-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.pattern-family{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.pattern-card-state{background:var(--line);color:var(--ink-soft);font:700 9px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;order:2;padding:4px 7px}.pattern-card-state.known{background:var(--success-soft);color:var(--viz-settled)}.pattern-card-state.transfer{background:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.pattern-card-state.transfer{background:color-mix(in srgb, var(--viz-pointer) 14%, var(--paper-raised))}}.pattern-card-state.transfer{color:var(--viz-pointer)}.pattern-card-state.review{background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.pattern-card-state.review{background:color-mix(in srgb, var(--viz-pruned) 13%, var(--paper-raised))}}.pattern-card-state.review{color:var(--viz-pruned)}.pattern-directory-card.needs-review{border-color:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.pattern-directory-card.needs-review{border-color:color-mix(in srgb, var(--viz-pruned) 48%, var(--line))}}.pattern-directory-card.recognized{border-color:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.pattern-directory-card.recognized{border-color:color-mix(in srgb, var(--viz-settled) 35%, var(--line))}}.pattern-directory-card.current{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft), var(--shadow-raised)}.pattern-directory-card .pattern-family{order:1}.pattern-index{color:var(--viz-untouched);font:12px var(--font-mono);order:3}.pattern-directory-card h3{font:700 20px/1.15 var(--font-narrative);margin:0}.pattern-directory-card p{color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:0}.pattern-directory-card p b,.pattern-directory-card .pattern-cue{color:var(--ink)}.pattern-directory-card .pattern-watch{border-top:1px solid var(--line);padding-top:9px}.pattern-examples{flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:3px;display:flex}.pattern-examples span{background:var(--accent-soft);color:var(--accent);font:11px var(--font-ui);border-radius:999px;padding:5px 8px}.pattern-review-queue{border:1px solid var(--viz-pruned);flex-direction:column;gap:14px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.pattern-review-queue{border:1px solid color-mix(in srgb, var(--viz-pruned) 35%, var(--line))}}.pattern-review-queue{background:var(--viz-pruned);border-radius:18px}@supports (color:color-mix(in lab, red, red)){.pattern-review-queue{background:color-mix(in srgb, var(--viz-pruned) 5%, var(--paper-raised))}}.pattern-review-queue p{color:var(--ink-soft);font:14px/1.45 var(--font-narrative);margin:-4px 0 0}.pattern-review-list{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pattern-review-list a{border:1px solid var(--viz-pruned);justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.pattern-review-list a{border:1px solid color-mix(in srgb, var(--viz-pruned) 25%, var(--line))}}.pattern-review-list a{background:var(--paper-raised);color:var(--ink);border-radius:12px;text-decoration:none}.pattern-review-list a:hover{border-color:var(--viz-pruned)}.pattern-review-list span{font:650 13px var(--font-ui)}.pattern-review-list small{color:var(--viz-pruned);font:11px var(--font-ui);white-space:nowrap}.pattern-boss{border:1px solid var(--viz-pointer);background:var(--viz-pointer);border-radius:18px;flex-direction:column;gap:14px;padding:20px;display:flex}@supports (color:color-mix(in lab, red, red)){.pattern-boss{background:color-mix(in srgb, var(--viz-pointer) 6%, var(--paper-raised))}}.pattern-boss-intro{max-width:760px;color:var(--ink-soft);font:14px/1.45 var(--font-narrative);margin:-4px 0 0}.pattern-boss-card{border:1px solid var(--viz-pointer);flex-direction:column;gap:14px;padding:18px;display:flex}@supports (color:color-mix(in lab, red, red)){.pattern-boss-card{border:1px solid color-mix(in srgb, var(--viz-pointer) 28%, var(--line))}}.pattern-boss-card{background:var(--paper);border-radius:15px}.pattern-boss-card h3{max-width:820px;font:700 22px/1.2 var(--font-narrative);margin:0}.pattern-boss-options{flex-direction:column;gap:7px;display:flex}.pattern-boss-options button{border:1px solid var(--line);background:var(--paper-raised);min-height:50px;color:var(--ink);text-align:left;font:13px/1.4 var(--font-ui);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.pattern-boss-options button>span{border:1px solid var(--line);height:24px;color:var(--ink-soft);font:700 10px var(--font-mono);border-radius:50%;flex:0 0 24px;justify-content:center;align-items:center;display:inline-flex}.pattern-boss-options button.selected{border-color:var(--accent);background:var(--accent-soft)}.pattern-boss-options button.correct{border-color:var(--viz-settled);background:var(--success-soft)}.pattern-boss-options button.wrong{border-color:var(--viz-pruned)}.pattern-boss-feedback{font:13px/1.5 var(--font-ui);border-radius:12px;padding:13px}.pattern-boss-feedback p{margin:5px 0 0}.pattern-boss-feedback.correct{border:1px solid var(--success-line);background:var(--success-soft)}.pattern-boss-feedback.wrong{border:1px solid var(--viz-pruned);background:var(--paper-raised)}.pattern-boss-actions{flex-wrap:wrap;gap:8px;display:flex}.pattern-boss-actions .btn-ghost{width:auto}.patterns-empty{border:1px dashed var(--line);border-radius:var(--radius);flex-direction:column;gap:16px;padding:20px;display:flex}.patterns-empty .btn-ghost{align-self:flex-start}.pattern-quiz-page{max-width:680px}.pattern-quiz-top,.pattern-quiz-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.pattern-quiz-top{margin-bottom:18px}.pattern-quiz-top>span,.pattern-quiz-score{color:var(--ink-soft);font:12px var(--font-mono)}.pattern-quiz-progress{background:var(--line);border-radius:999px;height:6px;margin-bottom:42px;overflow:hidden}.pattern-quiz-progress span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard);display:block}.pattern-quiz-session-note{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin:-26px 0 8px}.pattern-quiz-session-note b{color:var(--accent)}.pattern-quiz-act,.pattern-quiz-finished{flex-direction:column;gap:18px;display:flex}.pattern-quiz-act .stage-title{margin-top:0}.pattern-quiz-context{border-left:3px solid var(--accent);background:var(--paper-raised);color:var(--ink-soft);font:15px/1.55 var(--font-narrative);margin:-4px 0 0;padding:16px}.pattern-quiz-options{flex-direction:column;gap:8px;display:flex}.pattern-quiz-option{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:100%;min-height:56px;color:var(--ink);text-align:left;font:500 14px/1.4 var(--font-ui);cursor:pointer;box-shadow:var(--shadow-raised);align-items:flex-start;gap:12px;padding:14px;display:flex}.pattern-quiz-option>span{border:1px solid var(--line);height:25px;color:var(--ink-soft);font:700 11px var(--font-mono);border-radius:50%;flex:0 0 25px;justify-content:center;align-items:center;display:inline-flex}.pattern-quiz-option.selected{border-color:var(--accent);background:var(--accent-soft)}.pattern-quiz-option.correct{border-color:var(--viz-settled);background:var(--success-soft)}.pattern-quiz-option.wrong{border-color:var(--viz-pruned);background:var(--paper)}.pattern-quiz-option:disabled{cursor:default}.pattern-quiz-feedback{border-radius:var(--radius);font:14px/1.5 var(--font-ui);flex-direction:column;gap:8px;padding:16px;display:flex}.pattern-quiz-feedback.correct{border:1px solid var(--success-line);background:var(--success-soft)}.pattern-quiz-feedback.wrong{border:1px solid var(--viz-pruned);background:var(--paper-raised)}.pattern-quiz-feedback p{margin:0}.pattern-quiz-recap{border-top:1px solid var(--line);grid-template-columns:86px 1fr;gap:5px 10px;margin-top:5px;padding-top:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.pattern-quiz-recap{border-top:1px solid color-mix(in srgb, var(--line) 75%, transparent)}}.pattern-quiz-recap span{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.pattern-quiz-recap b{font-weight:600}.pattern-score{border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);align-items:baseline;gap:12px;padding:20px;display:flex}.pattern-score b{color:var(--accent);font:700 42px var(--font-mono)}.pattern-score span{color:var(--ink-soft);font:13px var(--font-ui)}.pattern-quiz-actions{flex-direction:column;gap:10px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.pattern-desk-hero{border-radius:20px;grid-template-columns:1fr;gap:18px;padding:20px}.pattern-desk-hero .stage-title{font-size:42px}.pattern-desk-hero .stage-move{font-size:15px}.pattern-desk-actions{flex-direction:column;align-items:stretch}.pattern-desk-launch{text-align:center;width:100%}.pattern-desk-secondary{align-self:center}.pattern-desk-stats{grid-template-columns:repeat(3,1fr);gap:6px}.pattern-desk-stats>div{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-height:96px;padding:10px;display:flex}.pattern-desk-stats b{font-size:23px}.pattern-desk-stats span{font-size:11px}.pattern-desk-stats small{font-size:9px;line-height:1.2}.pattern-review-list{grid-template-columns:1fr}.pattern-boss{border-radius:18px;padding:16px}.pattern-boss-card{border-radius:14px;padding:15px}.pattern-boss-card h3{font-size:20px}.pattern-quiz-banner{grid-template-columns:1fr}.pattern-quiz-banner .btn-primary{width:100%}.pattern-section-heading{align-items:start}.pattern-path-step-head{grid-template-columns:28px 1fr}.pattern-path-link{grid-column:2}.pattern-path-patterns{grid-template-columns:1fr;gap:9px}.pattern-guide-next{grid-template-columns:1fr;gap:4px}.pattern-quiz-progress{margin-bottom:30px}.pattern-quiz-recap{grid-template-columns:1fr;gap:2px}.pattern-quiz-recap b{margin-bottom:6px}}.probe-card{border-top:1px dashed var(--line);padding-top:var(--sp-3)}.probe-trigger{color:var(--ink-soft);font:13px var(--font-ui);cursor:pointer;background:0 0;border:none;padding:8px 0}.probe-trigger b{color:var(--accent)}.probe-card.open{gap:var(--sp-3);padding:var(--sp-4);border:1px dashed var(--accent);border-radius:var(--radius);flex-direction:column;display:flex}.probe-kicker{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.probe-question{font:600 15px/1.5 var(--font-ui);margin:0}.probe-note{color:var(--ink-soft);font:14px/1.5 var(--font-narrative);margin:0}.probe-cancel{color:var(--ink-soft);font:13px var(--font-ui);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0;text-decoration:underline}.lesson-complete{gap:var(--sp-4);flex-direction:column;max-width:560px;display:flex}.lesson-complete-actions{gap:var(--sp-2);margin-top:var(--sp-2);flex-direction:column;display:flex}.stage-rail{border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:2px;width:230px;min-height:calc(100dvh - 52px);padding:24px 12px;display:none;position:sticky;top:52px}@media (min-width:900px){.stage-rail{display:flex}}.rail-context{border-bottom:1px solid var(--line);flex-direction:column;gap:5px;margin:0 10px 24px;padding-bottom:16px;display:flex}.rail-context span{color:var(--accent);font:700 9px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.rail-context strong{color:var(--ink);font:700 17px/1.12 var(--font-narrative)}.rail-heading{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}.rail-item{--stage-accent:var(--accent);--stage-soft:var(--accent-soft);border-radius:var(--radius);color:var(--ink);text-align:left;font:500 14px var(--font-ui);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.rail-item.stage-play,.rail-item.stage-design,.rail-item.stage-generalize{--stage-accent:var(--viz-pointer);--stage-soft:var(--viz-pointer)}@supports (color:color-mix(in lab, red, red)){.rail-item.stage-play,.rail-item.stage-design,.rail-item.stage-generalize{--stage-soft:color-mix(in srgb, var(--viz-pointer) 10%, var(--paper-raised))}}.rail-item.stage-reason,.rail-item.stage-reflect{--stage-accent:var(--viz-cached);--stage-soft:var(--viz-cached)}@supports (color:color-mix(in lab, red, red)){.rail-item.stage-reason,.rail-item.stage-reflect{--stage-soft:color-mix(in srgb, var(--viz-cached) 11%, var(--paper-raised))}}.rail-item.stage-execute{--stage-accent:var(--viz-settled);--stage-soft:var(--success-soft)}.rail-item:disabled{cursor:default;color:var(--viz-untouched)}.rail-item.active{background:var(--stage-soft);color:var(--stage-accent)}.rail-label{flex-direction:column;display:flex}.rail-short,.rail-gate{color:var(--ink-soft);font-size:11px}.gate-icon{border:2px solid var(--line);width:22px;height:22px;font:700 11px var(--font-mono);color:var(--ink-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gate-icon.completed{border-color:var(--viz-settled);background:var(--viz-settled);color:#fff}.gate-icon.active{border-color:var(--accent);background:var(--accent);color:#fff}.rail-patterns{border-top:1px solid var(--line);margin-top:auto;padding-top:16px}.rail-none{color:var(--ink-soft);font:12px var(--font-ui);font-style:italic}.stage-stepper-wrap{background:var(--paper);border-bottom:1px solid var(--line);display:block;position:static}@media (min-width:900px){.stage-stepper-wrap{display:none}}.stage-stepper{scrollbar-width:none;padding:10px 12px 4px;display:flex;overflow-x:auto}.stage-stepper::-webkit-scrollbar{display:none}.stepper-cell{flex-direction:column;flex:0 0 54px;align-items:center;gap:3px;padding:0 2px;display:flex;position:relative}.stepper-connector{background:var(--line);width:24px;height:2px;position:absolute;top:16px;left:-14px}.stepper-connector.done{background:var(--viz-settled)}.stepper-dot{border:2px solid var(--line);background:var(--paper-raised);width:32px;height:32px;color:var(--ink-soft);font:700 12px var(--font-mono);cursor:pointer;border-radius:50%;flex-shrink:0}.stepper-dot.completed{border-color:var(--viz-settled);background:var(--viz-settled);color:#fff}.stepper-dot.active{border-color:var(--accent);background:var(--accent);color:#fff;border-color:var(--stage-accent);background:var(--stage-accent)}.stepper-dot.locked{opacity:.45}.stepper-label{font:600 9px var(--font-ui);color:var(--ink-soft);white-space:nowrap}.stepper-label.active{color:var(--stage-accent)}.stepper-status{color:var(--ink-soft);font:11px var(--font-ui);padding:2px 16px 8px}.stepper-gate{color:var(--accent);font-weight:600}@media (max-width:700px){.lesson-surface{padding-top:24px;padding-bottom:24px}html,body{height:100%;overflow:hidden}.app-content{height:calc(100dvh - var(--mobile-tabbar-height));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;padding-top:var(--mobile-header-height);padding-bottom:24px;overflow:hidden auto}.home-page{min-height:100%!important}.home-page .landing-header{border-bottom:1px solid var(--line)!important;background:var(--paper)!important;border-radius:0!important;width:100%!important;max-width:none!important;padding:20px 16px 18px!important}.home-page .home-eyebrow{gap:7px;margin-bottom:16px}.home-page .home-eyebrow:before{width:18px}.home-page .home-eyebrow>span:last-child{margin-left:auto}.home-page .landing-header h1{letter-spacing:-.04em;max-width:340px;line-height:1.04;font-size:clamp(32px,10vw,40px)!important}.home-page .landing-header>p{line-height:1.48;max-width:430px!important;margin-top:12px!important;font-size:16px!important}.home-page .landing-actions{display:none}.home-page .landing-main{width:100%!important;max-width:none!important;padding:16px 16px calc(112px + env(safe-area-inset-bottom))!important}.landing-header{background:linear-gradient(145deg, var(--paper-raised), var(--accent-soft));border-radius:0 0 28px 28px;border-bottom:none!important}.landing-header h1{letter-spacing:-.035em}.landing-actions{gap:9px;margin-top:20px!important}.landing-actions a,.landing-actions .home-pattern-button,.landing-actions .home-game-button{border-radius:16px;justify-content:center;align-items:center;min-height:52px;display:inline-flex}.landing-actions a{flex:100%}.landing-main{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}.today-session{box-shadow:none;border-radius:22px;margin-bottom:14px;padding:20px 16px 14px}.today-session-head{flex-direction:column;align-items:flex-start;gap:5px}.today-session-head h2{font-size:29px;line-height:1.05}.today-session-copy{font-size:17px}.today-session-proof{border-top:1px solid var(--accent);grid-template-columns:auto 1fr;gap:5px 9px;padding:12px 0;display:grid}@supports (color:color-mix(in lab, red, red)){.today-session-proof{border-top:1px solid color-mix(in srgb, var(--accent) 18%, transparent)}}.today-session-proof{border-bottom:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.today-session-proof{border-bottom:1px solid color-mix(in srgb, var(--accent) 18%, transparent)}}.today-session-actions{flex-direction:column;gap:0}.today-session-actions a{border-radius:0;width:100%;min-height:50px}.today-session-actions .today-session-primary{border-radius:14px;justify-content:center;margin:14px 0 6px}.today-session-actions .today-session-secondary{border:0;border-bottom:1px solid var(--accent);justify-content:space-between;padding:14px 2px}@supports (color:color-mix(in lab, red, red)){.today-session-actions .today-session-secondary{border-bottom:1px solid color-mix(in srgb, var(--accent) 16%, transparent)}}.today-session-actions .today-session-secondary{background:0 0}.today-session-actions .today-session-secondary:last-child{border-bottom:0}.stuck-callout{border-radius:18px;grid-template-columns:1fr;gap:8px;margin-bottom:24px;padding:16px}.stuck-callout>div:last-child{align-items:flex-start;gap:0;width:100%}.stuck-callout>div:last-child a{border-top:1px solid var(--line);justify-content:space-between;align-items:center;width:100%;min-height:44px;display:flex}.stuck-callout>div:last-child a:after{content:"›";font-size:20px;font-weight:400}.curriculum-explore{border:1px solid var(--line);background:var(--paper-raised);border-radius:18px;margin-top:18px;overflow:hidden}.curriculum-explore summary{flex-direction:row;align-items:center;gap:10px;min-height:64px;padding:14px 16px}.curriculum-explore summary span{font-size:17px}.curriculum-explore summary small{text-align:right;max-width:150px;margin-left:auto;font-size:10px;line-height:1.3}.curriculum-explore[open] summary{border-bottom:1px solid var(--line)}.explore-actions{grid-template-columns:1fr;gap:6px;margin:12px}.explore-link{flex-direction:row;align-items:center;gap:12px;min-height:62px;padding:13px 14px}.explore-link span{text-align:right;margin-left:auto}.curriculum-explore h3{margin:20px 12px 10px}.topic-grid{grid-template-columns:1fr;gap:6px;width:auto;margin:0 12px 14px}.topic-card{min-height:60px;padding:12px 14px}.home-page>footer{display:none}.continue-derivation,.next-move-card,.expedition-callout{border-radius:18px!important}.continue-derivation{margin-bottom:14px!important;padding:18px!important}.next-move-card{margin:0 0 18px;padding:16px}.home-momentum{border-radius:20px;margin-bottom:24px;padding:17px}.home-momentum-head{flex-direction:column;align-items:flex-start;gap:4px}.home-momentum-grid{grid-template-columns:1fr;gap:8px}.home-momentum-card{border-radius:15px;min-height:132px}.home-momentum-card.primary{min-height:150px}.home-momentum-card:not(.primary){min-height:104px;padding:14px}.home-momentum-card:not(.primary) b{font-size:18px}.home-momentum-card:not(.primary) strong{font-size:11px}.home-finish-line{margin-top:14px}.mastery-momentum{grid-template-columns:1fr}.learning-checkpoint{border-radius:16px;grid-template-columns:auto 1fr}.learning-checkpoint .completion-next{grid-column:2;justify-self:start}.theory-card{border-radius:16px;padding:15px}.expedition-callout{margin:0 0 24px;padding:16px}.patterns-page,.pattern-quiz-page{gap:28px;padding-top:24px}.pattern-desk-hero{border-radius:20px;grid-template-columns:1fr;gap:18px;padding:18px}.pattern-desk-hero .stage-title{font-size:clamp(35px,11vw,48px)}.pattern-desk-hero .stage-move{font-size:15px}.pattern-desk-launch{justify-content:center;align-items:center;width:100%;min-height:48px;margin-top:12px;display:inline-flex}.pattern-desk-stats{grid-template-columns:repeat(3,1fr);gap:6px}.pattern-desk-stats>div{border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:10px;display:flex}.pattern-desk-stats b{font-size:22px}.pattern-desk-stats span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.pattern-desk-stats small{font-size:9px;line-height:1.2}.pattern-quiz-banner{box-shadow:0 10px 28px var(--accent);border-radius:20px;padding:20px}@supports (color:color-mix(in lab, red, red)){.pattern-quiz-banner{box-shadow:0 10px 28px color-mix(in srgb, var(--accent) 14%, transparent)}}.pattern-learning-path,.pattern-directory-card,.pattern-journal-section .pattern-card{border-radius:18px}.pattern-learning-path{padding:15px}.pattern-path-step{border-radius:16px;padding:15px}.pattern-path-step-head{grid-template-columns:30px minmax(0,1fr);gap:9px}.pattern-path-step h3{font-size:18px}.pattern-path-patterns{grid-template-columns:1fr;gap:9px}.pattern-path-status{grid-area:2/2;justify-self:start}.pattern-path-link{grid-area:3/2}.pattern-guide-next{grid-template-columns:1fr;gap:4px}.pattern-directory-card{box-shadow:none;padding:15px}.pattern-quiz-act .stage-title{letter-spacing:-.03em;font-size:clamp(29px,9vw,38px)}.pattern-quiz-context{border-radius:0 14px 14px 0;padding:15px}.pattern-quiz-option{border-radius:16px;align-items:center;min-height:64px;padding:15px;font-size:15px}.pattern-quiz-option>span{flex-basis:30px;height:30px}.pattern-quiz-act>.btn-primary{border-radius:16px;min-height:56px}.stuck-recovery{flex-direction:column;align-items:stretch}.stuck-recovery-actions{justify-content:stretch}.stuck-recovery-actions>button{flex:100%;min-height:42px}.notification-panel{top:calc(66px + env(safe-area-inset-top));right:10px}.dashboard-page{padding:24px 16px calc(96px + env(safe-area-inset-bottom))!important}.dashboard-inner>h1{font-size:38px!important}.dashboard-track-card{flex-direction:column;border-radius:18px!important;align-items:flex-start!important;gap:10px!important;padding:16px!important}.dashboard-track-card>span{text-align:left!important;min-width:auto!important}.dashboard-topic-card{border-radius:16px!important}.settings-page{padding-top:24px}.settings-intro h1{letter-spacing:-.035em;font-size:40px}.settings-intro p{font-size:17px}.android-page{padding-top:24px}.android-hero-grid{grid-template-columns:1fr;gap:20px}.android-hero-visual{order:-1;min-height:250px}.android-visual-orbit{width:210px;height:210px}.android-icon{border-radius:32px;width:132px;height:132px}.android-mascot{border-radius:23px;width:82px;height:82px;padding:6px;bottom:-20px;right:-28px}.android-hero-copy h1{font-size:clamp(38px,12vw,54px)}.android-hero-copy>p{font-size:15px}.android-build-meta{grid-template-columns:1fr;margin-top:26px}.android-download{justify-content:center;width:100%;min-height:48px}.android-pwa-option{flex-direction:column;align-items:stretch;gap:12px}.android-pwa-option-button{justify-content:center;min-height:44px}.android-app-callout{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:24px;padding:16px}.segmented-row{flex-direction:column;align-items:stretch;gap:10px}.segmented{width:100%}.segmented button{flex:1;min-height:44px}.data-actions>*{flex:100%}.android-app-callout-link{justify-content:center}.theme-options{grid-template-columns:1fr}.theme-option{min-height:76px}.theme-options-expanded{grid-template-columns:repeat(2,1fr)}.theme-options-expanded .theme-option{min-height:104px}.type-options,.logo-controls{grid-template-columns:1fr}.style-presets{grid-template-columns:repeat(2,1fr)}.choice-group-options,.workspace-preview-body{grid-template-columns:1fr}.preference-row{min-height:68px}.notification-setting{border-radius:16px;flex-direction:column;align-items:stretch}.notification-setting .btn-ghost{width:100%}}.lab-page{max-width:900px;padding:40px 24px calc(96px + env(safe-area-inset-bottom));margin:0 auto}.lab-title{font-family:var(--font-narrative);letter-spacing:-.03em;max-width:640px;margin:8px 0 14px;font-size:clamp(34px,6vw,52px);line-height:1.05}.lab-list{gap:var(--stack-gap);margin-top:26px;display:grid}.lab-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);padding:18px 20px;text-decoration:none;display:block}.lab-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised)}.lab-kicker,.artifact-kicker{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.09em;color:var(--accent);font-size:11px;font-weight:600;display:inline-block}.lab-card>b{margin-top:4px;font-size:19px;display:block}.lab-card>p{color:var(--ink-soft);margin:6px 0 10px;font-size:15px;line-height:1.45}.lab-move{color:var(--ink-soft);font-size:13px;font-family:var(--font-ui)}.artifact-chain{border-top:1px solid var(--line);margin-top:40px;padding-top:22px}.artifact-chain-strip{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 10px;display:flex}.chain-link{align-items:center;gap:8px;display:inline-flex}.chain-node{border:1px solid var(--line);color:var(--ink-soft);background:var(--paper);border-radius:999px;padding:7px 12px;font-size:13px}.chain-node.done{border-color:var(--viz-settled);color:var(--viz-settled);background:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.chain-node.done{background:color-mix(in srgb, var(--viz-settled) 10%, var(--paper))}}.chain-arrow{color:var(--ink-soft);font-size:13px}.chain-note{color:var(--ink-soft);font-size:14px}.artifact-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);margin-bottom:22px;padding:16px 18px}.artifact-item{margin-top:8px}.artifact-item>b{font-size:15px;display:block}.artifact-kind{font-family:var(--font-code);color:var(--accent);font-size:12px}.artifact-fields{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.artifact-field-chip{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:4px 10px;font-size:12px}.artifact-constraints{border-top:1px solid var(--line);gap:10px;margin-top:14px;padding-top:12px;display:grid}.constraint-row>b{font-size:13px;display:block}.constraint-row>span{font-family:var(--font-code);color:var(--ink-soft);font-size:12px}.constraint-row>p{color:var(--ink-soft);margin:3px 0 0;font-size:13px}.dataset-sandbox,.dataset-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);padding:14px}.dataset-counts,.dataset-summary{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.ds-count{font-family:var(--font-ui);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.ds-count.ok{color:var(--viz-settled);border-color:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.ds-count.ok{border-color:color-mix(in srgb, var(--viz-settled) 45%, transparent)}}.ds-count.bad{color:var(--viz-pruned);border-color:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.ds-count.bad{border-color:color-mix(in srgb, var(--viz-pruned) 45%, transparent)}}.ds-count.muted{color:var(--viz-untouched)}.ds-reasons{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.ds-reason-chip{font-family:var(--font-code);color:var(--viz-pruned);background:var(--viz-pruned);font-size:12px}@supports (color:color-mix(in lab, red, red)){.ds-reason-chip{background:color-mix(in srgb, var(--viz-pruned) 9%, var(--paper))}}.ds-reason-chip{border-radius:999px;padding:4px 10px}.dataset-rows{gap:6px;max-height:420px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.dataset-row{border:1px solid var(--line);background:var(--paper);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.dataset-row.selected{border-color:var(--accent)}.dataset-row.accepted{border-color:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.dataset-row.accepted{border-color:color-mix(in srgb, var(--viz-settled) 45%, var(--line))}}.dataset-row.rejected{border-color:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.dataset-row.rejected{border-color:color-mix(in srgb, var(--viz-pruned) 40%, var(--line))}}.dataset-row.sandbox{grid-template-columns:1fr;gap:0}.ds-row-tap{text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:0;display:grid}.ds-row-id{font-family:var(--font-code);color:var(--ink-soft);font-size:12px}.ds-row-text{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.ds-row-reserved{text-transform:uppercase;letter-spacing:.06em;color:var(--viz-cached);border:1px solid var(--viz-cached);font-size:11px}@supports (color:color-mix(in lab, red, red)){.ds-row-reserved{border:1px solid color-mix(in srgb, var(--viz-cached) 50%, transparent)}}.ds-row-reserved{border-radius:999px;padding:2px 8px}.ds-row-edit{color:var(--accent);font-size:11px}.ds-row-verdict{white-space:nowrap;font-size:12px;font-weight:600}.ds-row-verdict.ok{color:var(--viz-settled)}.ds-row-verdict.bad{color:var(--viz-pruned)}.ds-row-verdict.muted{color:var(--viz-untouched)}.ds-row-actions{flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}@media (max-width:700px){.lab-page{padding:24px 16px calc(112px + env(safe-area-inset-bottom))}.artifact-chain-strip{gap:6px}.dataset-rows{max-height:380px}.ds-row-actions>button{flex:100%;min-height:42px}}.ai-continue-card{border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:16px;margin-top:20px;padding:18px 20px;text-decoration:none;display:block}.ai-continue-card>b{margin:4px 0 6px;font-size:18px;display:block}.ai-continue-sub{color:var(--ink-soft);font-size:12px;font-family:var(--font-ui)}.ai-hub-section{margin-top:30px}.ai-hub-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-top:12px;display:grid}.ai-hub-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);padding:14px 16px;text-decoration:none;display:block}.ai-hub-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised)}.ai-hub-card>b{margin:5px 0 6px;font-size:15px;display:block}.ai-hub-card.muted{opacity:.62}.track-filters{gap:10px;margin:18px 0;display:grid}.track-filter-group{flex-wrap:wrap;gap:6px;display:flex}.track-filter-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:600 12px var(--font-ui);cursor:pointer;border-radius:999px;padding:6px 12px}.track-filter-chip.active{background:var(--accent);border-color:var(--accent);color:var(--paper-raised)}.track-question-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.track-question-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px 15px;text-decoration:none;display:grid}.track-question-row:hover{border-color:var(--accent)}.track-q-id{font-family:var(--font-code);color:var(--accent);font-size:12px}.track-q-main{gap:3px;min-width:0;display:grid}.track-q-main>b{font-size:14px;line-height:1.4}.track-q-meta{color:var(--ink-soft);font-size:11px;font-family:var(--font-ui)}.track-q-status{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-size:11px}.track-question-row.done{opacity:.6}.track-question-row.done .track-q-status{color:var(--viz-settled)}.ai-question-page .ai-question-fixture,.ai-question-hints,.ai-question-answer,.ai-question-rubric{margin-top:18px}.fixture-block{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px;font-size:12.5px;line-height:1.55;overflow-x:auto}.ai-hint{color:var(--ink);border-left:3px solid var(--accent);background:var(--paper-raised);border-radius:0 8px 8px 0;margin:8px 0;padding:8px 12px;font-size:14px}.answer-editor{min-height:160px;font-size:14px}.ai-question-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.ai-question-actions .btn-primary.as-link,.ai-question-actions .btn-primary{text-decoration:none}.rubric-check{border-bottom:1px dashed var(--line);color:var(--ink);padding:7px 0;font-size:14px}.ai-question-expected{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent-soft);margin-top:14px;padding:14px}.ai-question-expected .narrative{margin:6px 0}.ai-question-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:26px;padding-top:14px;display:flex}.ai-question-foot a{color:var(--accent);font-weight:600;text-decoration:none}.project-ladder{gap:8px;margin:20px 0 0;padding:0;list-style:none;display:grid}.project-ladder-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:13px 15px;display:grid}.project-ladder-n{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);font:700 13px var(--font-ui);border-radius:50%;place-items:center;display:grid}.project-ladder-row>div{gap:2px;display:grid}.project-ladder-row b{font-size:15px}.ai-pattern-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:12px;display:grid}.project-map{gap:var(--stack-gap);margin-top:24px;display:grid}.project-card{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);transition:border-color var(--dur-fast), box-shadow var(--dur-fast);border-radius:18px;padding:20px;text-decoration:none;display:block}.project-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised)}.project-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.project-progress{font:700 12px var(--font-code);color:var(--accent)}.project-card-title{font:700 22px var(--font-narrative);letter-spacing:-.02em;margin:6px 0 4px;display:block}.project-card-pitch{color:var(--ink-soft);margin:0 0 14px;font-size:14px;line-height:1.5}.project-level-rows{gap:4px;margin:0;padding:0;list-style:none;display:grid}.project-level-row{background:var(--paper);border:1px solid var(--line);border-radius:10px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:9px 11px;display:grid}.project-level-row.locked{opacity:.5}.project-level-row.planned{opacity:.48}.project-level-row.ready{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.project-level-row.ready{border-color:color-mix(in srgb, var(--accent) 28%, var(--line))}}.project-level-row.ready{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.project-level-row.ready{background:color-mix(in srgb, var(--accent-soft) 35%, var(--paper))}}.project-level-row.done{border-color:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.project-level-row.done{border-color:color-mix(in srgb, var(--viz-settled) 45%, var(--line))}}.project-level-row.current{border-color:var(--accent)}.project-level-num{font:700 11px var(--font-code);color:var(--accent)}.project-level-title{min-width:0;font-size:13.5px;font-weight:600}.project-level-title small{color:var(--ink-soft);font:11px var(--font-ui);margin-top:1px;font-weight:400;display:block}.project-level-time{font:11px var(--font-mono);color:var(--ink-soft);white-space:nowrap}.project-level-chevron{color:var(--ink-soft)}.project-resume{color:var(--accent);font:600 12px var(--font-ui);margin-top:10px;display:block}.project-level-link{color:inherit;grid-template-columns:inherit;align-items:inherit;gap:inherit;grid-column:1/-1;min-width:0;text-decoration:none;display:grid}.project-level-row:has(>.project-level-link:hover){border-color:var(--accent)}.project-level-rows.brief{margin-top:18px}.project-level-status{font:600 11px var(--font-ui);color:var(--ink-soft);white-space:nowrap}.ai-systems-page .project-card-head{align-items:flex-start}.ai-systems-page .project-card-head .lab-kicker{min-width:0}.ai-systems-page .project-progress{white-space:nowrap;font-size:11px}.ai-systems-page .project-level-rows.brief .project-level-chevron{white-space:nowrap}.project-back{color:var(--accent);font:600 12px var(--font-ui);margin-bottom:10px;text-decoration:none;display:inline-block}.project-level-page{max-width:1400px}.project-level-page .project-level-head{margin-bottom:16px}.practice-lab-header{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:44px;padding-bottom:10px;display:flex}.practice-lab-back{color:var(--ink);font:600 13px var(--font-ui);white-space:nowrap;text-decoration:none}.practice-lab-crumb{color:var(--ink-soft);font:12px var(--font-mono);white-space:nowrap}.practice-lab-title{min-width:0;color:var(--ink);font:650 14px var(--font-ui);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.practice-lab-duration{border:1px solid var(--line);color:var(--ink-soft);font:11px var(--font-mono);white-space:nowrap;border-radius:999px;padding:4px 8px}.practice-lab-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.compact-action{white-space:nowrap;min-height:32px;padding:5px 9px}.project-level-tabs{border-bottom:1px solid var(--line);align-items:end;gap:16px;min-height:38px;display:flex;overflow-x:auto}.project-level-tab{min-height:36px;color:var(--ink-soft);font:600 12px var(--font-ui);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:0 4px;text-decoration:none;display:inline-flex}.project-level-tab span{display:none}.project-level-tab.active{border-bottom-color:var(--ink);color:var(--ink)}.project-level-tab.locked{opacity:.42}.level-stage{max-width:760px}.level-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.level-actions.sticky{bottom:calc(var(--mobile-tabbar-height,0px) + 12px);z-index:40;margin-top:20px;position:sticky}.project-attempts{font:11px var(--font-mono);color:var(--ink-soft)}.spec-block{margin-top:16px}.spec-list{color:var(--ink);gap:6px;margin:8px 0 0;padding-left:18px;font-size:14px;line-height:1.5;display:grid}.tests-list li{grid-template-columns:auto 1fr;gap:8px;display:grid}.tests-list .test-invariant,.test-row .test-invariant{color:var(--ink-soft);font-size:12px;font-style:italic}.level-workbench{gap:12px;display:grid}.workbench-tabs{border-bottom:1px solid var(--line);gap:6px;display:flex;overflow-x:auto}.workbench-tab{font:600 12px var(--font-ui);color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 14px}.workbench-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.workbench-panes{gap:12px;display:grid}.workbench-pane{display:none}.workbench-pane.active{gap:10px;display:grid}.project-editor{min-height:300px;font-size:13px}.code-tools{flex-wrap:wrap;gap:8px;display:flex}.run-tests{min-width:200px;min-height:48px}.artifact-form{gap:12px;margin-top:14px;display:grid}.artifact-field{font:600 12px var(--font-ui);gap:5px;display:grid}.artifact-field input,.artifact-field textarea{border:1px solid var(--line);border-radius:var(--radius);font:14px var(--font-ui);background:var(--paper-raised);color:var(--ink);padding:11px 13px}.exit-gate{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.scenario-page{max-width:1200px;padding:32px clamp(16px, 4vw, 48px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.scenario-page .project-level-page{border-bottom:1px solid var(--line);max-width:none;padding-bottom:24px}.scenario-page .project-level-head{max-width:820px}.scenario-page .level-actions.sticky{position:static}.scenario-hero{gap:12px;display:grid}.scenario-hero .project-back{margin-bottom:0}.interaction-path{font:650 12px var(--font-mono);color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}.interaction-path span{border:1px solid var(--line);background:var(--paper-raised);border-radius:8px;padding:7px 10px}.interaction-path b{color:var(--accent);font:700 11px var(--font-ui);text-transform:uppercase;letter-spacing:.07em}.interaction-path i{color:var(--ink-soft);font:11px var(--font-ui);font-style:normal}.scenario-page .spec-pitch{color:var(--ink-soft);font:14px/1.6 var(--font-ui);max-width:640px;margin:8px 0 0}.scenario-design{grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:16px 24px;max-width:1080px;margin-top:8px;display:grid}.scenario-design>.experiment-kicker{grid-column:1/-1}.scenario-design>.design-question{grid-column:1}.scenario-design>.spec-load{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;grid-area:2/2/span 2;align-self:start;padding:16px}.scenario-design>.level-actions{grid-column:1}.design-question{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);gap:10px;padding:16px;display:grid}.design-question.ok{border-color:var(--success-line)}.design-question.wrong{border-color:var(--viz-pruned)}.design-question-text{font:600 15px/1.5 var(--font-ui);margin:0}.design-options{flex-wrap:wrap;gap:8px;display:flex}.design-option{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);font:600 12px var(--font-ui);cursor:pointer;padding:9px 13px}.design-option.picked{border-color:var(--accent);color:var(--accent)}.design-explanation{color:var(--viz-settled);font:13px/1.5 var(--font-ui);margin:0}.design-question.wrong .design-explanation{color:var(--viz-pruned)}.design-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.scenario-page .design-actions .btn-primary{width:auto;min-height:44px;padding:10px 16px;font-size:13px}.design-selection{color:var(--ink-soft);font:12px var(--font-ui)}.spec-load{gap:6px;display:grid}.scenario-atelier{max-width:1100px}.scenario-atelier .workbench-tabs{display:flex}.scenario-atelier .workbench-tab{display:inline-flex}.scenario-atelier .workbench-pane{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;min-width:0;padding:16px;display:none}.scenario-atelier .workbench-panes{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr) minmax(250px,.8fr);align-items:start}.scenario-page .project-editor{box-sizing:border-box;resize:vertical;width:100%;min-width:0;display:block}.scenario-page .level-editor{gap:10px;min-width:0;display:grid}.scenario-component-row{border-top:1px solid var(--line);gap:4px;margin:0;padding:10px 0;list-style:none;display:grid}.spec-list .scenario-component-row{padding-left:0}.scenario-component-row:first-child{border-top:0;padding-top:4px}.scenario-component-top{align-items:center;gap:7px;min-width:0;display:flex}.scenario-component-top strong{font:700 13px var(--font-mono)}.scenario-component-top em{color:var(--ink-soft);font:10px var(--font-ui);text-transform:uppercase;letter-spacing:.06em;font-style:normal}.scenario-component-top small{color:var(--accent);font:700 10px var(--font-mono);margin-left:auto}.scenario-component-contract{color:var(--ink);font:12px/1.4 var(--font-mono);overflow-wrap:anywhere}.scenario-component-contract b{color:var(--accent)}.scenario-component-latency{color:var(--ink-soft);font:11px var(--font-ui)}.spec-brief{font:14px/1.6 var(--font-ui);color:var(--ink-soft);margin:8px 0 0}.sim-run-actions{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;gap:12px;padding:14px;display:grid}.sim-run-copy{gap:3px;display:grid}.sim-run-copy p{max-width:620px;color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:0}.sim-run-buttons{flex-wrap:wrap;gap:8px;display:flex}.experiment-console{border:1px solid var(--line);background:var(--paper);box-shadow:0 12px 30px var(--ink);border-radius:16px;gap:16px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.experiment-console{box-shadow:0 12px 30px color-mix(in srgb, var(--ink) 6%, transparent)}}.console-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.console-heading h3{font:700 19px var(--font-ui);letter-spacing:-.02em;margin:4px 0 0}.console-heading p{color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:5px 0 0}.console-seed{color:var(--ink-soft);font:11px var(--font-mono);white-space:nowrap}.console-reset{white-space:nowrap;min-height:34px;padding:7px 10px;font-size:11px}.experiment-topology{border:1px solid var(--line);background:var(--paper-raised);border-radius:12px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:14px;display:grid}.topology-node{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--paper);border-radius:10px;gap:4px;min-width:0;padding:12px;display:grid}.topology-node.topology-upstream{border-left-color:var(--viz-settled)}.topology-node.state-at-risk{border-left-color:var(--viz-active)}.topology-node.state-degraded{border-left-color:var(--viz-pruned)}.topology-status{color:var(--ink-soft);font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.06em}.topology-node strong{font:700 14px var(--font-mono)}.topology-node small{color:var(--ink-soft);font:11px var(--font-ui)}.topology-arrow{color:var(--accent);font:700 20px var(--font-mono)}.console-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.console-control{border:1px solid var(--line);background:var(--paper-raised);border-radius:10px;gap:7px;padding:11px 12px;display:grid}.console-control>span{font:12px var(--font-ui);justify-content:space-between;gap:8px;display:flex}.console-control output{color:var(--accent);font:700 11px var(--font-mono);white-space:nowrap}.console-control input{width:100%;accent-color:var(--accent)}.console-control small{color:var(--ink-soft);font:11px/1.35 var(--font-ui)}.prediction-checkpoint{border-top:1px solid var(--line);gap:9px;padding-top:14px;display:grid}.prediction-checkpoint p{font:600 13px var(--font-ui);margin:0}.prediction-options{flex-wrap:wrap;gap:7px;display:flex}.prediction-option{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font:600 11px var(--font-ui);cursor:pointer;border-radius:999px;padding:8px 11px}.prediction-option.picked{border-color:var(--accent);color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.prediction-option.picked{background:color-mix(in srgb, var(--accent) 8%, var(--paper-raised))}}.console-run{justify-self:start;min-height:42px;padding:9px 14px}.observation-studio{border-top:1px solid var(--line);gap:18px;margin-top:24px;padding-top:20px;display:grid}.studio-run-switch{border-bottom:1px solid var(--line);gap:6px;display:flex}.sim-studio-heading{font:700 11px var(--font-ui);color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase}.sim-summary{gap:14px;display:grid}.sim-metrics{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.sim-metric-card{border:1px solid var(--line);background:var(--paper-raised);border-radius:12px;gap:2px;padding:10px 12px;display:grid}.sim-metric-label{font:10px var(--font-ui);color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase}.sim-metric-value{font:700 17px var(--font-mono)}.sim-gates{gap:6px;display:grid}.sim-gate-heading{font:700 11px var(--font-ui);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em}.sim-gate{border:1px solid var(--line);background:var(--paper);border-radius:10px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:6px 10px;padding:10px 12px;font-size:13px;display:grid}.sim-gate.ok{border-color:var(--success-line)}.sim-gate.fail{border-color:var(--viz-pruned)}.sim-gate-status{font:700 13px var(--font-mono)}.sim-gate.ok .sim-gate-status{color:var(--viz-settled)}.sim-gate.fail .sim-gate-status{color:var(--viz-pruned)}.sim-gate-name{font-weight:600}.sim-gate-numbers{font:11px var(--font-mono);color:var(--ink-soft);white-space:nowrap}.sim-gate-invariant{color:var(--ink-soft);font:12px/1.5 var(--font-ui);grid-column:2/-1}.sim-waterfall{gap:3px;display:grid}.sim-request-row{font-size:0}.sim-request-id{font:10px var(--font-mono);color:var(--ink-soft);align-self:center}.sim-request-track{background:var(--paper);border-radius:4px;height:18px;position:relative;overflow:hidden}.sim-request-bar{background:var(--line);position:absolute;top:1px;bottom:1px}@supports (color:color-mix(in lab, red, red)){.sim-request-bar{background:color-mix(in srgb, var(--line) 55%, transparent)}}.sim-request-bar{border-radius:3px}.sim-request-bar.status-200{background:var(--success-line)}@supports (color:color-mix(in lab, red, red)){.sim-request-bar.status-200{background:color-mix(in srgb, var(--success-line) 35%, transparent)}}.sim-request-bar.status-504,.sim-request-bar.status-502,.sim-request-bar.status-503,.sim-request-bar.status-500{background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.sim-request-bar.status-504,.sim-request-bar.status-502,.sim-request-bar.status-503,.sim-request-bar.status-500{background:color-mix(in srgb, var(--viz-pruned) 30%, transparent)}}.sim-hop{border-radius:3px;position:absolute;top:0;bottom:0}.sim-hop-root{opacity:.14;position:absolute;top:0;bottom:0}.sim-comp-a{background:var(--accent)}.sim-comp-b{background:var(--viz-settled)}.sim-comp-c{background:var(--viz-pruned)}.sim-comp-d,.sim-comp-x{background:var(--ink-soft)}.sim-hop.failed{opacity:.45}.sim-timeline{gap:8px;display:grid}.sim-timeline-chart{border-bottom:1px solid var(--line);align-items:stretch;gap:2px;height:130px;display:flex}.sim-bucket{flex:1;grid-template-rows:1fr auto;align-items:end;gap:2px;display:grid}.sim-bucket-stack{height:100%;position:relative}.sim-bucket-arrivals{background:var(--viz-active);width:100%;position:absolute;bottom:0;left:0}@supports (color:color-mix(in lab, red, red)){.sim-bucket-arrivals{background:color-mix(in srgb, var(--viz-active) 60%, transparent)}}.sim-bucket-completions{background:var(--viz-settled);opacity:.55;width:100%;position:absolute;bottom:0;left:0}.sim-bucket-queue{background:var(--viz-pruned);opacity:.65;width:100%;position:absolute;bottom:0;left:0}.sim-bucket-second{font:9px var(--font-mono);color:var(--ink-soft);text-align:center}.sim-legend{font:11px var(--font-ui);color:var(--ink-soft);gap:14px;display:flex}.sim-legend-item:before{content:"";vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:5px;display:inline-block}.sim-legend-item.arrivals:before{background:var(--viz-active)}@supports (color:color-mix(in lab, red, red)){.sim-legend-item.arrivals:before{background:color-mix(in srgb, var(--viz-active) 60%, transparent)}}.sim-legend-item.completions:before{background:var(--viz-settled);opacity:.55}.sim-legend-item.queue:before{background:var(--viz-pruned);opacity:.65}.sim-components{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.sim-component-card{border:1px solid var(--line);background:var(--paper-raised);border-left-width:4px;border-radius:10px;gap:2px;padding:12px 14px;display:grid}.sim-component-name{font:700 13px var(--font-mono)}.sim-component-line{font:12px var(--font-ui);color:var(--ink-soft)}.sim-events{gap:8px;max-width:1100px;display:grid}.sim-event-kinds{flex-wrap:wrap;gap:6px;display:flex}.sim-kind-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:600 11px var(--font-ui);cursor:pointer;border-radius:999px;padding:5px 10px}.sim-kind-chip.active{border-color:var(--accent);color:var(--accent)}.sim-event-list{max-height:300px;font:12px var(--font-mono);gap:3px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.sim-event-row{border-radius:6px;grid-template-columns:56px 90px 1fr;gap:8px;padding:4px 8px;display:grid}.sim-event-row:nth-child(odd){background:var(--paper)}.sim-event-at{color:var(--ink-soft)}.sim-event-kind{color:var(--accent)}.sim-event-detail{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sim-before-after{grid-template-columns:1fr 1fr;gap:10px;max-width:480px;display:grid}.sim-before-after>div{border:1px solid var(--line);background:var(--paper-raised);border-radius:10px;padding:10px 12px}.sim-before-after p{font:13px var(--font-mono);margin:4px 0 0}.sim-pending{border:1px dashed var(--line);color:var(--ink-soft);font:13px var(--font-ui);border-radius:12px;padding:18px}.sim-error{border:1px solid var(--viz-pruned);color:var(--viz-pruned);font:13px/1.5 var(--font-ui);border-radius:10px;margin-bottom:10px;padding:12px}.incident-board{border:1px solid var(--accent);background:var(--accent);border-radius:16px;gap:14px;padding:16px;display:grid}@supports (color:color-mix(in lab, red, red)){.incident-board{background:color-mix(in srgb, var(--accent) 5%, var(--paper-raised))}}.incident-board-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.incident-board h3{font:700 18px var(--font-ui);margin:4px 0 0}.incident-board-head p{color:var(--ink-soft);font:13px/1.45 var(--font-ui);margin:5px 0 0}.incident-verdict{border:1px solid var(--viz-pruned);color:var(--viz-pruned);font:700 10px var(--font-ui);text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:6px 9px}.incident-verdict.correct{border-color:var(--success-line);color:var(--viz-settled)}.incident-board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.incident-fact{border:1px solid var(--line);background:var(--paper);border-radius:10px;gap:4px;padding:11px 12px;display:grid}.incident-fact strong{font:700 14px var(--font-mono)}.incident-fact small{color:var(--ink-soft);font:11px var(--font-ui)}.divergence-card{border:1px dashed var(--accent);background:var(--paper);border-radius:10px;gap:10px;padding:12px;display:grid}.divergence-card p{color:var(--ink-soft);font:12px var(--font-ui);margin:0}.divergence-events{grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;display:grid}.divergence-events>div{gap:5px;min-width:0;display:grid}.divergence-events b{color:var(--ink-soft);font:10px var(--font-ui);text-transform:uppercase}.divergence-events code{overflow-wrap:anywhere;color:var(--ink);font:11px/1.45 var(--font-mono)}.divergence-events>span{color:var(--accent);font:700 16px var(--font-mono)}.evidence-button{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font:600 11px var(--font-ui);cursor:pointer;border-radius:8px;justify-self:start;padding:8px 11px}.evidence-button.selected{border-color:var(--success-line);color:var(--viz-settled)}.evidence-button:disabled{cursor:not-allowed;opacity:.55}.incident-objective{color:var(--ink-soft);font:12px/1.5 var(--font-ui);margin:0}@media (max-width:700px){.scenario-page{padding:20px 16px calc(112px + env(safe-area-inset-bottom))}.scenario-page .project-level-page{padding-bottom:18px}.interaction-path{gap:6px;margin-top:12px}.interaction-path span{padding:6px 8px;font-size:11px}.interaction-path i{flex-basis:100%}.scenario-design{grid-template-columns:1fr;gap:12px}.scenario-design>.experiment-kicker,.scenario-design>.design-question,.scenario-design>.spec-load,.scenario-design>.level-actions{grid-area:auto/1}.scenario-design>.spec-load{padding:14px}.scenario-page .design-actions .btn-primary{width:100%}.scenario-atelier .workbench-panes{grid-template-columns:1fr}.scenario-atelier .workbench-pane{padding:12px}.scenario-atelier .workbench-pane.active{display:grid}.console-heading{gap:10px;display:grid}.console-reset{justify-self:start}.experiment-topology{grid-template-columns:1fr}.topology-arrow{justify-self:center;transform:rotate(90deg)}.console-controls{grid-template-columns:1fr}.console-run{width:100%}.sim-metrics{grid-template-columns:repeat(2,1fr)}.sim-gate{grid-template-columns:auto 1fr}.sim-gate-numbers{grid-column:2}.sim-gate-invariant{grid-column:1/-1}.sim-event-row{grid-template-columns:48px 1fr}.sim-event-detail{grid-column:2}.sim-before-after{grid-template-columns:1fr}.incident-board-head{display:grid}.incident-verdict{justify-self:start}.incident-board-grid,.divergence-events{grid-template-columns:1fr}.divergence-events>span{justify-self:center;transform:rotate(90deg)}.sim-request-id{display:none}.sim-run-buttons{display:grid}.sim-run-buttons button{width:100%;min-height:48px}}@media (min-width:701px){.scenario-atelier .workbench-pane{display:grid}}@media (min-width:900px){.project-map{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-panes{grid-template-columns:1.1fr 1.4fr 1fr;align-items:start}.workbench-pane{display:none}.workbench-panes.pane-spec .pane-spec,.workbench-panes.pane-tests .pane-tests{grid-area:1/1;display:grid}.workbench-panes .pane-code{grid-area:1/2;display:grid}.workbench-panes .pane-output{grid-area:1/3;display:grid}.workbench-tab{display:none}.project-level-row{padding:11px 13px}}@media (max-width:700px){.practice-lab-header{gap:8px;padding-bottom:8px;overflow-x:auto}.practice-lab-crumb,.practice-lab-duration{display:none}.practice-lab-title{font-size:13px}.practice-lab-actions{gap:4px}.compact-action{min-height:34px;padding:6px 8px;font-size:11px}.practice-lab-actions .compact-action:first-child{display:none}.project-level-tabs{gap:14px}.project-card{border-radius:16px;padding:16px}.project-level-row{grid-template-columns:auto 1fr auto}.project-level-time{display:none}.project-level-rows.brief .project-level-status{grid-column:3}.ai-systems-page .project-card-head .lab-kicker{max-width:calc(100% - 88px)}.ai-systems-page .project-level-rows.brief .project-level-row{grid-template-columns:auto 1fr auto}.ai-systems-page .project-level-rows.brief .project-level-status{grid-area:1/3}.ai-systems-page .project-level-rows.brief .project-level-chevron{display:none}.level-actions.sticky{bottom:calc(var(--mobile-tabbar-height) + 10px);position:sticky}.level-actions.sticky .btn-primary{border-radius:16px;width:100%;min-height:52px}.ai-hub-grid{grid-template-columns:1fr}.track-question-row{grid-template-columns:auto 1fr}.track-q-status{grid-column:2;justify-self:start}}.ai-hub-card-featured{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ai-hub-card-featured{border-color:color-mix(in srgb, var(--accent) 42%, var(--line))}}.ai-hub-card-featured{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.ai-hub-card-featured{background:color-mix(in srgb, var(--accent-soft) 42%, var(--paper-raised))}}.build-everything-page{max-width:1100px}.build-everything-featured{border:1px solid var(--accent);background:var(--accent-soft);border-radius:16px;margin-top:24px;padding:16px 18px}.build-everything-progress-strip{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:16px;margin-top:16px;padding:13px 15px;display:grid}.build-everything-progress-strip>div:first-child{gap:3px;min-width:max-content;display:grid}.build-everything-progress-strip b{font:700 13px var(--font-ui)}.build-everything-progress-meter{background:var(--paper-sunken);border-radius:999px;height:8px;overflow:hidden}.build-everything-progress-meter span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-med);display:block}.build-everything-featured-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.build-everything-featured-item{align-items:center;gap:8px;font-size:13px;display:inline-flex}.build-everything-featured-item a{color:var(--ink);text-decoration:none}.build-everything-featured-item a:hover{color:var(--accent)}.build-everything-arrow{color:var(--accent);font-weight:700}.build-everything-tier-list{gap:34px;margin-top:34px;display:grid}.build-everything-tier{gap:14px;display:grid}.build-everything-tier-head,.build-everything-section-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.build-everything-tier-head .chain-note,.build-everything-section-head .chain-note{max-width:680px;margin:6px 0 0}.build-everything-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.build-everything-card{border:1px solid var(--line);background:var(--paper-raised);min-width:0;color:var(--ink);transition:border-color var(--dur-fast), box-shadow var(--dur-fast), transform var(--dur-fast);border-radius:14px;gap:7px;padding:15px;text-decoration:none;display:grid}.build-everything-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.build-everything-card.complete{border-color:var(--success-line);background:var(--success-soft)}@supports (color:color-mix(in lab, red, red)){.build-everything-card.complete{background:color-mix(in srgb, var(--success-soft) 35%, var(--paper-raised))}}.build-everything-card.started{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.build-everything-card.started{border-color:color-mix(in srgb, var(--accent) 42%, var(--line))}}.build-everything-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.build-everything-code{color:var(--accent);font:700 12px var(--font-code);letter-spacing:.04em}.build-everything-lines{color:var(--ink-soft);font:10px var(--font-mono);text-align:right}.build-everything-card>b{font-size:15px;line-height:1.3}.build-everything-cool{color:var(--ink-soft);font-size:12px;line-height:1.35}.build-everything-cool.large{color:var(--accent);margin:-4px 0 8px;font-size:16px;display:block}.build-everything-move{color:var(--ink-soft);font:11px var(--font-ui)}.build-everything-card-foot{border-top:1px solid var(--line);color:var(--accent);font:600 11px var(--font-ui);margin-top:4px;padding-top:8px}.build-everything-rules{margin-top:44px}.build-everything-rule-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.build-everything-rule-grid>div{border:1px solid var(--line);background:var(--paper-raised);border-radius:12px;gap:4px;padding:12px;display:grid}.build-everything-rule-grid b{font-size:13px}.build-everything-rule-grid span{color:var(--ink-soft);font-size:12px;line-height:1.4}.build-everything-project-page{max-width:900px}.build-everything-project-header{border-bottom:1px solid var(--line);padding-bottom:20px}.build-everything-project-kicker{color:var(--ink-soft);font:11px var(--font-ui);flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.build-everything-project-kicker .build-everything-code{background:var(--accent-soft);border-radius:999px;padding:4px 8px}.build-everything-project-meta{grid-template-columns:1.2fr .8fr;gap:12px;margin-top:18px;display:grid}.build-everything-panel{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;padding:16px 18px}.build-everything-panel .narrative{margin:8px 0 0}.build-everything-workspace-cta{border:1px dashed var(--line);background:var(--paper);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:15px 18px;display:flex}.build-everything-workspace-cta.ready{border-style:solid;border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.build-everything-workspace-cta.ready{border-color:color-mix(in srgb, var(--accent) 44%, var(--line))}}.build-everything-workspace-cta.ready{background:var(--accent-soft)}@supports (color:color-mix(in lab, red, red)){.build-everything-workspace-cta.ready{background:color-mix(in srgb, var(--accent-soft) 28%, var(--paper-raised))}}.build-everything-workspace-cta .narrative{max-width:620px;margin:7px 0 0;font-size:13px}.build-everything-workspace-status{color:var(--ink-soft);font:600 12px var(--font-ui);flex:none}.build-everything-workbench-page{max-width:1400px}.build-everything-workbench-meta{color:var(--ink-soft);font:11px var(--font-ui);flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 14px;display:flex}.build-everything-workbench-meta .build-everything-code{background:var(--accent-soft);border-radius:999px;padding:4px 8px}.build-everything-complete-pill{border:1px solid var(--success-line);background:var(--success-soft);color:var(--viz-settled);border-radius:999px;padding:4px 8px;font-weight:700}.build-everything-artifact-link{min-height:28px;padding:4px 9px;font-size:11px}.build-everything-optional-card{border:1px dashed var(--line);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding:13px 14px;display:flex}.build-everything-optional-card p{color:var(--ink-soft);font:12px/1.45 var(--font-ui);margin:5px 0 0}.build-everything-optional-card .btn-ghost{flex:none;min-height:36px;padding:7px 12px;font-size:12px}.build-everything-not-ready{border:1px dashed var(--line);background:var(--paper-raised);border-radius:16px;max-width:680px;margin:28px auto;padding:26px}.build-everything-not-ready .lab-title{margin:8px 0}.build-everything-not-ready .btn-primary{margin-top:16px;display:inline-flex}.build-everything-dependencies{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.build-everything-dependencies+.chain-note{margin-top:12px}.build-everything-steps-section{margin-top:28px}.build-everything-steps{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.build-everything-step{border:1px solid var(--line);background:var(--paper-raised);border-radius:14px;grid-template-columns:34px 1fr;gap:13px;padding:14px;display:grid}.build-everything-step-number{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);font:700 13px var(--font-code);border-radius:50%;place-items:center;display:grid}.build-everything-step-main{min-width:0}.build-everything-step-kind{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.build-everything-step h2{font:700 16px var(--font-ui);margin:3px 0 4px}.build-everything-step p{color:var(--ink);margin:0;font-size:14px;line-height:1.5}.build-everything-deliverable{color:var(--ink-soft);margin-top:8px;font-size:12px;display:block}.build-everything-step.break{border-color:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.build-everything-step.break{border-color:color-mix(in srgb, var(--viz-pruned) 32%, var(--line))}}.build-everything-step.ship{border-color:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.build-everything-step.ship{border-color:color-mix(in srgb, var(--viz-settled) 38%, var(--line))}}.build-everything-verification{margin-top:18px}.build-everything-experiment,.build-everything-artifact{border-left:3px solid var(--accent);background:var(--accent-soft);margin-top:14px;padding:12px 14px}.build-everything-artifact{border-left-color:var(--viz-settled);background:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.build-everything-artifact{background:color-mix(in srgb, var(--viz-settled) 10%, var(--paper-raised))}}.build-everything-experiment p,.build-everything-artifact p{margin:5px 0 0;font-size:13px;line-height:1.45}.build-everything-project-nav{justify-content:space-between;align-items:center;gap:12px;margin-top:22px;display:flex}.build-everything-project-nav .btn-primary,.build-everything-project-nav .btn-ghost{text-overflow:ellipsis;white-space:nowrap;max-width:42%;overflow:hidden}.build-everything-source{color:var(--ink-soft);font:11px var(--font-mono);margin-top:22px;line-height:1.5}@media (max-width:900px){.build-everything-grid,.build-everything-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.build-everything-page,.build-everything-project-page{padding-left:16px;padding-right:16px}.build-everything-progress-strip{grid-template-columns:1fr;gap:9px}.build-everything-featured-row{gap:6px;display:grid}.build-everything-arrow{display:none}.build-everything-featured-item{justify-content:space-between;display:flex}.build-everything-grid{grid-template-columns:1fr}.build-everything-tier-head,.build-everything-section-head{align-items:start}.build-everything-project-meta{grid-template-columns:1fr}.build-everything-workspace-cta{flex-direction:column;align-items:stretch}.build-everything-workspace-cta .btn-primary{width:100%;min-height:48px}.build-everything-optional-card{flex-direction:column;align-items:stretch}.build-everything-optional-card .btn-ghost{width:100%}.build-everything-rule-grid{grid-template-columns:1fr}.build-everything-project-nav{flex-wrap:wrap;align-items:stretch}.build-everything-project-nav .btn-primary,.build-everything-project-nav .btn-ghost{flex:100%;max-width:100%}.build-everything-project-nav .chain-note{order:-1;width:100%}}@media (min-width:1100px){.build-everything-workbench-page{width:min(100% - 48px,1680px);max-width:1680px;padding:24px 0 calc(56px + env(safe-area-inset-bottom))}.build-everything-workbench{min-width:0}.build-everything-workbench .practice-lab-header{z-index:60;background:var(--paper);min-height:52px;margin:0 -10px;padding:8px 10px;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.build-everything-workbench .practice-lab-header{background:color-mix(in srgb, var(--paper) 94%, transparent)}}.build-everything-workbench .practice-lab-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.build-everything-workbench .practice-lab-actions .compact-action{width:auto}.build-everything-workbench .workbench-tabs{z-index:50;background:var(--paper);min-height:44px;padding:0 8px;position:sticky;top:52px}.build-everything-workbench .workbench-tab{align-items:center;min-height:44px;display:inline-flex}.build-everything-workbench .workbench-panes{border:1px solid var(--line);background:var(--paper-raised);min-height:calc(100dvh - 190px);box-shadow:var(--shadow-raised);border-radius:14px;grid-template-columns:minmax(280px,.9fr) minmax(520px,1.65fr) minmax(300px,.95fr);align-items:stretch;gap:0;overflow:hidden}.build-everything-workbench .workbench-pane{background:var(--paper-raised);align-content:start;min-width:0;min-height:calc(100dvh - 190px);padding:20px;overflow:auto}.build-everything-workbench .workbench-panes.pane-spec .pane-spec,.build-everything-workbench .workbench-panes.pane-tests .pane-tests{grid-area:1/1;display:grid}.build-everything-workbench .workbench-panes .pane-code,.build-everything-workbench .workbench-panes .pane-output{grid-row:1;display:grid}.build-everything-workbench .workbench-panes .pane-code{background:var(--paper);border-right:1px solid var(--line);border-left:1px solid var(--line);grid-column:2;gap:0;padding:0}.build-everything-workbench .workbench-panes .pane-output{grid-column:3}.build-everything-editor-shell{grid-template-rows:auto 1fr;min-height:0;display:grid}.build-everything-editor-topbar{border-bottom:1px solid var(--line);background:var(--paper-raised);min-height:40px;color:var(--ink-soft);font:11px var(--font-mono);justify-content:space-between;align-items:center;gap:12px;padding:0 16px;display:flex}.build-everything-editor-topbar span:first-child{color:var(--ink);font-weight:700}.build-everything-editor-body{grid-template-columns:48px minmax(0,1fr);min-height:0;display:grid}.build-everything-line-numbers{border-right:1px solid var(--line);background:var(--paper-raised);color:var(--ink-soft);font:13px/1.6 var(--font-mono);text-align:right;-webkit-user-select:none;user-select:none;padding:22px 10px 22px 0;overflow:hidden}.build-everything-line-numbers span{display:block}.build-everything-workbench .pane-code .project-editor{background:var(--paper);height:calc(100dvh - 290px);min-height:520px;box-shadow:none;resize:none;tab-size:4;border:0;border-radius:0;padding:22px 24px}.build-everything-workbench .pane-code .code-tools{border-top:1px solid var(--line);background:var(--paper-raised);align-items:center;min-height:52px;padding:8px 14px}.build-everything-workbench .pane-output{background:var(--paper-raised)}@supports (color:color-mix(in lab, red, red)){.build-everything-workbench .pane-output{background:color-mix(in srgb, var(--paper-raised) 88%, var(--accent-soft))}}.build-everything-workbench .pane-output .test-list{min-width:0}.build-everything-workbench .pane-output .test-row{flex-wrap:wrap;align-items:flex-start;padding:12px}.build-everything-workbench .pane-output .test-row code{overflow-wrap:anywhere;min-width:0;max-width:100%}.build-everything-workbench .pane-output .test-expect{text-align:left;overflow-wrap:anywhere;width:100%;margin:0 0 0 24px}.build-everything-workbench .level-actions.sticky{border:1px solid var(--line);background:var(--paper-raised);border-radius:12px;padding:10px 12px;bottom:18px}@supports (color:color-mix(in lab, red, red)){.build-everything-workbench .level-actions.sticky{background:color-mix(in srgb, var(--paper-raised) 94%, transparent)}}.build-everything-workbench .level-actions.sticky{box-shadow:var(--shadow-raised);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.build-everything-workbench .level-actions.sticky .run-tests{width:auto;min-width:230px}.build-everything-workbench .hint-ladder,.build-everything-workbench .solution-link,.build-everything-workbench .confirm-card,.build-everything-workbench .solution-block{max-width:900px;margin-left:auto;margin-right:auto}}@media (min-width:1100px) and (max-height:800px){.build-everything-workbench .workbench-pane,.build-everything-workbench .workbench-panes{min-height:570px}.build-everything-workbench .pane-code .project-editor{height:500px;min-height:500px}}@media (max-width:1099px){.build-everything-editor-topbar{border-bottom:1px solid var(--line);min-height:36px;color:var(--ink-soft);font:10px var(--font-mono);justify-content:space-between;align-items:center;gap:8px;padding:0 10px;display:flex}.build-everything-editor-topbar span:first-child{color:var(--ink);font-weight:700}.build-everything-editor-body{grid-template-columns:34px minmax(0,1fr);display:grid}.build-everything-line-numbers{border-right:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:12px/1.6 var(--font-mono);text-align:right;-webkit-user-select:none;user-select:none;padding:16px 7px 16px 0;overflow:hidden}.build-everything-line-numbers span{display:block}.build-everything-editor-body .project-editor{min-height:300px;box-shadow:none;border:0;border-radius:0}}.ghost-app{max-width:660px;min-height:70vh;margin:0 auto;padding:clamp(16px,4vw,40px)}.ghost-center{flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:55vh;display:flex}.ghost-face{justify-content:center;align-items:center;display:inline-flex;position:relative}.ghost-face svg{width:100%;height:100%;overflow:visible}.ghost-body{fill:var(--ink)}.ghost-eye{fill:var(--paper-raised);transform-origin:50%;animation:4.2s infinite ghost-blink}@keyframes ghost-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.08)}}.ghost-ring{border:1.5px solid var(--accent);opacity:0;pointer-events:none;border-radius:50%;animation:1.8s ease-out infinite ghost-ping;position:absolute;inset:-12%}.ghost-ring-2{animation-delay:.9s}@keyframes ghost-ping{0%{opacity:.75;transform:scale(.72)}to{opacity:0;transform:scale(1.28)}}.ghost-intro{text-align:center;flex-direction:column;align-items:center;gap:14px;padding-top:clamp(10px,5vw,48px);display:flex}.ghost-tagline{color:var(--ink-soft);margin:0;font-size:15px}.ghost-tagline.mono{font-family:var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em}.ghost-note{max-width:420px;color:var(--ink-soft);margin:0;font-size:12.5px;line-height:1.55}.ghost-summon,.ghost-send{appearance:none;cursor:pointer;background:var(--accent);color:var(--on-accent);font:800 13px/1 var(--font-ui);letter-spacing:.22em;text-indent:.22em;border:0;border-radius:999px;padding:15px 26px;transition:transform .12s,filter .12s}.ghost-summon:hover,.ghost-send:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ghost-summon:active,.ghost-send:active:not(:disabled){transform:translateY(0)}.ghost-send{border-radius:10px;padding:12px 18px}.ghost-send:disabled{opacity:.45;cursor:default;filter:none;transform:none}.ghost-send.stop{background:var(--ink);color:var(--paper-raised)}.ghost-progress{border:1px solid var(--line);background:var(--paper-raised);border-radius:999px;width:min(430px,100%);height:10px;overflow:hidden}.ghost-progress-fill{background:repeating-linear-gradient(-45deg, var(--accent) 0 8px, var(--accent) 8px 16px);height:100%}@supports (color:color-mix(in lab, red, red)){.ghost-progress-fill{background:repeating-linear-gradient(-45deg, var(--accent) 0 8px, color-mix(in srgb, var(--accent) 72%, transparent) 8px 16px)}}.ghost-progress-fill{transition:width .25s}.ghost-dl-meta{letter-spacing:.08em;color:var(--ink);margin:10px 0 0;font-size:11.5px;font-weight:700}.ghost-dl-sub{letter-spacing:.06em;color:var(--ink-soft);min-height:13px;margin:3px 0 0;font-size:10px}.ghost-cancel{appearance:none;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink-soft);font:800 10px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.18em;text-indent:.18em;cursor:pointer;border-radius:999px;align-items:center;gap:6px;margin-top:14px;padding:9px 16px;transition:color .12s,border-color .12s,transform .12s;display:inline-flex}.ghost-cancel:hover{color:#c0392b;border-color:#c0392b;transform:translateY(-1px)}.ghost-cancel:active{transform:scale(.95)}.ghost-error{color:#c0392b;max-width:420px;margin:4px 0 0;font-size:12.5px}.ghost-chat{flex-direction:column;gap:0;min-height:68vh;display:flex}@keyframes ghost-led-pulse{50%{opacity:.35}}.ghost-minibtn{appearance:none;border:1px solid var(--line);color:var(--ink-soft);font:700 9.5px/1 var(--font-ui);letter-spacing:.16em;cursor:pointer;background:0 0;border-radius:7px;flex:none;padding:6px 9px}.ghost-minibtn:hover{color:var(--ink);border-color:var(--ink-soft)}.ghost-messages{flex-direction:column;flex:1;gap:14px;padding:20px 2px 8px;display:flex;overflow-y:auto}.ghost-empty{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 0 6px;display:flex}.ghost-empty p{font-family:var(--font-mono,ui-monospace, Menlo, monospace);color:var(--ink-soft);letter-spacing:.06em;margin:0 0 4px;font-size:13px}.ghost-chip{appearance:none;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font:500 12.5px/1.4 var(--font-ui);cursor:pointer;text-align:left;border-radius:999px;padding:9px 13px;transition:border-color .12s,transform .12s}.ghost-chip:hover{border-color:var(--accent);transform:translateY(-1px)}.ghost-msg{flex-direction:column;gap:5px;max-width:88%;display:flex}.ghost-msg p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.62}.ghost-msg.from-user{align-self:flex-end;align-items:flex-end}.ghost-msg.from-user p,.ghost-msg.from-ghost p{color:var(--ink)}.ghost-cursor{background:var(--accent);vertical-align:-2px;width:8px;height:14px;margin-left:3px;animation:.9s step-end infinite ghost-cursor-blink;display:inline-block}@keyframes ghost-cursor-blink{50%{opacity:0}}.ghost-composer{background:linear-gradient(to top, var(--paper) 78%, transparent);flex-direction:column;gap:9px;padding:10px 0 4px;display:flex;position:sticky;bottom:0}.ghost-inputrow{gap:8px;display:flex}.ghost-input{border:1px solid var(--line);background:var(--paper-raised);min-width:0;color:var(--ink);font:500 14px/1.4 var(--font-ui);border-radius:12px;outline:none;flex:1;padding:13px 15px;transition:border-color .12s}.ghost-input:focus{border-color:var(--accent)}.ghost-input::placeholder{color:var(--ink-soft)}@media (max-width:520px){.ghost-msg{max-width:94%}}.ghost-picker{grid-template-columns:repeat(3,1fr);gap:8px;width:min(430px,100%);margin-top:4px;display:grid}.ghost-model{appearance:none;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;gap:3px;padding:11px 10px;transition:border-color .12s,transform .12s;display:flex}.ghost-model:hover{transform:translateY(-1px)}.ghost-model.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ghost-model-name{font:800 12px/1.2 var(--font-ui)}.ghost-model-meta{font:700 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.12em;color:var(--on-accent);background:var(--accent);border-radius:5px;width:fit-content;padding:3px 5px}.ghost-model:not(.active) .ghost-model-meta{color:var(--ink-soft);border:1px solid var(--line);background:0 0}.ghost-model-blurb{color:var(--ink-soft);font-size:10px;line-height:1.45}@media (max-width:520px){.ghost-picker{grid-template-columns:1fr}}.ghost-brain-row{border:1px solid var(--line);background:var(--paper);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.ghost-brain-row.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ghost-brain-info{flex-direction:column;gap:2px;min-width:0;display:flex}.ghost-brain-name{font:800 12.5px/1.2 var(--font-ui);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ghost-brain-meta{font:600 9px/1.3 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.1em;color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ghost-brain-actions{flex:none;align-items:center;gap:6px;display:flex}.ghost-brain-state{font:600 10px/1 var(--font-mono,ui-monospace, Menlo, monospace);color:var(--ink-soft);letter-spacing:.08em}.ghost-minibtn.danger{color:#c0392b;border-color:#c0392b}@supports (color:color-mix(in lab, red, red)){.ghost-minibtn.danger{border-color:color-mix(in srgb, #c0392b 35%, var(--line))}}.ghost-minibtn:disabled{opacity:.4;cursor:default}.ghost-brain-bar{background:var(--line);border-radius:999px;width:72px;height:5px;display:inline-block;overflow:hidden}.ghost-brain-bar>span{background:var(--accent);height:100%;transition:width .25s;display:block}.ghost-brains-foot{font:600 10px/1.3 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em;color:var(--ink-soft);justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}.ghost-app{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.ghost-kicker{font:700 10px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.3em;color:var(--accent)}.ghost-hero-title{letter-spacing:-.01em;color:var(--ink);text-align:left;max-width:22ch;margin:2px 0 0;font-size:clamp(24px,6vw,34px);font-weight:800;line-height:1.15}.ghost-hero-sub{color:var(--ink-soft);text-align:left;max-width:46ch;margin:8px 0 4px;font-size:14px;line-height:1.6}.ghost-intro{text-align:left;align-items:stretch;gap:12px}.ghost-intro .ghost-face{align-self:center;margin:4px 0 2px}.ghost-intro .ghost-picker{width:100%}.ghost-intro .ghost-note,.ghost-intro .ghost-summon,.ghost-intro .ghost-error{align-self:center}.ghost-chat{flex-direction:column;flex:1;min-height:0;display:flex}.ghost-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:18px 2px 10px;scroll-padding-bottom:12px;overflow-y:auto}.ghost-msg{align-items:flex-end;gap:8px;flex-direction:row!important;max-width:92%!important}.ghost-msg.from-user{flex-direction:row-reverse!important}.ghost-msg-body{flex-direction:column;gap:4px;min-width:0;display:flex}.ghost-msg.from-ghost .ghost-msg-body{background:var(--paper-raised);border-radius:16px;padding:11px 14px}.ghost-msg.from-user .ghost-msg-body{background:var(--accent-soft);border-radius:16px;align-items:flex-end;padding:11px 14px}.ghost-composer{padding:10px 0 calc(8px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--paper) 72%, transparent);gap:10px;position:sticky;bottom:0}.ghost-inputrow{background:var(--paper-raised);border:1px solid var(--line);border-radius:16px;align-items:center;padding:6px 6px 6px 4px}.ghost-inputrow:focus-within{border-color:var(--accent)}.ghost-input{background:0 0!important;border:0!important;border-radius:12px!important;padding:11px 12px!important}.ghost-send{letter-spacing:.14em;border-radius:13px!important;padding:12px 16px!important}@media (min-width:700px){.ghost-app{max-width:720px;min-height:unset;border:1px solid var(--line);height:calc(100dvh - 120px);padding:0 22px calc(14px + env(safe-area-inset-bottom));border-radius:20px;margin:24px auto;overflow:hidden}.ghost-intro{padding:clamp(18px,3vw,28px) 4px;overflow-y:auto}}.ghost-section-label{font:700 9.5px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.26em;color:var(--ink-soft);margin:10px 0 0}.ghost-model{border-radius:14px;gap:4px;padding:13px 14px}.ghost-summon{width:100%;margin-top:2px}.ghost-storage-link{appearance:none;color:var(--ink-soft);font:600 11px/1.3 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.04em;cursor:pointer;text-align:left;background:0 0;border:0;padding:4px 0}.ghost-storage-link:hover{color:var(--accent)}.ghost-sheet-backdrop{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000006b;justify-content:center;align-items:flex-end;animation:.18s ghost-fade;display:flex;position:fixed;inset:0}@keyframes ghost-fade{0%{opacity:0}}.ghost-sheet{overscroll-behavior:contain;background:var(--paper);border:1px solid var(--line);width:min(560px,100%);max-height:82dvh;padding:10px 18px calc(18px + env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;flex-direction:column;gap:10px;animation:.22s cubic-bezier(.2,.9,.25,1) ghost-rise;display:flex;overflow-y:auto}@keyframes ghost-rise{0%{opacity:.4;transform:translateY(40px)}}.ghost-sheet-handle{background:var(--line);border-radius:999px;align-self:center;width:40px;height:4px;margin:2px 0 4px}.ghost-sheet-title{font:700 10px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.28em;color:var(--ink-soft);margin:0}.ghost-sheet .ghost-brain-row.legacy{opacity:.85;border-style:dashed}.ghost-chat{position:relative}.ghost-msg-body p{margin:0}.ghost-sheet-foot-actions{gap:8px;display:inline-flex}.ghost-msg>.ghost-face{flex:none;align-self:flex-end}.ghost-face svg,.ghost-face{contain:content}.ghost-msg-body{flex:auto;max-width:100%}.ghost-msg.from-user .ghost-msg-body{flex:0 auto}.ghost-ring{opacity:0!important;border-width:1px!important;animation:2.4s ease-out infinite ghost-ping-soft!important}@keyframes ghost-ping-soft{0%{opacity:.32;transform:scale(.8)}to{opacity:0;transform:scale(1.25)}}.ghost-chatbar{justify-content:space-between;align-items:center;gap:10px;padding:6px 0 10px;display:flex}.ghost-chatbar-title{font:600 11px/1.3 var(--font-mono,ui-monospace, Menlo, monospace);color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.04em;max-width:46%;overflow:hidden}.ghost-chatbar-actions{align-items:center;gap:7px;display:inline-flex}.ghost-minibtn.accent{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.ghost-minibtn.accent:hover{filter:brightness(1.06)}.ghost-thinking-chip{background:var(--paper-raised);border:1px solid var(--line);color:var(--ink-soft);font:600 11px/1 var(--font-ui);border-radius:999px;align-items:center;gap:7px;padding:7px 12px;animation:.18s both ghost-rise-in;display:inline-flex;position:static;align-self:center!important}@keyframes ghost-rise-in{0%{opacity:0;transform:translateY(5px)}}.ghost-msg{animation:.17s both ghost-msg-in}@keyframes ghost-msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.ghost-msg,.ghost-thinking-chip,.ghost-sheet,.ghost-sheet-backdrop{animation:none!important}}.ghost-messages{scroll-behavior:smooth;padding-top:14px}.ghost-input{font-size:16px}.ghost-composer .ghost-error{margin:0 4px 2px}.ghost-empty{justify-content:center;min-height:32vh}.ghost-hist-open{text-align:left;cursor:pointer;min-width:0;font-family:var(--font-ui);background:0 0;border:0;flex-direction:column;flex:auto;gap:3px;padding:0;display:flex}.ghost-hist-open:hover .ghost-brain-name{color:var(--accent)}.ghost-inputrow{transition:border-color .15s,box-shadow .15s;box-shadow:0 3px 16px #00000012}.ghost-send,.ghost-minibtn{transition:transform .13s,filter .13s,opacity .13s,color .13s,border-color .13s}.ghost-send:active:not(:disabled),.ghost-minibtn:active:not(:disabled){transform:scale(.96)}.ghost-msg .ghost-face{flex:none;align-self:flex-end;min-width:22px;width:22px!important;height:22px!important}.ghost-face svg{display:block}.ghost-messages{overscroll-behavior:contain;touch-action:pan-y;scroll-behavior:auto;overflow-anchor:none}.ghost-jump{z-index:5;appearance:none;border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font:700 11px/1 var(--font-ui);cursor:pointer;border-radius:999px;padding:9px 14px;animation:.16s both ghost-rise-in;position:absolute;bottom:86px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0000001f}.ghost-jump:hover{border-color:var(--accent);color:var(--accent)}.ghost-messages{scroll-behavior:auto!important}.ghost-jump{margin-bottom:2px}@media (max-width:700px){.ghost-app{height:100%;min-height:0;padding-bottom:10px}.ghost-intro{overflow-y:auto}.ghost-jump{bottom:calc(84px + env(safe-area-inset-bottom))}}@media (min-width:700px){.ghost-intro>.ghost-section-label{margin-bottom:10px}.ghost-picker{gap:14px}.ghost-model{background:var(--paper);border-color:var(--line);flex-direction:column;justify-content:flex-start;min-height:128px;padding:16px 18px 15px;display:flex;position:relative;overflow:hidden}.ghost-model:before{content:"";background:0 0;width:3px;transition:background .16s;position:absolute;top:0;bottom:0;left:0}.ghost-model:hover{background:var(--paper-raised);transform:translateY(-1px)}.ghost-model.active{background:var(--paper-raised);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ghost-model.active{border-color:color-mix(in srgb, var(--accent) 45%, var(--line))}}.ghost-model.active{box-shadow:none}.ghost-model.active:before{background:var(--accent)}.ghost-model-name{letter-spacing:.015em;font-size:14px}.ghost-model-meta{letter-spacing:.06em;font-size:10px}.ghost-model-blurb{opacity:.78;max-width:30ch;font-size:10.5px;line-height:1.5}.ghost-summon{width:100%}}.ghost-model{position:relative}.ghost-card-del{appearance:none;border:1px solid #c0392b;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:9px;right:9px}@supports (color:color-mix(in lab, red, red)){.ghost-card-del{border:1px solid color-mix(in srgb, #c0392b 40%, var(--line))}}.ghost-card-del{color:#c0392b;cursor:pointer;background:0 0;font-size:11px;line-height:1;transition:transform .12s,background .12s}.ghost-card-del:hover{background:#c0392b1a;transform:scale(1.06)}.ghost-card-del:active{transform:scale(.94)}.osc-app{--osc-hi:var(--ink);touch-action:pan-y}.osc-pads .osc-pad,.osc-grid-wrap,.osc-cell{touch-action:manipulation}.osc-app[data-face=dot]{--osc-hi:var(--ink)}.osc-app[data-face=moss]{--osc-hi:#2f8f5b}.osc-app[data-face=ember]{--osc-hi:#e8710a}.osc-app[data-face=ultra]{--osc-hi:#6c5ce7}.osc-app{flex-direction:column;gap:14px;width:100%;max-width:560px;min-height:70vh;margin:0 auto;padding:clamp(14px,3vw,32px);display:flex}.osc-scroll{width:100%}@media (max-width:700px){body.app-mode-active .osc-scroll{top:var(--mobile-header-height);left:0;right:0;bottom:env(safe-area-inset-bottom);-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding-bottom:16px;position:fixed;overflow-y:auto}}.osc-head{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:baseline;padding-bottom:8px;display:flex}.osc-brand{font:800 26px var(--font-mono);letter-spacing:-.02em}.osc-sub{font:700 9px var(--font-ui);letter-spacing:.18em;color:var(--ink-soft)}.osc-transport{align-items:center;gap:12px;display:flex}.osc-play{border:2px solid var(--ink);background:var(--paper-raised);cursor:pointer;border-radius:var(--radius);width:52px;height:52px;transition:background var(--dur-fast), transform var(--dur-fast);font-size:18px}.osc-play:active{transform:scale(.94)}.osc-play.on{background:var(--osc-hi);color:var(--on-accent,#fff);border-color:var(--osc-hi)}.osc-pattern-leds{gap:6px;display:flex}.osc-led{border:1.5px solid var(--line);width:30px;height:30px;font:800 11px var(--font-mono);color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:6px}.osc-led.on{background:var(--ink);color:var(--paper-raised);border-color:var(--ink)}.osc-bpm{align-items:center;gap:6px;margin-left:auto;display:flex}.osc-readout{font:800 22px "Doto", var(--font-mono);text-align:center;letter-spacing:.04em;min-width:64px}.osc-nudge{border:1.5px solid var(--line);background:var(--paper-raised);width:28px;height:28px;font:700 14px var(--font-mono);cursor:pointer;border-radius:6px}.osc-grid-wrap{border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper-raised);padding:8px}.osc-grid{flex-direction:column;gap:4px;min-width:min(420px,100%);display:flex}.osc-cell{touch-action:manipulation;-webkit-user-select:none;user-select:none}.osc-row{grid-template-columns:34px repeat(16,1fr);align-items:center;gap:4px;display:grid}.osc-note{font:600 9px var(--font-mono);color:var(--ink-soft);text-align:right;padding-right:6px}.osc-cell{aspect-ratio:1;background:var(--line);opacity:.45;cursor:pointer;border:none;border-radius:3px;transition:opacity 90ms,background 90ms,transform 60ms}.osc-cell[data-bar="1"]{opacity:.62}.osc-cell:hover{opacity:.85}.osc-cell:active{transform:scale(1.25)}.osc-cell[data-on="1"]{background:var(--osc-hi);opacity:.85}.osc-cell[data-accent="1"]{background:var(--osc-hi);opacity:1;box-shadow:0 0 0 2px var(--paper-raised) inset, 0 0 10px var(--osc-hi)}@supports (color:color-mix(in lab, red, red)){.osc-cell[data-accent="1"]{box-shadow:0 0 0 2px var(--paper-raised) inset, 0 0 10px color-mix(in srgb, var(--osc-hi) 60%, transparent)}}.osc-cell[data-head="1"]{outline:2px solid var(--ink);outline-offset:1px;opacity:1}.osc-cell[data-on="1"][data-head="1"]{filter:brightness(1.35)}.osc-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px;display:grid}.osc-wave,.osc-rowbtns,.osc-faces{grid-column:1/-1;min-width:0}.osc-wave>*,.osc-faces>*,.osc-rowbtns>*{min-width:0}.osc-wave{border:1.5px solid var(--ink);border-radius:var(--radius);display:flex;overflow:hidden}.osc-seg{border:none;border-right:1.5px solid var(--line);font:700 11px var(--font-mono);letter-spacing:.08em;cursor:pointer;color:var(--ink-soft);background:0 0;flex:1;padding:9px 0}.osc-seg:last-child{border-right:none}.osc-seg.on{background:var(--ink);color:var(--paper-raised)}.osc-knob{align-items:center;gap:10px;min-width:0;display:flex}.osc-knob span{font:700 9px var(--font-ui);letter-spacing:.14em;color:var(--ink-soft);flex:none;width:52px}.osc-knob input[type=range]{min-width:0;accent-color:var(--osc-hi);flex:1;height:22px}.osc-minibtn{border:1.5px solid var(--line);background:var(--paper-raised);font:700 10px var(--font-ui);letter-spacing:.1em;cursor:pointer;color:var(--ink-soft);border-radius:6px;align-self:flex-start;padding:7px 12px}.osc-minibtn:hover{border-color:var(--ink);color:var(--ink)}.osc-hint{font:600 9px var(--font-ui);letter-spacing:.13em;color:var(--ink-soft);text-align:center;margin-top:4px}.osc-mode{border:2px solid var(--ink);border-radius:var(--radius);display:flex;overflow:hidden}.osc-mode-seg{font:800 11px var(--font-ui);letter-spacing:.1em;cursor:pointer;color:var(--ink-soft);background:0 0;border:none;flex:1;padding:10px 0}.osc-mode-seg+.osc-mode-seg{border-left:2px solid var(--ink)}.osc-mode-seg.on{background:var(--ink);color:var(--paper-raised)}.osc-pads{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.osc-pad{aspect-ratio:1.35;border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper-raised);font:700 15px "Doto", var(--font-mono);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform 60ms,background 90ms}.osc-pad:active{background:var(--osc-hi,var(--accent));color:#fff;transform:scale(.96)}.osc-vis-box{border:2px solid var(--ink);border-radius:var(--radius);background:var(--paper-raised);padding:8px;position:relative}.osc-vis{width:100%;height:56px;display:block}.osc-vis-label{font:700 8px var(--font-ui);letter-spacing:.16em;color:var(--ink-soft);position:absolute;top:12px;left:14px}@media (max-width:480px){.osc-bpm{flex-direction:column;gap:2px}.osc-readout{min-width:52px;font-size:17px}}@media (max-width:400px){.osc-app{gap:10px;padding:12px}.osc-head{padding-bottom:6px}.osc-brand{font-size:20px}.osc-sub{letter-spacing:.12em}.osc-transport{flex-wrap:wrap;row-gap:8px}.osc-play{width:46px;height:46px;font-size:15px}.osc-led{width:26px;height:26px;font-size:10px}.osc-bpm{flex-direction:column;gap:0;margin-left:auto}.osc-readout{min-width:48px;font-size:16px}.osc-nudge{width:24px;height:24px;font-size:12px}.osc-grid-wrap{padding:7px}.osc-grid{gap:3px}.osc-row{grid-template-columns:28px repeat(16,1fr);gap:3px}.osc-note{padding-right:3px;font-size:8px}.osc-cell{border-radius:2px}.osc-seg{padding:8px 0;font-size:10px}.osc-faces{flex-wrap:wrap}.osc-face-chip{padding:7px 0}.osc-knob span{width:44px;font-size:8px}}.osc-rowbtns{flex-wrap:wrap;gap:8px;display:flex}.osc-rowbtns .osc-minibtn{text-align:center;white-space:nowrap;flex:auto}@media (max-width:400px){.osc-mode-seg{letter-spacing:.06em;padding:9px 0;font-size:10px}.osc-pads{gap:6px}.osc-pad{border-radius:9px;font-size:12px}.osc-vis-box{padding:6px}.osc-vis{height:50px}.osc-vis-label{font-size:7px;top:9px;left:11px}}@media (max-width:359px){.osc-note{display:none}.osc-row{grid-template-columns:repeat(16,1fr)}}@media (max-width:340px){.osc-led{width:22px;height:22px;font-size:9px}.osc-pads{gap:5px}.osc-pad{font-size:10px}}@media (max-height:740px){.osc-app{gap:9px}.osc-hint{display:none}}@media (max-height:680px){.osc-app{gap:8px;padding:12px}.osc-head{padding-bottom:5px}.osc-sub{display:none}.osc-brand{font-size:19px}.osc-play{width:44px;height:44px;font-size:14px}.osc-led{width:25px;height:25px}.osc-readout{font-size:15px}.osc-grid-wrap{padding:6px}.osc-mode-seg{padding:8px 0;font-size:10px}.osc-vis{height:62px}.osc-vis-box{padding:5px}.osc-controls{gap:8px}.osc-knob input[type=range]{height:18px}.osc-minibtn{padding:6px 10px;font-size:9px}.osc-face-chip{padding:6px 0}.osc-pads{grid-template-columns:repeat(4,1fr)}.osc-pad{aspect-ratio:2.1;font-size:11px}}@media (max-height:600px){.osc-app{gap:6px;padding:10px}.osc-play{width:40px;height:40px}.osc-led{width:22px;height:22px;font-size:9px}.osc-bpm{flex-direction:column;gap:0}.osc-readout{min-width:42px;font-size:13px}.osc-nudge{width:22px;height:22px;font-size:11px}.osc-grid{gap:2px;min-width:300px}.osc-row{grid-template-columns:26px repeat(16,1fr);gap:2px}.osc-note{font-size:7px}.osc-grid-wrap{padding:5px}.osc-wave{display:none!important}.osc-vis{height:48px}.osc-pad{aspect-ratio:2.6;border-radius:8px;font-size:10px}}.osc-rowbtns{gap:8px;display:flex}.osc-minibtn.live{border-color:var(--osc-hi);color:var(--osc-hi)}.osc-faces{align-items:center;gap:6px;display:flex}.osc-faces-label{font:700 9px var(--font-ui);letter-spacing:.14em;color:var(--ink-soft);margin-right:4px}.osc-face-chip{border:1.5px solid var(--line);font:800 10px var(--font-mono);letter-spacing:.08em;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:7px;flex:1;padding:8px 0;position:relative}.osc-face-chip[data-face=dot].on{background:var(--ink);color:var(--paper-raised);border-color:var(--ink)}.osc-face-chip[data-face=moss].on{color:#f2f4ec;background:#2f8f5b;border-color:#2f8f5b}.osc-face-chip[data-face=ember].on{color:#fff;background:#e8710a;border-color:#e8710a}.osc-face-chip[data-face=ultra].on{color:#fff;background:#6c5ce7;border-color:#6c5ce7}:root{--kyma-plate:#0e120f}.kyma-lab{flex-direction:column;gap:20px;display:flex}.kyma-lab-card{border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);background:var(--paper-raised);box-shadow:var(--shadow-raised);padding:18px}.kyma-lab-head h2{margin:0;font-size:20px}.kyma-lab-head span{color:var(--ink-soft);font-size:13px}.kyma-canvas-wrap{border-radius:var(--radius);background:var(--kyma-plate);border:1px solid var(--line);width:100%;position:relative;overflow:hidden}.kyma-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}@media (max-width:560px){.kyma-ctl-grid{grid-template-columns:1fr}}.kyma-ctl b{color:var(--ink)}.kyma-plate-foot,.kyma-rd-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.kyma-freq{color:var(--ink);font-size:14px}.kyma-freq small{color:var(--ink-soft)}.kyma-presets{flex-wrap:wrap;gap:6px;display:flex}.kyma-engine{color:var(--ink-soft);font-size:12px}.kyma-lab-note{margin:12px 0 8px;font-size:14px;line-height:1.55}.kyma-facts{border-top:1px dashed var(--line);color:var(--ink-soft);flex-direction:column;gap:4px;padding-top:8px;font-size:13px;display:flex}.kyma-puzzle-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.kyma-puzzle{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:14px}.kyma-puzzle.done{border-color:var(--success-line)}.kyma-puzzle-head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.kyma-puzzle-head h3{margin:0;font-size:16px}.kyma-prompt{margin:0 0 10px;font-size:14px;line-height:1.55}.kyma-options{flex-direction:column;gap:6px;display:flex}.kyma-option{text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);cursor:pointer;color:var(--ink);transition:border-color var(--dur-fast) var(--ease-standard);padding:8px 12px;font-family:inherit;font-size:14px}.kyma-option:hover{border-color:var(--accent)}.kyma-option.picked{border-color:var(--viz-active);background:var(--accent-soft)}.kyma-option.right{border-color:var(--success-line);background:var(--success-soft)}.kyma-option.wrong{border-color:var(--viz-pruned)}.kyma-numrow{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kyma-num{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);width:140px;color:var(--ink);font:inherit;padding:8px 10px}.kyma-check{align-self:flex-start;margin-top:8px}.kyma-verdict{margin-top:8px;font-size:13px}.kyma-verdict.yes{color:var(--viz-settled)}.kyma-verdict.no{color:var(--viz-pruned)}.kyma-why{color:var(--ink-soft);border-top:1px dashed var(--line);margin:10px 0 0;padding-top:8px;font-size:13.5px;line-height:1.55}.kyma-sim-puzzle{flex-direction:column;gap:8px;display:flex}.kyma-sim-puzzle .kyma-plate,.kyma-sim-puzzle .kyma-rd{max-width:420px}.kyma-lab-card-wide{padding:20px}.kyma-live-chip{font:700 10px var(--font-mono,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--viz-settled);border:1px solid var(--success-line);background:var(--success-soft);border-radius:999px;padding:3px 10px}.kyma-lab-head{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:14px;display:flex}.kyma-lab-body{grid-template-columns:minmax(0,480px) minmax(280px,1fr);align-items:start;gap:22px;display:grid}@media (max-width:980px){.kyma-lab-body{grid-template-columns:1fr}}.kyma-lab-stage{min-width:0}.kyma-lab-rail{flex-direction:column;gap:12px;min-width:0;display:flex}.kyma-how{border:1px dashed var(--line);border-radius:var(--radius);color:var(--ink-soft);flex-direction:column;gap:6px;margin:0;padding:12px 14px;font-size:13.5px;list-style:none;display:flex}.kyma-how b{color:var(--ink)}.kyma-canvas-wrap{border-radius:calc(var(--radius) + 2px);background:var(--kyma-plate);border:1px solid var(--line);width:100%;box-shadow:inset 0 0 60px #00000073, var(--shadow-raised);position:relative;overflow:hidden}.kyma-sand-canvas,.kyma-rd-canvas{cursor:crosshair}.kyma-hud{pointer-events:none;flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px;right:10px}.kyma-chip{font:600 11px var(--font-mono,monospace);letter-spacing:.04em;color:#e8e6d8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0e0c9e;border:1px solid #e8e6d824;border-radius:6px;padding:3px 8px}.kyma-chip-freq{color:#f2d9a0;border-color:#f2d9a040}.kyma-chip-warn{color:#f2b8a0;border-color:#f2b8a04d}.kyma-seg-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.kyma-seg{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);display:inline-flex;overflow:hidden}.kyma-seg button{font:inherit;color:var(--ink-soft);cursor:pointer;border:0;border-right:1px solid var(--line);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;padding:7px 14px;font-size:13px}.kyma-seg button:last-child{border-right:0}.kyma-seg button:hover{color:var(--ink)}.kyma-seg button.on{background:var(--accent-soft);color:var(--ink);font-weight:600}.kyma-presets-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.kyma-ctl-grid{grid-template-columns:repeat(2,1fr);gap:12px 20px;margin-top:14px;display:grid}@media (max-width:560px){.kyma-ctl-grid{grid-template-columns:1fr}}.kyma-ctl{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:13px;display:flex}.kyma-ctl b{color:var(--ink);font-variant-numeric:tabular-nums}.kyma-ctl input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px}.kyma-ctl input[type=range]::-webkit-slider-runnable-track{background:var(--line);border-radius:2px;height:4px}.kyma-ctl input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--paper-raised);border-radius:50%;width:16px;height:16px;margin-top:-6px;box-shadow:0 1px 4px #00000040}.kyma-ctl input[type=range]::-moz-range-track{background:var(--line);border-radius:2px;height:4px}.kyma-ctl input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--paper-raised);border-radius:50%;width:12px;height:12px}.kyma-atlas-row{grid-template-columns:150px 1fr;align-items:center;gap:4px 14px;margin-top:14px;display:grid;position:relative}.kyma-atlas{aspect-ratio:1;border-radius:var(--radius);border:1px solid var(--line);cursor:pointer;grid-area:1/1/4;width:150px;position:relative;overflow:hidden}.kyma-atlas img{width:100%;height:100%;image-rendering:pixelated;display:block}.kyma-atlas-marker{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #0000008c,0 0 10px #ffffff80}.kyma-atlas-dot{opacity:.75;pointer-events:none;background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;transform:translate(-50%,-50%)}.kyma-atlas-axis{font:600 10px var(--font-mono,monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.kyma-atlas-axis-x{grid-area:1/2;align-self:end}.kyma-atlas-axis-y{grid-area:2/2;align-self:start}.kyma-atlas-note{color:var(--ink-soft);grid-area:3/2;margin:0;font-size:12.5px;line-height:1.5}@media (max-width:560px){.kyma-atlas-row{grid-template-columns:1fr}.kyma-atlas{grid-area:auto/1;justify-self:center}.kyma-atlas-axis-x,.kyma-atlas-axis-y,.kyma-atlas-note{grid-area:auto/1}}.kyma-fs-btn{z-index:6;font:600 11px var(--font-mono,monospace);letter-spacing:.06em;color:#e8e6d8;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:#0a0e0c9e;border:1px solid #e8e6d833;border-radius:6px;padding:4px 9px;position:absolute;top:10px;right:10px}.kyma-fs-btn:hover{color:#f2d9a0;border-color:#f2d9a080}.kyma-canvas-wrap:fullscreen{box-shadow:none;background:#050807;border:0;border-radius:0;place-items:center;display:grid}.kyma-canvas-wrap:fullscreen .kyma-canvas{width:min(100vw,100vh);height:min(100vw,100vh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:is(.kyma-canvas-wrap:fullscreen .kyma-hud,.kyma-canvas-wrap:fullscreen .kyma-fs-btn){position:fixed}.kyma-canvas-wrap:fullscreen .kyma-hud{top:18px;left:18px}.kyma-canvas-wrap:fullscreen .kyma-fs-btn{top:18px;right:18px}.kyma-howto{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:860px){.kyma-howto{grid-template-columns:1fr}}.kyma-howto-card{border:1px dashed var(--line);border-radius:var(--radius);background:var(--paper-raised);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.kyma-howto-card b{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:13px}.kyma-howto-card span{color:var(--ink-soft);font-size:13.5px;line-height:1.5}.kyma-hint{color:var(--ink-soft);border-top:1px dashed var(--line);margin:10px 0 0;padding-top:8px;font-size:12.5px;line-height:1.55}.kyma-tour-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:80;background:#080c0a8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.kyma-tour-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);width:min(500px,100%);box-shadow:var(--shadow-raised);flex-direction:column;gap:10px;padding:22px 24px;display:flex}.kyma-tour-step{font:700 11px var(--font-mono,monospace);letter-spacing:.14em;color:var(--accent);text-transform:uppercase}.kyma-tour-card h3{margin:0;font-size:20px}.kyma-tour-card p{color:var(--ink);margin:0;font-size:14px;line-height:1.6}.kyma-tour-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px;display:flex}:root{--corona-void:#0b0f1a;--corona-amber:#b45309;--corona-amber-hi:#f59e0b;--corona-amber-soft:#b453091f;--corona-line:#ffffff14;--corona-radius:14px}.corona-page{flex-direction:column;gap:28px;display:flex}.corona-hero{border:1px solid var(--corona-line);border-radius:var(--corona-radius);background:linear-gradient(135deg, var(--corona-amber), var(--paper-raised));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:14px 20px;display:grid}@supports (color:color-mix(in lab, red, red)){.corona-hero{background:linear-gradient(135deg, color-mix(in srgb, var(--corona-amber) 7%, transparent), color-mix(in srgb, var(--paper-raised) 82%, transparent))}}.corona-hero{-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-raised)}.corona-hero-kicker{color:var(--corona-amber);font:700 9px var(--font-mono,monospace);letter-spacing:.16em}.corona-hero h1{font:700 clamp(24px, 3.4vw, 32px)/1 var(--font-narrative);letter-spacing:-.03em;margin:5px 0 4px}.corona-hero-sub{-webkit-line-clamp:2;max-width:640px;color:var(--ink-soft);font:13px/1.45 var(--font-ui);-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.corona-hero-signal{justify-items:center;gap:3px;display:grid}.corona-hero-signal>span{color:var(--corona-amber);font:700 9px var(--font-mono,monospace);letter-spacing:.14em}.corona-hero-signal .progress-ring-text strong{font:700 14px var(--font-mono,monospace)}.corona-hero-signal .progress-ring-text small{font:700 7px var(--font-ui)}.corona-contest{border:1px solid var(--corona-amber);align-items:center;gap:12px;padding:10px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.corona-contest{border:1px solid color-mix(in srgb, var(--corona-amber) 40%, transparent)}}.corona-contest{background:var(--corona-amber-soft);transition:border-color var(--dur-fast) var(--ease-standard);border-radius:12px;text-decoration:none}.corona-contest:hover{border-color:var(--corona-amber)}.corona-contest b{color:var(--corona-amber);font:700 10px var(--font-mono,monospace);letter-spacing:.12em;text-transform:uppercase;flex:none}.corona-contest span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-soft);font:12px/1.4 var(--font-ui);flex:1;overflow:hidden}.corona-contest span b{color:var(--corona-amber);font:inherit;letter-spacing:0;text-transform:none}.corona-howto{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.corona-howto-card{border:1px dashed var(--corona-line);background:var(--paper-raised);border-radius:12px;flex-direction:column;gap:4px;padding:11px 14px;display:flex}.corona-howto-card b{color:var(--corona-amber);font:700 11px var(--font-mono,monospace);letter-spacing:.1em;text-transform:uppercase}.corona-howto-card span{color:var(--ink-soft);font:14px/1.5 var(--font-ui)}.corona-section{min-width:0}.corona-lab-card{border:1px solid var(--corona-line);border-radius:var(--corona-radius);background:var(--paper-raised);padding:18px}@supports (color:color-mix(in lab, red, red)){.corona-lab-card{background:color-mix(in srgb, var(--paper-raised) 80%, transparent)}}.corona-lab-card{-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-raised)}.corona-lab-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.corona-lab-head h2{font:700 20px var(--font-narrative);letter-spacing:-.01em;margin:0}.corona-lab-sub{color:var(--ink-soft);font:12px var(--font-ui)}.corona-lab-head .corona-chip{white-space:nowrap;align-self:flex-start}.corona-lab-body{grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.corona-stage{aspect-ratio:4/3;border:1px solid var(--corona-line);background:var(--corona-void);border-radius:12px;min-width:0;min-height:420px;max-height:620px;position:relative;overflow:hidden;box-shadow:inset 0 0 60px #00000080}.corona-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:absolute;inset:0}.corona-hud{z-index:4;pointer-events:none;flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:10px;left:10px;right:10px}.corona-hud>*,.corona-chip{font:600 11px var(--font-mono,monospace);letter-spacing:.04em;color:#dce4f5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b0f1aa8;border:1px solid #dce4f524;border-radius:6px;padding:3px 8px}.corona-chip-amber{color:#f2ce9e;border-color:#f2ce9e47}.corona-chip-warn{color:#f2a89e;border-color:#f2a89e4d}.corona-rail{border-left:1px solid var(--corona-line);flex-direction:column;gap:14px;width:300px;min-width:0;padding:16px;display:flex}.corona-rail-group{flex-direction:column;gap:6px;display:flex}.corona-rail-label{color:var(--ink-soft);font:700 11px var(--font-mono,monospace);letter-spacing:.12em;text-transform:uppercase}.corona-seg{border:1px solid var(--line);background:var(--paper);border-radius:999px;align-self:flex-start;display:inline-flex;overflow:hidden}.corona-seg-btn{font:600 12.5px var(--font-ui);color:var(--ink-soft);cursor:pointer;border:0;border-right:1px solid var(--line);transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;padding:6px 14px}.corona-seg-btn:last-child{border-right:0}.corona-seg-btn:hover{color:var(--ink)}.corona-seg-btn.corona-seg-on,.corona-seg-btn.corona-seg-on:hover{color:var(--corona-amber);background:#f59e0b1f}.corona-depth-btn{border:1px solid var(--line);font:600 11.5px var(--font-mono,monospace);letter-spacing:.04em;color:var(--ink-soft);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border-radius:9px;padding:5px 10px}.corona-depth-btn:hover{border-color:var(--corona-amber)}@supports (color:color-mix(in lab, red, red)){.corona-depth-btn:hover{border-color:color-mix(in srgb, var(--corona-amber) 55%, var(--line))}}.corona-depth-btn:hover{color:var(--ink)}.corona-depth-btn.corona-seg-on{color:var(--corona-amber);background:#f59e0b1f;border-color:#f59e0b73}.corona-preset-btn{border:1px solid var(--line);font:600 11px var(--font-mono,monospace);letter-spacing:.04em;color:var(--ink-soft);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border-radius:999px;padding:4px 10px}.corona-preset-btn:hover{border-color:var(--corona-amber);color:var(--ink)}.corona-preset-btn.corona-preset-on{color:var(--corona-amber);background:#f59e0b1f;border-color:#f59e0b73}.corona-analyze{border:1px solid var(--corona-amber-hi);background:var(--corona-amber-hi);color:#14100a;width:100%;font:700 12px var(--font-ui);letter-spacing:.04em;cursor:pointer;transition:filter var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 14px;display:flex}.corona-analyze:hover{filter:brightness(1.08)}.corona-analyze:active{transform:translateY(1px)}.corona-hint{min-height:60px;color:var(--ink-soft);font:13px/1.55 var(--font-ui);margin:0}.corona-actions-row{align-items:center;gap:8px;display:flex}.corona-actions-row .corona-analyze{flex:1}.corona-witness-line{color:var(--ink-soft);font:11px var(--font-mono,monospace);letter-spacing:.04em}.corona-cert{border:1px solid var(--line);color:var(--ink-soft);font:600 11px var(--font-mono,monospace);letter-spacing:.06em;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:6px 12px;text-decoration:none;display:inline-flex}.corona-cert:hover{border-color:var(--corona-amber);color:var(--corona-amber)}.corona-stages{flex-direction:column;gap:20px;min-width:0;display:flex}.corona-stages-sec{border:1px solid var(--corona-line);border-radius:var(--corona-radius);background:var(--paper-raised);padding:16px}.corona-stages-sec.corona-complete{border-color:var(--success-line)}.corona-stages-head{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.corona-stages-name{color:var(--corona-amber);font:700 11px var(--font-mono,monospace);letter-spacing:.14em;text-transform:uppercase}.corona-stages-note{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-soft);font:11px var(--font-ui);flex:1;overflow:hidden}.corona-stages-count{color:var(--ink-soft);font:700 11px var(--font-mono,monospace)}.corona-complete .corona-stages-count{color:var(--viz-settled)}.corona-stages .kyma-puzzle{padding:12px 14px}.corona-stages .kyma-puzzle-head{flex-wrap:wrap;row-gap:6px}.corona-stages .kyma-prompt{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:13.5px;display:-webkit-box;overflow:hidden}.corona-stages .kyma-options{gap:5px}.corona-stages .kyma-option{padding:7px 11px;font-size:13.5px}.corona-stages .kyma-check{margin-top:0}.corona-goal-row{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.corona-goal{font:600 10px var(--font-mono,monospace);letter-spacing:.05em;color:var(--ink-soft);border:1px solid var(--line);background:var(--paper);white-space:nowrap;border-radius:6px;padding:2px 7px}.corona-goal-req{color:var(--corona-amber);border-color:var(--corona-amber)}@supports (color:color-mix(in lab, red, red)){.corona-goal-req{border-color:color-mix(in srgb, var(--corona-amber) 40%, transparent)}}.corona-goal-req{background:var(--corona-amber-soft)}.corona-hard{font:700 9px var(--font-mono,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--corona-amber);border:1px solid var(--corona-amber)}@supports (color:color-mix(in lab, red, red)){.corona-hard{border:1px solid color-mix(in srgb, var(--corona-amber) 45%, transparent)}}.corona-hard{background:var(--corona-amber-soft);border-radius:999px;padding:2px 8px}.corona-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.corona-verdict{font:500 12.5px var(--font-ui)}.corona-verdict.yes{color:var(--viz-settled)}.corona-verdict.no{color:var(--viz-pruned)}.corona-why{border-top:1px dashed var(--line);color:var(--ink-soft);font:12.5px/1.5 var(--font-ui);margin:8px 0 0;padding-top:7px}.corona-why b{color:var(--ink);font-weight:600}@media (max-width:980px){.corona-lab-body{grid-template-columns:1fr}.corona-stage{min-height:340px}.corona-rail{border-left:0;border-top:1px solid var(--corona-line);width:auto;padding:14px 0 0}}@media (max-width:680px){.corona-hero{grid-template-columns:1fr;padding:14px 16px}.corona-hero-signal{place-items:center start;gap:10px;display:flex}.corona-contest{flex-direction:column;align-items:flex-start;gap:4px}.corona-contest span{white-space:normal}.corona-howto{grid-template-columns:1fr}.corona-hud{gap:4px}.corona-hud>*{padding:2px 6px;font-size:10px}}.ghost-md{flex-direction:column;gap:8px;min-width:0;display:flex}.ghost-md-p{color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-size:14.5px;line-height:1.65}.ghost-md-h{letter-spacing:.01em;color:var(--ink);margin:2px 0 0;font-size:13.5px;font-weight:800}.ghost-md-ul,.ghost-md-ol{flex-direction:column;gap:4px;margin:0;padding-left:20px;display:flex}.ghost-md-ul li,.ghost-md-ol li{color:var(--ink);font-size:14px;line-height:1.6}.ghost-md-code{font-family:var(--font-mono,ui-monospace, Menlo, monospace);background:var(--paper-raised);border:1px solid var(--line);color:var(--ink);word-break:break-all;border-radius:6px;padding:1.5px 6px;font-size:12.5px}.ghost-codeblock{border:1px solid var(--line);background:var(--paper-raised);border-radius:12px;max-width:100%;overflow:hidden}.ghost-codeblock-bar{border-bottom:1px solid var(--line);font:700 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.22em;color:var(--ink-soft);justify-content:space-between;align-items:center;padding:6px 8px 6px 12px;display:flex}.ghost-code-copy{appearance:none;border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:700 9.5px/1 var(--font-ui);letter-spacing:.1em;cursor:pointer;border-radius:7px;padding:5px 10px;transition:color .12s,border-color .12s,transform .12s}.ghost-code-copy:hover{color:var(--accent);border-color:var(--accent)}.ghost-code-copy:active{transform:scale(.94)}.ghost-codeblock pre{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;margin:0;padding:12px 14px;overflow-x:auto}.ghost-codeblock pre code{font-family:var(--font-mono,ui-monospace, Menlo, monospace);color:var(--ink);white-space:pre;font-size:12.5px;line-height:1.6}.ghost-msg.from-ghost{align-items:flex-end}.ghost-msg.from-ghost .ghost-msg-body p{font-size:14.5px}.ghost-msg.from-user .ghost-msg-body{background:var(--accent-soft);border-radius:18px 18px 6px;padding:10px 14px}.ghost-msg.from-user{max-width:84%!important}.ghost-msg.from-ghost{max-width:96%!important}.ghost-copy{appearance:none;color:var(--ink-soft);font:700 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.16em;cursor:pointer;opacity:.72;background:0 0;border:0;align-self:flex-start;margin-top:-2px;padding:2px 0 0;transition:opacity .12s,color .12s}.ghost-copy:hover{opacity:1;color:var(--accent)}.ghost-chatbar{padding:4px 0 12px}.ghost-chatbar-id{align-items:center;gap:10px;min-width:0;display:inline-flex}.ghost-chatbar-titles{flex-direction:column;gap:1px;min-width:0;display:flex}.ghost-chatbar-title{font:800 13px/1.2 var(--font-ui);color:var(--ink);letter-spacing:.01em}.ghost-chatbar-sub{font:600 9.5px/1.3 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.1em;color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;max-width:40vw;overflow:hidden}.ghost-iconbtn{appearance:none;border:1px solid var(--line);background:var(--paper-raised);width:34px;height:34px;color:var(--ink-soft);cursor:pointer;border-radius:11px;flex:none;place-items:center;transition:color .13s,border-color .13s,transform .13s;display:grid}.ghost-iconbtn:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.ghost-iconbtn:active{transform:scale(.93)}.ghost-iconbtn:disabled{opacity:.45;cursor:default;transform:none}.ghost-thinking-chip{gap:9px}.ghost-dots{align-items:center;gap:4px;display:inline-flex}.ghost-dots i{background:var(--ink-soft);opacity:.4;border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite ghost-dot}.ghost-dots i:nth-child(2){animation-delay:.18s}.ghost-dots i:nth-child(3){animation-delay:.36s}@keyframes ghost-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-2.5px)}}.ghost-tps{font:700 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em;color:var(--ink-soft)}@media (prefers-reduced-motion:reduce){.ghost-dots i{animation:none!important}}.ghost-empty{gap:6px}.ghost-empty-hi{letter-spacing:.005em;margin:6px 0 0;font:800 17px/1.2 var(--font-ui)!important;color:var(--ink)!important}.ghost-empty-sub{max-width:34ch;margin:0 0 10px;font:500 12.5px/1.5 var(--font-ui)!important;color:var(--ink-soft)!important}.ghost-chip{border-radius:999px}.ghost-input{resize:none;min-height:44px;max-height:132px;line-height:1.45;display:block;overflow-y:auto}.ghost-input::-webkit-scrollbar{width:3px}.ghost-send{place-items:center;width:44px;height:44px;display:grid;border-radius:13px!important;padding:0!important}.ghost-backend-row{border:1px solid var(--line);background:var(--paper);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.ghost-backend-choices{flex:none;gap:5px;display:inline-flex}.ghost-backend-btn{appearance:none;border:1px solid var(--line);color:var(--ink-soft);font:800 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.14em;cursor:pointer;background:0 0;border-radius:7px;padding:6px 9px;transition:color .12s,border-color .12s,background .12s}.ghost-backend-btn.active{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.ghost-backend-btn:disabled{opacity:.35;cursor:default}.ghost-backend-btn:not(.active):not(:disabled):hover{color:var(--accent);border-color:var(--accent)}.ghost-jump{align-items:center;gap:5px;display:inline-flex}.ghost-app{--g-ease-out:cubic-bezier(.22, .9, .24, 1);--g-ease-settle:linear(0, .01345 3.846%, .04873 7.692%, .09935 11.54%, .1601 15.38%, .2267 19.23%, .2961 23.08%, .3658 26.92%, .4338 30.77%, .4989 34.62%, .5601 38.46%, .6169 42.31%, .669 46.15%, .7162 50%, .7585 53.85%, .7962 57.69%, .8295 61.54%, .8586 65.38%, .8838 69.23%, .9056 73.08%, .9242 76.92%, .9399 80.77%, .9532 84.62%, .9642 88.46%, .9734 92.31%, .9809 96.15%, 1);--g-ease-pop:linear(0, .03318 3.846%, .118 7.692%, .2346 11.54%, .3669 15.38%, .5021 19.23%, .631 23.08%, .7471 26.92%, .8468 30.77%, .9283 34.62%, .9916 38.46%, 1.038 42.31%, 1.069 46.15%, 1.087 50%, 1.094 53.85%, 1.094 57.69%, 1.087 61.54%, 1.077 65.38%, 1.065 69.23%, 1.052 73.08%, 1.04 76.92%, 1.028 80.77%, 1.018 84.62%, 1.01 88.46%, 1.003 92.31%, .998 96.15%, 1);--g-ease-micro:linear(0, .04702 5%, .1604 10%, .3061 15%, .4596 20%, .6048 25%, .7319 30%, .8364 35%, .9173 40%, .9761 45%, 1.016 50%, 1.04 55%, 1.051 60%, 1.054 65%, 1.051 70%, 1.045 75%, 1.037 80%, 1.029 85%, 1.021 90%, 1.014 95%, 1)}@supports not (animation-timing-function:linear(0, 1)){.ghost-app{--g-ease-settle:cubic-bezier(.22, .9, .24, 1);--g-ease-pop:cubic-bezier(.3, 1.36, .36, 1);--g-ease-micro:cubic-bezier(.3, 1.3, .36, 1)}}.ghost-intro,.ghost-center,.ghost-chat{animation:ghost-phase-in .34s var(--g-ease-out) both}@keyframes ghost-phase-in{0%{opacity:0;transform:translateY(10px)}}.ghost-intro>*,.ghost-empty>*{animation:ghost-rise-stagger .46s var(--g-ease-settle) both}.ghost-intro>:first-child,.ghost-empty>:first-child{animation-delay:0s}.ghost-intro>:nth-child(2),.ghost-empty>:nth-child(2){animation-delay:45ms}.ghost-intro>:nth-child(3),.ghost-empty>:nth-child(3){animation-delay:90ms}.ghost-intro>:nth-child(4),.ghost-empty>:nth-child(4){animation-delay:.135s}.ghost-intro>:nth-child(5){animation-delay:.18s}.ghost-intro>:nth-child(6){animation-delay:.225s}.ghost-intro>:nth-child(7){animation-delay:.255s}@keyframes ghost-rise-stagger{0%{opacity:0;transform:translateY(8px)}}.ghost-intro>.ghost-picker{animation:none}.ghost-picker>.ghost-model{animation:ghost-rise-stagger .46s var(--g-ease-settle) both}.ghost-picker>.ghost-model:first-child{animation-delay:.13s}.ghost-picker>.ghost-model:nth-child(2){animation-delay:.185s}.ghost-picker>.ghost-model:nth-child(3){animation-delay:.24s}.ghost-msg.from-user{animation:ghost-msg-pop .44s var(--g-ease-pop) both}@keyframes ghost-msg-pop{0%{opacity:0;transform:translateY(10px)scale(.94)}}.ghost-msg.from-ghost{animation:ghost-msg-in .3s var(--g-ease-out) both}.ghost-w{animation:ghost-w-in .26s var(--g-ease-out) both}@keyframes ghost-w-in{0%{opacity:0}}.ghost-md.streaming>*{animation:ghost-w-in .3s var(--g-ease-out) both}.ghost-cursor{background:var(--accent);vertical-align:-2.5px;width:7px;height:15px;box-shadow:0 0 0 1px var(--accent);border-radius:2.5px;margin-left:2px;display:inline-block}@supports (color:color-mix(in lab, red, red)){.ghost-cursor{box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent)}}.ghost-cursor{animation:1.15s ease-in-out infinite ghost-cursor-breathe}@keyframes ghost-cursor-breathe{0%,to{opacity:.9}50%{opacity:.32}}.ghost-stream-tps{font:700 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em;color:var(--ink-soft);font-variant-numeric:tabular-nums;animation:ghost-rise-in .18s var(--g-ease-out) both}.ghost-progress{background:var(--ink);border:0;height:8px}@supports (color:color-mix(in lab, red, red)){.ghost-progress{background:color-mix(in srgb, var(--ink) 7%, transparent)}}.ghost-progress{box-shadow:inset 0 0 0 1px var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-progress{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent)}}.ghost-progress-fill{background:var(--accent);transition:width .38s var(--g-ease-out);position:relative;overflow:hidden}.ghost-progress-fill:after{content:"";background:linear-gradient(100deg, transparent 25%, var(--paper) 46%, transparent 68%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.ghost-progress-fill:after{background:linear-gradient(100deg, transparent 25%, color-mix(in srgb, var(--paper) 42%, transparent) 46%, transparent 68%)}}.ghost-progress-fill:after{animation:ghost-sheen 2s var(--g-ease-out) infinite;transform:translate(-130%)}@keyframes ghost-sheen{55%{transform:translate(130%)}to{transform:translate(130%)}}.ghost-progress.indet .ghost-progress-fill{animation:ghost-indet 1.15s var(--g-ease-out) infinite;transition:none;width:38%!important}.ghost-progress.indet .ghost-progress-fill:after{opacity:0;animation:none}@keyframes ghost-indet{0%{transform:translate(-102%)}to{transform:translate(268%)}}.ghost-sheet-backdrop{z-index:130;-webkit-backdrop-filter:blur(3px)saturate(1.05);background:#0a0c1073;position:fixed}.ghost-sheet{animation:ghost-sheet-in .44s var(--g-ease-settle) both}@keyframes ghost-sheet-in{0%{transform:translateY(102%)}}.ghost-sheet-backdrop.closing{animation:.16s both ghost-fade-out}.ghost-sheet.closing{animation:.2s cubic-bezier(.5,0,.75,.4) both ghost-sheet-out}@keyframes ghost-sheet-out{to{opacity:0;transform:translateY(58%)}}@keyframes ghost-fade-out{to{opacity:0}}.ghost-sheet-head{touch-action:none;cursor:grab;flex-direction:column;align-items:center;gap:8px;display:flex}.ghost-sheet-head:active{cursor:grabbing}.ghost-sheet.dragging,.ghost-sheet-backdrop.dragging{transition:none!important;animation:none!important}.ghost-sheet.settle{transition:transform .32s var(--g-ease-settle);transform:translateY(0)}.ghost-send{transition:background-color .24s,color .24s,transform .13s,filter .13s,opacity .13s;position:relative;overflow:hidden}.ghost-send-ico{transition:transform .32s var(--g-ease-pop), opacity .16s ease;place-items:center;display:grid;position:absolute;inset:0}.ghost-send[data-mode=stop] .ghost-send-ico.ico-send{opacity:0;transform:rotate(90deg)scale(.55)}.ghost-send[data-mode=send] .ghost-send-ico.ico-stop{opacity:0;transform:rotate(-90deg)scale(.55)}.ghost-jump-wrap{z-index:5;pointer-events:none;justify-content:center;margin-top:10px;display:flex;position:sticky;bottom:10px}.ghost-jump{pointer-events:auto;animation:ghost-jump-pop .4s var(--g-ease-pop) both;position:static;transform:none}@keyframes ghost-jump-pop{0%{opacity:0;transform:translateY(8px)scale(.9)}}.ghost-copy{align-items:center;gap:4px;display:inline-flex}.ghost-copy-ok{color:var(--accent);animation:ghost-copy-pop .34s var(--g-ease-micro) both;align-items:center;gap:4px;display:inline-flex}@keyframes ghost-copy-pop{0%{opacity:0;transform:scale(.8)}}.ghost-error{animation:ghost-error-in .32s var(--g-ease-out) both}@keyframes ghost-error-in{0%{opacity:0;transform:translateY(-5px)}}.ghost-intro .ghost-face svg,.ghost-center .ghost-face svg,.ghost-empty .ghost-face svg{animation:3.4s ease-in-out infinite ghost-float}@keyframes ghost-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}.ghost-app :is(button,[role=radio],[role=tab]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ghost-iconbtn{touch-action:manipulation;border-radius:12px;width:40px;height:40px}.ghost-app :is(.ghost-chip,.ghost-model,.ghost-minibtn,.ghost-backend-btn,.ghost-cancel,.ghost-summon,.ghost-send,.ghost-jump,.ghost-card-del){touch-action:manipulation}.ghost-model{transition:border-color .16s,background-color .16s,transform .16s,box-shadow .2s}.ghost-model:active{transform:scale(.985)}.ghost-messages{scrollbar-width:thin;scrollbar-color:var(--ink) transparent}@supports (color:color-mix(in lab, red, red)){.ghost-messages{scrollbar-color:color-mix(in srgb, var(--ink) 18%, transparent) transparent}}.ghost-messages::-webkit-scrollbar{width:5px;height:5px}.ghost-messages::-webkit-scrollbar-track{background:0 0}.ghost-messages::-webkit-scrollbar-thumb{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-messages::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--ink) 18%, transparent)}}.ghost-messages::-webkit-scrollbar-thumb{border-radius:999px}.ghost-hero-title,.ghost-empty-hi{text-wrap:balance}.ghost-dl-meta,.ghost-tps{font-variant-numeric:tabular-nums}.ghost-spec-mini{font:600 10px/1.4 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em;color:var(--ink-soft);margin:8px 0 0}.ghost-input{field-sizing:content}@media (prefers-reduced-motion:reduce){.ghost-app{--g-ease-settle:ease-out;--g-ease-pop:ease-out;--g-ease-micro:ease-out;--g-ease-out:ease-out}.ghost-intro,.ghost-center,.ghost-chat,.ghost-intro>*,.ghost-empty>*,.ghost-picker,.ghost-picker>.ghost-model,.ghost-msg,.ghost-w,.ghost-jump,.ghost-jump-wrap,.ghost-stream-tps,.ghost-copy-ok,.ghost-error,.ghost-phase-in,.ghost-rise-stagger,.ghost-intro .ghost-face svg,.ghost-center .ghost-face svg,.ghost-empty .ghost-face svg{animation:none!important}.ghost-progress-fill{transition:none}.ghost-progress-fill:after,.ghost-progress.indet .ghost-progress-fill{animation:none!important}.ghost-progress.indet .ghost-progress-fill{opacity:.6;width:24%!important}.ghost-cursor{opacity:.8;animation:none!important}.ghost-sheet,.ghost-sheet-backdrop{animation:none!important}.ghost-send-ico,.ghost-send,.ghost-sheet.settle{transition:none}}.ghost-gpu-fetch{animation:ghost-rise-in .22s var(--g-ease-out) both;flex-direction:column;align-items:center;gap:6px;padding:10px 16px 4px;display:flex}.ghost-gpu-fetch-bar{background:var(--ink);border-radius:999px;width:min(260px,64%);height:4px}@supports (color:color-mix(in lab, red, red)){.ghost-gpu-fetch-bar{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.ghost-gpu-fetch-bar{box-shadow:inset 0 0 0 1px var(--ink);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ghost-gpu-fetch-bar{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 8%, transparent)}}.ghost-gpu-fetch-bar>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .38s var(--g-ease-out);display:block;position:relative;overflow:hidden}.ghost-gpu-fetch-bar>span:after{content:"";background:linear-gradient(100deg,#0000 20%,#ffffff52 50%,#0000 80%);animation:1.5s ease-in-out infinite ghost-sheen;position:absolute;inset:0;transform:translate(-100%)}.ghost-gpu-fetch-bar>span.indet{animation:ghost-indet 1.15s var(--g-ease-out) infinite;transition:none;width:38%!important}.ghost-gpu-fetch-bar>span.indet:after{opacity:0;animation:none}.ghost-gpu-fetch>.mono{font:600 9px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.08em;color:var(--ink-soft);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.ghost-gpu-fetch{animation:none!important}.ghost-gpu-fetch-bar>span{transition:none}.ghost-gpu-fetch-bar>span:after{animation:none!important}.ghost-gpu-fetch-bar>span.indet{opacity:.6;width:26%!important;animation:none!important}}.ghost-msg-actions{align-items:center;gap:10px;margin-top:2px;display:inline-flex}.ghost-msg-edit{appearance:none;color:var(--ink-soft);cursor:pointer;opacity:.62;width:30px;height:26px;transition:opacity .14s ease, color .14s ease, background .14s ease, transform .14s var(--g-ease-micro);background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.ghost-msg-edit:hover{opacity:1;color:var(--accent);background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg-edit:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}}.ghost-msg-edit:active{transform:scale(.88)}.ghost-msg-edit:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.from-user .ghost-msg-edit{margin-top:-2px}.ghost-continue-chip{appearance:none;border:1px solid var(--accent);align-items:center;gap:6px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ghost-continue-chip{border:1px solid color-mix(in srgb, var(--accent) 45%, var(--line))}}.ghost-continue-chip{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.ghost-continue-chip{background:color-mix(in srgb, var(--accent) 10%, var(--paper-raised))}}.ghost-continue-chip{color:var(--ink);font:600 10.5px/1 var(--font-mono,ui-monospace, Menlo, monospace);letter-spacing:.12em;cursor:pointer;animation:ghost-rise-in .26s var(--g-ease-out) both;transition:transform .16s var(--g-ease-micro), border-color .16s ease;border-radius:999px;align-self:flex-start;margin-top:4px;padding:8px 13px}.ghost-continue-chip svg{color:var(--accent)}.ghost-continue-chip:hover{border-color:var(--accent)}.ghost-continue-chip:active{transform:scale(.93)}.ghost-continue-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ghost-editing{border:1px dashed var(--accent);align-items:center;gap:8px;display:flex}@supports (color:color-mix(in lab, red, red)){.ghost-editing{border:1px dashed color-mix(in srgb, var(--accent) 55%, var(--line))}}.ghost-editing{color:var(--ink-soft);font:500 12px/1.35 var(--font-ui);animation:ghost-rise-in .24s var(--g-ease-out) both;border-radius:12px;margin-bottom:10px;padding:7px 8px 7px 12px}.ghost-editing>svg:first-child{color:var(--accent);flex:none}.ghost-editing>span{flex:1;min-width:0}.ghost-editing button{appearance:none;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:26px;height:26px;padding:0;transition:color .13s,background .13s;display:grid}.ghost-editing button:hover{color:var(--ink);background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-editing button:hover{background:color-mix(in srgb, var(--ink) 7%, transparent)}}.ghost-editing button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ghost-pop{animation:ghost-copy-pop .34s var(--g-ease-micro) both}@media (prefers-reduced-motion:reduce){.ghost-continue-chip,.ghost-editing{animation:none!important}.ghost-msg-edit,.ghost-continue-chip{transition:none}.ghost-pop{animation:none!important}}.ghost-msg.from-ghost .ghost-msg-body{background:var(--paper-raised);border:1px solid var(--line);border-radius:5px 18px 18px;padding:12px 15px 11px;box-shadow:0 1px 2px #0000000a,0 6px 18px #0000000d}.ghost-msg.from-user .ghost-msg-body p{font-size:14.5px;line-height:1.65}.ghost-msg.from-ghost .ghost-msg-actions{margin:0 0 3px}.ghost-msg.from-ghost .ghost-continue-chip{align-self:flex-end;margin:0 0 3px}.from-user .ghost-msg-edit{margin-top:0;margin-bottom:3px}.ghost-msg.from-ghost .ghost-stream-tps{align-self:flex-start;margin-top:5px}.ghost-msg.from-ghost .ghost-md-code{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-md-code{background:color-mix(in srgb, var(--ink) 5%, transparent)}}.ghost-msg.from-ghost .ghost-md-code{border-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-md-code{border-color:color-mix(in srgb, var(--ink) 14%, transparent)}}.ghost-msg.from-ghost .ghost-codeblock{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-codeblock{background:color-mix(in srgb, var(--ink) 4%, var(--paper-raised))}}.ghost-msg.from-ghost .ghost-codeblock{border-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-codeblock{border-color:color-mix(in srgb, var(--ink) 12%, var(--line))}}.ghost-msg.from-ghost .ghost-codeblock-bar{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-codeblock-bar{background:color-mix(in srgb, var(--ink) 6%, var(--paper-raised))}}.ghost-msg.from-ghost .ghost-codeblock-bar{border-bottom-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.ghost-msg.from-ghost .ghost-codeblock-bar{border-bottom-color:color-mix(in srgb, var(--ink) 12%, var(--line))}}.ghost-msg.from-ghost .ghost-codeblock pre{padding:11px 13px}.ghost-codeblock.scrolls-x pre{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000)}.ghost-msg.from-ghost .ghost-md{gap:7px}:root[data-theme=ink] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=violet] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=carbon] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=nothing] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=nord] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=solarized] .ghost-msg.from-ghost .ghost-msg-body,:root[data-theme=system] .ghost-msg.from-ghost .ghost-msg-body,:root:not([data-theme]) .ghost-msg.from-ghost .ghost-msg-body{box-shadow:0 1px 2px #00000038}.foundry-home{width:100%;max-width:720px;min-height:calc(100dvh - 52px);padding:clamp(28px, 7vw, 64px) clamp(16px, 5vw, 32px) calc(112px + env(safe-area-inset-bottom));margin:0 auto}.foundry-intro{max-width:620px;color:var(--ink-soft)}.foundry-progress-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);box-shadow:var(--shadow-raised);flex-direction:column;gap:10px;margin-top:28px;padding:16px;display:flex}.foundry-progress-readout{justify-content:space-between;align-items:baseline;display:flex}.foundry-progress-readout span{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.foundry-progress-readout b{font:700 20px var(--font-mono)}.foundry-progress-bar{background:var(--ink);border-radius:999px;height:6px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.foundry-progress-bar{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.foundry-progress-bar span{background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard);border-radius:999px;display:block}.foundry-progress-stats{color:var(--ink-soft);font:11px var(--font-mono);justify-content:space-between;display:flex}.foundry-next-up{color:var(--accent);font:600 11px var(--font-mono);letter-spacing:.02em}.foundry-continue-chip{border:1px solid var(--accent);align-self:flex-start;padding:4px 10px}@supports (color:color-mix(in lab, red, red)){.foundry-continue-chip{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent)}}.foundry-continue-chip{background:var(--accent);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.foundry-continue-chip{background:color-mix(in srgb, var(--accent) 10%, transparent)}}.foundry-continue-chip{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.foundry-station-list{flex-direction:column;gap:10px;margin-top:32px;display:flex}.foundry-station-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-raised);color:var(--ink);transition:transform var(--dur-fast) var(--ease-standard), border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;gap:10px;padding:16px;text-decoration:none;display:flex}.foundry-station-card:hover{border-color:var(--accent);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.foundry-station-head{align-items:center;gap:12px;display:flex}.foundry-station-index{border:1px solid var(--line);background:var(--accent);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.foundry-station-index{background:color-mix(in srgb, var(--accent) 10%, transparent)}}.foundry-station-index{color:var(--accent);font:700 15px var(--font-mono)}.foundry-station-head>div{flex:1;min-width:0}.foundry-station-verb{color:var(--accent);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase}.foundry-station-card h2{font:700 20px var(--font-narrative);margin:2px 0 0}.foundry-station-card p{color:var(--ink-soft);font:13px/1.5 var(--font-ui);margin:0}.foundry-station-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.foundry-skill-tag{color:var(--ink-soft);font:600 10px var(--font-mono);letter-spacing:.04em}.foundry-station-score{color:var(--viz-cached);font:600 10px var(--font-mono)}.foundry-mission-dots{gap:4px;display:inline-flex}.foundry-mission-dots i{background:var(--ink);border-radius:50%;width:7px;height:7px}@supports (color:color-mix(in lab, red, red)){.foundry-mission-dots i{background:color-mix(in srgb, var(--ink) 16%, transparent)}}.foundry-mission-dots i.on{background:var(--viz-settled)}.foundry-field-note{border:1px dashed var(--line);border-radius:var(--radius);margin-top:28px;padding:14px 16px}.foundry-field-note b{color:var(--viz-cached);font:700 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase}.foundry-field-note p{color:var(--ink-soft);font:13px/1.5 var(--font-narrative);margin:6px 0 0}.foundry-engine-tag{color:var(--ink-soft);font:600 10px var(--font-mono);margin-top:8px;display:inline-block}.forge-panel{gap:14px}.forge-panel>code{border-top:1px solid var(--line);padding-top:4px;display:block}@supports (color:color-mix(in lab, red, red)){.forge-panel>code{border-top:1px solid color-mix(in srgb, var(--line) 60%, transparent)}}.forge-panel>code{color:var(--ink-soft);font:11px/1.5 var(--font-mono);overflow-wrap:anywhere}.foundry-merge-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.foundry-merge-line code{border:1px solid var(--line);background:var(--paper);font:700 13px var(--font-mono);border-radius:7px;padding:3px 8px}.foundry-merge-line span{color:var(--viz-cached);font:600 11px var(--font-mono)}.foundry-merge-line .foundry-merge-out{border-color:var(--accent);color:var(--accent)}.foundry-word-lab{flex-direction:column;gap:8px;display:flex}.foundry-word-evolution small{color:var(--ink-soft);font:600 10px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;display:block}.foundry-token-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.foundry-token-chip{border:1px solid var(--line);background:var(--paper);min-height:26px;font:600 12px var(--font-mono);overflow-wrap:anywhere;border-radius:7px;align-items:center;padding:3px 8px;display:inline-flex}.foundry-token-chip.as-button{cursor:pointer}.foundry-token-chip.as-button:hover{border-color:var(--accent)}.foundry-token-chip.is-picked{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.foundry-token-chip.is-query{border-color:var(--viz-pruned);color:var(--viz-pruned)}.foundry-token-chip.is-wrong{border-color:var(--viz-pruned);background:var(--viz-pruned)}@supports (color:color-mix(in lab, red, red)){.foundry-token-chip.is-wrong{background:color-mix(in srgb, var(--viz-pruned) 12%, transparent)}}.foundry-generated{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:10px}.foundry-prompt-line{font:15px/1.5 var(--font-narrative);margin:0}.foundry-step-controls{flex-wrap:wrap;gap:10px;display:flex}.foundry-over{color:var(--viz-pruned)!important}.foundry-under{color:var(--viz-settled)!important}.foundry-budget-bar{background:var(--ink);border-radius:999px;height:8px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.foundry-budget-bar{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.foundry-budget-bar span{height:100%;transition:width var(--dur-fast) var(--ease-standard);border-radius:999px;display:block}.foundry-sentence-list{flex-direction:column;gap:7px;display:flex}.foundry-sentence-toggle{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);width:100%;min-height:52px;color:var(--ink);text-align:left;cursor:pointer;font-family:var(--font-ui);align-items:center;gap:10px;padding:10px 12px;display:flex}.foundry-sentence-toggle i{color:var(--ink-soft);flex:none;font-style:normal}.foundry-sentence-toggle span{min-width:0;font:12px/1.45 var(--font-ui);overflow-wrap:anywhere;flex:1}.foundry-sentence-toggle code{color:var(--viz-cached);font:600 10px var(--font-mono);flex:none}.foundry-sentence-toggle.on{border-color:var(--viz-settled);background:var(--success-soft)}.foundry-sentence-toggle.on i{color:var(--viz-settled)}.foundry-sentence-toggle.required code{color:var(--viz-pointer)}.foundry-sentence-toggle.stuffed code{color:var(--viz-pruned)}.foundry-formula{margin-top:4px;display:block;color:var(--ink-soft)!important;font:11px/1.6 var(--font-mono)!important}.foundry-dist-bars{flex-direction:column;gap:6px;display:flex}.foundry-dist-row{grid-template-columns:84px 1fr 46px;align-items:center;gap:10px;display:grid}.foundry-dist-row code{text-overflow:ellipsis;white-space:nowrap;font:600 12px var(--font-mono);overflow:hidden}.foundry-dist-track{background:var(--ink);border-radius:6px;height:12px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.foundry-dist-track{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.foundry-dist-track span{background:var(--viz-active);height:100%;transition:width var(--dur-fast) var(--ease-standard);border-radius:6px;display:block}.foundry-dist-row small{color:var(--ink-soft);font:600 10px var(--font-mono);text-align:right}.foundry-dial-row{flex-direction:column;gap:12px;display:flex}.foundry-dial{flex-direction:column;gap:6px;display:flex}.foundry-dial-label{color:var(--ink-soft);font:700 10px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.foundry-dial-label b{color:var(--accent);font:700 12px var(--font-mono);letter-spacing:0;text-transform:none}.foundry-dial input[type=range]{width:100%;accent-color:var(--accent)}.foundry-dial.locked{opacity:.55}.foundry-arc-svg{width:100%;height:auto}.foundry-arc-label{fill:var(--ink-soft);font:600 9px var(--font-mono)}.foundry-arc-ranking{color:var(--ink-soft);font:600 11px var(--font-mono);flex-wrap:wrap;gap:12px;display:flex}.foundry-arc-ranking b{color:var(--accent)}.foundry-mass-bars{flex-direction:column;gap:8px;display:flex}.foundry-mass-row{grid-template-columns:minmax(140px,220px) 1fr 48px;align-items:center;gap:10px;display:grid}.foundry-mass-row small{color:var(--ink-soft);font:10px/1.3 var(--font-ui)}.foundry-mass-row b{font:700 12px var(--font-mono);text-align:right}.foundry-heat-grid{gap:3px;display:grid}.foundry-heat-grid span{background:var(--viz-active);height:26px;transition:opacity var(--dur-fast);border-radius:5px}.foundry-control-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.foundry-control{flex-direction:column;gap:6px;min-width:0;display:flex}.foundry-control input[type=range]{width:100%;accent-color:var(--accent)}.foundry-segmented{border:1px solid var(--line);border-radius:9px;display:flex;overflow:hidden}.foundry-segmented button{background:var(--paper);min-height:34px;color:var(--ink-soft);font:600 11px var(--font-mono);cursor:pointer;border:0;flex:1}.foundry-segmented button+button{border-left:1px solid var(--line)}.foundry-segmented button.on{background:var(--accent-soft);color:var(--accent)}.foundry-segmented button:disabled{opacity:.55;cursor:default}.foundry-readout-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.foundry-readout{border:1px solid var(--line);background:var(--paper);border-radius:9px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.foundry-readout small{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.foundry-readout b{font:700 15px var(--font-mono)}.foundry-readout.bad b{color:var(--viz-pruned)}.foundry-lane-svg{width:100%;height:auto}.foundry-lane-label{fill:var(--ink-soft);font:600 9px var(--font-mono)}.foundry-lane-drop{fill:var(--viz-pruned);font:700 9px var(--font-mono)}.foundry-kv-gauge{flex-direction:column;gap:6px;display:flex}.foundry-kv-track{background:var(--ink);border-radius:999px;height:8px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.foundry-kv-track{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.foundry-kv-track span{background:var(--viz-cached);height:100%;transition:width var(--dur-fast) var(--ease-standard);border-radius:999px;display:block}.foundry-run-view{gap:16px}.foundry-run-view>input[type=range]{width:100%;accent-color:var(--viz-cached)}.foundry-rank-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.foundry-rank-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);gap:10px;padding:10px 12px;display:flex}.foundry-rank-item b{color:var(--ink-soft);font:700 12px var(--font-mono);flex:none}.foundry-rank-item span{color:var(--ink-soft);font:600 10px var(--font-ui);text-transform:uppercase;letter-spacing:.06em}.foundry-rank-item p{font:11px/1.45 var(--font-mono);overflow-wrap:anywhere;margin:4px 0 0}.foundry-rank-item.is-truth{border-color:var(--viz-settled)}.foundry-rank-item.is-stuffed{border-color:var(--viz-pruned)}.foundry-rank-item.is-stuffed span{color:var(--viz-pruned)}.foundry-chunk-map{flex-direction:column;gap:3px;min-height:40px;display:flex}.foundry-chunk-map span{background:var(--viz-cached);border-radius:4px;height:12px}@supports (color:color-mix(in lab, red, red)){.foundry-chunk-map span{background:color-mix(in srgb, var(--viz-cached) 45%, transparent)}}.foundry-chunk-map span{color:#0000;font:6px var(--font-mono)}.foundry-top-chunk{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:10px 12px}.foundry-top-chunk small{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.08em;text-transform:uppercase}.foundry-top-chunk p{font:11px/1.5 var(--font-mono);overflow-wrap:anywhere;margin:5px 0 0}.foundry-top-chunk mark{background:var(--viz-settled)}@supports (color:color-mix(in lab, red, red)){.foundry-top-chunk mark{background:color-mix(in srgb, var(--viz-settled) 25%, transparent)}}.foundry-top-chunk mark{color:inherit;border-radius:3px;padding:1px 2px}.foundry-answer-panel{border-color:var(--viz-settled)}.foundry-terminal{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);flex-direction:column;gap:6px;max-height:340px;padding:12px;display:flex;overflow-y:auto}.foundry-terminal-line{font:11px/1.5 var(--font-mono);grid-template-columns:58px 1fr auto;align-items:baseline;gap:8px;display:grid}.foundry-terminal-line b{color:var(--ink-soft);font:700 9px var(--font-ui);letter-spacing:.06em}.foundry-terminal-line span{overflow-wrap:anywhere;min-width:0}.foundry-terminal-line code{color:var(--viz-cached);font:600 10px var(--font-mono)}.foundry-terminal-line.think span{color:var(--ink-soft)}.foundry-terminal-line.think b{color:var(--viz-pointer)}.foundry-terminal-line.act b{color:var(--viz-active)}.foundry-terminal-line.obs span{color:var(--ink)}.foundry-terminal-line.obs.quarantined span{color:var(--viz-pruned)}.foundry-terminal-line.note b,.foundry-terminal-line.note span{color:var(--viz-cached)}.foundry-terminal-line.done b{font-size:10px}.foundry-terminal-line.done.ok b{color:var(--viz-settled)}.foundry-terminal-line.done.fail b{color:var(--viz-pruned)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
