@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";@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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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,ui-sans-serif, system-ui, 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{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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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}.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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.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,)}.rounded{border-radius:.25rem}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.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))}}:root{--ink:#132b35;--ink-soft:#42616a;--muted:#7f9698;--line:#dce6e2;--paper:#f7f7f1;--white:#fffefa;--teal:#174752;--teal-dark:#102f38;--orange:#ed7e4d;--orange-soft:#fff0e7;--aqua:#75c8bb;--yellow:#f2c35e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif}button,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--teal-dark);color:#eaf2e9;flex-direction:column;flex:0 0 244px;width:244px;min-height:100vh;padding:31px 22px 22px;display:flex}.brand-lockup{align-items:center;gap:11px;padding:0 10px;display:flex}.brand-mark{width:32px;height:32px;position:relative}.brand-mark span{border:2px solid #f1c25e;width:13px;height:13px;display:block;position:absolute;transform:rotate(45deg)}.brand-mark span:first-child{background:#ed7e4d;border-color:#ed7e4d;border-radius:50% 50% 2px;top:9px;left:2px}.brand-mark span:nth-child(2){background:#76c9bb;border-color:#76c9bb;top:1px;left:11px}.brand-mark span:nth-child(3){background:#f2c35e;border-color:#f2c35e;width:10px;height:10px;top:14px;left:14px}.brand-name{color:#fffaf0;letter-spacing:.18em;font:700 19px/1 Space Grotesk,sans-serif}.brand-tagline{color:#8dada9;letter-spacing:.08em;text-transform:uppercase;margin-top:5px;font:500 9px/1 DM Mono,monospace}.sidebar-label{color:#769693;letter-spacing:.15em;margin:58px 11px 15px;font:500 10px/1 DM Mono,monospace}.second-label{margin-top:42px}.nav-list{gap:5px;display:grid}.nav-item{color:#9cb4b0;border-radius:8px;align-items:center;gap:11px;min-height:43px;padding:0 11px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover,.nav-item.active{color:#fffaf0;background:#76c9bb1f}.nav-item.active{box-shadow:inset 3px 0 0 var(--orange)}.nav-icon{color:#81a29e;text-align:center;width:20px;font-size:19px;line-height:1}.nav-item.active .nav-icon{color:var(--aqua)}.nav-count{color:#fff;background:#e77e50;border-radius:50%;place-items:center;width:20px;height:20px;margin-left:auto;font:500 10px DM Mono,monospace;display:grid}.path-card{background:#ffffff12;border:1px solid #98c4bb29;border-radius:9px;padding:16px 15px 15px}.path-card-top{color:#78cabc;letter-spacing:.1em;align-items:center;gap:7px;font:500 9px DM Mono,monospace;display:flex}.path-dot,.live-dot,.online-dot{background:var(--orange);border-radius:50%;width:6px;height:6px;display:inline-block}.path-percent{color:#b1c2bc;margin-left:auto;font-size:9px}.path-title{color:#fffbf1;margin:14px 0 12px;font:600 14px Space Grotesk,sans-serif}.path-progress{background:#ffffff1a;border-radius:9px;height:4px;overflow:hidden}.path-progress span{background:var(--orange);border-radius:9px;width:32%;height:100%;display:block}.path-meta{color:#8ea7a1;margin-top:10px;font-size:10px}.sidebar-footer{border-top:1px solid #a6c8c026;align-items:center;gap:9px;margin-top:auto;padding:18px 9px 3px;display:flex}.avatar{border-radius:50%;flex:none;place-items:center;font:600 13px Space Grotesk,sans-serif;display:grid}.avatar-student{width:31px;height:31px;color:var(--teal-dark);background:#f2c35e}.student-info{gap:3px;font-size:11px;font-weight:600;display:grid}.student-info small{color:#779692;font-size:9px;font-weight:400}.more-button{color:#769692;letter-spacing:2px;background:0 0;border:0;margin-left:auto;font-size:12px}.main-area{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);background:#f7f7f1e0;justify-content:space-between;align-items:center;height:75px;padding:0 4.1%;display:flex}.crumbs{color:#8da2a1;letter-spacing:.08em;align-items:center;gap:10px;font:500 10px DM Mono,monospace;display:flex}.crumbs b{color:#c4d3ce;font-weight:400}.crumbs strong{color:var(--ink);font-weight:500}.topbar-actions{align-items:center;gap:19px;display:flex}.streak{color:#70898a;font-size:11px}.flame{color:var(--orange);margin-right:4px;font-size:15px}.icon-button{color:#688386;background:0 0;border:0;font-size:20px;position:relative}.icon-button i{background:var(--orange);border-radius:50%;width:5px;height:5px;position:absolute;top:1px;right:0}.share-button{background:var(--white);color:var(--teal);border:1px solid #d3dfda;border-radius:5px;padding:9px 13px;font-size:11px;font-weight:600}.share-button span{color:var(--orange);margin-left:8px}.content-wrap{grid-template-columns:minmax(500px,1fr) 308px;gap:54px;max-width:1400px;margin:0 auto;padding:61px 4.1% 80px;display:grid}.page-intro{max-width:680px}.eyebrow,.rail-eyebrow,.mission-kicker{color:#849b99;letter-spacing:.14em;font:500 10px DM Mono,monospace}.eyebrow{align-items:center;gap:8px;display:flex}.eyebrow-divider{background:#cad8d3;width:17px;height:1px}.live-dot{background:var(--orange);width:7px;height:7px;box-shadow:0 0 0 4px #fbe5dc}h1{color:var(--teal);letter-spacing:-.055em;margin:18px 0 14px;font:600 clamp(43px,4.2vw,68px)/.98 Space Grotesk,sans-serif}h1 em{color:var(--orange);font-style:normal}.intro-copy{max-width:500px;color:var(--ink-soft);margin:0;font-size:14px;line-height:1.65}.mission-strip{background:#fffefaa6;border:1px solid #dce6e2;border-radius:8px;align-items:center;gap:13px;min-height:69px;margin:39px 0 22px;padding:13px 16px;display:flex}.mission-icon{width:36px;height:36px;color:var(--orange);background:#fff0dc;border-radius:8px;place-items:center;font-size:21px;display:grid}.mission-copy{min-width:0}.mission-kicker{font-size:9px}.mission-name{color:var(--teal);margin-top:5px;font:600 13px Space Grotesk,sans-serif}.mission-status{color:#5c8980;white-space:nowrap;background:#eef7f1;border-radius:4px;margin-left:auto;padding:7px 10px;font:500 9px DM Mono,monospace}.status-check{color:#67ae9b;margin-right:4px}.mission-menu{color:#9eb1ae;letter-spacing:2px;background:0 0;border:0;margin-left:9px;font-size:11px}.chat-card{background:var(--white);border:1px solid #d9e3de;border-radius:10px;overflow:hidden;box-shadow:0 16px 34px #14393d0d}.chat-header{border-bottom:1px solid #e8eeea;justify-content:space-between;align-items:center;min-height:67px;padding:12px 20px;display:flex}.progress-sync{color:#6e948c;letter-spacing:.03em;font:500 9px DM Mono,monospace}.progress-sync.saving{color:var(--orange)}.progress-sync.unavailable{color:#b06a52}.coach-profile{align-items:center;gap:10px;display:flex}.avatar-coach{background:var(--teal);width:35px;height:35px;color:var(--yellow);font-size:16px}.coach-profile div:last-child{gap:3px;display:grid}.coach-profile strong{color:var(--teal);font:600 12px Space Grotesk,sans-serif}.coach-profile span{color:#8da3a0;font-size:10px}.chat-mode{color:#76908f;letter-spacing:.05em;font:500 9px DM Mono,monospace}.online-dot{background:#6ab6a7;width:6px;height:6px;margin-right:6px;box-shadow:0 0 0 3px #eaf6f0}.online-dot.thinking{background:var(--orange);box-shadow:0 0 0 3px #fff0dc}.messages{min-height:380px;max-height:510px;padding:28px 25px 10px;overflow-y:auto}.message-row{align-items:flex-start;gap:10px;margin-bottom:22px;display:flex}.message-row.student{justify-content:flex-end}.message-stack{max-width:min(84%,570px)}.message-row.student .message-stack{flex-direction:column;align-items:flex-end;display:flex}.message-avatar{width:24px;height:24px;color:var(--teal);background:#eff4ed;border-radius:50%;flex:none;place-items:center;font:600 11px Space Grotesk,sans-serif;display:grid}.message-meta{color:#a2b2ae;letter-spacing:.08em;margin:0 0 6px;font:500 8px DM Mono,monospace}.message-bubble{color:#385a60;background:#f0f5ef;border-radius:2px 10px 10px;padding:13px 15px;font-size:13px;line-height:1.58}.student .message-bubble{background:var(--orange-soft);color:#8b563f;border-radius:10px 2px 10px 10px}.text-action{color:var(--orange);background:0 0;border:0;margin:9px 3px 0;padding:0;font-size:11px;font-weight:600}.text-action span:last-child{margin-left:5px;font-size:14px}.action-spark{margin-right:5px;font-size:12px}.text-action:hover{color:#c75831;text-underline-offset:3px;text-decoration:underline}.example-note{background:#fffaf0;border:1px dashed #e7b596;border-radius:6px;align-items:center;gap:10px;margin:3px 25px 14px;padding:10px 12px;display:flex}.example-icon{width:24px;height:24px;color:var(--orange);background:#f8e2c1;border-radius:50%;place-items:center;display:grid}.example-note div{gap:2px;display:grid}.example-note strong{color:#7c5944;font-size:10px}.example-note span{color:#9b8674;font-size:10px}.example-note button{color:#b0a192;background:0 0;border:0;margin-left:auto;font-size:16px}.composer-wrap{background:#fdfdf8;border-top:1px solid #e8eeea;padding:15px 20px 18px}.quick-prompts{gap:8px;margin-bottom:11px;display:flex}.quick-prompts button{color:#6c8888;background:#fffefa;border:1px solid #dbe6df;border-radius:4px;padding:7px 9px;font-size:10px}.quick-prompts button:hover{border-color:var(--aqua);color:var(--teal)}.quick-prompts span{color:var(--orange);margin-left:5px}.composer{align-items:flex-end;gap:9px;display:flex}.composer textarea{resize:none;min-height:44px;max-height:120px;color:var(--ink);background:#fff;border:1px solid #d7e3dd;border-radius:6px;outline:none;flex:1;padding:12px 13px;font-size:12px;line-height:1.4}.composer textarea::placeholder{color:#a1b1ae}.composer textarea:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.send-button{background:var(--teal);color:#fff;border:0;border-radius:6px;width:38px;height:38px;font-size:20px;line-height:1}.send-button:hover{background:var(--orange)}.send-button:disabled{cursor:wait;opacity:.55}.composer-tip{color:#a3b1ae;margin-top:8px;font:9px DM Mono,monospace}.composer-tip span{color:#6f9290}.composer-tip b{float:right;color:#ba8a6c;font-weight:400}.insight-rail{align-content:start;gap:18px;padding-top:39px;display:grid}.rail-card{background:#fffefab8;border:1px solid #dce6e2;border-radius:9px;padding:20px 19px}.rail-card-heading{justify-content:space-between;align-items:center;display:flex}.rail-eyebrow{letter-spacing:.13em;font-size:9px}.fraction{color:var(--orange);font:600 14px Space Grotesk,sans-serif}.fraction i{color:#a9bbb7;font-size:10px;font-style:normal}.progress-visual{border-bottom:1px solid #e3ebe6;align-items:center;gap:15px;padding:20px 0 19px;display:flex}.progress-ring{background:conic-gradient(var(--orange) 0deg 115deg, #f4e6d9 115deg 360deg);border-radius:50%;place-items:center;width:66px;height:66px;display:grid;position:relative}.progress-ring:after{content:"";background:#fffefa;border-radius:50%;position:absolute;inset:6px}.progress-ring span{z-index:1;color:var(--teal);font:600 17px Space Grotesk,sans-serif;position:relative}.progress-ring small{font-size:10px}.progress-copy{gap:5px;display:grid}.progress-copy strong{color:var(--teal);font:600 12px Space Grotesk,sans-serif}.progress-copy span{color:#819998;font-size:10px}.step-list{gap:11px;padding:14px 0 12px;display:grid}.step{color:#97aaa6;align-items:center;gap:9px;font-size:10px;display:flex}.step span{color:#9eb1ad;border:1px solid #d8e3de;border-radius:50%;place-items:center;width:18px;height:18px;font:500 9px DM Mono,monospace;display:grid}.step.done{color:#648c82}.step.done span{color:#61a991;background:#e7f4ee;border-color:#b8dfd1}.step.current{color:var(--teal);font-weight:600}.step.current span{border-color:var(--orange);background:var(--orange);color:#fff}.step i{color:var(--orange);margin-left:auto;font:500 8px DM Mono,monospace}.outline-button{color:#668683;background:#fffefa;border:1px solid #cbdcd6;border-radius:5px;width:100%;padding:9px;font-size:10px;font-weight:600}.outline-button:disabled{cursor:not-allowed;opacity:.58}.outline-button:hover{border-color:var(--orange);color:var(--orange)}.edit-link{color:var(--orange);font:500 9px DM Mono,monospace}.lens-intro{color:#78918f;margin:15px 0 13px;font-size:11px;line-height:1.45}.lens-list{gap:6px;display:grid}.lens-option{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:9px;width:100%;min-height:45px;padding:7px 8px;display:flex}.lens-option:hover,.lens-option.selected{background:#eef8f2;border-color:#cbe3da}.lens-icon{width:27px;height:27px;color:var(--orange);background:#f8eee2;border-radius:5px;place-items:center;font:600 12px Space Grotesk,sans-serif;display:grid}.lens-option:nth-child(2) .lens-icon{color:#5a9d8b;background:#e9f4ee}.lens-option:nth-child(3) .lens-icon{color:#7197a6;background:#e9f0f4}.lens-option:nth-child(4) .lens-icon{color:#a47791;background:#f4e9ef}.lens-label{gap:2px;display:grid}.lens-label strong{color:#45696c;font:600 10px Space Grotesk,sans-serif}.lens-label small{color:#9aacaa;font-size:9px}.lens-radio{border:1px solid #bed0ca;border-radius:50%;width:9px;height:9px;margin-left:auto}.selected .lens-radio{border:3px solid #6ab7a4}.principle-card{background:var(--teal);color:#e8f1e8;border-radius:9px;padding:22px 20px 18px;position:relative;overflow:hidden}.principle-card:after{content:"";border:1px solid #f3c35e40;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-87px;right:-74px;box-shadow:0 0 0 14px #f3c35e0d,0 0 0 28px #f3c35e0a}.principle-mark{height:20px;color:var(--yellow);font:700 38px/1 Georgia,serif}.principle-label{color:#89b5ae;letter-spacing:.12em;margin-top:8px;font:500 8px DM Mono,monospace}blockquote{color:#f1f2e7;letter-spacing:-.02em;margin:14px 0 12px;font:500 15px/1.35 Space Grotesk,sans-serif}.principle-author{color:#93b3ac;font-size:9px}.principle-rule{background:#d1e7da24;height:1px;margin:18px 0 12px}.hint-count{color:#9fc0b7;font:9px DM Mono,monospace}.hint-gem{color:var(--yellow);margin-right:5px}@media (max-width:1040px){.content-wrap{grid-template-columns:minmax(0,1fr);gap:28px}.insight-rail{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.principle-card{grid-column:span 2}}@media (max-width:760px){.sidebar{flex-basis:64px;align-items:center;width:64px;padding:25px 10px 14px}.brand-lockup{padding:0}.brand-lockup>div:last-child,.sidebar-label,.nav-item span:not(.nav-icon),.nav-count,.path-card,.student-info,.more-button{display:none}.brand-mark{transform:scale(.86)}.nav-list{margin-top:55px}.nav-item{justify-content:center;width:42px;padding:0}.sidebar-footer{padding:16px 0 3px}.topbar{padding:0 18px}.streak,.progress-sync,.share-button{display:none}.content-wrap{padding:39px 18px 50px}h1{font-size:46px}.mission-strip{flex-wrap:wrap;align-items:flex-start}.mission-status{margin-top:-2px;margin-left:49px}.mission-menu{margin-left:auto}.messages{padding:22px 15px 8px}.composer-wrap{padding:13px 14px 16px}.composer-tip b{display:none}.insight-rail{grid-template-columns:1fr}.principle-card{grid-column:auto}}@media (max-width:450px){.chat-mode{display:none}.quick-prompts{padding-bottom:2px;overflow-x:auto}.quick-prompts button{white-space:nowrap}.topbar{height:63px}.crumbs{font-size:8px}}.lesson-summary{background:#fffaf0;border:1px solid #dce6e2;border-radius:8px;align-items:center;gap:18px;margin:18px 0 22px;padding:16px 18px;display:flex}.lesson-summary>div{min-width:0}.lesson-summary strong{color:var(--teal);margin-top:6px;font:600 15px Space Grotesk,sans-serif;display:block}.lesson-summary p{color:#78918f;max-width:580px;margin:5px 0 0;font-size:11px;line-height:1.5}.lesson-pill{color:#9b6a4b;background:#fffefa;border:1px solid #e3c9a7;border-radius:5px;flex:none;margin-left:auto;padding:9px 11px;font-size:10px;font-weight:600}.lesson-pill span{color:var(--orange);margin-left:5px}.lesson-pill:hover{border-color:var(--orange);color:var(--orange)}.next-stage-card{background:#fffaf0;border:1px solid #dce6e2;border-radius:8px;margin-top:18px;padding:18px 20px}.next-stage-kicker{color:var(--orange);letter-spacing:.12em;font:500 9px DM Mono,monospace}.next-stage-card strong{color:var(--teal);margin-top:8px;font:600 17px Space Grotesk,sans-serif;display:block}.next-stage-card p{color:#78918f;max-width:620px;margin:6px 0 12px;font-size:11px;line-height:1.5}.next-stage-question{border-left:3px solid var(--orange);color:#64817d;background:#fffefa;gap:4px;max-width:620px;margin-bottom:13px;padding:10px 11px;font-size:10px;line-height:1.45;display:grid}.next-stage-question b{color:#9b6a4b;letter-spacing:.08em;text-transform:uppercase;font:500 9px DM Mono,monospace}.stage-two-card{background:#f8fbf5}.stage-two-card>p{max-width:760px}.port-lesson-layout{grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:18px;margin-top:16px;display:grid}.port-practice{min-width:0}.port-step-prompt{background:#fffefa;border:1px solid #dce8df;border-radius:6px;margin-bottom:11px;padding:12px 13px}.port-step-prompt .guide-kicker{margin-bottom:7px;display:block}.port-step-prompt strong{color:var(--teal);font:600 15px Space Grotesk,sans-serif;display:block}.port-step-prompt p{color:#78918f;margin:5px 0 0;font-size:10px;line-height:1.45}.port-code-card{background:#173d43;border:1px solid #d9e7dd;border-radius:6px;overflow:hidden;box-shadow:0 6px 15px #13363912}.port-code-head{color:#78cabc;letter-spacing:.08em;border-bottom:1px solid #d2eddf1f;justify-content:space-between;align-items:center;min-height:28px;padding:0 12px;font:500 9px DM Mono,monospace;display:flex}.port-code-head span:last-child{color:#b7c9b9}.port-code-line{color:#cbe9da;border-bottom:1px solid #d2eddf14;align-items:center;gap:10px;min-height:31px;padding:0 10px;font:10px/1.5 DM Mono,monospace;display:flex}.port-code-line:last-child{border-bottom:0}.port-code-line.editing{background:#60b29d1f}.port-line-number{color:#6e9790;text-align:right;width:12px}.port-code-line code{white-space:nowrap;flex:1;min-width:0;overflow-x:auto}.port-line-placeholder{color:#6d9990;font-style:italic}.port-line-status{color:#83a79d;letter-spacing:.04em;font-size:8px}.port-save-button,.port-edit-button{color:#9dd1bf;background:0 0;border:1px solid #b7dccd40;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.port-save-button:hover,.port-edit-button:hover{color:#f3b36f;border-color:#f3b36f}.port-clear-button{color:#e3b86f;background:0 0;border:1px solid #f2c16b59;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.port-clear-button:hover{color:#f3b36f;border-color:#f3b36f}.port-line-hint{color:#a7c8bc;background:#204a4e;padding:7px 12px 8px 34px;font-size:9px;line-height:1.4}.port-line-hint.error{color:#ffad91}.stage2-feedback{color:#7b928e;align-items:center;gap:7px;min-height:28px;margin-top:8px;font-size:10px;line-height:1.35;display:flex}.stage2-feedback>span:first-child{color:#649b88;background:#e8f1ec;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font:600 9px DM Mono,monospace;display:grid}.stage2-feedback.error{color:#a15f4d}.stage2-feedback.error>span:first-child{color:#a85f4e;background:#f9ded3}.stage2-feedback.success{color:#578a78}.stage2-feedback.success>span:first-child{color:#54947b;background:#dff1e6}.stage2-answer-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px;display:grid}.stage2-answer-row textarea{resize:vertical;color:#476c6d;background:#fffefa;border:1px solid #d4e3dd;border-radius:5px;outline:0;width:100%;min-height:42px;padding:9px 11px;font:11px/1.4 DM Sans,sans-serif}.stage2-answer-row textarea.has-error{color:#a15f4d;text-underline-offset:3px;background:#fff4ef;border-color:#e6a28d;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#d97763}.stage2-answer-row textarea:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.stage2-footer{color:#9aaea8;justify-content:space-between;align-items:center;padding:9px 0 0;font-size:9px;display:flex}.stage2-footer button{color:var(--orange);background:0 0;border:0;padding:0;font-size:9px;font-weight:600}.port-lesson-side{align-content:start;gap:10px;display:grid}.port-hub-figure{background:#fff;border:1px solid #dce6e2;border-radius:7px;margin:0;overflow:hidden}.port-hub-image{background:#fff;place-items:center;height:170px;display:grid;overflow:hidden}.port-hub-image img{object-fit:cover;object-position:52% 48%;width:100%;height:100%;display:block}.port-hub-figure figcaption{color:#78918f;padding:8px 10px 9px;font-size:9px;line-height:1.4}.port-plan,.dot-explainer,.scope-card,.port-name-note{color:#688382;background:#fffefa;border:1px solid #dce8df;border-radius:6px;padding:11px 12px;font-size:9px;line-height:1.45}.port-plan{gap:5px;display:grid}.port-plan>b,.scope-card>b,.port-name-note>b{color:var(--teal);font:600 10px Space Grotesk,sans-serif}.port-plan strong{color:#5a8d80}.port-plan small,.scope-card small{color:#8aa09a;font-size:9px;line-height:1.4}.dot-explainer{background:#eff9f1;align-items:center;gap:10px;display:flex}.dot-explainer code{color:var(--teal);align-items:center;gap:2px;font:600 14px DM Mono,monospace;display:inline-flex}.dot-explainer code b{color:var(--orange)}.dot-explainer span{min-width:0}.scope-card{gap:6px;display:grid}.scope-card>div{gap:6px;display:flex}.scope-card button{color:#668683;background:#fffefa;border:1px solid #cbdcd6;border-radius:4px;padding:5px 8px;font-size:9px;font-weight:600}.scope-card button:hover,.scope-card button.selected{border-color:var(--orange);color:var(--orange);background:#fff8ed}.port-name-note{background:#fff8ed;gap:4px;display:grid}.stage3-unlock-row{color:#688382;background:#fffefa;border:1px solid #dce8df;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;padding:12px 13px;font-size:10px;display:flex}.stage3-unlock-row .outline-button{margin:0;padding:8px 11px}.stage-three-card{background:#f9fbf7}.stage-three-card>p{max-width:780px}.stage3-lesson-layout{grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:18px;margin-top:16px;display:grid}.stage3-practice{min-width:0}.stage3-code-card{background:#173d43;border:1px solid #d9e7dd;border-radius:6px;overflow:hidden;box-shadow:0 6px 15px #13363912}.stage3-code-line{color:#cbe9da;border-bottom:1px solid #d2eddf14;align-items:center;gap:10px;min-height:34px;padding:0 10px;font:10px/1.5 DM Mono,monospace;display:flex}.stage3-code-line:last-child{border-bottom:0}.stage3-code-line.current{background:#60b29d1f}.stage3-code-line.editing{background:#60b29d2e}.stage3-line-number{color:#6e9790;text-align:right;width:12px}.stage3-code-line code{white-space:nowrap;flex:1;min-width:0;overflow-x:auto}.stage3-line-placeholder{color:#8eb9ab;white-space:normal;font:italic 9px/1.35 DM Sans,sans-serif;display:block}.stage3-line-status{color:#83a79d;letter-spacing:.04em;font-size:8px}.stage3-function-token{color:#f3c878;text-underline-offset:3px;cursor:help;-webkit-text-decoration:underline dotted #f3c878bf;text-decoration:underline dotted #f3c878bf}.stage3-function-token:hover{color:#fff0bf}.stage3-inline-editor{color:#f4dfb5;width:100%;min-width:0;font:inherit;background:#0f3036;border:1px solid #b7dccd5c;border-radius:3px;outline:0;padding:4px 5px}.stage3-inline-editor:focus{border-color:#f3b36f;box-shadow:0 0 0 2px #f3b36f1f}.stage3-inline-editor.has-error{color:#ffb39a;text-underline-offset:3px;border-color:#f09b85;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#e28c79}.stage3-save-button,.stage3-edit-button{color:#9dd1bf;background:0 0;border:1px solid #b7dccd40;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.stage3-save-button:hover,.stage3-edit-button:hover{color:#f3b36f;border-color:#f3b36f}.stage3-clear-button{color:#e3b86f;background:0 0;border:1px solid #f2c16b59;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.stage3-clear-button:hover{color:#f3b36f;border-color:#f3b36f}.stage3-line-hint{color:#a7c8bc;background:#204a4e;padding:7px 12px 8px 34px;font-size:9px;line-height:1.4}.stage3-line-hint.error{color:#ffad91}.stage3-feedback{color:#7b928e;align-items:center;gap:7px;min-height:32px;margin-top:8px;font-size:10px;line-height:1.4;display:flex}.stage3-feedback>span:first-child{color:#649b88;background:#e8f1ec;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font:600 9px DM Mono,monospace;display:grid}.stage3-feedback.error{color:#a15f4d}.stage3-feedback.error>span:first-child{color:#a85f4e;background:#f9ded3}.stage3-feedback.success{color:#578a78}.stage3-feedback.success>span:first-child{color:#54947b;background:#dff1e6}.stage3-answer-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px;display:grid}.stage3-answer-row textarea{resize:vertical;color:#476c6d;background:#fffefa;border:1px solid #d4e3dd;border-radius:5px;outline:0;width:100%;min-height:42px;padding:9px 11px;font:11px/1.4 DM Sans,sans-serif}.stage3-answer-row textarea.has-error{color:#a15f4d;text-underline-offset:3px;background:#fff4ef;border-color:#e6a28d;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#d97763}.stage3-answer-row textarea:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.stage3-footer{color:#9aaea8;justify-content:space-between;align-items:center;padding:9px 0 0;font-size:9px;display:flex}.stage3-footer button{color:var(--orange);background:0 0;border:0;padding:0;font-size:9px;font-weight:600}.stage3-footer-actions{align-items:center;gap:12px;display:flex}.stage3-side{align-content:start;gap:10px;display:grid}.stage3-function-picker,.stage3-reference-card,.stage3-index-card,.stage3-format-card{color:#688382;background:#fffefa;border:1px solid #dce8df;border-radius:6px;padding:11px 12px;font-size:9px;line-height:1.45}.stage3-function-picker{gap:7px;display:grid}.stage3-function-picker>span{color:var(--teal);font:600 10px Space Grotesk,sans-serif}.stage3-function-picker select{color:#466f70;background:#fff;border:1px solid #cbdcd6;border-radius:4px;width:100%;padding:7px 8px;font:10px DM Mono,monospace}.stage3-function-picker select optgroup{color:var(--teal);font-weight:600}.stage3-function-picker>small{color:#8aa09a;font-size:9px}.stage3-module-card{color:#688382;background:#eef8f1;border:1px solid #dce8df;border-radius:6px;padding:10px 12px;font-size:9px;line-height:1.45}.stage3-module-card b{color:var(--teal);margin-bottom:4px;font:600 10px Space Grotesk,sans-serif;display:block}.stage3-reference-card{background:#eff9f1;gap:6px;display:grid}.stage3-reference-card code,.stage3-format-card code{color:var(--teal);overflow-wrap:anywhere;font:600 10px/1.4 DM Mono,monospace}.stage3-reference-card strong,.stage3-index-card b{color:var(--teal);font:600 10px Space Grotesk,sans-serif}.stage3-reference-card small{color:#8aa09a;font-size:9px}.stage3-index-card{background:#fff8ed;gap:5px;display:grid}.stage3-format-card{gap:5px;display:grid}.stage3-format-card span{color:#7b928e}.stage-four-card{background:#fbfaf5}.stage-four-card>p{max-width:800px}.global-variables-layout{grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:18px;margin-top:16px;display:grid}.global-variables-practice{min-width:0}.global-variables-code-card{background:#173d43;border:1px solid #d9e7dd;border-radius:6px;overflow:hidden;box-shadow:0 6px 15px #13363912}.global-variable-line{color:#cbe9da;border-bottom:1px solid #d2eddf14;align-items:center;gap:10px;min-height:38px;padding:0 10px;font:10px/1.5 DM Mono,monospace;display:flex}.global-variable-line-group:last-child .global-variable-line{border-bottom:0}.global-variable-line.current{background:#60b29d1f}.global-variable-line.editing{background:#60b29d2e}.global-variable-line-number{color:#6e9790;text-align:right;width:12px}.global-variable-line code{white-space:nowrap;flex:1;min-width:0;overflow-x:auto}.global-variable-placeholder{color:#8eb9ab;white-space:normal;font:italic 9px/1.35 DM Sans,sans-serif;display:block}.global-variable-status{color:#83a79d;letter-spacing:.04em;font-size:8px}.global-variable-editor{color:#f4dfb5;width:100%;min-width:0;font:inherit;background:#0f3036;border:1px solid #b7dccd5c;border-radius:3px;outline:0;padding:4px 5px}.global-variable-editor:focus{border-color:#f3b36f;box-shadow:0 0 0 2px #f3b36f1f}.global-variable-editor.has-error{color:#ffb39a;text-underline-offset:3px;border-color:#f09b85;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#e28c79}.global-variable-save-button,.global-variable-edit-button{color:#9dd1bf;background:0 0;border:1px solid #b7dccd40;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.global-variable-save-button:hover,.global-variable-edit-button:hover{color:#f3b36f;border-color:#f3b36f}.global-variable-clear-button{color:#e3b86f;background:0 0;border:1px solid #f2c16b59;border-radius:3px;padding:3px 4px;font:8px DM Mono,monospace}.global-variable-clear-button:hover{color:#f3b36f;border-color:#f3b36f}.global-variable-line-hint{color:#a7c8bc;background:#204a4e;padding:7px 12px 8px 34px;font-size:9px;line-height:1.4}.global-variable-line-hint.error{color:#ffad91}.stage4-feedback{color:#7b928e;align-items:center;gap:7px;min-height:32px;margin-top:8px;font-size:10px;line-height:1.4;display:flex}.stage4-feedback>span:first-child{color:#649b88;background:#e8f1ec;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font:600 9px DM Mono,monospace;display:grid}.stage4-feedback.error{color:#a15f4d}.stage4-feedback.error>span:first-child{color:#a85f4e;background:#f9ded3}.stage4-feedback.success{color:#578a78}.stage4-feedback.success>span:first-child{color:#54947b;background:#dff1e6}.stage4-answer-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:7px;display:grid}.stage4-answer-row textarea{resize:vertical;color:#476c6d;background:#fffefa;border:1px solid #d4e3dd;border-radius:5px;outline:0;width:100%;min-height:42px;padding:9px 11px;font:11px/1.4 DM Sans,sans-serif}.stage4-answer-row textarea.has-error{color:#a15f4d;text-underline-offset:3px;background:#fff4ef;border-color:#e6a28d;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#d97763}.stage4-answer-row textarea:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.stage4-footer{color:#9aaea8;justify-content:space-between;align-items:center;padding:9px 0 0;font-size:9px;display:flex}.stage4-footer button{color:var(--orange);background:0 0;border:0;padding:0;font-size:9px;font-weight:600}.stage4-footer-actions{align-items:center;gap:12px;display:flex}.global-variables-side{align-content:start;gap:10px;display:grid}.global-variable-note,.milliseconds-card,.speed-resolution-card,.control-loop-card{color:#688382;border:1px solid #dce8df;border-radius:6px;gap:6px;padding:11px 12px;font-size:9px;line-height:1.45;display:grid}.global-variable-note{background:#eef8f1}.milliseconds-card{background:#fff8ed}.speed-resolution-card{background:#eff5f7}.control-loop-card{background:#fffefa}.global-variable-note b,.milliseconds-card b,.speed-resolution-card b,.control-loop-card b{color:var(--teal);font:600 10px Space Grotesk,sans-serif}.global-variable-note code,.milliseconds-card code,.speed-resolution-card code,.control-loop-card code{color:var(--teal);font:600 10px DM Mono,monospace}.global-variable-note span,.milliseconds-card span,.speed-resolution-card span,.control-loop-card span{color:#7b928e}.milliseconds-card small{color:#a5846f;font-size:9px}.admin-shell{background:var(--cream);min-height:100vh;color:var(--ink);padding:40px 7vw 70px}.admin-topbar{color:#76908f;letter-spacing:.1em;justify-content:space-between;align-items:center;max-width:1080px;margin:0 auto 58px;font:500 9px DM Mono,monospace;display:flex}.admin-back{color:var(--orange);letter-spacing:0;font:600 10px DM Sans,sans-serif;text-decoration:none}.admin-back:hover{text-underline-offset:3px;text-decoration:underline}.admin-hero{max-width:1080px;margin:0 auto 26px}.admin-eyebrow{color:var(--orange);letter-spacing:.13em;text-transform:uppercase;margin:0;font:500 9px DM Mono,monospace}.admin-hero h1{color:var(--teal);letter-spacing:-.05em;margin:10px 0 7px;font:600 clamp(34px,5vw,58px)/.98 Space Grotesk,sans-serif}.admin-hero>p:last-child{max-width:560px;color:var(--ink-soft);margin:0;font-size:14px;line-height:1.55}.admin-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);align-items:start;gap:18px;max-width:1080px;margin:0 auto;display:grid}.admin-card{background:#fffefa;border:1px solid #d9e3de;border-radius:10px;padding:22px;box-shadow:0 16px 34px #14393d0d}.admin-main-card{min-width:0}.admin-card-heading{border-bottom:1px solid #e5ece8;justify-content:space-between;align-items:flex-start;gap:15px;padding-bottom:16px;display:flex}.admin-card h2{color:var(--teal);margin:6px 0 0;font:600 20px Space Grotesk,sans-serif}.admin-status{letter-spacing:.05em;border-radius:4px;padding:6px 8px;font:500 8px DM Mono,monospace}.admin-status.on{color:#4f987e;background:#e7f4ee}.admin-status.off{color:#a76650;background:#f9e2d8}.admin-toggle-row{border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;gap:16px;min-height:67px;display:flex}.admin-toggle-row>div{gap:4px;display:grid}.admin-toggle-row strong{color:var(--teal);font:600 12px Space Grotesk,sans-serif}.admin-toggle-row span{color:#829a96;font-size:10px;line-height:1.4}.admin-switch{text-align:left;background:#d8e4de;border:0;border-radius:20px;flex:none;width:40px;height:22px;padding:2px}.admin-switch i{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;display:block;box-shadow:0 1px 3px #14393d33}.admin-switch.selected{background:#6ab6a7}.admin-switch.selected i{transform:translate(18px)}.admin-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:19px 0;display:grid}.admin-field-grid label{gap:6px;display:grid}.admin-field-grid label>span{color:#79928e;font:500 9px DM Mono,monospace}.admin-field-grid input{width:100%;color:var(--teal);background:#fff;border:1px solid #d8e4de;border-radius:5px;outline:0;padding:10px 11px;font-size:12px}.admin-field-grid input:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.admin-field-grid input[readonly]{color:#6e8c88;background:#f3f7f2}.admin-key-block{border-top:1px solid #e5ece8;border-bottom:1px solid #e5ece8;gap:12px;padding:17px 0;display:grid}.admin-key-block>div{gap:5px;display:grid}.admin-key-block strong{color:var(--teal);font:600 12px Space Grotesk,sans-serif}.admin-key-block span{color:#829a96;font-size:10px;line-height:1.45}.admin-key-block input{color:var(--teal);background:#fff;border:1px solid #d8e4de;border-radius:5px;outline:0;padding:11px 12px;font:11px DM Mono,monospace}.admin-key-block input:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.admin-form-actions{flex-wrap:wrap;gap:8px;padding-top:17px;display:flex}.admin-primary,.admin-secondary{border-radius:5px;justify-content:center;align-items:center;min-height:36px;padding:0 13px;font-size:10px;font-weight:600;text-decoration:none;display:inline-flex}.admin-primary{border:1px solid var(--teal);background:var(--teal);color:#fff}.admin-primary:hover{border-color:var(--orange);background:var(--orange)}.admin-primary:disabled,.admin-secondary:disabled{cursor:wait;opacity:.55}.admin-secondary{color:#668683;background:#fffefa;border:1px solid #cbdcd6}.admin-secondary:hover{border-color:var(--orange);color:var(--orange)}.admin-notice{border-left:3px solid var(--orange);color:#8c654f;background:#fff7e9;margin-top:14px;padding:10px 12px;font-size:10px;line-height:1.45}.admin-side{gap:18px;display:grid}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.admin-metrics div{background:#f2f7f1;border-radius:6px;padding:12px 10px}.admin-metrics strong{color:var(--teal);font:600 19px Space Grotesk,sans-serif;display:block}.admin-metrics span{color:#819994;margin-top:4px;font-size:9px;display:block}.admin-safety-card{background:var(--teal);color:#e8f1e8}.admin-safety-card h2{color:#f3f5e8}.admin-safety-card p:not(.admin-eyebrow){color:#a9c6bd;font-size:10px;line-height:1.55}.admin-safety-card code{color:var(--yellow);font:10px DM Mono,monospace}@media (max-width:760px){.admin-shell{padding:25px 18px 50px}.admin-topbar{margin-bottom:40px}.admin-topbar>span{display:none}.admin-grid{grid-template-columns:1fr}}.import-guide{background:#f8fbf5;border-bottom:1px solid #e8eeea;padding:17px 20px 18px}.guide-head{color:#7b9993;letter-spacing:.1em;justify-content:space-between;align-items:center;font:500 9px DM Mono,monospace;display:flex}.guide-head b{color:#b89b80;font-weight:400}.guide-copy{color:#688382;margin:9px 0 12px;font-size:11px;line-height:1.5}.code-card{background:#173d43;border:1px solid #d9e7dd;border-radius:6px;overflow:hidden;box-shadow:0 6px 15px #13363912}.code-line{border-bottom:1px solid #d2eddf14;align-items:center;gap:12px;min-height:30px;padding:0 12px;display:flex}.code-line:last-child{border-bottom:0}.line-number{color:#6e9790;text-align:right;width:11px;font:10px DM Mono,monospace}.code-line code{white-space:nowrap;color:#cbe9da;min-width:0;font:10px/1.5 DM Mono,monospace;overflow-x:auto}.code-source{color:#f5c76b}.code-keyword{color:#ff9a72}.code-name{color:#bce2d3}.comma-note{color:#75918c;align-items:center;gap:9px;margin-top:12px;font-size:10px;line-height:1.4;display:flex}.comma-badge{color:#bd764f;background:#f8e1c0;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font:700 15px Georgia,serif;display:grid}.comma-note strong{color:#668581}.hub-card{padding:0;overflow:hidden}.hub-image-wrap{background:#fff;place-items:center;height:145px;display:grid;overflow:hidden}.hub-image-wrap img{object-fit:cover;object-position:52% 48%;width:100%;height:100%;display:block}.hub-card-body{padding:16px 18px 18px}.hub-card-body strong{color:var(--teal);margin-top:6px;font:600 15px Space Grotesk,sans-serif;display:block}.hub-card-body p{color:#7a9390;margin:7px 0 12px;font-size:10px;line-height:1.5}.hub-card-body button{color:var(--orange);background:0 0;border:0;padding:0;font-size:10px;font-weight:600}.hub-card-body button span{margin-left:5px}.import-groups-card{padding-bottom:13px}.import-group-list{gap:6px;margin-top:13px;display:grid}.import-group{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:flex-start;gap:9px;width:100%;min-height:55px;padding:8px 7px;display:flex}.import-group:hover,.import-group.selected{background:#eef8f2;border-color:#cbe3da}.group-number{width:22px;height:22px;color:var(--orange);background:#f8eee2;border-radius:5px;flex:none;place-items:center;font:600 10px DM Mono,monospace;display:grid}.import-group.tools .group-number{color:#5a9d8b;background:#e9f4ee}.import-group.app .group-number{color:#7197a6;background:#e9f0f4}.import-group>span:nth-child(2){gap:3px;min-width:0;display:grid}.import-group strong{color:#45696c;font:600 10px Space Grotesk,sans-serif}.import-group small{color:#95aaa5;font-size:9px;line-height:1.35}.group-arrow{color:var(--orange);margin-left:auto;padding-top:3px;font-size:12px}@media (max-width:760px){.lesson-summary{flex-direction:column;align-items:flex-start;gap:10px}.lesson-pill{margin-left:0}.port-lesson-layout,.stage3-lesson-layout,.global-variables-layout,.stage2-answer-row,.stage3-answer-row,.stage4-answer-row{grid-template-columns:1fr}.stage2-answer-row .run-button,.stage3-answer-row .run-button,.stage4-answer-row .run-button{width:100%}.stage3-unlock-row{flex-direction:column;align-items:flex-start}.port-hub-image{height:190px}.import-guide{padding:14px 14px 15px}.guide-head b{display:none}}.practice-panel{background:#fbfdf8;border-bottom:1px solid #e8eeea}.practice-top{justify-content:space-between;align-items:center;padding:15px 20px 0;display:flex}.guide-kicker,.step-count{color:#7f9a94;letter-spacing:.1em;font:500 9px DM Mono,monospace}.step-count{color:var(--orange)}.practice-title{align-items:flex-start;gap:10px;padding:14px 20px 13px;display:flex}.question-mark{width:25px;height:25px;color:var(--orange);background:#f9e8cf;border-radius:50%;flex:none;place-items:center;font:700 15px Space Grotesk,sans-serif;display:grid}.practice-title>div{min-width:0}.practice-title strong{color:var(--teal);font:600 15px Space Grotesk,sans-serif;display:block}.practice-title p{color:#587776;margin:5px 0 0;font-size:12px;line-height:1.5}.editor-shell{background:#173d43;border:1px solid #d7e4dc;border-radius:7px;margin:0 20px;overflow:hidden;box-shadow:0 6px 15px #13363912}.editor-head{color:#7aa099;letter-spacing:.1em;border-bottom:1px solid #d2eddf1f;justify-content:space-between;padding:8px 12px;font:500 8px DM Mono,monospace;display:flex}.editor-shell .code-line{min-height:31px;padding:0 8px 0 12px}.editor-shell .code-line.editing{background:#f7c46914}.editor-shell code{font-size:10px}.code-placeholder{color:#6e9790;font-style:italic}.inline-line-editor{color:#f4f5e6;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:4px 0;font:10px DM Mono,monospace}.inline-line-editor.has-error{color:#ff9b7a;text-underline-offset:3px;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#ff715f}.line-status{color:#75a097;letter-spacing:.08em;white-space:nowrap;margin-left:auto;font:500 7px DM Mono,monospace}.line-edit-button{color:#b8d6c8;letter-spacing:.04em;background:0 0;border:1px solid #c2e1d34d;border-radius:3px;padding:3px 5px;font:500 7px DM Mono,monospace}.line-edit-button:hover,.code-line.editing .line-edit-button{color:#f2c16b;border-color:#f2c16b}.line-clear-button{color:#e3b86f;letter-spacing:.04em;background:0 0;border:1px solid #f2c16b59;border-radius:3px;padding:3px 5px;font:500 7px DM Mono,monospace}.line-clear-button:hover{color:#f2c16b;border-color:#f2c16b}.line-save-button{color:#173d43;letter-spacing:.04em;background:#e8b863;border:1px solid #d7a758;border-radius:3px;padding:3px 5px;font:600 7px DM Mono,monospace}.line-save-button:hover{background:#f5ca78}.line-hint{color:#a9c7bc;background:#12353a;border-top:1px solid #d2eddf1a;align-items:flex-start;gap:7px;margin:0;padding:7px 12px 8px 38px;font-size:9px;line-height:1.4;display:flex}.line-hint.error{color:#ffb09a}.line-hint-icon{color:#d8e9dc;background:#315b5b;border-radius:50%;flex:none;place-items:center;width:14px;height:14px;font:600 8px DM Mono,monospace;display:grid}.line-hint.error .line-hint-icon{color:#ffe4d5;background:#874e45}.import-roadmap{background:#f6faf4;border:1px solid #d8e6dd;border-radius:6px;margin:11px 20px 0;padding:11px 12px 12px}.roadmap-head{color:#78958e;letter-spacing:.1em;justify-content:space-between;font:500 8px DM Mono,monospace;display:flex}.roadmap-head span:last-child{color:#b18a6e;letter-spacing:0}.roadmap-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px;display:grid}.roadmap-item{background:#fffefa;border:1px solid #dbe8df;border-radius:5px;min-width:0;padding:8px 8px 9px}.roadmap-item.active{border-color:#e6b587;box-shadow:0 0 0 2px #fff2df}.roadmap-item-top{gap:4px;display:grid}.roadmap-item-top span{color:#a1b3ad;letter-spacing:.08em;font:500 8px DM Mono,monospace}.roadmap-item-top code{color:#4f7773;text-overflow:ellipsis;white-space:nowrap;font:10px DM Mono,monospace;overflow:hidden}.roadmap-item strong{color:#4b7370;margin-top:7px;font:600 10px Space Grotesk,sans-serif;display:block}.roadmap-item p{color:#78918c;margin:4px 0 0;font-size:9px;line-height:1.42}.roadmap-item.hub{border-top:2px solid #e3ad61}.roadmap-item.tools{border-top:2px solid #75b39d}.roadmap-item.app{border-top:2px solid #8ca9b6}.typed-preview{color:#f4f5e6}.typed-preview.has-error{color:#ff9b7a;text-underline-offset:3px;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#ff715f}.live-feedback{color:#76918d;background:#f4f9f3;border:1px solid #dfeae2;border-radius:5px;align-items:center;gap:8px;min-height:34px;margin:10px 20px 0;padding:8px 10px;font-size:10px;line-height:1.4;display:flex}.live-feedback.error{color:#a3624e;background:#fff1eb;border-color:#f1c6b7}.feedback-icon{color:#55967f;background:#dceee3;border-radius:50%;flex:none;place-items:center;width:16px;height:16px;font:600 9px DM Mono,monospace;display:grid}.live-feedback.error .feedback-icon{color:#9d4f3c;background:#f4c1af}.answer-row{gap:8px;margin:10px 20px 0;display:flex}.inline-edit-note{color:#72908a;background:#f2f8f1;border:1px solid #d8e7de;border-radius:5px;justify-content:space-between;align-items:center;gap:10px;margin:10px 20px 0;padding:8px 10px;font-size:9px;display:flex}.inline-edit-note button{color:var(--orange);background:#fffefa;border:1px solid #c2d8ce;border-radius:4px;padding:5px 8px;font-size:9px;font-weight:600}.answer-row input,.answer-row textarea{min-width:0;min-height:39px;color:var(--ink);background:#fff;border:1px solid #d5e2dc;border-radius:5px;outline:none;flex:1;padding:10px 12px;font:11px/1.45 DM Mono,monospace}.answer-row textarea{resize:vertical}.answer-row input:focus,.answer-row textarea:focus{border-color:#8fc8bb;box-shadow:0 0 0 3px #eaf7f2}.answer-row input::placeholder,.answer-row textarea::placeholder{color:#a6b6b1;font-family:DM Sans,sans-serif}.run-button{background:var(--teal);color:#fff;white-space:nowrap;border:0;border-radius:5px;min-height:39px;padding:0 12px;font-size:10px;font-weight:600}.run-button:hover{background:var(--orange)}.run-button span{color:#f3c269;margin-left:6px}.hint-box{color:#876c56;background:#fff8ed;border:1px dashed #e6bd93;border-radius:5px;align-items:flex-start;gap:9px;margin:10px 20px 0;padding:10px 12px;font-size:10px;line-height:1.45;display:flex}.hint-box>div{gap:3px;display:grid}.hint-box b{color:#a46948;text-transform:uppercase;letter-spacing:.08em;font-size:9px}.hint-icon{color:#b16d42;background:#f5d8ae;border-radius:50%;flex:none;place-items:center;width:18px;height:18px;display:grid}.hint-box button{color:#ba9c85;background:0 0;border:0;margin-left:auto}.test-result{color:#7b928e;align-items:center;gap:7px;min-height:26px;margin:8px 20px 0;font-size:10px;line-height:1.35;display:flex}.test-result>span{color:#649b88;letter-spacing:.06em;background:#e8f1ec;border-radius:3px;padding:3px 5px;font:500 8px DM Mono,monospace}.test-result.error{color:#a15f4d}.test-result.error>span{color:#a85f4e;background:#f9ded3}.test-result.success{color:#578a78}.test-result.success>span{color:#54947b;background:#dff1e6}.practice-footer{color:#9aaea8;justify-content:space-between;align-items:center;padding:10px 20px 15px;font-size:9px;display:flex}.practice-actions{align-items:center;gap:12px;display:flex}.practice-footer button{color:var(--orange);background:0 0;border:0;padding:0;font-size:9px;font-weight:600}.complete-panel{background:#eff9f1;border:1px solid #cce4d8;border-radius:7px;margin:0 20px 18px;padding:20px}.complete-mark{color:#fff;background:#68b59b;border-radius:50%;place-items:center;width:31px;height:31px;font:600 9px DM Mono,monospace;display:grid}.complete-panel strong{color:var(--teal);margin-top:12px;font:600 17px Space Grotesk,sans-serif;display:block}.complete-panel p{color:#64817d;max-width:500px;margin:6px 0 13px;font-size:11px;line-height:1.5}.matrix-lab,.axis-lab{background:#f0f8f1;border:1px solid #d8e8df;border-radius:6px;align-items:center;gap:15px;margin:0 20px 12px;padding:11px 12px;display:flex}.matrix-lab>div:first-child,.axis-lab>div:last-child{gap:4px;min-width:110px;display:grid}.matrix-lab b,.axis-lab b{color:#4c7773;font-size:10px}.matrix-lab span,.axis-lab span{color:#7d9690;font-size:9px;line-height:1.4}.matrix-samples{gap:9px;margin-left:auto;display:flex}.matrix-sample{justify-items:center;gap:4px;display:grid}.matrix-grid{background:#6f9290;border-radius:4px;grid-template-columns:repeat(5,1fr);gap:2px;width:35px;height:35px;padding:3px;display:grid}.matrix-grid i{background:#dbe8df;border-radius:1px}.matrix-grid i.on{background:#f7c469;box-shadow:0 0 3px #f7c469bf}.matrix-sample small{color:#789590;font:8px DM Mono,monospace}.axis-graphic{background:#fffefa;border:1px solid #d5e7dc;border-radius:50%;flex:none;width:78px;height:64px;position:relative}.axis-hub-dot{background:var(--orange);border-radius:50%;width:10px;height:10px;position:absolute;top:27px;left:33px}.axis-line{transform-origin:0;background:#6cb3a1;height:2px;position:absolute;top:31px;left:38px}.axis-x{width:25px;transform:rotate(-25deg)}.axis-y{background:#e6ae5f;width:23px;transform:rotate(35deg)}.axis-z{background:#89a4b0;width:18px;transform:rotate(90deg)}.axis-graphic b{color:#668d88;font:600 9px DM Mono,monospace;position:absolute}.axis-graphic b:first-of-type{top:15px;right:7px}.axis-graphic b:nth-of-type(2){color:#bd824f;bottom:12px;right:7px}.axis-graphic b:nth-of-type(3){color:#6f8d9a;bottom:3px;left:33px}.source-legend{color:#7e9792;flex-wrap:wrap;align-items:center;gap:7px 10px;font-size:9px;line-height:1.4;display:flex}.source-dot{background:#f0b65f;border-radius:50%;width:7px;height:7px;margin-right:-6px;display:inline-block}.source-dot.tools{background:#70b49f;margin-left:4px}.source-dot.app{background:#88a6b4;margin-left:4px}.wheel-lab-shell{min-height:100vh;color:var(--ink);background:linear-gradient(135deg,#f6faf4 0%,#fffdf6 58%,#f7f2e9 100%);padding:24px 6vw 55px}.wheel-lab-topbar{color:#7d9892;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:18px;max-width:1200px;margin:0 auto;font:500 9px DM Mono,monospace;display:flex}.wheel-lab-back,.wheel-lab-footer a{color:var(--orange);letter-spacing:.02em;font:600 10px DM Mono,monospace;text-decoration:none}.wheel-lab-back:hover,.wheel-lab-footer a:hover{color:var(--teal)}.wheel-lab-badge{color:#5a8e80;background:#ffffff8c;border:1px solid #d5e6da;border-radius:99px;padding:7px 10px}.wheel-lab-hero{grid-template-columns:minmax(0,1fr) 290px;align-items:end;gap:30px;max-width:1200px;margin:58px auto 28px;display:grid}.wheel-lab-eyebrow{color:#6d9189;letter-spacing:.12em;align-items:center;gap:7px;font:500 9px DM Mono,monospace;display:flex}.wheel-lab-eyebrow>span{background:#ef8b59;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #f9e5d6}.wheel-lab-hero h1{color:var(--teal);letter-spacing:-.055em;margin:12px 0 13px;font:600 clamp(42px,6vw,76px)/.92 Space Grotesk,sans-serif}.wheel-lab-hero h1 em{color:var(--orange);font-style:normal}.wheel-lab-hero p{color:#73908a;max-width:600px;margin:0;font-size:13px;line-height:1.55}.wheel-lab-question{background:var(--teal);color:#fffdf6;border:1px solid #2c5b5b;border-radius:9px;padding:18px;box-shadow:0 10px 24px #153e4114}.wheel-lab-question span{color:#f5c66e;letter-spacing:.12em;font:500 8px DM Mono,monospace}.wheel-lab-question strong{margin:12px 0 10px;font:600 16px/1.2 Space Grotesk,sans-serif;display:block}.wheel-lab-question small{color:#aed0c1;font-size:10px;line-height:1.4}.wheel-lab-workspace{grid-template-columns:minmax(275px,.72fr) minmax(0,1.28fr);gap:16px;max-width:1200px;margin:0 auto;display:grid}.wheel-lab-control-card,.wheel-lab-animation-card,.wheel-lab-result-main,.wheel-lab-insight-card{background:#fffefa;border:1px solid #d9e3de;border-radius:10px;padding:18px;box-shadow:0 8px 22px #2a4b430b}.wheel-lab-card-heading{color:#7b9993;letter-spacing:.1em;justify-content:space-between;align-items:center;font:500 9px DM Mono,monospace;display:flex}.wheel-lab-card-heading b{color:var(--orange);font:600 9px DM Mono,monospace}.wheel-choice-list{gap:8px;margin-top:14px;display:grid}.wheel-choice{text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe6df;border-radius:7px;align-items:center;gap:10px;width:100%;padding:9px;display:flex;position:relative}.wheel-choice:hover,.wheel-choice.selected{background:#f1f8f1;border-color:#9bcbbd;box-shadow:0 0 0 2px #edf8f1}.wheel-choice:disabled{cursor:default;opacity:.85}.wheel-photo-frame{background:#f2f5ef;border-radius:7px;flex:none;place-items:center;width:58px;height:58px;display:grid;overflow:hidden}.wheel-photo-frame img{object-fit:contain;mix-blend-mode:multiply;max-width:90%;max-height:90%}.wheel-choice-copy{gap:3px;min-width:0;display:grid}.wheel-choice-copy strong{color:var(--teal);font:600 10px Space Grotesk,sans-serif}.wheel-choice-copy small{color:#688382;font:9px DM Mono,monospace}.wheel-choice-copy em{color:#8aa09a;font-size:9px;line-height:1.25}.wheel-choice-copy a{color:var(--orange);font-size:8px}.wheel-choice-check{color:#55967f;margin-left:auto;font:600 9px DM Mono,monospace}.wheel-lab-note{color:#7d8f87;background:#fff8ed;border-radius:7px;gap:9px;margin-top:14px;padding:10px;font-size:9px;line-height:1.4;display:flex}.wheel-lab-note>span{color:#a9684c;background:#f2d8ad;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font:700 13px Georgia,serif;display:grid}.wheel-lab-note p{margin:0}.wheel-lab-note b{color:#9b6b4c}.wheel-lab-note code{color:var(--teal);font:600 9px DM Mono,monospace}.wheel-stage{background:linear-gradient(#f5faf4 0%,#fffefa 74%);border-radius:8px;min-height:300px;margin-top:14px;padding:0 30px;position:relative;overflow:hidden}.wheel-motion-track{cursor:crosshair;outline:none;height:260px;position:absolute;bottom:0;left:42px;right:42px}.wheel-motion-track:focus-visible{box-shadow:inset 0 0 0 3px #dcefe5}.wheel-ground-line{background:#1e3133;border-radius:3px;height:3px;position:absolute;bottom:57px;left:0;right:0;box-shadow:0 2px #1e31331f}.wheel-start-mark,.wheel-target-mark{background:#5f7f79;width:2px;height:21px;position:absolute;bottom:48px;transform:translate(-1px)}.wheel-target-mark{background:var(--orange);width:3px;height:30px}.wheel-stage-label{color:#7b928e;letter-spacing:.08em;z-index:2;text-align:center;font:500 8px DM Mono,monospace;position:absolute;bottom:17px;transform:translate(-50%)}.wheel-stage-label b{color:var(--teal);letter-spacing:0;font-size:10px;display:block}.start-label{text-align:left;left:42px;transform:none}.wheel-avatar{z-index:3;transform-origin:50%;background:radial-gradient(circle at 38% 33%,#4f7070 0 3%,#173d43 4% 72%,#0e2b30 73%);border:5px solid #e8f0e7;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:57px;box-shadow:0 8px 16px #183a3c2e,inset 0 0 0 6px #ffffff0d}.wheel-rim-glow{border:2px solid #f7c46961;border-radius:50%;position:absolute;inset:11%}.wheel-spoke{transform-origin:0;background:#f7c46961;border-radius:5px;width:39%;height:7px;position:absolute;top:50%;left:50%}.wheel-dot{border:2px solid #ffffff61;border-radius:50%;width:9px;height:9px;margin:-4.5px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 1px #193e4124}.wheel-hub{background:#173d43;border:3px solid #f4c56d;border-radius:50%;place-items:center;width:22%;height:22%;display:grid;position:absolute}.wheel-hub i{background:#f8f2df;border-radius:50%;width:28%;height:28%}.wheel-distance-picker{margin-top:10px}.wheel-distance-picker label{color:#688382;margin-bottom:7px;font-size:10px;display:block}.wheel-distance-picker input{width:100%;accent-color:var(--orange)}.wheel-distance-picker>div{color:#8aa09a;justify-content:space-between;font:9px DM Mono,monospace;display:flex}.wheel-distance-picker strong{color:var(--orange);font-weight:600}.wheel-run-button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:6px;width:100%;min-height:42px;margin-top:13px;font-size:11px;font-weight:600}.wheel-run-button:hover{background:var(--orange)}.wheel-run-button:disabled{opacity:.65;cursor:wait}.wheel-run-button span{color:#f3c269;margin-left:7px}.wheel-lab-results{grid-template-columns:minmax(0,1.28fr) minmax(275px,.72fr);gap:16px;max-width:1200px;margin:16px auto 0;display:grid}.wheel-result-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;display:grid}.wheel-result-grid>div{background:#f3f8f2;border-radius:8px;padding:13px}.wheel-result-grid small{color:#8aa09a;letter-spacing:.08em;font:8px DM Mono,monospace;display:block}.wheel-result-grid strong{color:var(--teal);margin-top:6px;font:600 22px Space Grotesk,sans-serif;display:block}.wheel-result-grid i{color:#7b9993;font:500 9px DM Sans,sans-serif}.wheel-formula-box{color:#cbe9da;background:#173d43;border-radius:8px;gap:7px;margin-top:12px;padding:14px;display:grid}.wheel-formula-box>span{color:#7aa099;letter-spacing:.1em;font:500 8px DM Mono,monospace}.wheel-formula-box code{color:#f6cc78;overflow-wrap:anywhere;font:600 11px DM Mono,monospace}.wheel-formula-box p{color:#a9c7bc;margin:0;font-size:10px;line-height:1.45}.dot-legend{gap:5px;margin:18px 0 14px;display:flex}.dot-legend span{border:2px solid #fff;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 1px #d7e4dc}.wheel-lab-insight-card>strong{color:var(--teal);font:600 14px/1.25 Space Grotesk,sans-serif;display:block}.wheel-lab-insight-card>p{color:#78918c;margin:7px 0 15px;font-size:10px;line-height:1.5}.wheel-lab-field-note{border-left:3px solid var(--orange);color:#8b745f;background:#fff8ed;gap:4px;padding:10px;display:grid}.wheel-lab-field-note span{color:#b17656;letter-spacing:.1em;font:500 8px DM Mono,monospace}.wheel-lab-field-note b{color:#9a6e51;font-size:10px}.wheel-lab-field-note small{font-size:9px;line-height:1.4}.wheel-lab-footer{color:#8aa09a;justify-content:space-between;max-width:1200px;margin:22px auto 0;font-size:9px;display:flex}@media (max-width:900px){.wheel-lab-hero,.wheel-lab-workspace,.wheel-lab-results{grid-template-columns:1fr}}@media (max-width:650px){.wheel-lab-shell{padding:18px 14px 40px}.wheel-lab-topbar>span:first-of-type{display:none}.wheel-lab-hero{margin-top:38px}.wheel-lab-hero h1{font-size:42px}.wheel-stage{min-height:270px;padding:0 10px}.wheel-motion-track{left:24px;right:24px}.wheel-result-grid{grid-template-columns:1fr}.wheel-lab-footer{flex-direction:column;gap:7px}}@media (max-width:760px){.practice-top,.practice-title,.practice-footer{padding-left:14px;padding-right:14px}.editor-shell,.import-roadmap,.live-feedback,.answer-row,.inline-edit-note,.hint-box,.test-result,.complete-panel{margin-left:14px;margin-right:14px}.roadmap-list{grid-template-columns:1fr}.matrix-lab,.axis-lab{flex-direction:column;align-items:flex-start;margin-left:14px;margin-right:14px}.matrix-samples{margin-left:0}.answer-row{flex-direction:column}.answer-row input,.answer-row textarea,.run-button{width:100%}.practice-footer{flex-direction:column;align-items:flex-start;gap:8px}.line-status{display:none}}.speed-lab-shell{min-height:100vh;color:var(--ink);background:linear-gradient(135deg,#f6faf4 0%,#fffdf6 58%,#f7f2e9 100%);padding:24px 6vw 55px}.speed-lab-topbar{color:#7d9892;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:18px;max-width:1200px;margin:0 auto;font:500 9px DM Mono,monospace;display:flex}.speed-lab-back,.speed-lab-footer a{color:var(--orange);letter-spacing:.02em;font:600 10px DM Mono,monospace;text-decoration:none}.speed-lab-back:hover,.speed-lab-footer a:hover{color:var(--teal)}.speed-lab-badge{color:#5a8e80;background:#ffffff8c;border:1px solid #d5e6da;border-radius:99px;padding:7px 10px}.speed-lab-hero{grid-template-columns:minmax(0,1fr) 290px;align-items:end;gap:30px;max-width:1200px;margin:58px auto 28px;display:grid}.speed-lab-eyebrow{color:#6d9189;letter-spacing:.12em;align-items:center;gap:7px;font:500 9px DM Mono,monospace;display:flex}.speed-lab-eyebrow>span{background:#ef8b59;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #f9e5d6}.speed-lab-hero h1{color:var(--teal);letter-spacing:-.055em;margin:12px 0 13px;font:600 clamp(42px,6vw,76px)/.92 Space Grotesk,sans-serif}.speed-lab-hero h1 em,.speed-code-intro h2 em{color:var(--orange);font-style:normal}.speed-lab-hero p{color:#73908a;max-width:600px;margin:0;font-size:13px;line-height:1.55}.speed-lab-question{background:var(--teal);color:#fffdf6;border:1px solid #2c5b5b;border-radius:9px;padding:18px;box-shadow:0 10px 24px #153e4114}.speed-lab-question span{color:#f5c66e;letter-spacing:.12em;font:500 8px DM Mono,monospace}.speed-lab-question strong{margin:12px 0 10px;font:600 16px/1.2 Space Grotesk,sans-serif;display:block}.speed-lab-question small{color:#aed0c1;font-size:10px;line-height:1.4}.speed-lab-plan,.speed-lab-animation-card,.speed-lab-observe-card,.speed-code-intro,.speed-block-card,.speed-python-card,.speed-stage-detail,.speed-challenge-card{background:#fffefa;border:1px solid #d9e3de;border-radius:10px;max-width:1200px;margin-left:auto;margin-right:auto;padding:18px;box-shadow:0 8px 22px #2a4b430b}.speed-lab-card-heading{color:#7b9993;letter-spacing:.1em;justify-content:space-between;align-items:center;font:500 9px DM Mono,monospace;display:flex}.speed-lab-card-heading b{color:var(--orange);font:600 9px DM Mono,monospace}.speed-stage-cards{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px;display:grid}.speed-stage-card{min-width:0;color:var(--teal);text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe6df;border-radius:7px;align-items:center;gap:9px;padding:11px;transition:all .18s;display:flex;position:relative}.speed-stage-card:hover,.speed-stage-card.selected{border-color:var(--stage-color);box-shadow:0 0 0 2px var(--stage-color);background:#f7fbf5}@supports (color:color-mix(in lab, red, red)){.speed-stage-card:hover,.speed-stage-card.selected{box-shadow:0 0 0 2px color-mix(in srgb, var(--stage-color) 18%, white)}}.speed-stage-card.live{box-shadow:0 0 0 3px var(--stage-color)}@supports (color:color-mix(in lab, red, red)){.speed-stage-card.live{box-shadow:0 0 0 3px color-mix(in srgb, var(--stage-color) 20%, white)}}.speed-stage-number{background:var(--stage-color);color:#fff;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font:600 11px DM Mono,monospace;display:grid}.speed-stage-copy{gap:3px;min-width:0;display:grid}.speed-stage-copy strong{font:600 11px Space Grotesk,sans-serif}.speed-stage-copy small{color:#78918c;font-size:9px;line-height:1.2}.speed-stage-arrow{color:var(--stage-color);margin-left:auto;font-size:14px}.speed-lab-workspace{grid-template-columns:minmax(0,1.28fr) minmax(275px,.72fr);gap:16px;max-width:1200px;margin:16px auto 0;display:grid}.speed-lab-animation-card,.speed-lab-observe-card{max-width:none;margin:0}.speed-lab-track-wrap{background:linear-gradient(#f5faf4 0%,#fffefa 100%);border-radius:8px;margin-top:15px;padding:17px 14px 12px}.speed-lab-track-labels{color:#78918c;letter-spacing:.08em;justify-content:space-between;font:500 8px DM Mono,monospace;display:flex}.speed-lab-track{height:212px;margin-top:8px;position:relative;overflow:hidden}.speed-track-band{border-top:2px solid var(--stage-color);height:106px;position:absolute;top:44px}@supports (color:color-mix(in lab, red, red)){.speed-track-band{border-top:2px solid color-mix(in srgb, var(--stage-color) 55%, white)}}.speed-track-band{border-bottom:2px solid var(--stage-color)}@supports (color:color-mix(in lab, red, red)){.speed-track-band{border-bottom:2px solid color-mix(in srgb, var(--stage-color) 55%, white)}}.speed-track-band{background:var(--stage-color)}@supports (color:color-mix(in lab, red, red)){.speed-track-band{background:color-mix(in srgb, var(--stage-color) 10%, white)}}.speed-track-band{transition:background .2s}.speed-track-band.active{background:var(--stage-color)}@supports (color:color-mix(in lab, red, red)){.speed-track-band.active{background:color-mix(in srgb, var(--stage-color) 22%, white)}}.speed-track-band span{color:var(--stage-color);position:absolute;top:10px;left:10px}@supports (color:color-mix(in lab, red, red)){.speed-track-band span{color:color-mix(in srgb, var(--stage-color) 65%, #4a6966)}}.speed-track-band span{font:600 9px DM Mono,monospace}.speed-track-line{background:#1c3032;border-radius:3px;height:3px;position:absolute;bottom:48px;left:0;right:0;box-shadow:0 2px #1c30321f}.speed-target-line{background:var(--orange);border-radius:3px;width:3px;height:28px;position:absolute;bottom:36px;right:0}.speed-target-line:after{content:"TARGET";color:var(--orange);font:600 8px DM Mono,monospace;position:absolute;top:35px;right:-3px;transform:translate(50%)}.speed-wheel-position{will-change:left;width:0;height:64px;position:absolute;bottom:48px;left:0}.speed-wheel{transform-origin:50%;background:radial-gradient(circle at 38% 33%,#607979 0 4%,#173d43 5% 73%,#0e2b30 74%);border:5px solid #e6efe5;border-radius:50%;width:64px;height:64px;position:relative;bottom:auto;left:0;box-shadow:0 8px 14px #183a3c2e,inset 0 0 0 5px #ffffff0d}.speed-wheel-ring{border:2px solid #f7c4697a;border-radius:50%;position:absolute;inset:10%}.speed-wheel-spoke{transform-origin:0;background:#f7c4698c;border-radius:5px;width:39%;height:5px;position:absolute;top:50%;left:50%}.speed-wheel-spoke.spoke-a{transform:translateY(-50%)rotate(0)}.speed-wheel-spoke.spoke-b{transform:translateY(-50%)rotate(90deg)}.speed-wheel-hub{background:#f8f2df;border:3px solid #f4c56d;border-radius:50%;width:18%;height:18%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.speed-track-note{color:#829791;align-items:center;gap:7px;margin-top:4px;font-size:9px;line-height:1.4;display:flex}.speed-track-dot{background:#e7b35e;border-radius:50%;flex:none;width:7px;height:7px}.speed-readout-grid{grid-template-columns:1.3fr 1fr 1fr;gap:8px;margin-top:12px;display:grid}.speed-readout-grid>div{background:#f3f8f2;border-radius:7px;padding:11px}.speed-readout-grid small{color:#8aa09a;letter-spacing:.08em;font:8px DM Mono,monospace;display:block}.speed-readout-grid strong{color:var(--teal);margin-top:6px;font:600 15px Space Grotesk,sans-serif;display:block}.speed-readout-grid i{color:#7b9993;font:500 9px DM Sans,sans-serif}.speed-control-row{margin-top:14px}.speed-control-row label{color:#688382;font-size:10px;display:block}.speed-control-row label strong{color:var(--orange)}.speed-control-row input{width:100%;accent-color:var(--orange);margin-top:8px}.speed-control-row>div{color:#8aa09a;justify-content:space-between;font:9px DM Mono,monospace;display:flex}.speed-run-button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:6px;width:100%;min-height:42px;margin-top:13px;font-size:11px;font-weight:600}.speed-run-button:hover{background:var(--orange)}.speed-run-button:disabled{opacity:.65;cursor:wait}.speed-run-button span{color:#f3c269;margin-left:7px}.speed-meter{background:#edf2eb;border-radius:99px;height:12px;margin-top:22px;overflow:hidden}.speed-meter span{border-radius:inherit;height:100%;transition:width 80ms linear,background .2s;display:block}.speed-meter-labels{color:#8aa09a;justify-content:space-between;align-items:center;margin-top:7px;font:8px DM Mono,monospace;display:flex}.speed-meter-labels strong{color:var(--teal);font:600 18px Space Grotesk,sans-serif}.speed-lab-observe-card h2{color:var(--teal);margin:19px 0 7px;font:600 24px Space Grotesk,sans-serif}.speed-lab-observe-card>p{color:#75918c;margin:0;font-size:10px;line-height:1.55}.speed-observe-question{border-left:3px solid var(--orange);color:#8b745f;background:#fff8ed;gap:6px;margin-top:17px;padding:11px;display:grid}.speed-observe-question span,.speed-encoder-note span{color:#b17656;letter-spacing:.1em;font:500 8px DM Mono,monospace}.speed-observe-question strong{color:#9a6e51;font-size:10px;line-height:1.35}.speed-inertia-note{color:#78918c;background:#eef8f1;border-radius:7px;gap:8px;margin-top:14px;padding:10px;font-size:9px;line-height:1.45;display:flex}.speed-inertia-note>span{color:var(--orange);font-size:17px}.speed-inertia-note p{margin:0}.speed-inertia-note b{color:var(--teal)}.speed-code-section{grid-template-columns:minmax(220px,.72fr) minmax(0,1.1fr) minmax(0,1.25fr);gap:16px;max-width:1200px;margin:16px auto 0;display:grid}.speed-code-intro,.speed-block-card,.speed-python-card{max-width:none;margin:0}.speed-code-intro h2{color:var(--teal);letter-spacing:-.04em;margin:17px 0 10px;font:600 27px/.98 Space Grotesk,sans-serif}.speed-code-intro>p{color:#78918c;margin:0;font-size:10px;line-height:1.5}.speed-encoder-note{background:#f7faf5;border:1px solid #dbe6df;border-radius:7px;gap:5px;margin-top:18px;padding:11px;display:grid}.speed-encoder-note strong{color:var(--teal);overflow-wrap:anywhere;font:600 9px DM Mono,monospace}.speed-encoder-note small{color:#78918c;font-size:9px;line-height:1.45}.speed-encoder-note code{color:var(--orange);font:600 9px DM Mono,monospace}.speed-code-card-head{color:#7b9993;letter-spacing:.09em;border-bottom:1px solid #e5ece8;justify-content:space-between;padding-bottom:11px;font:500 8px DM Mono,monospace;display:flex}.speed-code-card-head b{color:var(--orange);font-weight:600}.speed-block-tree{color:#557875;padding-top:14px;font:9px/1.45 DM Mono,monospace}.speed-block-row{background:#f2f7f1;border-radius:4px;align-items:center;gap:6px;min-height:26px;margin-bottom:5px;padding:4px 7px;display:flex}.speed-block-row span{color:#fff;font:600 8px DM Mono,monospace}.speed-block-row.condition span{background:#6eae9a;border-radius:3px;padding:3px 5px}.speed-block-row.action span{background:#dfa462;border-radius:3px;padding:3px 5px}.speed-block-row b{color:var(--teal);font-weight:600}.speed-block-branch{border-left:2px solid #bfdccd;margin-left:16px;padding-left:10px}.speed-block-branch.right{border-color:#efc7a5}.speed-block-row.muted{opacity:.75}.speed-block-row.muted span{background:#a0a9a0}.speed-block-caption{color:#78918c;margin-top:9px;font-size:9px;line-height:1.45}.speed-python-card{color:#d2ebdc;background:#173d43;border-color:#173d43}.speed-python-card .speed-code-card-head{color:#86b8ab;border-color:#d2ebdc24}.speed-python-card pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#d6eee0;min-height:203px;margin:16px 0 12px;font:9px/1.55 DM Mono,monospace}.speed-python-card code{color:inherit}.speed-python-prompt{color:#a9c7bc;margin:14px 0 10px;font-size:10px;line-height:1.5}.speed-python-editor{resize:vertical;color:#d7eee0;background:#102f34;border:1px solid #d2ebdc33;border-radius:6px;outline:none;width:100%;min-height:255px;padding:12px;font:9px/1.6 DM Mono,monospace;display:block}.speed-python-editor:focus{border-color:#f3c878;box-shadow:0 0 0 3px #f3c87824}.speed-python-practice-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.speed-python-check,.speed-python-hint-button{cursor:pointer;border:0;border-radius:5px;padding:9px 12px;font:600 8px DM Mono,monospace}.speed-python-check{color:#173d43;background:#f3c878}.speed-python-check:hover{background:#fff1c7}.speed-python-hint-button{color:#cfe7da;background:0 0;border:1px solid #d2ebdc38}.speed-python-hint-button:hover{color:#fff1c7;border-color:#f3c878}.speed-python-hint,.speed-python-feedback{border-radius:5px;margin-top:10px;padding:9px 11px;font-size:9px;line-height:1.45}.speed-python-hint{color:#d7eee0;background:#71b39d21}.speed-python-hint span{color:#f3c878;letter-spacing:.08em;margin-right:8px;font:600 8px DM Mono,monospace}.speed-python-feedback.wrong{color:#ffd5bf;background:#e7836729}.speed-python-feedback.correct{color:#d7f1dd;background:#71b39d2b}.speed-variable-palette{color:#557875;background:#f5faf4;border:1px solid #d9e4dd;border-radius:7px;margin-top:14px;padding:11px}.speed-variable-palette>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.speed-variable-palette>div:first-child span{color:#6d9189;letter-spacing:.08em;font:600 8px DM Mono,monospace}.speed-variable-palette>div:first-child small{color:#78918c;text-align:right;font-size:9px;line-height:1.35}.speed-variable-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin-top:10px;display:grid}.speed-variable-list div{align-items:baseline;gap:7px;min-width:0;display:flex}.speed-variable-list code{color:#9b6b4c;background:#fffefa;border-radius:3px;flex:none;padding:3px 5px;font:600 8px DM Mono,monospace}.speed-variable-list span{color:#78918c;min-width:0;font-size:8px;line-height:1.25}.speed-python-card .speed-variable-palette{color:#cfe7da;background:#ffffff0f;border-color:#d2ebdc29}.speed-python-card .speed-variable-palette>div:first-child span{color:#f3c878}.speed-python-card .speed-variable-palette>div:first-child small{color:#a9c7bc}.speed-python-card .speed-variable-list code{color:#fff1c7;background:#ffffff14}.speed-python-card .speed-variable-list span{color:#a9c7bc}.speed-python-editor-wrap{background:#102f34;border:1px solid #d2ebdc33;border-radius:6px;min-height:255px;position:relative;overflow:hidden}.speed-python-editor-highlight{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden;color:#d7eee0!important;white-space:pre!important;background:0 0!important;min-height:0!important;margin:0!important;padding:12px!important;font:9px/1.6 DM Mono,monospace!important}.speed-python-editor-line{min-height:1.6em;margin:0 -12px;padding:0 12px;display:flex}.speed-python-editor-line>span{color:#668f87;text-align:right;-webkit-user-select:none;user-select:none;flex:0 0 24px;margin-right:10px}.speed-python-editor-line>code{color:#d7eee0;font:inherit}.speed-python-editor-line.error{background:#e7836733;box-shadow:inset 3px 0 #e78367}.speed-python-editor-line.error>span{color:#ffc4ad}.speed-python-editor-line.hint{background:#f3c8781f;box-shadow:inset 3px 0 #f3c878}.speed-python-editor{z-index:2;color:#0000;caret-color:#f3c878;background:0 0;border:0;border-radius:0;outline:none;min-height:255px;margin:0;padding:12px 12px 12px 46px;font:9px/1.6 DM Mono,monospace;position:relative}.speed-python-editor::selection{color:#0000;background:#f3c87847}.speed-python-editor:focus{box-shadow:none;border:0}.speed-python-editor-wrap:focus-within{border-color:#f3c878;box-shadow:0 0 0 3px #f3c87824}.speed-python-live-status{gap:5px;margin-top:8px;font-size:8px;line-height:1.4;display:grid}.speed-python-live-status>span{color:#a9c7bc}.speed-python-live-status div{color:#ffd5bf;background:#e7836724;border-radius:4px;gap:8px;padding:6px 8px;display:flex}.speed-python-live-status b{color:#ffc4ad;flex:none;font:600 8px DM Mono,monospace}.speed-python-ai-button{color:#cfe7da;cursor:pointer;background:0 0;border:1px solid #d2ebdc38;border-radius:5px;padding:9px 12px;font:600 8px DM Mono,monospace}.speed-python-ai-button:hover:not(:disabled){color:#fff1c7;border-color:#f3c878}.speed-python-ai-button:disabled{cursor:not-allowed;opacity:.45}.speed-python-ai-notice{color:#f2c4ae;margin-top:9px;font-size:8px;line-height:1.4}.speed-python-ai-explanation{color:#d7eee0;background:#71b39d21;border-left:3px solid #72b39d;border-radius:0 5px 5px 0;margin-top:10px;padding:10px 11px}.speed-python-ai-explanation span{color:#f3c878;letter-spacing:.08em;margin-bottom:5px;font:600 8px DM Mono,monospace;display:block}.speed-python-ai-explanation p{margin:0;font-size:9px;line-height:1.5}.speed-knowledge-editor-wrap{min-height:205px;margin-top:13px}.speed-knowledge-editor-wrap .speed-python-editor{min-height:205px}.speed-knowledge-live-status>span{color:#78918c}.speed-knowledge-live-status div{color:#a76d4d;background:#fff0e9}.speed-knowledge-live-status b{color:#a76d4d}.speed-python-highlight{background:#ffffff14;border-radius:6px;grid-template-columns:auto 1fr;gap:3px 8px;padding:10px;display:grid}.speed-python-highlight span{color:#f3c878;letter-spacing:.08em;font:500 8px DM Mono,monospace}.speed-python-highlight strong{color:#fff1c7;font:600 10px DM Mono,monospace}.speed-python-highlight small{color:#a9c7bc;grid-column:2;font:9px DM Mono,monospace}.speed-stage-detail{margin-top:16px}.speed-detail-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px;display:grid}.speed-detail-card{border:1px solid #dbe6df;border-top:3px solid var(--stage-color);color:var(--teal);text-align:left;cursor:pointer;background:#fff;border-radius:7px;padding:12px}.speed-detail-card:hover,.speed-detail-card.selected{box-shadow:0 0 0 2px var(--stage-color);background:#f5faf4}@supports (color:color-mix(in lab, red, red)){.speed-detail-card:hover,.speed-detail-card.selected{box-shadow:0 0 0 2px color-mix(in srgb, var(--stage-color) 16%, white)}}.speed-detail-label{color:var(--stage-color);letter-spacing:.08em;font:600 8px DM Mono,monospace;display:block}.speed-detail-card strong{margin-top:8px;font:600 14px Space Grotesk,sans-serif;display:block}.speed-detail-card small{color:#6d9189;margin-top:9px;font:8px DM Mono,monospace;display:block}.speed-detail-card code{color:#9b6b4c;margin-top:9px;font:600 9px DM Mono,monospace;display:block}.speed-detail-card p{color:#78918c;margin:9px 0 0;font-size:9px;line-height:1.4}.speed-challenge-card{background:#fff8ed;border-color:#ead8be;grid-template-columns:.9fr 1.1fr;align-items:center;gap:25px;margin-top:16px;display:grid}.speed-challenge-card h2{color:var(--teal);margin:16px 0 7px;font:600 22px/1.05 Space Grotesk,sans-serif}.speed-challenge-card p{color:#8b745f;margin:0;font-size:10px;line-height:1.5}.speed-challenge-options{gap:7px;display:grid}.challenge-answer{color:#8b745f;text-align:left;cursor:pointer;background:#ffffff9e;border:1px solid #e2cda9;border-radius:6px;justify-content:space-between;gap:12px;padding:11px 12px;font-size:10px;line-height:1.35;display:flex}.challenge-answer:hover{border-color:var(--orange)}.challenge-answer span{color:#a76d4d;flex:none;font:600 8px DM Mono,monospace}.challenge-answer.correct{color:#557c6e;background:#edf8ef;border-color:#72ae96}.challenge-answer.correct span{color:#43876e}.challenge-answer.wrong{background:#fff0e9;border-color:#e6ad93}.speed-lab-footer{color:#8aa09a;justify-content:space-between;max-width:1200px;margin:22px auto 0;font-size:9px;display:flex}.speed-analysis-diagram{background-color:#f4f7ff;background-image:radial-gradient(circle at 93% 18%,#786cd440 0 2px,#0000 3px),radial-gradient(circle at 96% 25%,#f169ce38 0 2px,#0000 3px),linear-gradient(125deg,#0000 0 82%,#736fcd1f 82% 82.5%,#0000 82.5% 86%,#ec6bca1a 86% 86.5%,#0000 86.5%);border:1px solid #e1e4f1;border-radius:7px;min-height:276px;margin-top:16px;position:relative;overflow:hidden}.speed-analysis-title{color:#171f9e;letter-spacing:-.04em;font:600 27px DM Mono,monospace;position:absolute;top:14px;left:17px}.speed-analysis-plot{position:absolute;inset:41px 28px 42px 56px}.speed-analysis-plot:before,.speed-analysis-plot:after{content:"";z-index:1;pointer-events:none;border:3px solid #15171a;border-radius:50%;position:absolute}.speed-analysis-plot:before{width:28%;height:91%;top:9%;left:0;transform:rotate(8deg)}.speed-analysis-plot:after{width:30%;height:82%;top:18%;right:0;transform:rotate(-9deg)}.speed-analysis-y-axis,.speed-analysis-x-axis{z-index:2;background:#16191d;position:absolute}.speed-analysis-y-axis{width:2px;top:0;bottom:0;left:0}.speed-analysis-x-axis{height:2px;bottom:0;left:0;right:0}.speed-analysis-max-line{z-index:1;border-top:3px dashed #313fe5;position:absolute;top:13%;left:0;right:0}.speed-analysis-max-line span{color:#273bd8;font:600 8px DM Mono,monospace;position:absolute;top:-18px;right:0}.speed-analysis-profile{z-index:3;pointer-events:none;transition:clip-path 80ms linear;position:absolute;inset:0}.speed-analysis-path{z-index:3;background:#f03a42;position:absolute}.speed-analysis-rise{clip-path:polygon(0 99%,95% 10%,100% 13%,5% 100%);width:24%;height:100%;bottom:0;left:0}.speed-analysis-cruise{height:4px;top:13%}.speed-analysis-fall{clip-path:polygon(0 0,95% 94%,100% 94%,5% 0);height:74%;top:13%}.speed-analysis-finish{height:4px;bottom:13%}.speed-analysis-live-line{z-index:2;border-left:3px dashed #ec39d1;width:2px;position:absolute;top:0;bottom:-8px;transform:translate(-1px)}.speed-analysis-live-line span{color:#d924c7;text-align:center;width:100px;font:600 8px DM Mono,monospace;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%)}.speed-analysis-live-dot{z-index:5;border:3px solid #fff;border-radius:50%;width:12px;height:12px;transition:left 80ms linear,bottom 80ms linear,background .2s;position:absolute;transform:translate(-50%,50%);box-shadow:0 0 0 2px #16191d}.speed-analysis-stage{z-index:4;color:#101317;font:500 45px DM Mono,monospace;position:absolute;top:39%;transform:translate(-50%)}.speed-analysis-stage.stage-one,.speed-analysis-stage.stage-two{top:27%}.speed-analysis-stage.stage-three,.speed-analysis-stage.stage-four{top:45%}.speed-analysis-arrow{z-index:4;color:#283cd4;transform-origin:50%;font:600 28px DM Mono,monospace;position:absolute}.speed-analysis-arrow span{color:#27318e;white-space:nowrap;font:8px DM Mono,monospace;display:block}.speed-analysis-acceleration{top:42%;left:10%;transform:rotate(-73deg)}.speed-analysis-acceleration span{transform:rotate(73deg)}.speed-analysis-deceleration{top:23%;left:57%;transform:rotate(73deg)}.speed-analysis-deceleration span{transform:rotate(-73deg)}.speed-analysis-axis-label{color:#16191d;font:600 10px DM Mono,monospace;position:absolute}.speed-analysis-axis-label.y-label{top:53%;left:12px;transform:rotate(-90deg)}.speed-analysis-key{color:#7f8a9f;align-items:center;gap:5px;font:8px DM Mono,monospace;display:flex;position:absolute;bottom:10px;right:12px}.speed-analysis-key span{width:9px;height:3px;display:inline-block}.speed-analysis-key .key-red{background:#f03a42}.speed-analysis-key .key-live{background:#e7b35e;border:2px solid #fff;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 1px #16191d}.speed-analysis-canvas{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.speed-analysis-stage{transition:opacity .18s}.speed-analysis-arrow{opacity:0;transition:opacity .2s}.speed-analysis-plot[data-active-stage="0"] .speed-analysis-acceleration,.speed-analysis-plot[data-active-stage="1"] .speed-analysis-acceleration,.speed-analysis-plot[data-active-stage="2"] .speed-analysis-acceleration,.speed-analysis-plot[data-active-stage="2"] .speed-analysis-deceleration,.speed-analysis-plot[data-active-stage="3"] .speed-analysis-deceleration{opacity:1}.speed-analysis-diagram{background:linear-gradient(135deg,#f5faf4 0%,#fffefa 74%);border-color:#d9e3de;border-radius:10px;min-height:276px}.speed-analysis-title{color:var(--teal);letter-spacing:0;font:600 13px Space Grotesk,sans-serif;top:14px;left:18px}.speed-analysis-title span{display:block}.speed-analysis-title small{color:#8aa09a;letter-spacing:.02em;margin-top:4px;font:9px DM Sans,sans-serif;display:block}.speed-analysis-plot{background-image:linear-gradient(90deg,#c9ded48a 1px,#0000 1px),linear-gradient(#c9ded48a 1px,#0000 1px);background-size:25% 100%,100% 25%;border-bottom:1.5px solid #6c9185;border-left:1.5px solid #6c9185;inset:58px 20px 47px 50px}.speed-analysis-plot:before,.speed-analysis-plot:after{content:none}.speed-analysis-y-axis,.speed-analysis-x-axis{display:none}.speed-analysis-max-line{z-index:2;border-top:1px dashed #a9c8ba;top:10%;left:0;right:0}.speed-analysis-max-line span{color:#6d9189;font:600 8px DM Mono,monospace;top:-16px;right:0}.speed-analysis-canvas{z-index:3}.speed-analysis-live-line{z-index:4;border-left:2px dashed #c83fd0;width:1px}.speed-analysis-live-line span{color:#b832ba;text-transform:uppercase;font:600 8px DM Mono,monospace;top:calc(100% + 7px)}.speed-analysis-live-dot{z-index:6;border:3px solid #fffefa;width:11px;height:11px;transition:background .2s;box-shadow:0 0 0 1.5px #174752}.speed-analysis-stage{z-index:5;border:1.5px solid var(--stage-color);width:24px;height:24px;color:var(--stage-color);background:#fffefa;border-radius:50%;place-items:center;font:600 9px DM Mono,monospace;display:grid}.speed-analysis-stage.stage-one{top:calc(64% - 12px)}.speed-analysis-stage.stage-two{top:calc(10% - 12px)}.speed-analysis-stage.stage-three{top:calc(39% - 12px)}.speed-analysis-stage.stage-four{top:calc(70% - 12px)}.speed-analysis-arrow{z-index:5;color:#5a9d87;font:600 19px DM Mono,monospace}.speed-analysis-arrow span{color:#5a8178;letter-spacing:.03em;text-transform:uppercase;font:600 8px DM Mono,monospace}.speed-analysis-acceleration{top:36%;left:11%}.speed-analysis-deceleration{color:#e78367;top:25%;left:57%}.speed-analysis-axis-label{color:#6d9189;letter-spacing:.08em;text-transform:uppercase;font:600 8px DM Mono,monospace}.speed-analysis-axis-label.y-label{top:51%;left:10px}.speed-analysis-axis-label.x-label{bottom:16px;left:48%}.speed-analysis-key{color:#78918c;font:8px DM Mono,monospace;bottom:10px;right:13px}.speed-analysis-key .key-profile{background:var(--orange);width:12px;height:3px}.speed-analysis-key .key-live{background:#c83fd0;border:2px solid #fffefa;width:8px;height:8px;box-shadow:0 0 0 1px #174752}.speed-pseudocode{color:#557875;white-space:pre;background:#f2f7f1;border-radius:6px;min-height:203px;margin:16px 0 12px;padding:14px;font:9px/1.6 DM Mono,monospace;overflow:auto}.speed-pseudocode code{color:inherit}.speed-knowledge-card{background:#fffefa;border:1px solid #d9e3de;border-radius:10px;max-width:1200px;margin:16px auto 0;padding:18px;box-shadow:0 8px 22px #2a4b430d}.speed-knowledge-intro{grid-template-columns:minmax(220px,.55fr) minmax(0,1fr);align-items:end;gap:24px;margin-top:17px;display:grid}.speed-knowledge-intro h2{color:var(--teal);letter-spacing:-.04em;margin:0;font:600 27px/.98 Space Grotesk,sans-serif}.speed-knowledge-intro h2 em{color:var(--orange);font-style:normal}.speed-knowledge-intro p{color:#78918c;max-width:590px;margin:0;font-size:10px;line-height:1.5}.speed-knowledge-progress{border-bottom:1px solid #e5ece8;gap:6px;margin-top:16px;padding-bottom:14px;display:flex}.speed-knowledge-progress span{color:#8aa09a;background:#fffefa;border:1px solid #d4e2da;border-radius:50%;place-items:center;width:23px;height:23px;font:600 9px DM Mono,monospace;display:grid}.speed-knowledge-progress span.active{border-color:var(--orange);color:#fff;background:var(--orange);box-shadow:0 0 0 3px #fbe8dc}.speed-knowledge-progress span.done{color:#fff;background:#72ae96;border-color:#72ae96}.speed-knowledge-progress span.locked{opacity:.55}.speed-knowledge-question,.speed-knowledge-complete{border-radius:8px;margin-top:15px;padding:15px}.speed-knowledge-question{background:#f7fbf5;border:1px solid #d9e8df}.speed-knowledge-complete{background:#eef8f1;border:1px solid #d6e7d9}.speed-knowledge-label{color:#6d9189;letter-spacing:.1em;font:600 8px DM Mono,monospace;display:block}.speed-knowledge-question h3,.speed-knowledge-complete h3{color:var(--teal);margin:8px 0 6px;font:600 16px/1.2 Space Grotesk,sans-serif}.speed-knowledge-question p,.speed-knowledge-complete p{color:#78918c;max-width:820px;margin:0;font-size:10px;line-height:1.5}.speed-knowledge-question code,.speed-knowledge-complete code,.speed-knowledge-hint code{color:#9b6b4c;font:600 9px DM Mono,monospace}.speed-knowledge-options{gap:7px;margin-top:13px;display:grid}.speed-knowledge-options-inline{grid-template-columns:repeat(3,minmax(0,1fr))}.speed-knowledge-options button{color:#557875;cursor:pointer;text-align:left;background:#fffefa;border:1px solid #d8e5dc;border-radius:6px;min-height:38px;padding:9px 11px;font-size:10px;line-height:1.35;transition:border-color .16s,background .16s,transform .16s}.speed-knowledge-options button:hover,.speed-knowledge-options button.selected{border-color:var(--orange);background:#fff8ed;transform:translateY(-1px)}.speed-knowledge-skip{color:#8aa09a;cursor:pointer;background:0 0;border:0;margin-top:10px;padding:0;font:8px DM Mono,monospace;text-decoration:underline}.speed-knowledge-code{color:#d7eee0;white-space:pre;background:#173d43;border-radius:6px;margin:12px 0 0;padding:12px;font:9px/1.55 DM Mono,monospace;overflow:auto}.speed-knowledge-editor{resize:vertical;color:#315d59;background:#fffefa;border:1px solid #c9ddd2;border-radius:6px;outline:none;width:100%;min-height:170px;margin-top:13px;padding:12px;font:10px/1.55 DM Mono,monospace;display:block}.speed-knowledge-editor:focus{border-color:var(--orange);box-shadow:0 0 0 3px #fbe8dc}.speed-knowledge-action-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:9px;display:flex}.speed-knowledge-check{color:#fff;background:var(--teal);cursor:pointer;border:0;border-radius:5px;padding:9px 13px;font:600 9px DM Mono,monospace}.speed-knowledge-check:hover{background:var(--orange)}.speed-knowledge-hint{color:#78918c;font-size:9px}.speed-knowledge-feedback{border-radius:5px;margin-top:10px;padding:9px 11px;font-size:9px;line-height:1.4}.speed-knowledge-feedback.wrong{color:#a76d4d;background:#fff0e9;border:1px solid #e6ad93}.speed-knowledge-compare{color:#78918c;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;font-size:10px;display:flex}.speed-knowledge-compare code{color:#557875;background:#fffefa;border-radius:5px;padding:8px 9px;font:600 9px DM Mono,monospace}.speed-knowledge-ready{color:#557c6e;background:#edf8ef;border-left:3px solid #72ae96;margin-top:15px;padding:12px;font-size:10px;line-height:1.4}.speed-knowledge-ready strong{color:#43876e}.speed-knowledge-review{color:#8b745f;background:#fff8ed;border:1px dashed #d7b98c;border-radius:7px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:15px;padding:12px;font-size:9px;line-height:1.4;display:flex}.speed-knowledge-review strong{color:#a76d4d}.speed-knowledge-review-buttons{flex-wrap:wrap;gap:7px;display:flex}.speed-knowledge-review-buttons button{color:#8b745f;cursor:pointer;background:#ffffffb8;border:1px solid #e2cda9;border-radius:5px;padding:7px 9px;font:8px DM Mono,monospace}.speed-knowledge-review-buttons button:hover{border-color:var(--orange);color:#a76d4d}.speed-knowledge-review-buttons .speed-knowledge-reset{color:#a99a8c;background:0 0;border-color:#0000;text-decoration:underline}@media (max-width:1000px){.speed-code-section{grid-template-columns:1fr 1fr}.speed-code-intro{grid-column:1/-1}}@media (max-width:900px){.speed-lab-hero,.speed-lab-workspace,.speed-challenge-card,.speed-code-section{grid-template-columns:1fr}}@media (max-width:650px){.speed-lab-shell{padding:18px 14px 40px}.speed-lab-topbar>span:first-of-type{display:none}.speed-lab-hero{margin-top:38px}.speed-lab-hero h1{font-size:42px}.speed-stage-cards,.speed-detail-grid{grid-template-columns:1fr 1fr}.speed-readout-grid,.speed-knowledge-intro,.speed-knowledge-options-inline{grid-template-columns:1fr}.speed-knowledge-compare{flex-direction:column;align-items:flex-start}.speed-variable-palette>div:first-child{flex-direction:column;align-items:flex-start;gap:4px}.speed-variable-palette>div:first-child small{text-align:left}.speed-variable-list{grid-template-columns:1fr}.speed-lab-footer{flex-direction:column;gap:8px}}.roots-home,.roots-login-page{--roots-bg:#0f1b1a;--roots-surface:#162523;--roots-surface-strong:#1c302c;--roots-ink:#f4efe5;--roots-muted:#a8b6ae;--roots-dim:#71877f;--roots-line:#dce8dc26;--roots-line-strong:#dce8dc47;--roots-accent:#e8b650;--roots-accent-soft:#e8b65026;--roots-accent-ink:#151d19;min-height:100dvh;color:var(--roots-ink);background:var(--roots-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:DM Sans,Arial,sans-serif;overflow-x:clip}.roots-home *,.roots-home :before,.roots-home :after,.roots-login-page *,.roots-login-page :before,.roots-login-page :after{box-sizing:border-box}.roots-home a,.roots-login-page a{color:inherit}.roots-home button,.roots-home textarea,.roots-login-page button,.roots-login-page input{font:inherit}.roots-home button,.roots-login-page button{cursor:pointer}.roots-skip-link{z-index:20;color:var(--roots-accent-ink);background:var(--roots-accent);border-radius:999px;padding:10px 13px;transition:transform .2s;position:fixed;top:12px;left:12px;transform:translateY(-140%)}.roots-skip-link:focus{transform:translateY(0)}.roots-nav{z-index:10;border-bottom:1px solid var(--roots-line);background:var(--roots-bg);grid-template-columns:auto 1fr auto;align-items:center;gap:30px;min-height:72px;padding:0 clamp(20px,5vw,80px);display:grid;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.roots-nav{background:color-mix(in srgb, var(--roots-bg) 90%, transparent)}}.roots-nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.roots-brand{width:max-content;color:var(--roots-ink);letter-spacing:.18em;align-items:center;gap:10px;font:700 17px/1 Space Grotesk,sans-serif;text-decoration:none;display:inline-flex}.roots-brand-mark{width:25px;height:25px;display:inline-block;position:relative}.roots-brand-mark span{border:2px solid var(--roots-accent);width:11px;height:11px;display:block;position:absolute;transform:rotate(45deg)}.roots-brand-mark span:first-child{background:var(--roots-accent);border-radius:50% 50% 2px;top:8px;left:0}.roots-brand-mark span:nth-child(2){background:0 0;top:0;left:8px}.roots-brand-mark span:nth-child(3){background:var(--roots-accent);width:8px;height:8px;top:14px;left:13px}.roots-navigation{justify-content:center;align-items:center;gap:5px;display:flex}.roots-navigation a,.roots-nav-action{color:var(--roots-muted);border-radius:999px;padding:10px 12px;font-size:13px;text-decoration:none;transition:color .25s,background .25s,transform .25s}.roots-navigation a:hover,.roots-nav-action:hover{color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-navigation a:focus-visible{color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-nav-action:focus-visible{color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-nav-action{border:1px solid var(--roots-line-strong);color:var(--roots-ink);white-space:nowrap}.roots-nav-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.roots-nav-login{border:1px solid var(--roots-line-strong);color:var(--roots-ink);white-space:nowrap;background:0 0;border-radius:999px;justify-self:end;padding:9px 12px;font-size:12px;text-decoration:none;transition:border-color .25s,background .25s,transform .25s}:is(.roots-nav-login:hover,.roots-nav-login:focus-visible){border-color:var(--roots-accent);background:var(--roots-accent-soft);transform:translateY(-1px)}.roots-nav-login-pending{color:var(--roots-dim);cursor:default;border-color:#0000}.roots-companion{z-index:9;border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:16px;grid-template-columns:88px minmax(0,1fr);gap:13px;width:min(330px,100vw - 32px);padding:12px;display:grid;position:fixed;bottom:clamp(16px,3vw,32px);right:clamp(16px,3vw,44px)}@supports (color:color-mix(in lab, red, red)){.roots-companion{background:color-mix(in srgb, var(--roots-surface) 93%, transparent)}}.roots-companion{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 64px #040c0a61}.roots-companion-art{isolation:isolate;background:#101b1a;border:1px solid #e8b6505c;border-radius:12px;min-height:108px;position:relative;overflow:hidden}.roots-companion-art:after{z-index:-1;content:"";filter:blur(4px);background:#e8b6502e;border-radius:50%;height:17px;position:absolute;bottom:7px;left:8px;right:8px;box-shadow:0 0 18px #e8b65042}.roots-companion-art img{object-fit:cover;object-position:78% 48%;transform-origin:78% 48%;width:100%;height:100%;min-height:108px;animation:4.8s ease-in-out infinite roots-companion-float;display:block;transform:scale(1.55)}.roots-companion-signal{z-index:2;background:var(--roots-accent);border-radius:50%;width:8px;height:8px;animation:2.3s ease-in-out infinite roots-companion-pulse;position:absolute;top:12px;right:12px;box-shadow:0 0 0 4px #e8b65029,0 0 16px #e8b650b3}.roots-companion-scanline{z-index:2;opacity:.65;background:#e8b6507a;height:1px;animation:3.8s ease-in-out infinite roots-companion-scan;position:absolute;bottom:24px;left:0;right:0;box-shadow:0 0 12px #e8b65099}.roots-companion-copy{align-content:center;gap:7px;min-width:0;display:grid}.roots-companion-heading{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.roots-companion-heading>div{gap:2px;min-width:0;display:grid}.roots-companion-kicker,.roots-companion-live{color:var(--roots-accent);letter-spacing:.1em;font:600 8px/1.2 DM Mono,monospace}.roots-companion-heading strong{color:var(--roots-ink);text-overflow:ellipsis;white-space:nowrap;font:600 15px/1.1 Space Grotesk,sans-serif;overflow:hidden}.roots-companion-heading small{color:var(--roots-dim);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.roots-companion-live{color:#8fbf93;flex:none;padding-top:2px;font-size:8px}.roots-companion-copy>p{min-height:52px;color:var(--roots-muted);margin:0;font-size:11px;line-height:1.45}.roots-companion-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.roots-companion-actions button,.roots-companion-actions a{border:1px solid var(--roots-line);color:var(--roots-muted);background:0 0;border-radius:999px;padding:5px 7px;font-size:9px;text-decoration:none;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.roots-companion-actions button:hover,.roots-companion-actions button:focus-visible,.roots-companion-actions a:hover,.roots-companion-actions a:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);transform:translateY(-1px)}.roots-companion-nudge{color:var(--roots-accent)!important;border-color:#e8b65061!important}.roots-companion-pause{color:var(--roots-dim)!important}.roots-companion-live-check{background:#8fbf9314;border-left:2px solid #8fbf93;gap:4px;padding:8px 9px;display:grid}.roots-companion-live-check.is-error{border-color:var(--roots-accent);background:#e8b6501a}.roots-companion-live-check>span,.roots-companion-talk-head{color:var(--roots-accent);letter-spacing:.1em;font:600 8px/1.2 DM Mono,monospace}.roots-companion-live-check p,.roots-companion-talk p{color:var(--roots-muted);margin:0;font-size:10px;line-height:1.4}.roots-companion-talk{border-top:1px solid var(--roots-line);gap:5px;padding-top:8px;display:grid}.roots-companion-talk-head{justify-content:space-between;gap:8px;display:flex}.roots-companion-talk>strong{color:var(--roots-ink);font:600 11px/1.25 Space Grotesk,sans-serif}.roots-companion-talk>small{color:var(--roots-dim);font-size:9px;line-height:1.35}.roots-companion-talk-actions{flex-wrap:wrap;gap:7px;display:flex}.roots-companion-talk-actions a,.roots-companion-talk-actions button{border:1px solid var(--roots-line);color:var(--roots-muted);background:0 0;border-radius:999px;padding:4px 6px;font-size:9px;text-decoration:none;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.roots-companion-talk-actions a:hover,.roots-companion-talk-actions a:focus-visible,.roots-companion-talk-actions button:hover,.roots-companion-talk-actions button:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);transform:translateY(-1px)}.roots-fun-fact{background:#e8b6500f;border:1px solid #e8b6504d;border-radius:11px;gap:5px;margin-top:9px;padding:9px;display:grid}.roots-fun-fact-head{color:var(--roots-accent);letter-spacing:.1em;justify-content:space-between;align-items:center;gap:8px;font:600 8px/1.2 DM Mono,monospace;display:flex}.roots-fun-fact-head small{color:var(--roots-dim);letter-spacing:.08em;font-size:7px}.roots-fun-fact p{color:var(--roots-ink);margin:0;font:600 11px/1.35 Space Grotesk,sans-serif}.roots-fun-fact-detail{color:var(--roots-muted);font-size:9px;line-height:1.35}.roots-fun-fact-actions{flex-wrap:wrap;gap:6px;display:flex}.roots-fun-fact-actions a{color:var(--roots-accent);background:0 0;border:1px solid #e8b6504d;border-radius:999px;padding:4px 6px;font-size:9px;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .2s}:is(.roots-fun-fact-actions a:hover,.roots-fun-fact-actions a:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);transform:translateY(-1px)}.roots-fun-fact-note{color:var(--roots-dim);font-size:8px}@keyframes roots-companion-float{0%,to{transform:scale(1.55)translateY(0)}50%{transform:scale(1.55)translateY(-4px)}}@keyframes roots-companion-pulse{0%,to{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}@keyframes roots-companion-scan{0%,to{opacity:.22;transform:translateY(0)}50%{opacity:.75;transform:translateY(-48px)}}.roots-login-page{background:var(--roots-bg);min-height:100dvh;color:var(--roots-ink)}.roots-login-nav{grid-template-columns:auto 1fr auto}.roots-login-nav-note{color:var(--roots-dim);letter-spacing:.14em;justify-self:center;font:10px/1 DM Mono,monospace}.roots-login-shell{grid-template-columns:minmax(0,.9fr) minmax(360px,.75fr);align-items:center;gap:clamp(48px,9vw,140px);width:min(1120px,100%);min-height:calc(100dvh - 72px);margin:0 auto;padding:80px clamp(20px,5vw,80px);display:grid}.roots-login-intro{max-width:520px}.roots-login-intro h1{color:var(--roots-ink);letter-spacing:-.07em;margin:0;font:600 clamp(48px,7vw,88px)/.94 Space Grotesk,sans-serif}.roots-login-intro>p:not(.roots-eyebrow){max-width:430px;color:var(--roots-muted);margin:26px 0 0;font-size:17px;line-height:1.55}.roots-login-note{border-top:1px solid var(--roots-line);gap:7px;max-width:390px;margin-top:52px;padding-top:17px;display:grid}.roots-login-note strong{color:var(--roots-accent);letter-spacing:.14em;text-transform:uppercase;font:600 10px/1.2 DM Mono,monospace}.roots-login-note span{color:var(--roots-dim);font-size:13px;line-height:1.5}.roots-login-card{border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:16px;padding:25px;box-shadow:0 22px 64px #040c0a38}.roots-login-tabs{background:#0f1b1ab3;border-radius:10px;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:22px;padding:4px;display:grid}.roots-login-tabs button{min-height:38px;color:var(--roots-dim);background:0 0;border:0;border-radius:7px;font-size:12px;font-weight:700}:is(.roots-login-tabs button:hover,.roots-login-tabs button:focus-visible){color:var(--roots-ink)}.roots-login-tabs button.is-active{color:var(--roots-accent-ink);background:var(--roots-accent)}.roots-google-button{border:1px solid var(--roots-line-strong);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:46px;font-size:13px;font-weight:700;text-decoration:none;transition:border-color .25s,background .25s,transform .25s;display:flex;color:var(--roots-ink)!important}:is(.roots-google-button:hover,.roots-google-button:focus-visible){border-color:var(--roots-accent);background:var(--roots-accent-soft);transform:translateY(-1px)}.roots-google-mark{width:20px;height:20px;color:var(--roots-accent-ink);background:var(--roots-accent);border-radius:50%;place-items:center;font:700 13px/1 Arial,sans-serif;display:inline-grid}.roots-login-divider{color:var(--roots-dim);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:11px;margin:22px 0;font:10px/1 DM Mono,monospace;display:flex}.roots-login-divider:before,.roots-login-divider:after{content:"";background:var(--roots-line);flex:1;height:1px}.roots-login-form{gap:14px;display:grid}.roots-login-form label{color:var(--roots-ink);gap:7px;font-size:12px;font-weight:700;display:grid}.roots-login-form input{border:1px solid var(--roots-line-strong);width:100%;min-height:45px;color:var(--roots-ink);background:#0f1b1ab8;border-radius:9px;outline:0;padding:0 12px;font-size:13px}.roots-login-form input::placeholder{color:var(--roots-dim)}.roots-login-form input:focus{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-login-field-note,.roots-login-footnote{color:var(--roots-dim);margin:-3px 0 0;font-size:11px;line-height:1.45}.roots-login-submit{width:100%;margin-top:3px}.roots-login-submit:disabled{cursor:wait;opacity:.6;transform:none}.roots-login-error,.roots-login-notice{border-left:2px solid var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);margin:0;padding:11px 12px;font-size:12px;line-height:1.45}.roots-login-notice{background:#8fbf931f;border-left-color:#8fbf93}.roots-login-footnote{border-top:1px solid var(--roots-line);text-align:center;margin-top:21px;padding-top:17px}.roots-menu-button{border:1px solid var(--roots-line-strong);color:var(--roots-ink);background:0 0;border-radius:999px;justify-self:end;padding:9px 12px;display:none}.roots-hero{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);align-items:center;gap:clamp(44px,7vw,120px);width:min(1400px,100%);min-height:calc(100dvh - 72px);margin:0 auto;padding:64px clamp(20px,5vw,80px) 72px;display:grid}.roots-hero-copy{max-width:600px}.roots-eyebrow{color:var(--roots-accent);letter-spacing:.15em;text-transform:uppercase;margin:0 0 22px;font:600 11px/1.2 DM Mono,monospace}.roots-hero h1{max-width:none;color:var(--roots-ink);letter-spacing:-.07em;margin:0;font:600 clamp(54px,7vw,102px)/.94 Space Grotesk,sans-serif}.roots-hero h1 span{white-space:nowrap;display:block}.roots-hero-lede{max-width:440px;color:var(--roots-muted);margin:28px 0 0;font-size:clamp(17px,1.6vw,21px);line-height:1.5}.roots-hero-actions,.roots-form-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;display:flex}.roots-button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s,color .25s,border-color .25s;display:inline-flex}:is(.roots-button:hover,.roots-button:focus-visible){transform:translateY(-2px)}.roots-button:active{transform:translateY(0)scale(.98)}.roots-button-primary{color:var(--roots-accent-ink);background:var(--roots-accent)}:is(.roots-button-primary:hover,.roots-button-primary:focus-visible){background:#f2c86b}.roots-button-secondary,.roots-button-quiet{border-color:var(--roots-line-strong);color:var(--roots-ink);background:0 0}:is(.roots-button-secondary:hover,.roots-button-secondary:focus-visible,.roots-button-quiet:hover,.roots-button-quiet:focus-visible){border-color:var(--roots-accent);background:var(--roots-accent-soft)}.roots-hero-media{border:1px solid var(--roots-line);background:var(--roots-surface);border-radius:18px;min-height:560px;margin:0;position:relative;overflow:hidden;box-shadow:0 22px 70px #040c0a40}.roots-hero-media img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:560px;display:block}.roots-hero-media figcaption{max-width:210px;color:var(--roots-ink);background:#0f1b1ab8;border:1px solid #f4efe533;border-radius:8px;padding:8px 10px;font:11px/1.35 DM Mono,monospace;position:absolute;bottom:16px;right:18px}.roots-thesis,.roots-coach-section,.roots-hardware,.roots-loop,.roots-close{width:min(1200px,100%);margin:0 auto;padding:clamp(84px,12vw,160px) clamp(20px,5vw,64px)}.roots-thesis{border-top:1px solid var(--roots-line);grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);align-items:end;gap:clamp(40px,10vw,150px);display:grid}.roots-thesis h2,.roots-section-heading h2,.roots-hardware h2,.roots-loop h2,.roots-close h2{max-width:750px;color:var(--roots-ink);letter-spacing:-.055em;margin:0;font:500 clamp(36px,5vw,66px)/1.02 Space Grotesk,sans-serif}.roots-thesis-copy p,.roots-section-heading>p:last-child,.roots-hardware-copy>p,.roots-loop-heading p,.roots-close-copy>p{max-width:550px;color:var(--roots-muted);margin:22px 0 0;font-size:17px;line-height:1.55}.roots-thesis-quote{border-left:2px solid var(--roots-accent);max-width:360px;color:var(--roots-ink);margin:0;padding-left:24px;font:500 clamp(21px,2.5vw,30px)/1.25 Space Grotesk,sans-serif}.roots-coach-section{border-top:1px solid var(--roots-line);scroll-margin-top:92px}.roots-section-heading{max-width:760px}.roots-section-heading .roots-eyebrow{margin-bottom:20px}.roots-coach-demo{grid-template-columns:minmax(190px,.38fr) minmax(0,1fr);gap:30px;margin-top:55px;display:grid}.roots-prompt-list{border-top:1px solid var(--roots-line);align-self:start}.roots-prompt-button{border:0;border-bottom:1px solid var(--roots-line);width:100%;min-height:72px;color:var(--roots-muted);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:20px;padding:0 12px;transition:color .25s,padding .25s,background .25s;display:flex}:is(.roots-prompt-button:hover,.roots-prompt-button:focus-visible,.roots-prompt-button.is-active){color:var(--roots-ink);background:var(--roots-accent-soft);padding-left:18px}.roots-prompt-arrow{color:var(--roots-accent);font-size:21px;font-weight:400}.roots-coach-panel{border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:16px;min-width:0;padding:clamp(20px,4vw,36px)}.roots-panel-topline,.roots-editor-toolbar,.roots-lens-picker{color:var(--roots-dim);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font:10px/1.4 DM Mono,monospace;display:flex}.roots-coach-message{max-width:660px;margin:46px 0 30px}.roots-speaker{color:var(--roots-accent);letter-spacing:.1em;text-transform:uppercase;font:600 11px/1.2 DM Mono,monospace}.roots-coach-message h3{color:var(--roots-ink);letter-spacing:-.04em;margin:12px 0 0;font:500 clamp(27px,4vw,48px)/1.08 Space Grotesk,sans-serif}.roots-coach-message p{color:var(--roots-dim);margin:14px 0 0;font-size:13px}.roots-editor-preview{border:1px solid var(--roots-line);background:#101b1a;border-radius:10px;margin:0 0 25px;overflow:hidden}.roots-editor-toolbar{border-bottom:1px solid var(--roots-line);padding:11px 14px}.roots-code-row{color:#c7d2c9;border-bottom:1px solid #dce8dc14;grid-template-columns:34px minmax(0,1fr);align-items:center;min-height:39px;font:13px/1.5 DM Mono,monospace;display:grid}.roots-code-row:last-child{border-bottom:0}.roots-code-row>span{color:#668078;padding-left:14px}.roots-code-row code{white-space:pre;min-width:0;padding:8px 14px 8px 0;overflow-x:auto}.roots-code-row mark{color:var(--roots-accent-ink);background:var(--roots-accent);border-radius:4px;padding:1px 4px}.roots-coach-form label{color:var(--roots-ink);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.roots-coach-form textarea{resize:vertical;border:1px solid var(--roots-line-strong);width:100%;min-height:92px;color:var(--roots-ink);background:#0f1b1aa6;border-radius:9px;outline:0;padding:13px 14px;font-size:14px;line-height:1.5}.roots-coach-form textarea::placeholder{color:var(--roots-dim)}.roots-coach-form textarea:focus{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-form-actions{margin-top:14px}.roots-form-actions .roots-button{min-height:40px}.roots-hint,.roots-feedback{border-left:2px solid var(--roots-accent);color:var(--roots-muted);background:var(--roots-accent-soft);margin:16px 0 0;padding:12px 14px;font-size:13px;line-height:1.5}.roots-feedback{color:var(--roots-ink)}.roots-lens-picker{border-top:1px solid var(--roots-line);text-transform:none;letter-spacing:0;justify-content:flex-start;margin-top:25px;padding-top:18px}.roots-lens-picker>span{color:var(--roots-dim);margin-right:4px}.roots-lens-picker button{color:var(--roots-muted);background:0 0;border:1px solid #0000;border-radius:999px;padding:7px 9px;font-size:11px}:is(.roots-lens-picker button:hover,.roots-lens-picker button:focus-visible,.roots-lens-picker button.is-selected){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-lens-explanation{border-top:1px solid var(--roots-line);border-left:2px solid var(--roots-accent);background:#e8b6500f;gap:10px;margin-top:18px;padding:15px 16px;display:grid}.roots-lens-explanation-head{color:var(--roots-accent);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:8px;font:600 9px/1.2 DM Mono,monospace;display:flex}.roots-lens-explanation h4{color:var(--roots-ink);margin:0;font:600 18px/1.15 Space Grotesk,sans-serif}.roots-lens-explanation>p{max-width:680px;color:var(--roots-muted);margin:0;font-size:13px;line-height:1.5}.roots-lens-use{gap:4px;display:grid}.roots-lens-use span{color:var(--roots-dim);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.roots-lens-use strong{color:var(--roots-ink);font-size:12px;font-weight:500;line-height:1.4}.roots-lens-story{border-top:1px solid var(--roots-line);color:var(--roots-muted);gap:4px;padding-top:10px;text-decoration:none;display:grid}.roots-lens-story strong{color:var(--roots-ink);font:600 12px/1.3 Space Grotesk,sans-serif}.roots-lens-story span{font-size:11px;line-height:1.4}.roots-lens-story small{color:var(--roots-accent);letter-spacing:.06em;text-transform:uppercase;font:600 9px/1.2 DM Mono,monospace}:is(.roots-lens-story:hover strong,.roots-lens-story:focus-visible strong){color:var(--roots-accent)}.roots-stage-lab{border:1px solid var(--roots-line-strong);background:linear-gradient(145deg, var(--roots-surface), #162523b8);border-radius:16px;margin-top:54px;padding:clamp(20px,4vw,36px);box-shadow:0 22px 64px #040c0a2e}.roots-stage-lab-heading{border-bottom:1px solid var(--roots-line);grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);align-items:end;gap:28px;padding-bottom:28px;display:grid}.roots-stage-kicker{color:var(--roots-accent);letter-spacing:.15em;text-transform:uppercase;margin:0 0 10px;font:600 10px/1.2 DM Mono,monospace}.roots-stage-lab-heading h3{max-width:620px;color:var(--roots-ink);letter-spacing:-.045em;margin:0;font:500 clamp(28px,4vw,47px)/1.05 Space Grotesk,sans-serif}.roots-stage-lab-heading>p{color:var(--roots-muted);margin:0;font-size:13px;line-height:1.55}.roots-stage-source{border-top:1px solid var(--roots-line);grid-column:1/-1;padding-top:16px;color:var(--roots-dim)!important;font:11px/1.5 DM Mono,monospace!important}.roots-stage-source a{color:var(--roots-accent);text-underline-offset:3px}.roots-stage-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:24px 0 26px;display:grid}.roots-stage-tab{border:1px solid var(--roots-line);min-width:0;color:var(--roots-muted);text-align:left;background:#0f1b1a52;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 12px;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s,color .25s,background .25s;display:grid}:is(.roots-stage-tab:hover,.roots-stage-tab:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);transform:translateY(-2px)}.roots-stage-tab:active{transform:translateY(0)scale(.99)}.roots-stage-tab.is-active{border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft);box-shadow:inset 0 0 0 1px #e8b6501f}.roots-stage-tab.is-complete .roots-stage-tab-number,.roots-stage-tab.is-complete .roots-stage-tab-mark{color:var(--roots-accent)}.roots-stage-tab-number{color:var(--roots-dim);font:600 12px/1 DM Mono,monospace}.roots-stage-tab strong,.roots-stage-tab small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.roots-stage-tab strong{font-size:12px;font-weight:700}.roots-stage-tab small{color:var(--roots-dim);margin-top:4px;font-size:10px}.roots-stage-tab-mark{color:var(--roots-dim);font:500 12px/1 DM Mono,monospace}.roots-stage-grid{grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);gap:24px;display:grid}.roots-stage-brief{flex-direction:column;min-height:100%;padding:2px 0;display:flex}.roots-stage-brief-topline,.roots-stage-editor-head{color:var(--roots-dim);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font:10px/1.4 DM Mono,monospace;display:flex}.roots-stage-progress{background:var(--roots-line);border-radius:999px;height:3px;margin:13px 0 34px;overflow:hidden}.roots-stage-progress span{border-radius:inherit;background:var(--roots-accent);height:100%;transition:width .3s;display:block}.roots-stage-brief h4{color:var(--roots-ink);letter-spacing:-.04em;margin:0;font:500 clamp(25px,3vw,38px)/1.05 Space Grotesk,sans-serif}.roots-stage-brief>p:not(.roots-stage-kicker){color:var(--roots-muted);margin:16px 0 0;font-size:14px;line-height:1.55}.roots-stage-brief-note{gap:6px;margin-top:auto;padding-top:30px;display:grid}.roots-stage-brief-note span{color:var(--roots-accent);letter-spacing:.12em;text-transform:uppercase;font:600 10px/1.2 DM Mono,monospace}.roots-stage-brief-note strong{max-width:210px;color:var(--roots-ink);font-size:13px;line-height:1.4}.roots-stage3-picker{border-top:1px solid var(--roots-line);gap:9px;margin-top:28px;padding-top:18px;display:grid}.roots-stage3-picker-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.roots-stage3-picker-head span,.roots-stage3-selected-function>span{color:var(--roots-accent);letter-spacing:.1em;text-transform:uppercase;font:600 9px/1.2 DM Mono,monospace}.roots-stage3-picker-head small{color:var(--roots-dim);font:9px/1.2 DM Mono,monospace}.roots-stage3-picker>p{color:var(--roots-muted);margin:0;font-size:11px;line-height:1.45}.roots-stage3-module-list{scrollbar-width:thin;gap:8px;max-height:min(64vh,620px);padding-right:3px;display:grid;overflow-y:auto}.roots-stage3-module-select{gap:5px;display:grid}.roots-stage3-module-select>span{gap:2px;display:grid}.roots-stage3-module-select strong{color:var(--roots-ink);font:600 11px/1.2 DM Mono,monospace}.roots-stage3-module-select small{color:var(--roots-dim);font-size:10px;line-height:1.3}.roots-stage3-module-select select{border:1px solid var(--roots-line-strong);width:100%;min-height:32px;color:var(--roots-ink);background:#0f1b1a94;border-radius:8px;outline:0;padding:6px 7px;font:10px/1.3 DM Mono,monospace}.roots-stage3-module-select select:focus{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-stage3-selected-function{border-left:2px solid var(--roots-accent);background:var(--roots-accent-soft);gap:7px;margin-top:3px;padding:11px;display:grid}.roots-stage3-selected-function code{color:var(--roots-ink);overflow-wrap:anywhere;font:600 10px/1.45 DM Mono,monospace}.roots-stage3-selected-function p,.roots-stage3-selected-function small{color:var(--roots-muted);margin:0;font-size:10px;line-height:1.4}.roots-stage3-selected-function a{color:var(--roots-accent);text-underline-offset:3px;font:600 9px/1.3 DM Mono,monospace}.roots-stage3-selected-function button{border:1px solid var(--roots-accent);color:var(--roots-accent-ink);background:var(--roots-accent);cursor:pointer;border-radius:999px;justify-self:start;padding:6px 8px;font-size:10px;font-weight:700;transition:transform .2s,background .2s}:is(.roots-stage3-selected-function button:hover,.roots-stage3-selected-function button:focus-visible){background:#f2c86b;transform:translateY(-1px)}.roots-stage3-selected-function button:active{transform:scale(.98)}.roots-stage-workspace{border:1px solid var(--roots-line);background:#0f1b1a80;border-radius:12px;min-width:0;padding:18px}.roots-stage-editor-head{padding:0 2px 12px}.roots-stage-editor{border:1px solid var(--roots-line);background:#101b1a;border-radius:9px;overflow:hidden}.roots-stage-code-row{color:#c7d2c9;border-bottom:1px solid #dce8dc14;grid-template-columns:40px minmax(0,1fr) auto;align-items:stretch;min-height:72px;font:13px/1.5 DM Mono,monospace;transition:background .2s,color .2s;display:grid}.roots-stage-code-row:last-child{border-bottom:0}.roots-stage-code-row.is-active{color:var(--roots-ink);box-shadow:inset 2px 0 0 var(--roots-accent);background:#e8b6501a}.roots-stage-code-row>span:first-child{color:#668078;padding:12px 0 0 14px}.roots-stage-line-copy{gap:3px;min-width:0;padding:10px 12px 10px 0;display:grid}.roots-stage-line-copy strong{color:var(--roots-ink);font:600 12px/1.3 DM Sans,Arial,sans-serif}.roots-stage-line-copy span,.roots-stage-line-copy em{color:var(--roots-muted);font:12px/1.4 DM Sans,Arial,sans-serif}.roots-stage-line-copy em{color:var(--roots-accent);font-style:normal}.roots-stage-code-row.has-guidance{min-height:124px}.roots-stage-token-guide{gap:4px;margin-top:4px;display:grid}.roots-stage-token-guide b{color:var(--roots-accent);letter-spacing:.08em;text-transform:uppercase;font:600 10px/1.2 DM Mono,monospace}.roots-stage-token-guide>span{color:var(--roots-muted);font:11px/1.35 DM Sans,Arial,sans-serif}.roots-stage-token-list{flex-wrap:wrap;gap:5px;display:flex}.roots-stage-token-list code{color:var(--roots-ink);background:#e8b6501a;border:1px solid #e8b65047;border-radius:4px;padding:3px 6px;font:11px/1.2 DM Mono,monospace}.roots-stage-line-code{overflow-wrap:anywhere;color:#8fbf93;font:12px/1.4 DM Mono,monospace;display:block}.roots-stage-code-row.is-accepted .roots-stage-line-code,.roots-stage-code-row.is-accepted .roots-stage-line-state{color:#8fbf93}.roots-stage-token-guide small,.roots-stage-live-guide small{color:var(--roots-dim);font:11px/1.35 DM Sans,Arial,sans-serif}.roots-stage-line-state{color:#668078;letter-spacing:.08em;align-self:center;padding:0 14px 0 4px;font:10px/1 DM Mono,monospace}.roots-stage-line-state[aria-label=Line\ entered]{color:#8fbf93}.roots-stage-code-row.is-active .roots-stage-line-state{color:var(--roots-accent)}.roots-stage-form{margin-top:20px}.roots-stage-form label{color:var(--roots-ink);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.roots-stage-form textarea{resize:vertical;border:1px solid var(--roots-line-strong);width:100%;min-height:86px;color:var(--roots-ink);background:#0f1b1ab8;border-radius:9px;outline:0;padding:12px 13px;font:13px/1.5 DM Mono,monospace}.roots-stage-form textarea::placeholder{color:var(--roots-dim)}.roots-stage-form textarea:focus,.roots-stage-form textarea[aria-invalid=true]{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-stage-form textarea:disabled{cursor:not-allowed;opacity:.65}.roots-stage-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.roots-stage-actions .roots-button{min-height:40px}.roots-stage-actions .roots-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.roots-stage-reset{color:var(--roots-dim);text-underline-offset:3px;background:0 0;border:0;margin-left:auto;padding:7px 0;font-size:11px;text-decoration:underline}:is(.roots-stage-reset:hover,.roots-stage-reset:focus-visible){color:var(--roots-ink)}.roots-stage-live-guide{background:#e8b65014;border:1px solid #e8b65047;border-radius:8px;gap:7px;margin:14px 0 0;padding:12px 13px;display:grid}.roots-stage-live-guide-head{align-items:baseline;gap:9px;display:flex}.roots-stage-live-guide-head span{color:var(--roots-accent);letter-spacing:.1em;font:600 10px/1.2 DM Mono,monospace}.roots-stage-live-guide-head strong{color:var(--roots-ink);font-size:13px}.roots-stage-live-guide p{color:var(--roots-muted);margin:0;font-size:12px;line-height:1.4}.roots-stage-hint,.roots-stage-feedback{border-left:2px solid var(--roots-accent);color:var(--roots-muted);background:var(--roots-accent-soft);gap:9px;margin:14px 0 0;padding:11px 13px;font-size:12px;line-height:1.5;display:flex}.roots-stage-live-error{border-left:2px solid var(--roots-accent);color:var(--roots-ink);background:#e8b6502e;gap:9px;margin:14px 0 0;padding:11px 13px;font-size:12px;line-height:1.5;display:flex}.roots-stage-live-error span{color:var(--roots-accent);letter-spacing:.1em;flex:none;font:600 10px/1.5 DM Mono,monospace}.roots-stage-hint strong{color:var(--roots-accent);flex:none}.roots-stage-feedback{color:var(--roots-ink)}.roots-stage-feedback span{color:var(--roots-accent);letter-spacing:.1em;flex:none;font:600 10px/1.5 DM Mono,monospace}.roots-stage-feedback.is-success{background:#8fbf931f;border-left-color:#8fbf93}.roots-solvers-card{border-top:1px solid var(--roots-line);margin-top:22px;padding-top:18px}.roots-solvers-card-head{align-items:center;gap:10px;display:flex}.roots-solvers-avatar{border:1px solid var(--roots-accent);width:25px;height:25px;color:var(--roots-accent-ink);background:var(--roots-accent);border-radius:50%;place-items:center;font:700 12px/1 Space Grotesk,sans-serif;display:inline-grid}.roots-solvers-card-head>div{gap:2px;display:grid}.roots-solvers-card-head strong{color:var(--roots-ink);font-size:13px}.roots-solvers-card-head div span{color:var(--roots-dim);font-size:10px}.roots-solvers-status{color:var(--roots-accent);letter-spacing:.1em;margin-left:auto;font:10px/1 DM Mono,monospace}.roots-solvers-card>p{max-width:640px;color:var(--roots-muted);margin:12px 0 14px;font-size:12px;line-height:1.55}.roots-solvers-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.roots-solvers-form input{border:1px solid var(--roots-line-strong);min-width:0;color:var(--roots-ink);background:#0f1b1ab8;border-radius:9px;outline:0;padding:10px 12px;font-size:12px}.roots-solvers-form input::placeholder{color:var(--roots-dim)}.roots-solvers-form input:focus{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-solvers-form .roots-button{min-height:38px;padding:0 14px}.roots-solvers-form .roots-button:disabled{cursor:not-allowed;opacity:.45}.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}.roots-hardware{border-top:1px solid var(--roots-line);grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:clamp(38px,8vw,110px);display:grid}.roots-hardware-media{background:var(--roots-surface);border-radius:16px;overflow:hidden}.roots-hardware-media img{object-fit:cover;object-position:center;width:100%;height:min(620px,56vw);min-height:360px;display:block}.roots-hardware-notes{border-top:1px solid var(--roots-line);margin:34px 0 28px}.roots-hardware-notes>div{border-bottom:1px solid var(--roots-line);grid-template-columns:120px minmax(0,1fr);gap:20px;padding:15px 0;display:grid}.roots-hardware-notes span{color:var(--roots-dim);text-transform:uppercase;font:11px/1.4 DM Mono,monospace}.roots-hardware-notes strong{color:var(--roots-ink);font:500 14px/1.4 DM Mono,monospace}.roots-lesson-link{border:1px solid var(--roots-accent);width:min(100%,360px);color:var(--roots-ink);background:linear-gradient(135deg, var(--roots-accent-soft), #e8b6500a);border-radius:12px;gap:6px;margin-top:32px;padding:16px 18px 17px;text-decoration:none;transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s,box-shadow .25s;display:grid;box-shadow:inset 0 1px #fff7d71f}:is(.roots-lesson-link:hover,.roots-lesson-link:focus-visible){background:var(--roots-accent-soft);transform:translateY(-3px);box-shadow:0 14px 30px #040c0a33,inset 0 1px #fff7d729}.roots-lesson-link:active{transform:translateY(-1px)scale(.99)}.roots-lesson-link-kicker{color:var(--roots-accent);letter-spacing:.15em;text-transform:uppercase;font:600 10px/1.2 DM Mono,monospace}.roots-lesson-link-title{color:var(--roots-ink);letter-spacing:-.02em;justify-content:space-between;align-items:center;gap:16px;font:600 18px/1.25 Space Grotesk,sans-serif;display:flex}.roots-lesson-link-title span{color:var(--roots-accent);font:500 17px/1 DM Mono,monospace}.roots-lesson-link-note{color:var(--roots-muted);font-size:12px;line-height:1.4}.roots-loop{border-top:1px solid var(--roots-line)}.roots-loop-heading{max-width:700px}.roots-loop-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:60px 0 0;padding:0;list-style:none;display:grid}.roots-loop-list li{border-top:1px solid var(--roots-line-strong);min-height:142px;padding:28px 22px 0 0;position:relative}.roots-loop-list li:not(:last-child):after{content:"";border-top:2px solid var(--roots-accent);width:32px;position:absolute;top:-1px;right:16px}.roots-loop-list strong,.roots-loop-list span{display:block}.roots-loop-list strong{color:var(--roots-ink);font:500 20px/1.2 Space Grotesk,sans-serif}.roots-loop-list span{max-width:150px;color:var(--roots-muted);margin-top:12px;font-size:13px;line-height:1.45}.roots-close{border-top:1px solid var(--roots-line);grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);align-items:end;gap:40px;display:grid}.roots-close-copy .roots-button{margin-top:30px}.roots-close-mark{color:var(--roots-accent);letter-spacing:-.1em;grid-template-columns:repeat(5,1fr);align-items:end;gap:6px;font:700 clamp(38px,6vw,86px)/.8 Space Grotesk,sans-serif;display:grid}.roots-close-mark span:nth-child(2),.roots-close-mark span:nth-child(4){color:var(--roots-muted);transform:translateY(-18px)}.roots-footer{border-top:1px solid var(--roots-line);color:var(--roots-dim);grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:25px clamp(20px,5vw,80px) 35px;display:grid}.roots-footer p{margin:0;font-size:12px}.roots-footer nav{flex-wrap:wrap;justify-content:flex-end;gap:18px;font-size:12px;display:flex}.roots-footer nav a{text-underline-offset:3px}:is(.roots-footer nav a:hover,.roots-footer nav a:focus-visible){color:var(--roots-ink)}.roots-reveal{animation:.75s cubic-bezier(.16,1,.3,1) both roots-rise}.roots-reveal-delay-1{animation-delay:.12s}.roots-reveal-delay-2{animation-delay:.24s}.roots-reveal-delay-3{animation-delay:.36s}@keyframes roots-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-color-scheme:light){.roots-home{--roots-bg:#f2f0e9;--roots-surface:#e8ece4;--roots-surface-strong:#dce6dc;--roots-ink:#173431;--roots-muted:#506763;--roots-dim:#71847e;--roots-line:#17343126;--roots-line-strong:#17343145;--roots-accent:#b67a18;--roots-accent-soft:#b67a1821;--roots-accent-ink:#fff9ea;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.roots-hero-media figcaption{color:#f4efe5;background:#173431cc}.roots-editor-preview{background:#17312f}.roots-coach-form textarea{color:var(--roots-ink);background:#ffffff80}}@media (max-width:900px){.roots-nav{grid-template-columns:auto auto 1fr}.roots-menu-button{display:inline-flex}.roots-navigation{border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:12px;padding:12px;display:none;position:absolute;top:calc(100% + 1px);left:20px;right:20px;box-shadow:0 20px 40px #040c0a38}.roots-navigation.is-open{display:grid}.roots-navigation a{padding:12px}.roots-nav-action{justify-self:end}.roots-hero{grid-template-columns:1fr;padding-top:54px}.roots-hero-copy{max-width:700px}.roots-hero-media,.roots-hero-media img{min-height:430px}.roots-coach-demo,.roots-hardware{grid-template-columns:1fr}.roots-hardware-media{max-width:720px}.roots-hardware-media img{height:520px}.roots-loop-list{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.roots-loop-list li:nth-child(2):after{display:none}.roots-companion{width:min(620px,100% - 32px);margin:18px auto 0;position:relative;bottom:auto;right:auto}}@media (max-width:640px){.roots-nav{grid-template-columns:auto auto 1fr;gap:12px;padding:0 16px}.roots-brand{font-size:15px}.roots-nav-action{padding:8px 10px;font-size:11px}.roots-hero{min-height:auto;padding:58px 16px 72px}.roots-hero h1{max-width:none;font-size:clamp(52px,16vw,78px)}.roots-hero-lede{font-size:16px}.roots-hero-actions{flex-direction:column;align-items:stretch}.roots-button{width:100%}.roots-hero-media,.roots-hero-media img{min-height:330px}.roots-thesis,.roots-coach-section,.roots-hardware,.roots-loop,.roots-close{padding:82px 16px}.roots-thesis,.roots-close{grid-template-columns:1fr;gap:45px}.roots-thesis-quote{max-width:none}.roots-coach-demo{gap:24px;margin-top:40px}.roots-coach-panel{padding:18px}.roots-coach-message{margin:34px 0 26px}.roots-coach-message h3{font-size:32px}.roots-hardware-media img{height:410px;min-height:0}.roots-hardware-notes>div{grid-template-columns:1fr;gap:4px}.roots-loop-list{grid-template-columns:1fr;margin-top:42px}.roots-loop-list li{min-height:auto;padding:20px 0}.roots-loop-list li:after{display:none}.roots-close-mark{max-width:260px}.roots-footer{grid-template-columns:1fr;gap:14px;padding-left:16px;padding-right:16px}.roots-footer nav{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.roots-home *,.roots-home :before,.roots-home :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:900px){.roots-stage-lab-heading,.roots-stage-grid{grid-template-columns:1fr}.roots-stage-brief-note{margin-top:28px}.roots-stage-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.roots-login-shell{grid-template-columns:1fr;gap:46px;max-width:700px}.roots-login-intro{max-width:600px}}@media (max-width:640px){.roots-stage-lab{margin-top:40px;padding:16px}.roots-stage-tabs{grid-template-columns:1fr}.roots-stage-workspace{padding:14px}.roots-stage3-module-list{max-height:none;padding-right:0;overflow:visible}.roots-stage-reset{margin-left:0}.roots-solvers-form{grid-template-columns:1fr}.roots-solvers-form .roots-button{justify-self:start}.roots-login-nav{grid-template-columns:auto 1fr auto;gap:12px;padding:0 16px}.roots-login-nav-note{display:none}.roots-login-nav .roots-nav-action{padding:8px 10px;font-size:11px}.roots-login-shell{min-height:auto;padding:58px 16px 72px}.roots-login-card{padding:18px}.roots-companion{grid-template-columns:74px minmax(0,1fr);gap:10px;margin-top:12px;padding:10px}.roots-companion-art,.roots-companion-art img{min-height:92px}.roots-companion-copy>p{min-height:0}}.roots-companion{z-index:9;width:76px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;justify-items:end;gap:8px;padding:0;display:grid;position:fixed;bottom:18px;right:18px}.roots-companion.is-open{border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:16px;width:min(292px,100vw - 32px);padding:10px}@supports (color:color-mix(in lab, red, red)){.roots-companion.is-open{background:color-mix(in srgb, var(--roots-surface) 95%, transparent)}}.roots-companion.is-open{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 64px #040c0a61}.roots-companion-pet{border:1px solid var(--roots-line-strong);width:72px;height:72px;color:var(--roots-ink);background:var(--roots-surface);cursor:pointer;border-radius:50%;outline:0;place-items:center;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;animation:5.2s ease-in-out infinite roots-companion-pet-bob;display:grid;position:relative;box-shadow:0 14px 34px #040c0a57}:is(.roots-companion-pet:hover,.roots-companion-pet:focus-visible){border-color:var(--roots-accent);box-shadow:0 16px 38px #040c0a6b, 0 0 0 4px var(--roots-accent-soft);transform:translateY(-3px)}.roots-companion.is-open .roots-companion-pet{justify-self:end;width:58px;height:58px}.roots-companion-pet .roots-companion-art{background:#101b1a;border:0;border-radius:50%;width:100%;height:100%;min-height:0}.roots-companion-pet .roots-companion-art img{min-height:0;transform:scale(1.38)}.roots-companion-pet .roots-companion-signal{width:7px;height:7px;top:9px;right:9px}.roots-companion-pet-label{border:1px solid var(--roots-line-strong);background:var(--roots-surface);text-align:center;border-radius:999px;gap:1px;min-width:40px;padding:3px 5px;display:grid;position:absolute;bottom:-3px;right:-4px}.roots-companion-pet-label strong{color:var(--roots-ink);font:600 9px/1 Space Grotesk,sans-serif}.roots-companion-pet-label small{color:var(--roots-accent);letter-spacing:.08em;text-transform:uppercase;font:600 7px/1 DM Mono,monospace}.roots-companion-whisper{border:1px solid var(--roots-line-strong);width:min(190px,100vw - 108px);color:var(--roots-muted);background:var(--roots-surface);border-radius:12px 12px 3px;gap:3px;padding:8px 10px;display:grid;position:absolute;bottom:10px;right:68px}@supports (color:color-mix(in lab, red, red)){.roots-companion-whisper{background:color-mix(in srgb, var(--roots-surface) 96%, transparent)}}.roots-companion-whisper{font-size:10px;line-height:1.35;animation:.35s both roots-companion-whisper-in;box-shadow:0 12px 28px #040c0a40}.roots-companion-whisper:after{border-top:1px solid var(--roots-line-strong);border-right:1px solid var(--roots-line-strong);background:var(--roots-surface);content:"";width:8px;height:8px;position:absolute;bottom:10px;right:-5px;transform:rotate(45deg)}.roots-companion-whisper span{color:var(--roots-accent);letter-spacing:.1em;font:600 8px/1 DM Mono,monospace}.roots-companion-whisper.is-error{background:var(--roots-accent-soft);border-color:#e8b650a3}@supports (color:color-mix(in lab, red, red)){.roots-companion-whisper.is-error{background:color-mix(in srgb, var(--roots-accent-soft) 72%, var(--roots-surface))}}.roots-companion-panel{scrollbar-width:thin;flex-direction:column;align-items:stretch;gap:10px;width:100%;max-height:min(68vh,520px);display:flex;overflow:hidden auto}.roots-companion-panel>*{flex:none;min-width:0}.roots-companion-panel>p{min-height:0;color:var(--roots-muted);overflow-wrap:anywhere;margin:0;font-size:11px;line-height:1.45}.roots-companion-panel .roots-companion-live-check{min-height:0;margin:0;position:relative}.roots-companion-panel .roots-companion-live-check p{overflow-wrap:anywhere;min-height:0}.roots-companion-panel .roots-fun-fact{margin-top:0}.roots-companion-branch{z-index:3;border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:14px 14px 4px;gap:8px;width:min(274px,100vw - 72px);max-height:min(52vh,410px);padding:11px;display:grid;position:absolute;bottom:calc(100% - 4px);right:calc(100% - 12px);overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.roots-companion-branch{background:color-mix(in srgb, var(--roots-surface) 97%, transparent)}}.roots-companion-branch{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 48px #040c0a5c}.roots-companion.is-open .roots-companion-branch{width:min(292px,100vw - 32px);left:0;right:auto}.roots-companion-guide{z-index:3;border:1px solid var(--roots-line-strong);background:var(--roots-surface);border-radius:14px 14px 4px;gap:8px;width:min(274px,100vw - 72px);padding:11px;display:grid;position:absolute;bottom:calc(100% - 4px);left:auto;right:calc(100% - 12px)}@supports (color:color-mix(in lab, red, red)){.roots-companion-guide{background:color-mix(in srgb, var(--roots-surface) 97%, transparent)}}.roots-companion-guide{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 48px #040c0a5c}.roots-companion.is-open .roots-companion-guide{width:min(292px,100vw - 32px);left:0;right:auto}.roots-companion-guide:after{border-right:1px solid var(--roots-line-strong);border-bottom:1px solid var(--roots-line-strong);background:var(--roots-surface);content:"";width:9px;height:9px;position:absolute;bottom:-5px;right:18px;transform:rotate(45deg)}.roots-companion-guide-head{color:var(--roots-accent);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:8px;font:600 8px/1.2 DM Mono,monospace;display:flex}.roots-companion-guide-head button{border:1px solid var(--roots-line);width:20px;height:20px;color:var(--roots-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:14px;line-height:1;display:grid}:is(.roots-companion-guide-head button:hover,.roots-companion-guide-head button:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-companion-guide p{color:var(--roots-muted);margin:0;font-size:10px;line-height:1.42}.roots-companion-guide-dismiss{border:1px solid var(--roots-line);color:var(--roots-muted);cursor:pointer;background:0 0;border-radius:999px;justify-self:start;padding:5px 7px;font-size:9px}:is(.roots-companion-guide-dismiss:hover,.roots-companion-guide-dismiss:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-companion-branch:after{border-top:1px solid var(--roots-line-strong);border-right:1px solid var(--roots-line-strong);background:var(--roots-surface);content:"";width:9px;height:9px;position:absolute;bottom:12px;right:-5px;transform:rotate(45deg)}.roots-companion-branch-head{color:var(--roots-accent);letter-spacing:.08em;justify-content:space-between;align-items:center;gap:8px;font:600 8px/1.2 DM Mono,monospace;display:flex}.roots-companion-branch-head button{border:1px solid var(--roots-line);width:20px;height:20px;color:var(--roots-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:14px;line-height:1;display:grid}:is(.roots-companion-branch-head button:hover,.roots-companion-branch-head button:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-companion-selection{border-left:2px solid var(--roots-accent);max-height:64px;color:var(--roots-ink);white-space:pre-wrap;overflow-wrap:anywhere;background:#e8b65014;padding:7px 8px;font:500 10px/1.4 DM Mono,monospace;display:block;overflow:hidden}.roots-companion-branch>p{color:var(--roots-muted);margin:0;font-size:10px;line-height:1.4}.roots-companion-branch-prompts{flex-wrap:wrap;gap:6px;display:flex}.roots-companion-branch-prompts button,.roots-companion-branch-form button{border:1px solid var(--roots-line);color:var(--roots-muted);cursor:pointer;background:0 0;border-radius:999px;padding:5px 7px;font-size:9px}:is(.roots-companion-branch-prompts button:first-child,.roots-companion-branch-prompts button:hover,.roots-companion-branch-prompts button:focus-visible,.roots-companion-branch-form button:hover,.roots-companion-branch-form button:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}.roots-companion-branch button:disabled{cursor:wait;opacity:.55}.roots-companion-branch-form{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.roots-companion-branch-form input{border:1px solid var(--roots-line);min-width:0;color:var(--roots-ink);background:#ffffff0a;border-radius:8px;outline:0;padding:7px 8px;font:10px/1.2 Space Grotesk,sans-serif}.roots-companion-branch-form input:focus{border-color:var(--roots-accent);box-shadow:0 0 0 3px var(--roots-accent-soft)}.roots-companion-branch-reply{border-top:1px solid var(--roots-line);gap:3px;padding-top:8px;display:grid}.roots-companion-branch-reply strong{color:var(--roots-accent);letter-spacing:.08em;text-transform:uppercase;font:600 8px/1.2 DM Mono,monospace}.roots-companion-branch-reply{color:var(--roots-muted);white-space:pre-wrap;overflow-wrap:anywhere;font-size:10px;line-height:1.42}.roots-companion-close{border:1px solid var(--roots-line);width:24px;height:24px;color:var(--roots-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:16px;line-height:1;display:grid}:is(.roots-companion-close:hover,.roots-companion-close:focus-visible){border-color:var(--roots-accent);color:var(--roots-ink);background:var(--roots-accent-soft)}@keyframes roots-companion-pet-bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(-1deg)}}@keyframes roots-companion-whisper-in{0%{opacity:0;transform:translate(5px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@media (max-width:900px){.roots-companion{width:76px;margin:0;position:fixed;bottom:16px;right:16px}.roots-companion.is-open{width:min(292px,100vw - 32px);margin:0}}@media (max-width:640px){.roots-companion{bottom:12px;right:12px}.roots-companion.is-open{width:min(286px,100vw - 24px);padding:9px}.roots-companion-whisper{width:min(174px,100vw - 94px);right:62px}.roots-companion-branch{width:min(274px,100vw - 48px);right:calc(100% - 8px)}.roots-companion.is-open .roots-companion-branch{width:min(286px,100vw - 24px);left:0;right:auto}.roots-companion-guide{width:min(274px,100vw - 48px);right:calc(100% - 8px)}.roots-companion.is-open .roots-companion-guide{width:min(286px,100vw - 24px);left:0;right:auto}}.speed-control-v2{--speed-v2-bg:#0d1417;--speed-v2-surface:#141f22;--speed-v2-surface-2:#1a292c;--speed-v2-ink:#edf2eb;--speed-v2-muted:#9eafa6;--speed-v2-dim:#627a73;--speed-v2-line:#d5e7d926;--speed-v2-line-strong:#d5e7d947;--speed-v2-amber:#f0b44d;--speed-v2-coral:#f07e5c;--speed-v2-mint:#8bd0a8;--speed-v2-violet:#ad9aff;color:var(--speed-v2-ink);background:radial-gradient(circle at 82% 6%, #f0b44d21, transparent 30rem), radial-gradient(circle at 10% 34%, #8bd0a814, transparent 27rem), var(--speed-v2-bg);padding:24px 5vw 72px;position:relative;overflow-x:clip}.speed-control-v2:before{z-index:0;pointer-events:none;content:"";opacity:.33;background-image:linear-gradient(#ddecdf0b 1px,#0000 1px),linear-gradient(90deg,#ddecdf0b 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 66%);mask-image:linear-gradient(#000,#0000 66%)}.speed-control-v2>*{z-index:1;position:relative}.speed-control-v2 .speed-lab-topbar{max-width:1320px;color:var(--speed-v2-dim)}.speed-control-v2 .speed-lab-back{color:var(--speed-v2-amber)}.speed-control-v2 .speed-lab-back:hover{color:var(--speed-v2-ink)}.speed-control-v2 .speed-lab-badge{color:var(--speed-v2-amber);background:#f0b44d17;border-color:#f0b44d8c}.speed-control-v2 .speed-lab-hero{grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);align-items:stretch;gap:18px;max-width:1320px;margin-top:70px}.speed-control-v2 .speed-lab-eyebrow{color:var(--speed-v2-amber)}.speed-control-v2 .speed-lab-eyebrow span{background:var(--speed-v2-amber);box-shadow:0 0 16px #f0b44d80}.speed-control-v2 .speed-lab-hero h1{max-width:700px;color:var(--speed-v2-ink);font-size:clamp(46px,6.1vw,82px);line-height:.9}.speed-control-v2 .speed-lab-hero h1 em{color:var(--speed-v2-amber)}.speed-control-v2 .speed-lab-hero p{max-width:520px;color:var(--speed-v2-muted);font-size:14px}.speed-control-v2 .speed-lab-question{border:1px solid var(--speed-v2-line);background:linear-gradient(145deg,#1a292ce0,#0e1719e0);border-radius:18px;flex-direction:column;justify-content:flex-end;min-height:225px;padding:20px;display:flex;box-shadow:inset 0 1px #ffffff0a}.speed-control-v2 .speed-lab-question span{color:var(--speed-v2-coral)}.speed-control-v2 .speed-lab-question strong{color:var(--speed-v2-ink);font-size:20px;line-height:1.12}.speed-control-v2 .speed-lab-question small{color:var(--speed-v2-muted);font-size:11px;line-height:1.5}.speed-v2-hero-visual{background:radial-gradient(circle at 55% 42%,#f0b44d1f,#0000 50%),#131f20c7;border:1px solid #f0b44d54;border-radius:18px;min-height:245px;padding:17px;position:relative;overflow:hidden}.speed-v2-hero-visual:after{content:"";background:linear-gradient(90deg,#0000,#f0b44d8c,#0000);width:56%;height:1px;position:absolute;bottom:48px;right:16px;transform:rotate(-12deg)}.speed-v2-visual-meta,.speed-v2-visual-readout{z-index:2;color:var(--speed-v2-dim);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;gap:10px;font:600 8px DM Mono,monospace;display:flex;position:relative}.speed-v2-visual-meta b{color:var(--speed-v2-amber);font-weight:600}.speed-v2-hero-visual img{object-fit:contain;filter:saturate(.84)contrast(1.05);width:116%;max-width:none;height:220px;margin:-2px -9%;display:block}.speed-v2-visual-readout{position:absolute;bottom:16px;left:17px;right:17px}.speed-v2-visual-readout strong{color:var(--speed-v2-mint);font-weight:600}.speed-control-v2 .speed-lab-plan,.speed-control-v2 .speed-lab-animation-card,.speed-control-v2 .speed-lab-observe-card,.speed-control-v2 .speed-code-intro,.speed-control-v2 .speed-block-card,.speed-control-v2 .speed-python-card,.speed-control-v2 .speed-stage-detail,.speed-control-v2 .speed-challenge-card,.speed-control-v2 .speed-knowledge-card{border-color:var(--speed-v2-line);background:#141f22e6;border-radius:18px;box-shadow:0 18px 44px #0000002e,inset 0 1px #ffffff09}.speed-control-v2 .speed-lab-plan{max-width:1320px;margin-top:18px}.speed-control-v2 .speed-lab-card-heading{color:var(--speed-v2-dim);border-color:var(--speed-v2-line)}.speed-control-v2 .speed-lab-card-heading b{color:var(--speed-v2-amber)}.speed-control-v2 .speed-stage-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.speed-control-v2 .speed-stage-card{border-color:var(--speed-v2-line);min-height:92px;color:var(--speed-v2-muted);background:#09101261;border-radius:12px}.speed-control-v2 .speed-stage-card:hover,.speed-control-v2 .speed-stage-card.selected{border-color:var(--stage-color);background:var(--stage-color)}@supports (color:color-mix(in lab, red, red)){.speed-control-v2 .speed-stage-card:hover,.speed-control-v2 .speed-stage-card.selected{background:color-mix(in srgb, var(--stage-color) 12%, var(--speed-v2-surface))}}.speed-control-v2 .speed-stage-card.selected .speed-stage-number{color:var(--speed-v2-bg)}.speed-control-v2 .speed-stage-card.selected .speed-stage-copy strong{color:var(--speed-v2-ink)}.speed-control-v2 .speed-stage-number{border-color:var(--stage-color);color:#805d44}.speed-control-v2 .speed-stage-copy strong{color:var(--speed-v2-ink)}.speed-control-v2 .speed-stage-copy small{color:var(--speed-v2-dim)}.speed-control-v2 .speed-stage-arrow{color:var(--speed-v2-amber)}.speed-control-v2 .speed-lab-workspace{gap:18px;max-width:1320px}.speed-control-v2 .speed-lab-animation-card{padding:20px}.speed-control-v2 .speed-analysis-diagram{border-color:var(--speed-v2-line);background:linear-gradient(145deg,#172528,#101a1c);border-radius:13px}.speed-control-v2 .speed-analysis-title{color:var(--speed-v2-ink)}.speed-control-v2 .speed-analysis-title small,.speed-control-v2 .speed-analysis-axis-label{color:var(--speed-v2-dim)}.speed-control-v2 .speed-analysis-plot{background-image:linear-gradient(90deg,#8bd0a81f 1px,#0000 1px),linear-gradient(#8bd0a81f 1px,#0000 1px);border-color:#8bd0a873}.speed-control-v2 .speed-analysis-max-line{border-color:#f0b44d80}.speed-control-v2 .speed-analysis-max-line span{color:var(--speed-v2-amber)}.speed-control-v2 .speed-analysis-stage{border-color:var(--stage-color);background:var(--speed-v2-surface);color:var(--stage-color)}.speed-control-v2 .speed-analysis-key,.speed-control-v2 .speed-lab-track-labels,.speed-control-v2 .speed-track-note{color:var(--speed-v2-dim)}.speed-control-v2 .speed-lab-track{border-color:var(--speed-v2-line-strong);background:#080e10b3}.speed-control-v2 .speed-track-line{background:#edf2eba6}.speed-control-v2 .speed-target-line{border-color:var(--speed-v2-amber)}.speed-control-v2 .speed-wheel{background:#11191b;box-shadow:0 7px 16px #00000061,inset 0 0 0 4px #202e2d}.speed-control-v2 .speed-wheel-ring{border-color:#7c8c83}.speed-control-v2 .speed-wheel-spoke{background:#b0bdb3}.speed-control-v2 .speed-wheel-hub{background:var(--speed-v2-amber)}.speed-control-v2 .speed-readout-grid{border-color:var(--speed-v2-line)}.speed-control-v2 .speed-readout-grid small,.speed-control-v2 .speed-meter-labels{color:var(--speed-v2-dim)}.speed-control-v2 .speed-readout-grid strong,.speed-control-v2 .speed-meter-labels strong{color:#9a6c49}.speed-control-v2 .speed-readout-grid i{color:var(--speed-v2-dim)}.speed-control-v2 .speed-control-row{border-color:var(--speed-v2-line);color:var(--speed-v2-muted)}.speed-control-v2 .speed-control-row strong{color:var(--speed-v2-amber)}.speed-control-v2 .speed-control-row input{accent-color:var(--speed-v2-amber)}.speed-control-v2 .speed-run-button{color:var(--speed-v2-bg);background:var(--speed-v2-amber);border-radius:9px;box-shadow:0 8px 18px #f0b44d26}.speed-control-v2 .speed-run-button:hover{background:#ffd27a}.speed-control-v2 .speed-lab-observe-card h2,.speed-control-v2 .speed-code-intro h2,.speed-control-v2 .speed-knowledge-intro h2,.speed-control-v2 .speed-challenge-card h2{color:var(--speed-v2-ink)}.speed-control-v2 .speed-lab-observe-card>p,.speed-control-v2 .speed-knowledge-intro p,.speed-control-v2 .speed-challenge-card p,.speed-control-v2 .speed-code-intro>p{color:var(--speed-v2-muted)}.speed-control-v2 .speed-meter{background:#263636}.speed-control-v2 .speed-observe-question{border-color:var(--speed-v2-line);background:#09101266}.speed-control-v2 .speed-observe-question span,.speed-control-v2 .speed-inertia-note b{color:var(--speed-v2-amber)}.speed-control-v2 .speed-observe-question strong,.speed-control-v2 .speed-inertia-note p{color:var(--speed-v2-muted)}.speed-control-v2 .speed-inertia-note{background:#8bd0a814;border-color:#8bd0a859}.speed-control-v2 .speed-inertia-note>span{color:var(--speed-v2-mint)}.speed-control-v2 .speed-code-section{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);align-items:start;gap:18px;max-width:1320px}.speed-control-v2 .speed-code-concept-column{align-content:start;gap:18px;min-width:0;display:grid}.speed-control-v2 .speed-code-concept-column .speed-code-intro,.speed-control-v2 .speed-code-concept-column .speed-block-card{width:100%}.speed-control-v2 .speed-code-intro,.speed-control-v2 .speed-block-card,.speed-control-v2 .speed-python-card{padding:20px}.speed-control-v2 .speed-code-intro h2 em{color:var(--speed-v2-amber)}.speed-control-v2 .speed-encoder-note,.speed-control-v2 .speed-python-highlight{background:#f0b44d14;border-color:#f0b44d57}.speed-control-v2 .speed-encoder-note span,.speed-control-v2 .speed-python-highlight span{color:var(--speed-v2-amber)}.speed-control-v2 .speed-encoder-note strong,.speed-control-v2 .speed-python-highlight strong{color:var(--speed-v2-ink)}.speed-control-v2 .speed-encoder-note small,.speed-control-v2 .speed-python-highlight small{color:var(--speed-v2-muted)}.speed-control-v2 .speed-code-card-head{border-color:var(--speed-v2-line);color:var(--speed-v2-dim)}.speed-control-v2 .speed-code-card-head b{color:var(--speed-v2-mint)}.speed-control-v2 .speed-pseudocode{color:#c1e7ca;background:#0b1718}.speed-control-v2 .speed-variable-palette{border-color:var(--speed-v2-line);background:#0910126b}.speed-control-v2 .speed-variable-palette>div:first-child span{color:var(--speed-v2-amber)}.speed-control-v2 .speed-variable-palette>div:first-child small,.speed-control-v2 .speed-variable-list span{color:var(--speed-v2-dim)}.speed-control-v2 .speed-variable-list code{color:var(--speed-v2-mint)}.speed-control-v2 .speed-python-prompt{color:var(--speed-v2-muted)}.speed-control-v2 .speed-python-editor-wrap{border-color:var(--speed-v2-line-strong);background:#091214}.speed-control-v2 .speed-python-editor-highlight{color:#dceadd}.speed-control-v2 .speed-python-editor-line>span{color:#4f6b64}.speed-control-v2 .speed-python-editor{color:#0000;caret-color:var(--speed-v2-amber)}.speed-control-v2 .speed-python-editor::selection{background:#f0b44d47}.speed-control-v2 .speed-python-live-status{border-color:var(--speed-v2-line)}.speed-control-v2 .speed-python-live-status.clear{color:var(--speed-v2-mint);background:#8bd0a812}.speed-control-v2 .speed-python-live-status.has-diagnostics{color:#ffb29a;background:#f07e5c1a}.speed-control-v2 .speed-python-check{color:var(--speed-v2-bg);background:var(--speed-v2-mint)}.speed-control-v2 .speed-python-hint-button,.speed-control-v2 .speed-python-ai-button{border-color:var(--speed-v2-line-strong);color:var(--speed-v2-muted);background:0 0}.speed-control-v2 .speed-python-hint-button:hover,.speed-control-v2 .speed-python-ai-button:hover{border-color:var(--speed-v2-amber);color:var(--speed-v2-amber)}.speed-control-v2 .speed-python-hint,.speed-control-v2 .speed-python-ai-explanation{color:#d9d0ff;background:#ad9aff14;border-color:#ad9aff59}.speed-control-v2 .speed-python-feedback.correct{color:var(--speed-v2-mint);background:#8bd0a814;border-color:#8bd0a866}.speed-control-v2 .speed-python-feedback.wrong{color:#ffb29a;background:#f07e5c14;border-color:#f07e5c66}.speed-control-v2 .speed-knowledge-card,.speed-control-v2 .speed-stage-detail,.speed-control-v2 .speed-challenge-card{max-width:1320px}.speed-control-v2 .speed-knowledge-intro h2 em{color:var(--speed-v2-amber)}.speed-control-v2 .speed-knowledge-progress{border-color:var(--speed-v2-line)}.speed-control-v2 .speed-knowledge-progress span{border-color:var(--speed-v2-line-strong);color:var(--speed-v2-dim);background:var(--speed-v2-surface)}.speed-control-v2 .speed-knowledge-progress span.active{border-color:var(--speed-v2-amber);color:var(--speed-v2-bg);background:var(--speed-v2-amber);box-shadow:0 0 0 3px #f0b44d26}.speed-control-v2 .speed-knowledge-progress span.done{border-color:var(--speed-v2-mint);color:var(--speed-v2-bg);background:var(--speed-v2-mint)}.speed-control-v2 .speed-knowledge-question{background:#8bd0a80f;border-color:#8bd0a842}.speed-control-v2 .speed-knowledge-complete{background:#8bd0a817;border-color:#8bd0a84d}.speed-control-v2 .speed-knowledge-label,.speed-control-v2 .speed-knowledge-question p,.speed-control-v2 .speed-knowledge-complete p,.speed-control-v2 .speed-knowledge-hint{color:var(--speed-v2-dim)}.speed-control-v2 .speed-knowledge-question h3,.speed-control-v2 .speed-knowledge-complete h3{color:var(--speed-v2-ink)}.speed-control-v2 .speed-knowledge-options button,.speed-control-v2 .speed-knowledge-editor{border-color:var(--speed-v2-line-strong);color:var(--speed-v2-muted);background:#0910128a}.speed-control-v2 .speed-knowledge-options button:hover,.speed-control-v2 .speed-knowledge-options button.selected{border-color:var(--speed-v2-amber);color:var(--speed-v2-ink);background:#f0b44d1a}.speed-control-v2 .speed-knowledge-code{color:#c1e7ca;background:#0b1718}.speed-control-v2 .speed-detail-card,.speed-control-v2 .challenge-answer{border-color:var(--speed-v2-line);color:var(--speed-v2-muted);background:#0910126b}.speed-control-v2 .speed-detail-card:hover,.speed-control-v2 .speed-detail-card.selected,.speed-control-v2 .challenge-answer:hover{border-color:var(--speed-v2-amber);background:#f0b44d14}.speed-control-v2 .speed-detail-card strong,.speed-control-v2 .challenge-answer{color:var(--speed-v2-ink)}.speed-control-v2 .speed-detail-card small,.speed-control-v2 .speed-detail-card p,.speed-control-v2 .challenge-answer span{color:var(--speed-v2-dim)}.speed-control-v2 .speed-challenge-card{background:linear-gradient(135deg,#f07e5c14,#141f22eb);border-color:#f07e5c40}.speed-control-v2 .speed-challenge-card h2{font-size:clamp(25px,3vw,38px)}.speed-control-v2 .speed-lab-footer{max-width:1320px;color:var(--speed-v2-dim)}.speed-control-v2 .speed-lab-footer a{color:var(--speed-v2-amber)}.speed-v2-companion{z-index:40;pointer-events:none;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:22px;right:24px}.speed-v2-companion-panel{width:252px;color:var(--speed-v2-muted);pointer-events:auto;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141f22f2;border:1px solid #8bd0a847;border-radius:15px 15px 4px;padding:13px;box-shadow:0 18px 44px #00000052}.speed-v2-companion-heading{color:var(--speed-v2-mint);letter-spacing:.12em;justify-content:space-between;gap:10px;font:600 8px DM Mono,monospace;display:flex}.speed-v2-companion-heading b{color:var(--speed-v2-amber);font-weight:600}.speed-v2-companion-panel>p{color:var(--speed-v2-muted);margin:8px 0 0;font-size:11px;line-height:1.35}.speed-v2-companion-fact{border-left:2px solid var(--speed-v2-amber);background:#f0b44d12;gap:6px;margin-top:10px;padding:9px;animation:.2s both speed-v2-fact-in;display:grid}.speed-v2-companion-fact span{color:var(--speed-v2-amber);letter-spacing:.1em;font:600 7px DM Mono,monospace}.speed-v2-companion-fact strong{color:var(--speed-v2-ink);font-size:11px;line-height:1.3}.speed-v2-companion-fact small{color:var(--speed-v2-muted);font-size:9px;line-height:1.35}.speed-v2-companion-fact a{color:var(--speed-v2-mint);font:600 8px DM Mono,monospace;text-decoration:none}.speed-v2-companion-fact a:hover{color:var(--speed-v2-ink)}.speed-v2-companion-actions{gap:6px;margin-top:10px;display:flex}.speed-v2-companion-actions button{border:1px solid var(--speed-v2-line-strong);color:var(--speed-v2-muted);cursor:pointer;background:0 0;border-radius:999px;padding:6px 8px;font:600 8px DM Mono,monospace}:is(.speed-v2-companion-actions button:hover,.speed-v2-companion-actions button:focus-visible){border-color:var(--speed-v2-amber);color:var(--speed-v2-amber)}.speed-v2-companion-orb{pointer-events:auto;background:radial-gradient(circle at 35% 28%,#6da48d,#28574f 53%,#142826 54%);border:1px solid #8bd0a880;border-radius:50%;flex:0 0 62px;width:62px;height:62px;animation:3.2s ease-in-out infinite speed-v2-pet-bob;position:relative;overflow:hidden;box-shadow:0 12px 26px #00000052,0 0 0 5px #8bd0a814}.speed-v2-companion-orb:before{content:"";background:linear-gradient(145deg,#e7eee3,#99b9a4);border:2px solid #edf2ebb3;border-radius:40% 40% 46% 46%;position:absolute;inset:11px 14px 18px;box-shadow:inset -4px -5px #2a534a38}.speed-v2-companion-eye{z-index:2;background:#10211d;border-radius:50%;width:4px;height:6px;position:absolute;top:24px}.speed-v2-companion-eye.eye-left{left:24px}.speed-v2-companion-eye.eye-right{right:24px}.speed-v2-companion-wheel{z-index:2;background:#0b1515;border:1px solid #162d29;border-radius:50%;width:13px;height:8px;position:absolute;bottom:7px}.speed-v2-companion-wheel.wheel-left{left:12px}.speed-v2-companion-wheel.wheel-right{right:12px}@keyframes speed-v2-pet-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-5px)rotate(1deg)}}@keyframes speed-v2-fact-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1120px){.speed-control-v2 .speed-lab-hero{grid-template-columns:minmax(0,1fr) minmax(230px,.72fr)}}@media (max-width:900px){.speed-control-v2 .speed-stage-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.speed-control-v2 .speed-lab-hero{margin-top:48px}.speed-control-v2 .speed-code-section{grid-template-columns:1fr}}@media (max-width:650px){.speed-control-v2{padding-left:14px;padding-right:14px}.speed-control-v2 .speed-lab-hero{grid-template-columns:1fr;margin-top:38px}.speed-v2-companion{gap:7px;bottom:12px;right:12px}.speed-v2-companion-panel{width:min(246px,100vw - 92px)}.speed-v2-companion-orb{flex-basis:58px;width:58px;height:58px}}.speed-analysis-separation{z-index:4;pointer-events:none;border-left:1px dashed #f0b44d66;width:0;position:absolute;top:0;bottom:-8px}.speed-track-separation{z-index:4;pointer-events:none;border-left:1px dashed #5c776f8c;width:0;position:absolute;top:34px;bottom:22px}.speed-control-v2 .speed-lab-track{margin:8px 6px 0 36px}.speed-control-v2 .speed-analysis-separation{border-left-color:#f0b44d85}.speed-control-v2 .speed-track-separation{border-left-color:#f0b44d9e}.wheel-lab-v2{--wheel-v2-bg:#0f1719;--wheel-v2-surface:#172426;--wheel-v2-surface-2:#1d2c2e;--wheel-v2-surface-3:#233537;--wheel-v2-line:#b1cec230;--wheel-v2-line-strong:#e7b45e9e;--wheel-v2-ink:#eff1e9;--wheel-v2-muted:#9aafa7;--wheel-v2-dim:#6d8580;--wheel-v2-accent:#e7b45e;--wheel-v2-mint:#8bc7a7;--wheel-v2-coral:#e68168;background:radial-gradient(circle at 76% 7%, #e7b45e1f, transparent 27rem), radial-gradient(circle at 7% 38%, #8bc7a714, transparent 26rem), var(--wheel-v2-bg);min-height:100dvh;color:var(--wheel-v2-ink);padding:26px clamp(14px,5vw,72px) 56px;position:relative;overflow:hidden}.wheel-lab-v2:before{z-index:0;content:"";pointer-events:none;background-image:linear-gradient(#b4cabf09 1px,#0000 1px),linear-gradient(90deg,#b4cabf09 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.wheel-lab-v2>*{z-index:1;position:relative}.wheel-v2-topbar{max-width:1320px;color:var(--wheel-v2-dim);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:18px;margin:0 auto;font:600 9px DM Mono,monospace;display:flex}.wheel-v2-back,.wheel-v2-footer a{color:var(--wheel-v2-accent);text-decoration:none}.wheel-v2-back:hover,.wheel-v2-footer a:hover{color:var(--wheel-v2-ink)}.wheel-v2-back:focus-visible{color:var(--wheel-v2-ink)}.wheel-v2-footer a:focus-visible{color:var(--wheel-v2-ink)}.wheel-v2-badge{border:1px solid var(--wheel-v2-line-strong);color:var(--wheel-v2-accent);background:#e7b45e14;border-radius:999px;padding:7px 10px}.wheel-v2-hero{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:stretch;gap:20px;max-width:1320px;margin:58px auto 22px;display:grid}.wheel-v2-hero-copy{flex-direction:column;justify-content:center;display:flex}.wheel-v2-kicker{color:var(--wheel-v2-accent);letter-spacing:.16em;text-transform:uppercase;font:600 10px DM Mono,monospace}.wheel-v2-hero h1{max-width:690px;color:var(--wheel-v2-ink);letter-spacing:-.065em;margin:13px 0 17px;font:600 clamp(50px,7vw,92px)/.88 Space Grotesk,sans-serif}.wheel-v2-hero h1 em{color:var(--wheel-v2-accent);font-style:normal}.wheel-v2-hero-copy>p{max-width:520px;color:var(--wheel-v2-muted);margin:0;font-size:15px;line-height:1.55}.wheel-v2-hero-question{border-left:2px solid var(--wheel-v2-accent);background:#e7b45e12;max-width:510px;margin-top:26px;padding:15px 17px}.wheel-v2-hero-question span,.wheel-v2-plate-label span,.wheel-v2-related-copy>span{color:var(--wheel-v2-accent);letter-spacing:.13em;text-transform:uppercase;font:600 9px DM Mono,monospace;display:block}.wheel-v2-hero-question strong{color:var(--wheel-v2-ink);margin-top:9px;font:600 16px/1.2 Space Grotesk,sans-serif;display:block}.wheel-v2-hero-question small{color:var(--wheel-v2-dim);margin-top:7px;font-size:10px;line-height:1.45;display:block}.wheel-v2-hero-plate{background:radial-gradient(circle at 54% 47%,#e7b45e21,#0000 50%),#162426e8;border:1px solid #e7b45e61;border-radius:18px;min-height:330px;padding:17px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0a,0 20px 54px #00000030}.wheel-v2-hero-plate:after{content:"";background:linear-gradient(90deg,#0000,#e7b45e8c,#0000);height:1px;position:absolute;bottom:77px;left:9%;right:7%;transform:rotate(-9deg)}.wheel-v2-plate-label{z-index:2;color:var(--wheel-v2-dim);letter-spacing:.12em;justify-content:space-between;gap:12px;font:600 8px DM Mono,monospace;display:flex;position:relative}.wheel-v2-plate-label b{color:var(--wheel-v2-mint);font-weight:600}.wheel-v2-hero-wheels{justify-content:space-around;align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:57px;left:8%;right:7%}.wheel-v2-hero-wheel{color:var(--wheel-v2-dim);justify-items:center;gap:4px;font:600 8px DM Mono,monospace;display:grid}.wheel-v2-hero-wheel:nth-child(2){transform:translateY(-15px)}.wheel-v2-hero-wheel:nth-child(3){transform:translateY(2px)}.wheel-v2-plate-note{z-index:2;color:var(--wheel-v2-muted);font-size:10px;position:absolute;bottom:16px;left:17px;right:17px}.wheel-render{width:var(--wheel-size);height:var(--wheel-size);flex:none;display:block;position:relative}.wheel-render-image{background-image:var(--wheel-asset);filter:drop-shadow(0 8px 5px #00000061);transform:rotateZ(var(--wheel-rotation));transform-origin:50%;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0}.wheel-v2-workbench{grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr);gap:16px;max-width:1320px;margin:0 auto;display:grid}.wheel-v2-selection,.wheel-v2-simulation,.wheel-v2-reading-main,.wheel-v2-insight,.wheel-v2-related{border:1px solid var(--wheel-v2-line);background:#172426e8;border-radius:18px;box-shadow:inset 0 1px #ffffff09,0 18px 46px #00000026}.wheel-v2-selection,.wheel-v2-simulation,.wheel-v2-reading-main,.wheel-v2-insight{padding:18px}.wheel-v2-section-heading{border-bottom:1px solid var(--wheel-v2-line);color:var(--wheel-v2-dim);letter-spacing:.13em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;font:600 9px DM Mono,monospace;display:flex}.wheel-v2-section-heading b{color:var(--wheel-v2-accent);font-weight:600}.wheel-v2-section-intro{max-width:360px;color:var(--wheel-v2-muted);margin:15px 0 12px;font-size:11px;line-height:1.5}.wheel-v2-wheel-list{gap:9px;display:grid}.wheel-v2-option{border:1px solid var(--wheel-v2-line);background:#070f114d;border-radius:11px;padding:7px 8px 7px 7px;transition:border-color .25s,background .25s,transform .25s;position:relative}.wheel-v2-option:hover,.wheel-v2-option.selected{border-color:var(--wheel-v2-line-strong);background:#e7b45e14}.wheel-v2-option:active{transform:translateY(1px)}.wheel-v2-option-select{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0;display:grid}.wheel-v2-option-select:disabled{cursor:wait;opacity:.65}.wheel-v2-option-render{place-items:center;width:72px;height:68px;display:grid}.wheel-v2-option-render .wheel-render{transform:scale(.72)}.wheel-v2-option-copy{gap:3px;min-width:0;display:grid}.wheel-v2-option-copy strong{color:var(--wheel-v2-ink);font:600 12px Space Grotesk,sans-serif}.wheel-v2-option-copy small{color:var(--wheel-v2-muted);font:9px/1.35 DM Mono,monospace}.wheel-v2-option-copy em{color:var(--wheel-v2-dim);font-size:9px;line-height:1.3}.wheel-v2-option-state{color:var(--wheel-v2-dim);font:600 8px DM Mono,monospace}.wheel-v2-option.selected .wheel-v2-option-state{color:var(--wheel-v2-mint)}.wheel-v2-option>a{color:var(--wheel-v2-accent);margin:4px 0 0 81px;font:600 8px DM Mono,monospace;text-decoration:none;display:block}:is(.wheel-v2-option>a:hover,.wheel-v2-option>a:focus-visible){color:var(--wheel-v2-ink)}.wheel-v2-formula-note{border-left:2px solid var(--wheel-v2-accent);background:#e7b45e12;grid-template-columns:auto auto;gap:4px 10px;margin-top:15px;padding:12px;display:grid}.wheel-v2-formula-note strong{color:var(--wheel-v2-ink);font-size:10px}.wheel-v2-formula-note code{color:var(--wheel-v2-accent);font:600 10px DM Mono,monospace}.wheel-v2-formula-note p{color:var(--wheel-v2-dim);grid-column:1/-1;margin:3px 0 0;font-size:9px;line-height:1.4}.wheel-v2-simulation-copy{justify-content:space-between;align-items:end;gap:18px;margin:15px 0 4px;display:flex}.wheel-v2-simulation-copy p{max-width:430px;color:var(--wheel-v2-muted);margin:0;font-size:11px;line-height:1.45}.wheel-v2-simulation-copy strong{color:var(--wheel-v2-accent);flex:none;font:600 20px Space Grotesk,sans-serif}.wheel-v2-simulation-copy i{color:var(--wheel-v2-dim);font:500 9px DM Mono,monospace}.wheel-v2-stage{background:linear-gradient(#1f3133d1,#091113d9);border:1px solid #b1cec21f;border-radius:12px;min-height:310px;margin-top:10px;position:relative;overflow:hidden}.wheel-v2-stage:before{content:"";pointer-events:none;border:1px solid #b1cec214;border-radius:7px;position:absolute;inset:20px 18px 55px}.wheel-v2-stage-ceiling{color:var(--wheel-v2-dim);letter-spacing:.12em;justify-content:space-between;font:600 8px DM Mono,monospace;display:flex;position:absolute;top:13px;left:17px;right:17px}.wheel-v2-motion-track{cursor:crosshair;touch-action:none;outline:none;height:230px;position:absolute;bottom:31px;left:27px;right:27px}.wheel-v2-motion-track:focus-visible{box-shadow:0 0 0 2px var(--wheel-v2-accent) inset}.wheel-v2-ground-shadow{background:radial-gradient(#00000059,#0000 68%);height:34px;position:absolute;bottom:43px;left:0;right:0}.wheel-v2-ground-line{background:#a9b9a9;border-radius:99px;height:3px;position:absolute;bottom:55px;left:0;right:0;box-shadow:0 3px #00000040}.wheel-v2-ground-line:after{content:"";background:repeating-linear-gradient(90deg,#8bc7a785 0 1px,#0000 1px 21px);height:1px;position:absolute;bottom:9px;left:0;right:0}.wheel-v2-start-mark,.wheel-v2-target-mark{background:var(--wheel-v2-mint);width:2px;height:20px;position:absolute;bottom:49px;transform:translate(-1px)}.wheel-v2-target-mark{background:var(--wheel-v2-accent);width:3px;height:31px;box-shadow:0 0 13px #e7b45e57}.wheel-v2-target-label{z-index:4;color:var(--wheel-v2-accent);white-space:nowrap;background:#0f1719d6;border:1px solid #e7b45e70;border-radius:5px;padding:4px 6px;font:600 8px DM Mono,monospace;position:absolute;bottom:86px;transform:translate(-50%)}.wheel-v2-moving-wheel{z-index:3;width:0;height:0;position:absolute;bottom:55px;transform:translate(-50%)}.wheel-v2-moving-wheel .wheel-render{transform-origin:bottom;position:absolute;bottom:-7px;left:0;transform:translate(-50%)scale(1.1)}.wheel-v2-stage-scale{color:var(--wheel-v2-dim);justify-content:space-between;font:600 8px DM Mono,monospace;display:flex;position:absolute;bottom:12px;left:27px;right:27px}.wheel-v2-distance-picker{margin-top:13px}.wheel-v2-distance-picker label{color:var(--wheel-v2-dim);margin-bottom:8px;font-size:10px;display:block}.wheel-v2-distance-picker input{width:100%;accent-color:var(--wheel-v2-accent)}.wheel-v2-distance-picker>div{color:var(--wheel-v2-dim);justify-content:space-between;font:9px DM Mono,monospace;display:flex}.wheel-v2-distance-picker strong{color:var(--wheel-v2-accent);font-weight:600}.wheel-v2-run-button{border:1px solid var(--wheel-v2-accent);color:#18221f;background:var(--wheel-v2-accent);cursor:pointer;border-radius:11px;justify-content:space-between;align-items:center;width:100%;min-height:44px;margin-top:14px;padding:0 15px;font:600 11px Space Grotesk,sans-serif;transition:transform .2s,background .2s;display:flex}:is(.wheel-v2-run-button:hover,.wheel-v2-run-button:focus-visible){background:#f0c978}.wheel-v2-run-button:active{transform:translateY(1px)}.wheel-v2-run-button:disabled{cursor:wait;opacity:.68}.wheel-v2-run-button span{font-size:16px}.wheel-v2-reading{grid-template-columns:minmax(0,1.26fr) minmax(280px,.74fr);gap:16px;max-width:1320px;margin:16px auto 0;display:grid}.wheel-v2-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px;display:grid}.wheel-v2-metrics>div{background:#09111361;border:1px solid #b1cec21f;border-radius:10px;padding:13px}.wheel-v2-metrics small{color:var(--wheel-v2-dim);letter-spacing:.08em;text-transform:uppercase;font:600 8px DM Mono,monospace;display:block}.wheel-v2-metrics strong{color:var(--wheel-v2-ink);margin-top:6px;font:600 23px Space Grotesk,sans-serif;display:block}.wheel-v2-metrics i{color:var(--wheel-v2-dim);font:500 9px DM Mono,monospace}.wheel-v2-equation{background:#10252a;border-radius:11px;gap:7px;margin-top:12px;padding:14px;display:grid}.wheel-v2-equation span{color:var(--wheel-v2-dim);letter-spacing:.12em;text-transform:uppercase;font:600 8px DM Mono,monospace}.wheel-v2-equation code{color:var(--wheel-v2-accent);overflow-wrap:anywhere;font:600 11px DM Mono,monospace}.wheel-v2-equation p{color:var(--wheel-v2-muted);margin:2px 0 0;font-size:10px;line-height:1.45}.wheel-v2-mark-legend{gap:6px;margin:19px 0 13px;display:flex}.wheel-v2-mark-legend span{border:2px solid var(--wheel-v2-ink);border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 1px #b1cec229}.wheel-v2-insight h2{max-width:260px;color:var(--wheel-v2-ink);letter-spacing:-.03em;margin:0;font:600 20px/1.1 Space Grotesk,sans-serif}.wheel-v2-insight>p{color:var(--wheel-v2-muted);margin:8px 0 16px;font-size:10px;line-height:1.5}.wheel-v2-field-note{border-left:2px solid var(--wheel-v2-accent);background:#e7b45e12;gap:4px;padding:11px;display:grid}.wheel-v2-field-note span{color:var(--wheel-v2-accent);letter-spacing:.12em;font:600 8px DM Mono,monospace}.wheel-v2-field-note strong{color:var(--wheel-v2-ink);font-size:11px}.wheel-v2-field-note small{color:var(--wheel-v2-dim);font-size:9px;line-height:1.4}.wheel-v2-related{grid-template-columns:minmax(250px,.76fr) minmax(0,1.24fr);gap:25px;max-width:1320px;margin:16px auto 0;padding:20px;display:grid}.wheel-v2-related-copy h2{max-width:330px;color:var(--wheel-v2-ink);letter-spacing:-.04em;margin:12px 0 8px;font:600 25px/1.06 Space Grotesk,sans-serif}.wheel-v2-related-copy p{max-width:340px;color:var(--wheel-v2-muted);margin:0;font-size:10px;line-height:1.5}.wheel-v2-related-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.wheel-v2-related-card{border:1px solid var(--wheel-v2-line);color:inherit;background:#080f1147;border-radius:11px;align-content:start;gap:7px;padding:13px;text-decoration:none;transition:border-color .2s,transform .2s,background .2s;display:grid}:is(.wheel-v2-related-card:hover,.wheel-v2-related-card:focus-visible){border-color:var(--wheel-v2-line-strong);background:#e7b45e12;transform:translateY(-2px)}.wheel-v2-related-card small{color:var(--wheel-v2-accent);letter-spacing:.08em;text-transform:uppercase;font:600 8px DM Mono,monospace}.wheel-v2-related-card strong{color:var(--wheel-v2-ink);font:600 13px/1.2 Space Grotesk,sans-serif}.wheel-v2-related-card span{color:var(--wheel-v2-dim);font-size:9px;line-height:1.4}.wheel-v2-related-card b{color:var(--wheel-v2-mint);font:600 8px DM Mono,monospace}.wheel-v2-companion{z-index:8;pointer-events:none;align-items:end;gap:9px;display:flex;position:fixed;bottom:18px;right:24px}.wheel-v2-companion-pet{pointer-events:auto;background:radial-gradient(circle at 35% 25%,#6ca48f,#2b5b52 54%,#142a29 55%);border:1px solid #8bc7a78a;border-radius:50%;flex:0 0 62px;width:62px;height:62px;animation:3.2s ease-in-out infinite wheel-v2-pet-bob;position:relative;overflow:hidden;box-shadow:0 12px 28px #00000052,0 0 0 5px #8bc7a714}.wheel-v2-pet-body{background:linear-gradient(145deg,#e9efe4,#9bbbaa);border:2px solid #eff1e9c7;border-radius:42% 42% 48% 48%;position:absolute;inset:13px 13px 17px;box-shadow:inset -4px -5px #2a534a38}.wheel-v2-pet-head{z-index:2;width:100%;position:absolute;top:24px;left:0}.wheel-v2-pet-head i{background:#12221f;border-radius:50%;width:4px;height:6px;position:absolute}.wheel-v2-pet-head i:first-child{left:24px}.wheel-v2-pet-head i:last-child{right:24px}.wheel-v2-pet-wheel{z-index:3;background:#0b1515;border:1px solid #162d29;border-radius:50%;width:13px;height:8px;position:absolute;bottom:7px}.wheel-v2-pet-wheel.pet-wheel-left{left:12px}.wheel-v2-pet-wheel.pet-wheel-right{right:12px}.wheel-v2-companion-panel{border:1px solid var(--wheel-v2-line);width:245px;color:var(--wheel-v2-muted);pointer-events:auto;background:#172426f5;border-radius:16px 16px 4px;padding:12px 13px;box-shadow:0 18px 42px #0000004d}.wheel-v2-companion-heading{color:var(--wheel-v2-mint);letter-spacing:.11em;justify-content:space-between;align-items:center;gap:8px;font:600 8px DM Mono,monospace;display:flex}.wheel-v2-companion-heading b{color:var(--wheel-v2-accent);font-weight:600}.wheel-v2-companion-panel>p{margin:9px 0 0;font-size:11px;line-height:1.4}.wheel-v2-companion-fact{border-left:2px solid var(--wheel-v2-accent);background:#e7b45e12;gap:5px;margin-top:10px;padding:9px;animation:.25s both wheel-v2-fact-in;display:grid}.wheel-v2-companion-fact span{color:var(--wheel-v2-accent);letter-spacing:.08em;font:600 8px DM Mono,monospace}.wheel-v2-companion-fact strong{color:var(--wheel-v2-ink);font-size:10px;line-height:1.35}.wheel-v2-companion-fact small{color:var(--wheel-v2-muted);font-size:9px;line-height:1.35}.wheel-v2-companion-fact a{color:var(--wheel-v2-mint);font:600 8px DM Mono,monospace;text-decoration:none}.wheel-v2-companion-actions{gap:6px;margin-top:10px;display:flex}.wheel-v2-companion-actions button{border:1px solid var(--wheel-v2-line-strong);color:var(--wheel-v2-muted);cursor:pointer;background:0 0;border-radius:999px;padding:6px 8px;font:600 8px DM Mono,monospace}:is(.wheel-v2-companion-actions button:hover,.wheel-v2-companion-actions button:focus-visible){color:var(--wheel-v2-accent);background:#e7b45e14}@keyframes wheel-v2-pet-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-5px)rotate(1deg)}}@keyframes wheel-v2-fact-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.wheel-v2-footer{max-width:1320px;color:var(--wheel-v2-dim);justify-content:space-between;gap:14px;margin:21px auto 0;font-size:9px;display:flex}.wheel-v2-footer span:last-child{gap:13px;display:flex}@media (max-width:1020px){.wheel-v2-hero{grid-template-columns:minmax(0,1fr) minmax(310px,.84fr)}.wheel-v2-workbench{grid-template-columns:minmax(270px,.84fr) minmax(0,1.16fr)}}@media (max-width:860px){.wheel-v2-hero,.wheel-v2-workbench,.wheel-v2-reading,.wheel-v2-related{grid-template-columns:1fr}.wheel-v2-hero{margin-top:43px}.wheel-v2-hero-plate{min-height:286px}.wheel-v2-related-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:650px){.wheel-lab-v2{padding-left:14px;padding-right:14px}.wheel-v2-topbar>span:first-of-type{display:none}.wheel-v2-hero{margin-top:37px}.wheel-v2-hero h1{font-size:54px}.wheel-v2-hero-plate{min-height:258px}.wheel-v2-hero-wheels{left:3%;right:3%}.wheel-v2-simulation-copy{flex-direction:column;align-items:start;gap:5px}.wheel-v2-stage{min-height:277px}.wheel-v2-motion-track,.wheel-v2-stage-scale{left:19px;right:19px}.wheel-v2-metrics,.wheel-v2-related-list{grid-template-columns:1fr}.wheel-v2-footer{flex-direction:column;align-items:start}.wheel-v2-companion{gap:7px;bottom:12px;right:12px}.wheel-v2-companion-panel{width:min(246px,100vw - 92px)}.wheel-v2-companion-pet{flex-basis:58px;width:58px;height:58px}}@media (prefers-reduced-motion:reduce){.wheel-v2-companion-pet,.wheel-v2-companion-fact{animation:none}.wheel-v2-option,.wheel-v2-related-card,.wheel-v2-run-button{transition:none}}.roots-landing-v2{--roots-v2-panel:var(--roots-surface)}@supports (color:color-mix(in lab, red, red)){.roots-landing-v2{--roots-v2-panel:color-mix(in srgb, var(--roots-surface) 74%, var(--roots-bg))}}.roots-landing-v2{--roots-v2-panel-soft:var(--roots-surface)}@supports (color:color-mix(in lab, red, red)){.roots-landing-v2{--roots-v2-panel-soft:color-mix(in srgb, var(--roots-surface) 42%, var(--roots-bg))}}.roots-landing-v2{background:linear-gradient(180deg, var(--roots-bg) 0%, var(--roots-bg) 42%, var(--roots-bg) 100%)}@supports (color:color-mix(in lab, red, red)){.roots-landing-v2{background:linear-gradient(180deg, color-mix(in srgb, var(--roots-bg) 92%, var(--roots-surface)) 0%, var(--roots-bg) 42%, color-mix(in srgb, var(--roots-bg) 88%, #172b26) 100%)}}.roots-landing-v2 .roots-nav{background:var(--roots-bg);grid-template-columns:auto 1fr auto;gap:24px;min-height:66px}@supports (color:color-mix(in lab, red, red)){.roots-landing-v2 .roots-nav{background:color-mix(in srgb, var(--roots-bg) 92%, transparent)}}.roots-landing-v2 .roots-navigation{justify-content:flex-start}.roots-landing-v2 .roots-nav-action{color:var(--roots-accent-ink);background:var(--roots-accent);border-color:var(--roots-accent)}:is(.roots-landing-v2 .roots-nav-action:hover,.roots-landing-v2 .roots-nav-action:focus-visible){background:#f2c86b}.roots-landing-v2 .roots-hero{grid-template-columns:minmax(0,.95fr) minmax(340px,.74fr);align-items:start;gap:clamp(42px,7vw,94px);width:min(1180px,100%);min-height:auto;padding:clamp(72px,10vw,126px) clamp(20px,5vw,60px) 86px}.roots-landing-v2 .roots-hero-copy{max-width:650px;padding-top:14px}.roots-landing-v2 .roots-eyebrow{letter-spacing:.13em;margin-bottom:18px}.roots-landing-v2 .roots-hero h1{letter-spacing:-.065em;max-width:620px;font-size:clamp(58px,7vw,88px)}.roots-landing-v2 .roots-hero-lede{max-width:520px;margin-top:24px;font-size:clamp(16px,1.4vw,19px)}.roots-landing-v2 .roots-hero-actions{margin-top:27px}.roots-landing-v2 .roots-hero-media{border-radius:14px;min-height:430px;box-shadow:0 18px 46px #040c0a33}.roots-landing-v2 .roots-hero-media img{min-height:430px}.roots-landing-v2 .roots-hero-media figcaption{border-radius:7px;font-size:10px;bottom:14px;right:14px}.roots-v2-path-map{border-top:1px solid var(--roots-line-strong);max-width:620px;margin-top:48px;padding-top:18px}.roots-v2-path-map-head{color:var(--roots-dim);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:16px;font:600 10px/1.3 DM Mono,monospace;display:flex}.roots-v2-path-map-head strong{color:var(--roots-muted);letter-spacing:0;text-transform:none;font:10px/1.3 DM Mono,monospace}.roots-v2-path-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:13px;display:grid}.roots-v2-path-step{border:0;border-bottom:1px solid var(--roots-line);min-width:0;color:var(--roots-muted);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 0;transition:color .22s,border-color .22s,transform .22s;display:grid}:is(.roots-v2-path-step:hover,.roots-v2-path-step:focus-visible){color:var(--roots-ink);border-color:var(--roots-accent);transform:translateY(-1px)}.roots-v2-path-step>span{color:var(--roots-dim);font:600 11px/1 DM Mono,monospace}.roots-v2-path-step strong,.roots-v2-path-step small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.roots-v2-path-step strong{color:inherit;font-size:12px}.roots-v2-path-step small{color:var(--roots-dim);grid-column:2/3;margin-top:3px;font-size:10px}.roots-v2-path-step b{color:var(--roots-dim);letter-spacing:.07em;text-transform:uppercase;grid-area:1/3/3;font:600 8px/1 DM Mono,monospace}.roots-v2-path-step.is-active{color:var(--roots-ink);border-color:var(--roots-accent)}.roots-v2-path-step.is-active>span,.roots-v2-path-step.is-active b,.roots-v2-path-step.is-complete>span,.roots-v2-path-step.is-complete b{color:var(--roots-accent)}.roots-v2-section{width:min(1180px,100%);padding-top:clamp(76px,10vw,120px);padding-bottom:clamp(76px,10vw,120px)}.roots-v2-thesis{grid-template-columns:minmax(0,1.1fr) minmax(260px,.7fr);gap:clamp(48px,10vw,130px);padding-top:86px;padding-bottom:92px}.roots-v2-thesis h2,.roots-v2-coach-section h2,.roots-v2-hardware h2,.roots-v2-loop h2,.roots-v2-close h2{max-width:640px;font-size:clamp(34px,4.5vw,58px)}.roots-v2-thesis-copy p,.roots-v2-coach-section .roots-section-heading>p:last-child,.roots-v2-hardware-copy>p,.roots-v2-loop-heading p,.roots-v2-close-copy>p{max-width:500px;margin-top:18px;font-size:16px}.roots-v2-thesis-quote{max-width:340px;font-size:clamp(20px,2.3vw,27px)}.roots-v2-coach-section{padding-top:92px}.roots-v2-coach-section .roots-section-heading{max-width:670px}.roots-v2-stage-lab{background:linear-gradient(145deg, var(--roots-v2-panel), var(--roots-v2-panel-soft));border-radius:14px;margin-top:38px;padding:clamp(24px,4vw,42px);box-shadow:0 18px 48px #040c0a29}.roots-v2-stage-lab .roots-stage-lab-heading{grid-template-columns:minmax(0,1.1fr) minmax(220px,.7fr);gap:34px;padding-bottom:24px}.roots-v2-stage-lab .roots-stage-lab-heading h3{max-width:560px;font-size:clamp(26px,3.6vw,42px)}.roots-v2-stage-lab .roots-stage-source{padding-top:13px}.roots-v2-stage-lab .roots-stage-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:22px 0 38px}.roots-v2-stage-lab .roots-stage-tab{background:var(--roots-bg);border-radius:9px;min-height:70px;padding:10px}@supports (color:color-mix(in lab, red, red)){.roots-v2-stage-lab .roots-stage-tab{background:color-mix(in srgb, var(--roots-bg) 28%, transparent)}}.roots-v2-stage-lab .roots-stage-tab strong{font-size:11px}.roots-v2-stage-lab .roots-stage-grid{grid-template-columns:minmax(245px,.57fr) minmax(0,1.18fr);align-items:start;gap:clamp(28px,5vw,60px)}.roots-v2-stage-lab .roots-stage-brief{padding-top:2px}.roots-v2-stage-lab .roots-stage-brief-note{border-top:1px solid var(--roots-line);margin-top:40px;padding-top:19px}.roots-v2-stage-lab .roots-stage-workspace{background:0 0;border:0;border-radius:0;padding:0}.roots-v2-stage-editor{background:var(--roots-bg);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.roots-v2-stage-editor{background:color-mix(in srgb, var(--roots-bg) 84%, #19302a)}}.roots-v2-line-row{min-height:75px}.roots-v2-line-row .roots-stage-line-copy{padding-top:12px;padding-bottom:12px;display:block}.roots-v2-line-row .roots-stage-line-copy>span{max-width:600px;color:var(--roots-muted);margin-left:9px;display:inline}.roots-v2-line-label{align-items:baseline;gap:9px;display:inline-flex}.roots-v2-line-label small{color:var(--roots-accent);letter-spacing:.1em;text-transform:uppercase;font:600 9px/1 DM Mono,monospace}.roots-v2-line-row .roots-stage-line-copy em{opacity:0;max-height:0;margin-top:0;transition:max-height .24s,margin-top .24s,opacity .2s,transform .24s;display:block;overflow:hidden;transform:translateY(-4px)}.roots-v2-line-row:hover .roots-stage-line-copy em,.roots-v2-line-row:focus-within .roots-stage-line-copy em{opacity:1;max-height:48px;margin-top:8px;transform:translateY(0)}.roots-v2-line-row:focus-within{outline:2px solid var(--roots-accent);outline-offset:-2px}.roots-v2-line-row:not(.is-active):not(.is-accepted){opacity:.72}.roots-v2-line-row.is-active{min-height:84px}.roots-v2-line-row.is-active .roots-stage-line-copy em{color:var(--roots-accent)}.roots-v2-line-row.is-accepted{background:#8fbf9312}.roots-v2-line-row.is-accepted .roots-stage-line-copy strong,.roots-v2-line-row.is-accepted .roots-stage-line-code,.roots-v2-line-row.is-accepted .roots-stage-line-state{color:#8fbf93}.roots-v2-line-row .roots-stage-line-state{padding-right:15px;font-size:9px}.roots-v2-editor-reset{color:var(--roots-dim);font:inherit;letter-spacing:.06em;text-underline-offset:3px;text-transform:uppercase;background:0 0;border:0;margin-left:auto;padding:0;font-size:9px;text-decoration:underline}:is(.roots-v2-editor-reset:hover,.roots-v2-editor-reset:focus-visible){color:var(--roots-ink)}.roots-v2-line-form{margin-top:13px}.roots-v2-line-input{gap:8px;display:grid;position:relative}.roots-v2-line-input textarea{background:var(--roots-bg);border-radius:10px;width:100%;min-height:72px;padding:12px 13px}@supports (color:color-mix(in lab, red, red)){.roots-v2-line-input textarea{background:color-mix(in srgb, var(--roots-bg) 84%, var(--roots-surface))}}.roots-v2-line-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.roots-v2-line-actions .roots-button{min-height:40px}.roots-v2-line-actions .roots-stage-reset{margin-left:auto}.roots-v2-hover-hint{opacity:0;pointer-events:none;border:1px solid #0000;border-radius:9px;max-height:0;margin-top:0;padding:0 13px;transition:max-height .28s,opacity .22s,transform .28s,margin .28s,padding .28s;overflow:hidden;transform:translateY(-5px)}.roots-v2-line-input:hover .roots-v2-hover-hint,.roots-v2-line-input:focus-within .roots-v2-hover-hint{opacity:1;pointer-events:auto;background:#e8b65012;border-color:#e8b6504d;max-height:260px;margin-top:0;padding-top:12px;padding-bottom:12px;transform:translateY(0)}.roots-v2-hover-hint>div:first-child{align-items:baseline;gap:9px;display:flex}.roots-v2-hover-hint b{color:var(--roots-accent);letter-spacing:.1em;text-transform:uppercase;font:600 10px/1.2 DM Mono,monospace}.roots-v2-hover-hint>div:first-child span{color:var(--roots-dim);font-size:10px}.roots-v2-hover-hint p{color:var(--roots-muted);margin:7px 0;font-size:11px;line-height:1.45}.roots-v2-hover-hint small{color:var(--roots-dim);margin-top:7px;font-size:10px;line-height:1.4;display:block}.roots-v2-line-input .roots-stage-live-error{margin-top:12px}.roots-v2-solvers-card{margin-top:28px;padding-top:21px}.roots-v2-solvers-card>p{max-width:560px}.roots-v2-coach-demo{grid-template-columns:minmax(170px,.5fr) minmax(0,1.1fr);gap:clamp(30px,6vw,70px);margin-top:82px}.roots-v2-coach-demo .roots-prompt-button{min-height:64px}.roots-v2-coach-demo .roots-coach-panel{background:var(--roots-surface);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.roots-v2-coach-demo .roots-coach-panel{background:color-mix(in srgb, var(--roots-surface) 78%, var(--roots-bg))}}.roots-v2-coach-demo .roots-coach-message{margin-top:42px}.roots-v2-coach-demo .roots-lens-explanation{margin-top:27px}.roots-v2-hardware{gap:clamp(42px,8vw,100px)}.roots-v2-hardware-media{border-radius:13px}.roots-v2-hardware-media img{height:min(500px,45vw);min-height:330px}.roots-v2-loop{padding-top:90px}.roots-v2-loop-list{grid-template-columns:1fr;max-width:760px;margin-top:45px}.roots-v2-loop-list li{grid-template-columns:minmax(200px,.7fr) minmax(0,1fr);gap:20px;min-height:0;padding:19px 0;display:grid}.roots-v2-loop-list li:not(:last-child):after{border-top-color:var(--roots-accent);width:22px;inset:auto auto -9px 0}.roots-v2-loop-list strong{font-size:18px}.roots-v2-loop-list span{max-width:none;margin-top:0}.roots-v2-close{padding-top:86px}.roots-v2-footer{width:min(1180px,100%);margin:0 auto;padding-left:clamp(20px,5vw,60px);padding-right:clamp(20px,5vw,60px)}.roots-landing-v2 .roots-companion{bottom:22px;right:22px}.roots-landing-v2 .roots-companion.is-open{width:min(320px,100vw - 32px)}@media (max-width:900px){.roots-landing-v2 .roots-hero{grid-template-columns:1fr;padding-top:64px}.roots-landing-v2 .roots-hero-copy{max-width:720px}.roots-landing-v2 .roots-hero-media{max-width:720px;min-height:390px}.roots-landing-v2 .roots-hero-media img{min-height:390px}.roots-v2-stage-lab .roots-stage-grid{grid-template-columns:1fr}.roots-v2-stage-lab .roots-stage-brief-note{margin-top:28px}.roots-v2-coach-demo{grid-template-columns:1fr}.roots-v2-coach-demo .roots-prompt-list{max-width:680px}.roots-v2-hardware{grid-template-columns:1fr}.roots-v2-hardware-media{max-width:720px}.roots-v2-hardware-media img{height:440px}}@media (max-width:640px){.roots-landing-v2 .roots-nav{gap:10px;padding-left:16px;padding-right:16px}.roots-landing-v2 .roots-nav-action{padding:8px 10px;font-size:11px}.roots-landing-v2 .roots-hero{padding:56px 16px 72px}.roots-landing-v2 .roots-hero h1{font-size:clamp(52px,15vw,74px)}.roots-v2-path-list{grid-template-columns:1fr}.roots-v2-path-map-head{flex-direction:column;align-items:start;gap:5px}.roots-v2-section{padding-left:16px;padding-right:16px}.roots-v2-stage-lab{margin-top:34px;padding:17px}.roots-v2-stage-lab .roots-stage-lab-heading{grid-template-columns:1fr;gap:18px}.roots-v2-stage-lab .roots-stage-tabs{grid-template-columns:1fr}.roots-v2-stage-lab .roots-stage-workspace{padding:0}.roots-v2-line-row{grid-template-columns:32px minmax(0,1fr) auto}.roots-v2-line-row>span:first-child{padding-left:9px}.roots-v2-line-row .roots-stage-line-state{padding-right:9px}.roots-v2-loop-list li{grid-template-columns:1fr;gap:6px}.roots-v2-loop-list span{margin-top:0}.roots-landing-v2 .roots-companion{bottom:12px;right:12px}}@media (prefers-reduced-motion:reduce){.roots-landing-v2 .roots-v2-hover-hint{transition:none}}.pid-page{--pid-bg:#10191c;--pid-bg-deep:#0b1215;--pid-surface:#162328;--pid-surface-soft:#1b2b2d;--pid-line:#c1d3c629;--pid-line-strong:#c1d3c64d;--pid-ink:#edf1e9;--pid-muted:#b0c0ba;--pid-dim:#78918a;--pid-amber:#e4b34f;--pid-amber-soft:#e4b34f1f;--pid-mint:#8ac3a2;--pid-coral:#e88972;--pid-blue:#8bb8d1;min-height:100dvh;color:var(--pid-ink);background:radial-gradient(circle at 78% 4%, #466c5b24, transparent 28%), linear-gradient(180deg, #101b1e 0%, var(--pid-bg) 52%, var(--pid-bg-deep) 100%);padding:18px clamp(16px,4vw,58px) 46px;font-family:Space Grotesk,system-ui,sans-serif;overflow:hidden}.pid-page *,.pid-page :before,.pid-page :after{box-sizing:border-box}.pid-page a{color:inherit}.pid-page button,.pid-page input,.pid-page textarea{font:inherit}.pid-page button,.pid-page a{-webkit-tap-highlight-color:transparent}:is(.pid-page button:focus-visible,.pid-page a:focus-visible,.pid-page input:focus-visible,.pid-page textarea:focus-visible){outline:2px solid var(--pid-amber);outline-offset:4px}.pid-topbar{border-bottom:1px solid var(--pid-line);width:min(1320px,100%);min-height:48px;color:var(--pid-dim);letter-spacing:.09em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:0 auto;font:600 10px/1.2 DM Mono,monospace;display:grid}.pid-topbar nav{justify-content:flex-end;gap:18px;display:flex}.pid-topbar a{text-decoration:none;transition:color .2s}.pid-topbar a:hover{color:var(--pid-amber)}.pid-back{color:var(--pid-muted)!important}.pid-back:hover{color:var(--pid-amber)!important}.pid-topbar-label{color:var(--pid-amber);text-align:center}.pid-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);align-items:center;gap:clamp(42px,8vw,120px);width:min(1320px,100%);margin:0 auto;padding:clamp(72px,9vw,126px) 0 92px;display:grid}.pid-hero-copy{max-width:680px}.pid-kicker,.pid-eyebrow,.pid-visual-label,.pid-progress-heading,.pid-progress-note span,.pid-story-beat>span,.pid-question-callout>span,.pid-lab-heading span,.pid-tune-intro>span,.pid-code-mission-copy>span,.pid-reflection-lead>span,.pid-source-row>span,.pid-companion-heading,.pid-companion-fact>span,.pid-chart-label span,.pid-run-result span,.pid-tuning-principles span{color:var(--pid-amber);letter-spacing:.12em;text-transform:uppercase;font:600 10px/1.25 DM Mono,monospace}.pid-hero h1{max-width:650px;color:var(--pid-ink);letter-spacing:-.075em;margin:16px 0 0;font-size:clamp(60px,8vw,112px);font-weight:600;line-height:.92}.pid-hero h1 em{color:var(--pid-amber);font-style:normal}.pid-hero-copy>p{max-width:545px;color:var(--pid-muted);margin:28px 0 0;font-size:clamp(17px,1.7vw,21px);line-height:1.48}.pid-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px;display:flex}.pid-primary-action,.pid-secondary-action,.pid-next-button,.pid-run-button,.pid-check-button,.pid-companion-actions button{border:1px solid var(--pid-line-strong);cursor:pointer;border-radius:999px;text-decoration:none;transition:background .22s,color .22s,border-color .22s,transform .22s}.pid-primary-action{border-color:var(--pid-amber);color:#151a16;background:var(--pid-amber);padding:14px 18px 14px 20px;font-weight:700}.pid-primary-action span,.pid-next-button span,.pid-run-button span{margin-left:10px;font-size:17px}.pid-secondary-action{color:var(--pid-muted);padding:14px 18px}:is(.pid-primary-action:hover,.pid-primary-action:focus-visible){background:#f0c96c;transform:translateY(-2px)}:is(.pid-secondary-action:hover,.pid-secondary-action:focus-visible,.pid-next-button:hover,.pid-next-button:focus-visible){border-color:var(--pid-amber);color:var(--pid-amber);transform:translateY(-2px)}.pid-hero-principle{border-top:1px solid var(--pid-line);grid-template-columns:auto minmax(0,1fr);gap:17px;max-width:510px;margin-top:58px;padding-top:18px;display:grid}.pid-hero-principle strong{color:var(--pid-amber);letter-spacing:.1em;text-transform:uppercase;font:600 10px/1.4 DM Mono,monospace}.pid-hero-principle span{color:var(--pid-muted);font-size:13px;line-height:1.45}.pid-hero-visual{min-width:0}.pid-visual-label{border-bottom:1px solid var(--pid-line);justify-content:space-between;gap:15px;padding-bottom:12px;display:flex}.pid-visual-label b{color:var(--pid-dim);letter-spacing:.1em;font:600 10px/1.25 DM Mono,monospace}.pid-hero-visual>p{max-width:460px;color:var(--pid-dim);margin:16px 0 0;font-size:13px;line-height:1.55}.pid-industrial-scene{border:1px solid var(--pid-line-strong);background:linear-gradient(#182a2e 0%,#102024 58%,#0c171a 100%);border-radius:18px;min-height:340px;margin-top:15px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff05,0 24px 62px #00000038}.pid-industrial-scene:before{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 10%,#e4b34f14 47%,#0000 62%);position:absolute;inset:0}.pid-scene-skyline{opacity:.6;border-bottom:1px solid #c1d3c62e;align-items:end;gap:8px;height:110px;display:flex;position:absolute;bottom:43%;left:7%;right:7%}.pid-scene-skyline i{background:#8bb8d10d;border:1px solid #8bb8d129;border-bottom:0;flex:1;display:block}.pid-scene-skyline i:first-child{height:57%}.pid-scene-skyline i:nth-child(2){height:85%}.pid-scene-skyline i:nth-child(3){height:41%}.pid-scene-skyline i:nth-child(4){height:68%}.pid-scene-arm{transform-origin:80% 10%;width:90px;height:104px;animation:6s ease-in-out infinite pid-scene-arm;position:absolute;top:22%;right:20%}.pid-scene-arm:before{border:3px solid var(--pid-amber);content:"";border-radius:50%;width:13px;height:13px;position:absolute;top:0;left:52%}.pid-scene-arm span,.pid-scene-arm b{background:var(--pid-amber);transform-origin:50% 0;border-radius:8px;width:10px;display:block;position:absolute;left:55%}.pid-scene-arm span{height:58px;top:11px;transform:rotate(31deg)}.pid-scene-arm b{background:var(--pid-blue);height:46px;top:54px;transform:rotate(-36deg)}.pid-scene-arm em{border:1px solid var(--pid-amber);width:30px;height:11px;position:absolute;bottom:1px;right:6px;transform:rotate(7deg)}.pid-scene-conveyor{background:#c1d3c60f;border:1px solid #c1d3c647;border-radius:9px;height:47px;position:absolute;bottom:18%;left:6%;right:6%;transform:skewY(-4deg)}.pid-scene-conveyor>span{border:1px solid var(--pid-dim);background:var(--pid-bg-deep);border-radius:50%;width:17px;height:17px;animation:3.6s linear infinite pid-conveyor-roll;position:absolute;top:17px}.pid-scene-conveyor>span:last-child{left:13%}.pid-scene-conveyor>span:nth-last-child(2){animation-delay:-.8s;left:39%}.pid-scene-conveyor>span:nth-last-child(3){animation-delay:-1.6s;left:66%}.pid-scene-conveyor>span:nth-last-child(4){animation-delay:-2.4s;left:89%}.pid-scene-package{border:1px solid var(--pid-amber);background:#e4b34f2e;width:30px;height:29px;animation:8s linear infinite pid-scene-package;position:absolute;bottom:35px;left:26%;transform:skewY(4deg)}.pid-scene-package-two{animation-delay:-4s;left:66%}.pid-scene-sensor-beam{background:linear-gradient(180deg, transparent, var(--pid-mint), transparent);width:3px;height:64px;box-shadow:0 0 17px var(--pid-mint);animation:2s ease-in-out infinite pid-sensor-pulse;position:absolute;bottom:28%;left:22%}.pid-scene-caption{max-width:230px;color:var(--pid-muted);font:11px/1.4 DM Mono,monospace;position:absolute;bottom:21px;right:22px}@keyframes pid-scene-arm{0%,to{transform:rotate(-3deg)}50%{transform:rotate(11deg)}}@keyframes pid-scene-package{0%{opacity:0;translate:-12px}12%,75%{opacity:1}to{opacity:0;translate:170px}}@keyframes pid-conveyor-roll{to{transform:rotate(360deg)}}@keyframes pid-sensor-pulse{0%,to{opacity:.35;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}.pid-lesson{grid-template-columns:minmax(210px,.28fr) minmax(0,1fr);align-items:start;gap:clamp(26px,5vw,76px);width:min(1320px,100%);margin:0 auto;scroll-margin-top:20px;display:grid}.pid-progress-rail{padding:19px 0;position:sticky;top:20px}.pid-progress-heading{border-bottom:1px solid var(--pid-line);justify-content:space-between;gap:10px;padding-bottom:15px;display:flex}.pid-progress-heading b{color:var(--pid-muted);letter-spacing:.05em;font:600 10px/1.25 DM Mono,monospace}.pid-progress-line{background:var(--pid-line);width:1px;position:absolute;top:67px;bottom:118px;left:8px}.pid-progress-line i{background:var(--pid-amber);width:1px;transition:height .35s;display:block}.pid-progress-steps{gap:4px;margin:24px 0 0;display:grid}.pid-progress-step{color:var(--pid-dim);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:25px minmax(0,1fr);gap:3px 12px;padding:10px 8px 12px 0;transition:color .2s,transform .2s;display:grid;position:relative}.pid-progress-step>span{z-index:1;border:1px solid var(--pid-line-strong);background:var(--pid-bg);width:17px;height:17px;color:var(--pid-dim);border-radius:50%;place-items:center;font:600 9px/1 DM Mono,monospace;display:grid}.pid-progress-step strong{color:inherit;align-self:center;font-size:13px}.pid-progress-step small{color:var(--pid-dim);grid-column:2;font-size:11px;line-height:1.35}:is(.pid-progress-step:hover,.pid-progress-step:focus-visible){color:var(--pid-ink);transform:translate(3px)}.pid-progress-step.is-active{color:var(--pid-ink)}.pid-progress-step.is-active>span,.pid-progress-step.is-complete>span{border-color:var(--pid-amber);color:var(--pid-amber)}.pid-progress-step.is-complete{color:var(--pid-muted)}.pid-progress-note{border-top:1px solid var(--pid-line);margin-top:43px;padding:16px 0 0 27px}.pid-progress-note p{color:var(--pid-muted);margin:8px 0 0;font-size:12px;line-height:1.5}.pid-chapter-panel{border:1px solid var(--pid-line-strong);background:linear-gradient(145deg,#1e3130b3,#0f1a1cdb);border-radius:18px;min-width:0;padding:clamp(25px,4vw,50px);box-shadow:0 22px 62px #00000029}.pid-chapter-heading{border-bottom:1px solid var(--pid-line);grid-template-columns:minmax(0,.78fr) minmax(240px,.62fr);gap:28px;padding-bottom:31px;display:grid}.pid-chapter-heading h2{color:var(--pid-ink);letter-spacing:-.045em;margin:10px 0 0;font-size:clamp(30px,4vw,50px);line-height:.98}.pid-chapter-heading p{max-width:390px;color:var(--pid-muted);margin:4px 0 0;font-size:14px;line-height:1.55}.pid-chapter-content{padding-top:31px}.pid-notice-content{grid-template-columns:minmax(220px,.62fr) minmax(0,1fr);gap:clamp(26px,6vw,74px);display:grid}.pid-story-copy{align-content:start;gap:26px;display:grid}.pid-story-beat h3,.pid-question-callout strong,.pid-mode-intro h3,.pid-tune-intro h3,.pid-code-mission-copy h3{color:var(--pid-ink);letter-spacing:-.025em;margin:8px 0 0;font-size:21px;line-height:1.1;display:block}.pid-story-beat p,.pid-question-callout small,.pid-mode-intro p,.pid-tune-intro p,.pid-code-mission-copy p{color:var(--pid-muted);margin:11px 0 0;font-size:13px;line-height:1.55}.pid-small-beat{border-top:1px solid var(--pid-line);padding-top:22px}.pid-question-callout{border-left:3px solid var(--pid-amber);background:var(--pid-amber-soft);padding:18px}.pid-question-callout strong{font-size:18px;line-height:1.2}.pid-line-lab{border:1px solid var(--pid-line);background:#07111359;border-radius:13px;min-width:0;padding:18px}.pid-lab-heading,.pid-chart-label{justify-content:space-between;gap:12px;display:flex}.pid-lab-heading b,.pid-chart-label b{color:var(--pid-ink);font:600 11px/1.25 DM Mono,monospace}.pid-line-track{background:linear-gradient(#d4d2b5 0 38%,#373a37 38% 62%,#c3c8ae 62%);border-radius:8px;height:190px;margin:21px 0 13px;position:relative;overflow:hidden}.pid-line-track:before{content:"";background:#0f19168c;height:2px;position:absolute;inset:50% -30% auto}.pid-line-glow{filter:blur(5px);background:#070f0e94;border-radius:100%;width:86%;height:11px;position:absolute;top:50%;left:7%;transform:translateY(-50%)}.pid-line-target{border-left:2px dashed #e4b34fd9;position:absolute;top:10%;bottom:10%;left:50%}.pid-line-robot{background:var(--pid-mint);width:56px;height:42px;transform:translate(-50%, -50%) rotate(var(--pid-robot-tilt));border:2px solid #1b2824;border-radius:12px;transition:left .2s,transform .2s;position:absolute;top:44%;box-shadow:0 4px 11px #00000040}.pid-robot-sensor{background:var(--pid-amber);border:2px solid #15211e;border-radius:4px;width:13px;height:8px;position:absolute;bottom:-9px;left:21px}.pid-robot-eye{background:#17231f;border-radius:50%;width:7px;height:7px;position:absolute;top:10px;left:16px;box-shadow:17px 0 #17231f}.pid-robot-wheel-one,.pid-robot-wheel-two{background:#516a60;border:2px solid #101916;border-radius:50%;width:15px;height:15px;position:absolute;bottom:-6px}.pid-robot-wheel-one{left:3px}.pid-robot-wheel-two{right:3px}.pid-line-label{color:#101918bf;letter-spacing:.08em;font:600 9px/1 DM Mono,monospace;position:absolute;bottom:14px}.pid-line-label-left{left:13px}.pid-line-label-mid{color:#83611e;left:calc(50% - 21px)}.pid-line-label-right{right:13px}.pid-line-lab>input[type=range]{width:100%;accent-color:var(--pid-amber)}.pid-lab-scale{color:var(--pid-dim);justify-content:space-between;font:9px/1 DM Mono,monospace;display:flex}.pid-lab-scale strong{color:var(--pid-amber);font-weight:600}.pid-readout-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.pid-readout-row>div{border-top:1px solid var(--pid-line);gap:4px;padding:12px;display:grid}.pid-readout-row small,.pid-human-p-card span{color:var(--pid-dim);letter-spacing:.1em;font:600 9px/1.1 DM Mono,monospace}.pid-readout-row strong{color:var(--pid-ink);font:600 23px/1 DM Mono,monospace}.pid-readout-row span{color:var(--pid-dim);font-size:10px}.pid-human-p-card{border:1px solid var(--pid-line);border-radius:9px;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;padding:13px;display:grid}.pid-human-p-card div{gap:7px;display:grid}.pid-human-p-card strong{color:var(--pid-muted);font-size:12px;line-height:1.35}.pid-combine-content,.pid-tune-content{gap:22px;display:grid}.pid-mode-switch{border:1px solid var(--pid-line-strong);border-radius:999px;justify-self:start;gap:3px;padding:3px;display:inline-flex}.pid-mode-switch button{color:var(--pid-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:9px 13px;font-size:12px}.pid-mode-switch button.is-selected{color:#161a16;background:var(--pid-amber);font-weight:700}.pid-mode-intro{border:1px solid var(--pid-line);background:#09121459;border-radius:11px;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);align-items:center;gap:22px;padding:17px;display:grid}.pid-mode-intro>div>span{color:var(--pid-mint);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.pid-mode-intro code{color:var(--pid-amber);background:var(--pid-bg-deep);white-space:pre-wrap;padding:13px;font:11px/1.5 DM Mono,monospace;display:block;overflow:auto}.pid-loop-map{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pid-loop-step{border:1px solid var(--pid-line);background:#ffffff04;border-radius:9px;min-height:108px;padding:13px;position:relative}.pid-loop-step:not(:last-child):after{border-top:1px solid var(--pid-amber);content:"";width:15px;position:absolute;top:23px;right:-8px}.pid-loop-step>span{color:#151a16;background:var(--pid-amber);border-radius:50%;place-items:center;width:19px;height:19px;font:600 9px/1 DM Mono,monospace;display:grid}.pid-loop-step strong{color:var(--pid-ink);margin-top:12px;font-size:12px;line-height:1.2;display:block}.pid-loop-step small{color:var(--pid-dim);margin-top:5px;font-size:10px;line-height:1.35;display:block}.pid-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.pid-signal-card{border:1px solid var(--pid-line);background:#ffffff05;border-radius:11px;min-width:0;padding:16px}.pid-signal-title{align-items:center;gap:9px;display:flex}.pid-signal-title>span{width:27px;height:27px;color:var(--pid-bg-deep);border-radius:50%;place-items:center;font:700 13px/1 DM Mono,monospace;display:grid}.pid-signal-p .pid-signal-title>span{background:var(--pid-coral)}.pid-signal-i .pid-signal-title>span{background:var(--pid-amber)}.pid-signal-d .pid-signal-title>span{background:var(--pid-blue)}.pid-signal-title strong{color:var(--pid-ink);font-size:12px}.pid-signal-card h3{color:var(--pid-ink);margin:16px 0 0;font-size:15px;line-height:1.15}.pid-signal-card p{min-height:54px;color:var(--pid-muted);margin:8px 0 0;font-size:11px;line-height:1.45}.pid-signal-meter{background:#ffffff17;border-radius:99px;height:5px;margin:17px 0 8px;overflow:hidden}.pid-signal-meter i{border-radius:inherit;background:var(--pid-amber);height:100%;transition:width .28s;display:block}.pid-signal-p .pid-signal-meter i{background:var(--pid-coral)}.pid-signal-d .pid-signal-meter i{background:var(--pid-blue)}.pid-signal-card>small{color:var(--pid-dim);font:9px/1.25 DM Mono,monospace}.pid-structure-note{border:1px solid var(--pid-line);background:#070f116b;border-radius:11px;grid-template-columns:minmax(0,.9fr) minmax(240px,.7fr);gap:24px;padding:18px;display:grid}.pid-structure-note h3{color:var(--pid-ink);margin:9px 0 0;font-size:18px;line-height:1.15}.pid-structure-note p{color:var(--pid-muted);margin:9px 0 0;font-size:12px;line-height:1.45}.pid-structure-note pre{color:var(--pid-mint);background:var(--pid-bg-deep);margin:0;padding:15px;font:10px/1.55 DM Mono,monospace;overflow:auto}.pid-next-button{color:var(--pid-ink);background:0 0;justify-self:start;padding:12px 17px}.pid-tune-layout{grid-template-columns:minmax(230px,.64fr) minmax(0,1fr);align-items:start;gap:25px;display:grid}.pid-tune-controls{gap:18px;display:grid}.pid-tune-intro{border-bottom:1px solid var(--pid-line);padding-bottom:8px}.pid-gain-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;display:grid}.pid-gain-row>span{color:var(--pid-muted);font-size:12px}.pid-gain-row>span b{color:var(--pid-amber);margin-right:8px;font:700 11px/1 DM Mono,monospace}.pid-gain-row>strong{color:var(--pid-ink);font:600 12px/1 DM Mono,monospace}.pid-gain-row input{width:100%;accent-color:var(--pid-amber);grid-column:1/-1}.pid-run-button{border-color:var(--pid-amber);color:#171b17;background:var(--pid-amber);justify-self:start;padding:12px 16px;font-weight:700}:is(.pid-run-button:hover,.pid-run-button:focus-visible,.pid-check-button:hover,.pid-check-button:focus-visible){background:#f0c96c;transform:translateY(-2px)}.pid-run-result{border-left:3px solid var(--pid-mint);background:#8ac3a214;padding:12px}.pid-run-result strong{color:var(--pid-ink);margin-top:6px;font-size:13px;display:block}.pid-run-result small{color:var(--pid-muted);margin-top:5px;font-size:10px;line-height:1.4;display:block}.pid-tune-chart{border:1px solid var(--pid-line);background:#0710128c;border-radius:11px;min-width:0;padding:17px}.pid-chart-area{border-bottom:1px solid var(--pid-line-strong);background:repeating-linear-gradient(#0000 0 50px,#c1d3c614 51px);height:260px;margin-top:17px;position:relative;overflow:hidden}.pid-chart-target{border-top:1px dashed #8ac3a2cc;position:absolute;bottom:26%;left:0;right:0}.pid-chart-bars{align-items:end;gap:8px;height:92%;display:flex;position:absolute;bottom:0;left:3%;right:3%}.pid-chart-bars i{background:linear-gradient(180deg, var(--pid-amber), #e4b34f2b);transform-origin:bottom;border-radius:4px 4px 0 0;flex:1;min-width:4px;animation:1.5s ease-out both pid-chart-rest;display:block}.pid-tune-chart.is-running .pid-chart-bars i{animation-name:pid-chart-run;animation-duration:1.1s;animation-delay:calc(var(--pid-index,0) * 28ms)}.pid-chart-zero{color:var(--pid-mint);font:9px/1 DM Mono,monospace;position:absolute;bottom:calc(26% + 7px);right:6px}.pid-chart-caption{color:var(--pid-dim);justify-content:space-between;gap:8px;margin-top:11px;font:9px/1.3 DM Mono,monospace;display:flex}.pid-chart-caption strong{color:var(--pid-muted);text-align:center;font-weight:400}.pid-code-mission{border:1px solid var(--pid-line-strong);background:#e4b34f0e;border-radius:12px;grid-template-columns:minmax(0,.92fr) minmax(250px,.78fr);gap:26px;padding:20px;display:grid}.pid-code-scaffold{border-left:2px solid var(--pid-amber);background:#070f117a;gap:7px;margin-top:17px;padding:13px;font:10px/1.5 DM Mono,monospace;display:grid}.pid-code-scaffold span{color:var(--pid-dim)}.pid-code-scaffold code{color:var(--pid-muted);white-space:pre-wrap}.pid-code-scaffold b,.pid-code-scaffold em{color:var(--pid-amber);font-style:normal}.pid-code-input-wrap{align-content:start;gap:11px;display:grid}.pid-code-input-wrap label{gap:7px;display:grid}.pid-code-input-wrap label>span{color:var(--pid-muted);letter-spacing:.1em;font:600 9px/1 DM Mono,monospace}.pid-code-input-wrap textarea{resize:vertical;border:1px solid var(--pid-line-strong);min-height:95px;color:var(--pid-ink);background:var(--pid-bg-deep);border-radius:8px;padding:12px;font:11px/1.5 DM Mono,monospace}.pid-code-input-wrap textarea::placeholder{color:var(--pid-dim)}.pid-check-button{border-color:var(--pid-amber);color:#171b17;background:var(--pid-amber);justify-self:start;padding:10px 14px;font-weight:700}.pid-code-feedback{border-left:3px solid var(--pid-coral);color:var(--pid-muted);background:#e8897217;gap:5px;padding:11px;font-size:11px;line-height:1.4;display:grid}.pid-code-feedback strong{color:var(--pid-coral);letter-spacing:.1em;font:700 9px/1 DM Mono,monospace}.pid-code-feedback.is-accepted{border-left-color:var(--pid-mint);background:#8ac3a21a}.pid-code-feedback.is-accepted strong,.pid-code-feedback.is-accepted span{color:var(--pid-mint)}.pid-tuning-principles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.pid-tuning-principles>div{border-top:2px solid var(--pid-line-strong);padding:14px}.pid-tuning-principles>div:first-child{border-color:var(--pid-coral)}.pid-tuning-principles>div:nth-child(2){border-color:var(--pid-amber)}.pid-tuning-principles>div:nth-child(3){border-color:var(--pid-blue)}.pid-tuning-principles strong{color:var(--pid-ink);margin-top:8px;font-size:13px;line-height:1.25;display:block}.pid-tuning-principles small{color:var(--pid-muted);margin-top:7px;font-size:11px;line-height:1.4;display:block}@keyframes pid-chart-rest{0%{opacity:.35;transform:scaleY(.2)}to{opacity:1;transform:scaleY(1)}}@keyframes pid-chart-run{0%{opacity:.35;transform:scaleY(.2)}55%{opacity:1;transform:scaleY(1.06)}to{opacity:.88;transform:scaleY(.7)}}.pid-reflection{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:start;gap:42px clamp(40px,9vw,130px);width:min(1320px,100%);margin:0 auto;padding:clamp(86px,11vw,150px) 0 80px;display:grid}.pid-reflection-lead h2{max-width:570px;color:var(--pid-ink);letter-spacing:-.055em;margin:13px 0 0;font-size:clamp(34px,5vw,62px);line-height:.98}.pid-reflection-lead p{max-width:460px;color:var(--pid-muted);margin:19px 0 0;font-size:15px;line-height:1.55}.pid-application-list{border-top:1px solid var(--pid-line);gap:0;display:grid}.pid-application-list>div{border-bottom:1px solid var(--pid-line);grid-template-columns:42px minmax(0,1fr);gap:13px;padding:18px 0;display:grid}.pid-application-list span{color:var(--pid-amber);font:600 10px/1.2 DM Mono,monospace}.pid-application-list strong{color:var(--pid-ink);font-size:15px;line-height:1.35}.pid-source-row{border-top:1px solid var(--pid-line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:12px 20px;padding-top:28px;display:flex}.pid-source-row a{color:var(--pid-muted);font:10px/1.3 DM Mono,monospace;text-decoration:none}.pid-source-row a:hover{color:var(--pid-amber)}.pid-companion{z-index:20;pointer-events:none;align-items:end;gap:11px;display:flex;position:fixed;bottom:18px;right:clamp(14px,3vw,34px)}.pid-companion-pet{cursor:pointer;background:radial-gradient(circle at 36% 25%,#e4f2dd 0 4%,#aacbb4 5% 15%,#547667 16% 39%,#243f3d 40% 100%);border:1px solid #8ac3a28c;border-radius:50%;flex:0 0 69px;width:69px;height:69px;padding:0;animation:4.6s ease-in-out infinite pid-companion-bob;position:relative;box-shadow:0 12px 30px #0000004d}.pid-pet-antenna{background:var(--pid-amber);width:1px;height:17px;position:absolute;top:-13px;left:34px}.pid-pet-antenna:after{content:"";background:var(--pid-amber);width:7px;height:7px;box-shadow:0 0 12px var(--pid-amber);border-radius:50%;position:absolute;top:-3px;left:-3px}.pid-pet-face{background:#d9ebd0;border:2px solid #14201d;border-radius:12px 12px 9px 9px;width:31px;height:23px;position:absolute;top:22px;left:19px}.pid-pet-face i{background:#15211d;border-radius:50%;width:4px;height:4px;position:absolute;top:7px}.pid-pet-face i:first-child{left:7px}.pid-pet-face i:nth-child(2){right:7px}.pid-pet-face b{background:#58776b;border-radius:2px;height:2px;position:absolute;bottom:4px;left:8px;right:8px}.pid-pet-wheel{background:var(--pid-amber);border:2px solid #101916;border-radius:50%;width:11px;height:11px;position:absolute;bottom:10px}.pid-pet-wheel-left{left:8px}.pid-pet-wheel-right{right:8px}.pid-companion-panel{pointer-events:auto;background:#122220f7;border:1px solid #8ac3a261;border-radius:13px 13px 4px;width:min(310px,100vw - 108px);padding:14px 15px;display:none;box-shadow:0 14px 38px #0000004d}.pid-companion.is-open .pid-companion-panel{gap:9px;animation:.25s both pid-companion-in;display:grid}.pid-companion-heading{justify-content:space-between;gap:10px;display:flex}.pid-companion-heading b{color:var(--pid-mint);font:600 9px/1.2 DM Mono,monospace}.pid-companion-panel>p{color:var(--pid-muted);margin:0;font-size:12px;line-height:1.45}.pid-companion-fact{border-top:1px solid var(--pid-line);gap:6px;padding-top:9px;display:grid}.pid-companion-fact strong{color:var(--pid-ink);font-size:12px;line-height:1.3}.pid-companion-fact small{color:var(--pid-muted);font-size:10px;line-height:1.35}.pid-companion-fact a{color:var(--pid-amber);font:600 9px/1.3 DM Mono,monospace;text-decoration:none}.pid-companion-actions{flex-wrap:wrap;gap:7px;display:flex}.pid-companion-actions button{color:var(--pid-muted);background:0 0;padding:7px 10px;font:600 9px/1.2 DM Mono,monospace}:is(.pid-companion-actions button:hover,.pid-companion-actions button:focus-visible){border-color:var(--pid-amber);color:var(--pid-amber)}.pid-companion:not(.is-open) .pid-companion-pet{pointer-events:auto}.pid-companion:not(.is-open) .pid-companion-pet:after{border:2px solid var(--pid-bg);content:"+";color:#101916;background:var(--pid-amber);text-align:center;border-radius:50%;width:15px;height:15px;font:700 12px/11px Arial,sans-serif;position:absolute;bottom:-3px;right:-4px}@keyframes pid-companion-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-6px)rotate(1deg)}}@keyframes pid-companion-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.pid-footer{border-top:1px solid var(--pid-line);width:min(1320px,100%);color:var(--pid-dim);justify-content:space-between;gap:20px;margin:0 auto;padding-top:18px;font:10px/1.35 DM Mono,monospace;display:flex}.pid-footer nav{flex-wrap:wrap;gap:16px;display:flex}.pid-footer a{color:var(--pid-muted);text-decoration:none}.pid-footer a:hover{color:var(--pid-amber)}@media (max-width:1080px){.pid-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:42px}.pid-lesson{grid-template-columns:190px minmax(0,1fr);gap:28px}.pid-chapter-panel{padding:28px}.pid-notice-content{gap:28px}}@media (max-width:820px){.pid-topbar{grid-template-columns:auto 1fr}.pid-topbar-label{text-align:right}.pid-topbar nav{display:none}.pid-hero{grid-template-columns:1fr;padding-top:70px}.pid-hero-copy{max-width:700px}.pid-hero-visual{max-width:680px}.pid-industrial-scene{min-height:300px}.pid-lesson{grid-template-columns:1fr}.pid-progress-rail{padding:0;position:static}.pid-progress-line{display:none}.pid-progress-heading{max-width:680px}.pid-progress-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}.pid-progress-step{border:1px solid var(--pid-line);border-radius:9px;grid-template-columns:24px minmax(0,1fr);padding:10px}.pid-progress-step small{grid-column:1/-1;padding-top:4px}.pid-progress-note{display:none}.pid-chapter-heading{grid-template-columns:1fr;gap:14px}.pid-notice-content,.pid-tune-layout,.pid-reflection{grid-template-columns:1fr}.pid-story-copy{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-small-beat{grid-column:1/-1}.pid-loop-map{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-loop-step:not(:last-child):after{display:none}.pid-signal-grid{grid-template-columns:1fr}.pid-signal-card p{min-height:auto}.pid-code-mission,.pid-structure-note{grid-template-columns:1fr}.pid-reflection{gap:32px;padding-top:90px}.pid-source-row{grid-column:auto}}@media (max-width:560px){.pid-page{padding-left:14px;padding-right:14px}.pid-topbar{font-size:9px}.pid-topbar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pid-hero{padding-top:55px;padding-bottom:68px}.pid-hero h1{font-size:clamp(56px,16vw,78px)}.pid-hero-copy>p{font-size:16px}.pid-hero-principle{grid-template-columns:1fr;gap:8px;margin-top:39px}.pid-visual-label{flex-direction:column;align-items:start;gap:5px}.pid-industrial-scene{min-height:250px}.pid-scene-caption{max-width:180px;font-size:9px;bottom:13px;right:14px}.pid-chapter-panel{border-radius:12px;padding:19px}.pid-progress-steps{grid-template-columns:1fr}.pid-progress-step{grid-template-columns:24px minmax(0,1fr)}.pid-progress-step small{grid-column:2;padding-top:0}.pid-story-copy{grid-template-columns:1fr}.pid-small-beat{grid-column:auto}.pid-line-lab{padding:13px}.pid-line-track{height:160px}.pid-mode-intro{grid-template-columns:1fr}.pid-loop-map{grid-template-columns:1fr 1fr}.pid-loop-step{min-height:118px;padding:11px}.pid-human-p-card,.pid-readout-row,.pid-tuning-principles{grid-template-columns:1fr}.pid-code-mission{padding:15px}.pid-chart-area{height:210px}.pid-chart-bars{gap:4px}.pid-reflection{padding-top:70px}.pid-footer{flex-direction:column;align-items:start;padding-bottom:24px}.pid-companion{bottom:11px;right:11px}.pid-companion-panel{width:min(252px,100vw - 91px)}}@media (prefers-reduced-motion:reduce){.pid-page *,.pid-page :before,.pid-page :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.pid-companion-panel{overscroll-behavior:contain;max-height:min(72vh,620px);overflow-y:auto}.pid-companion-coach{border-top:1px solid var(--pid-line);gap:8px;padding-top:10px;display:grid}.pid-companion-coach-label{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.pid-companion-coach-label span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.pid-companion-coach-label small{color:var(--pid-dim);font-size:9px}.pid-companion-quick{flex-wrap:wrap;gap:6px;display:flex}.pid-companion-quick button{color:var(--pid-muted);cursor:pointer;background:#8ac3a20d;border:1px solid #8ac3a252;border-radius:999px;padding:6px 8px;font:600 8px/1.2 DM Mono,monospace}:is(.pid-companion-quick button:hover,.pid-companion-quick button:focus-visible){border-color:var(--pid-mint);color:var(--pid-ink)}.pid-companion-quick button:disabled,.pid-companion-form button:disabled{cursor:wait;opacity:.55}.pid-companion-transcript{gap:7px;max-height:190px;padding:2px 2px 2px 0;display:grid;overflow-y:auto}.pid-companion-message{border-left:2px solid var(--pid-line-strong);background:#ffffff06;gap:3px;padding:7px 8px;display:grid}.pid-companion-message.is-coach{border-color:var(--pid-mint);background:#8ac3a212}.pid-companion-message span{color:var(--pid-amber);letter-spacing:.1em;font:600 8px/1.2 DM Mono,monospace}.pid-companion-message p{color:var(--pid-muted);white-space:pre-wrap;margin:0;font-size:10px;line-height:1.42}.pid-companion-error{border-left:2px solid var(--pid-coral);color:#f1b4a3;background:#e8897214;margin:0;padding:7px 8px;font-size:10px;line-height:1.35}.pid-companion-form{grid-template-columns:minmax(0,1fr) max-content;align-items:end;gap:6px;display:grid}.pid-companion-form textarea{resize:vertical;border:1px solid var(--pid-line-strong);width:100%;min-height:42px;color:var(--pid-ink);background:#040c0e80;border-radius:8px;outline:0;padding:8px;font:10px/1.35 DM Mono,monospace}.pid-companion-form textarea::placeholder{color:var(--pid-dim)}.pid-companion-form textarea:focus{border-color:var(--pid-amber);box-shadow:0 0 0 2px #e4b34f1f}.pid-companion-form button{border:1px solid var(--pid-amber);color:#171b17;background:var(--pid-amber);cursor:pointer;border-radius:8px;padding:9px 10px;font:700 9px/1.2 DM Mono,monospace}:is(.pid-companion-form button:hover,.pid-companion-form button:focus-visible){background:#f0c96c}.pid-companion-selection-howto{color:var(--pid-dim);font:9px/1.35 DM Mono,monospace}.pid-page code,.pid-page pre{-webkit-user-select:text;user-select:text}.pid-page [data-pid-code-label] code,.pid-page [data-pid-code-label] pre{cursor:help}.pid-companion-selection-branch{background:#e4b34f17;border:1px solid #e4b34f99;border-radius:10px;gap:8px;padding:10px;display:grid}.pid-companion-selection-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.pid-companion-selection-heading span,.pid-companion-selection-hint>span{color:var(--pid-amber);letter-spacing:.1em;font:600 8px/1.2 DM Mono,monospace}.pid-companion-selection-heading button{border:1px solid var(--pid-line-strong);width:20px;height:20px;color:var(--pid-muted);cursor:pointer;background:0 0;border-radius:50%;padding:0}:is(.pid-companion-selection-heading button:hover,.pid-companion-selection-heading button:focus-visible){border-color:var(--pid-amber);color:var(--pid-amber)}.pid-companion-selection-branch>code{max-height:74px;color:var(--pid-ink);white-space:pre-wrap;overflow-wrap:anywhere;background:#040c0e9e;padding:8px;font:10px/1.45 DM Mono,monospace;display:block;overflow:auto}.pid-companion-selection-hint{border-left:2px solid var(--pid-mint);padding-left:8px}.pid-companion-selection-hint p{color:var(--pid-muted);white-space:pre-line;margin:4px 0 0;font-size:10px;line-height:1.4}.pid-companion-selection-branch>button{border:1px solid var(--pid-amber);color:#171b17;background:var(--pid-amber);cursor:pointer;border-radius:999px;justify-self:start;padding:7px 9px;font:700 8px/1.2 DM Mono,monospace}:is(.pid-companion-selection-branch>button:hover,.pid-companion-selection-branch>button:focus-visible){background:#f0c96c}.pid-companion-selection-branch>button:disabled{cursor:wait;opacity:.6}@media (max-width:560px){.pid-companion-panel{max-height:68vh}.pid-companion-coach-label{flex-direction:column;align-items:start;gap:3px}.pid-companion-form{grid-template-columns:1fr}.pid-companion-form button{width:100%}}.pid-p-content{gap:22px;display:grid}.pid-p-progress{border-bottom:1px solid var(--pid-line);grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding-bottom:5px;display:grid}.pid-p-progress button{border:1px solid var(--pid-line);min-height:62px;color:var(--pid-dim);text-align:left;cursor:pointer;background:#ffffff04;border-radius:9px;gap:7px;padding:11px 12px;transition:border-color .2s,color .2s,background .2s,transform .2s;display:grid}:is(.pid-p-progress button:hover,.pid-p-progress button:focus-visible){border-color:var(--pid-amber);color:var(--pid-ink);transform:translateY(-2px)}.pid-p-progress button.is-active{border-color:var(--pid-amber);color:var(--pid-ink);background:var(--pid-amber-soft)}.pid-p-progress button.is-complete{color:var(--pid-muted)}.pid-p-progress button span,.pid-p-stage-lead>div:first-child>span,.pid-p-question>span,.pid-p-run-heading-row span,.pid-p-scale-copy>span,.pid-p-linear-controls>span,.pid-p-proportion-note span,.pid-p-equation span,.pid-p-coefficient-bar>span,.pid-p-promise>span,.pid-p-stage-footer>span,.pid-p-source-note>span{color:var(--pid-amber);letter-spacing:.1em;text-transform:uppercase;font:600 9px/1.2 DM Mono,monospace}.pid-p-progress button strong{color:inherit;font-size:12px;line-height:1.15}.pid-p-stage{gap:19px;display:grid}.pid-p-stage-lead{grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);align-items:start;gap:24px;display:grid}.pid-p-stage-lead h3{max-width:650px;color:var(--pid-ink);letter-spacing:-.045em;margin:10px 0 0;font-size:clamp(24px,3.5vw,39px);line-height:1.02}.pid-p-stage-lead p{max-width:620px;color:var(--pid-muted);margin:13px 0 0;font-size:13px;line-height:1.58}.pid-p-stage-lead code,.pid-p-source-note code{color:var(--pid-amber);font:600 .95em DM Mono,monospace}.pid-p-question{background:#e4b34f12;border:1px solid #e4b34f57;border-radius:11px;gap:10px;padding:17px;display:grid}.pid-p-question strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-p-question>div{flex-wrap:wrap;gap:7px;display:flex}.pid-p-question button,.pid-p-scale-buttons button,.pid-p-linear-controls button,.pid-p-coefficient-bar button{border:1px solid var(--pid-line-strong);color:var(--pid-muted);cursor:pointer;background:0 0;border-radius:999px;padding:9px 11px;font:600 10px/1.2 DM Mono,monospace;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.pid-p-question button:hover,.pid-p-question button:focus-visible,.pid-p-scale-buttons button:hover,.pid-p-scale-buttons button:focus-visible,.pid-p-linear-controls button:hover,.pid-p-linear-controls button:focus-visible,.pid-p-coefficient-bar button:hover,.pid-p-coefficient-bar button:focus-visible){border-color:var(--pid-amber);color:var(--pid-amber);transform:translateY(-1px)}.pid-p-question button.is-selected,.pid-p-scale-buttons button.is-selected,.pid-p-linear-controls button.is-selected,.pid-p-coefficient-bar button.is-selected{border-color:var(--pid-amber);color:#171b17;background:var(--pid-amber)}.pid-p-question small{color:var(--pid-muted);font-size:11px;line-height:1.45}.pid-p-question small b{color:var(--pid-amber);font-weight:600}.pid-p-run-heading-row{justify-content:space-between;gap:14px;padding-top:2px;display:flex}.pid-p-run-heading-row b,.pid-p-wave-heading b{color:var(--pid-dim);letter-spacing:.08em;font:600 9px/1.2 DM Mono,monospace}.pid-p-runs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pid-p-run{border:1px solid var(--pid-line);background:#07101273;border-radius:11px;min-width:0;padding:14px}.pid-p-run.is-aggressive{border-color:#e889726b}.pid-p-run.is-gentle{border-color:#8ac3a26b}.pid-p-run-heading,.pid-p-wave-heading{justify-content:space-between;gap:10px;display:flex}.pid-p-run-heading span{color:var(--pid-muted);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.pid-p-run-heading b{color:var(--pid-amber);font:600 10px/1.2 DM Mono,monospace}.pid-p-run-scene{background:#d1d2bd;border-radius:8px;height:184px;margin-top:12px;position:relative;overflow:hidden}.pid-p-run-scene:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000,#ffffff24,#0000);animation:4.8s linear infinite pid-p-scene-glint;position:absolute;inset:0}.pid-p-line-course{background:linear-gradient(#d8d9c6 0 39%,#252e2c 39% 61%,#c7ccb9 61%);position:absolute;inset:0}.pid-p-line-edge{background:#101816;height:5px;position:absolute;top:50%;left:-5%;right:-5%;transform:translateY(-50%);box-shadow:0 0 12px #080f0e9e}.pid-p-gyro-course{background:linear-gradient(#d9ddd0 0%,#91a99a 48%,#172322 100%);position:absolute;inset:0;overflow:hidden}.pid-p-gyro-course:after{content:"";clip-path:polygon(32% 0,68% 0,100% 100%,0 100%);background:linear-gradient(90deg,#09141429,#192c28a6,#09141429);height:110%;position:absolute;bottom:-17%;left:28%;right:28%}.pid-p-gyro-center{z-index:1;background:repeating-linear-gradient(#e4b34fcc 0 17px,#0000 17px 34px);width:2px;position:absolute;top:0;bottom:0;left:50%}.pid-p-gyro-edge{z-index:1;transform-origin:bottom;background:#c1d3c65c;width:1px;position:absolute;top:0;bottom:0}.pid-p-gyro-edge-left{left:30%;transform:rotate(12deg)}.pid-p-gyro-edge-right{right:30%;transform:rotate(-12deg)}.pid-p-mini-robot{z-index:2;background:var(--pid-mint);transform-origin:50% 75%;border:2px solid #17231f;border-radius:7px;width:49px;height:34px;position:absolute;top:52%;left:50%;box-shadow:0 5px 10px #00000047}.pid-p-run-line .pid-p-mini-robot{animation:pid-p-line-wobble var(--pid-p-run-duration) ease-in-out infinite}.pid-p-run-gyro .pid-p-mini-robot{animation:pid-p-gyro-wobble var(--pid-p-run-duration) ease-in-out infinite}.pid-p-mini-robot:before{content:"";background:#16221f;border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:10px;box-shadow:17px 0 #16221f}.pid-p-mini-robot i{background:#4f6e62;border:2px solid #101916;border-radius:50%;width:11px;height:11px;position:absolute;bottom:-7px}.pid-p-mini-robot i:first-child{left:4px}.pid-p-mini-robot i:nth-child(2){right:4px}.pid-p-mini-robot b{content:"";background:var(--pid-amber);border-radius:2px;width:8px;height:7px;position:absolute;bottom:5px;right:-7px}.pid-p-run-target{z-index:2;color:#101a17a6;letter-spacing:.09em;font:600 9px/1 DM Mono,monospace;position:absolute;top:13px;right:13px}.pid-p-run-readout{z-index:3;border-top:1px solid #0f19172e;justify-content:space-between;align-items:baseline;gap:8px;padding-top:8px;display:flex;position:absolute;bottom:11px;left:12px;right:12px}.pid-p-run-readout strong{color:#18231f;letter-spacing:.08em;font:700 10px/1 DM Mono,monospace}.pid-p-run-readout span{color:#2d3e37;font:9px/1.2 DM Mono,monospace}.pid-p-run>p{color:var(--pid-muted);margin:10px 0 0;font-size:11px;line-height:1.4}@keyframes pid-p-line-wobble{0%,to{translate:calc(var(--pid-p-run-wiggle) * -1) 0;rotate:calc(var(--pid-p-run-tilt) * -1)}25%{translate:var(--pid-p-run-wiggle) 4px;rotate:var(--pid-p-run-tilt)}50%{translate:calc(var(--pid-p-run-wiggle) * -.65) -3px;rotate:calc(var(--pid-p-run-tilt) * -.7)}75%{translate:calc(var(--pid-p-run-wiggle) * .65) 2px;rotate:calc(var(--pid-p-run-tilt) * .8)}}@keyframes pid-p-gyro-wobble{0%,to{translate:calc(var(--pid-p-run-wiggle) * -.42) 30px;rotate:calc(var(--pid-p-run-tilt) * -1);scale:.76}50%{translate:var(--pid-p-run-wiggle) -24px;rotate:var(--pid-p-run-tilt);scale:1.08}}@keyframes pid-p-scene-glint{0%{translate:-120%}to{translate:120%}}.pid-p-stage-footer{border-top:1px solid var(--pid-line);gap:8px;padding-top:16px;display:grid}.pid-p-stage-footer strong{max-width:700px;color:var(--pid-ink);font-size:15px;line-height:1.35}.pid-p-stage-footer .pid-next-button{margin-top:4px}.pid-p-scale-lab{border:1px solid var(--pid-line-strong);background:#07101273;border-radius:11px;grid-template-columns:minmax(0,.82fr) minmax(260px,1fr);gap:20px;padding:17px;display:grid}.pid-p-scale-copy{align-content:start;gap:9px;display:grid}.pid-p-scale-copy h3{color:var(--pid-ink);margin:0;font-size:21px;line-height:1.1}.pid-p-scale-copy p{color:var(--pid-muted);margin:0;font-size:12px;line-height:1.5}.pid-p-scale-buttons{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.pid-p-scale-copy code{color:var(--pid-mint);background:var(--pid-bg-deep);margin-top:6px;padding:11px;font:11px/1.3 DM Mono,monospace;display:block}.pid-p-scale-stage{border:1px solid var(--pid-line);background:radial-gradient(circle at 50% 50%, #8ac3a21a, transparent 38%), var(--pid-bg-deep);border-radius:8px;min-height:230px;position:relative;overflow:hidden}.pid-p-scale-grid{opacity:.45;background:repeating-linear-gradient(90deg,#0000 0 32px,#c1d3c612 33px),repeating-linear-gradient(#0000 0 32px,#c1d3c612 33px);position:absolute;inset:0}.pid-p-scale-robot{border:3px solid var(--pid-mint);background:#8ac3a240;border-radius:12px;width:82px;height:56px;transition:transform .55s cubic-bezier(.22,.8,.28,1);position:absolute;top:50%;left:50%;box-shadow:0 0 30px #8ac3a224}.pid-p-scale-robot:before{content:"";background:var(--pid-mint);width:8px;height:8px;box-shadow:32px 0 var(--pid-mint);border-radius:50%;position:absolute;top:15px;left:17px}.pid-p-scale-robot i{background:var(--pid-amber);border:3px solid #15221e;border-radius:50%;width:21px;height:21px;position:absolute;bottom:-12px}.pid-p-scale-robot i:first-child{left:7px}.pid-p-scale-robot i:nth-child(2){right:7px}.pid-p-scale-robot b{background:var(--pid-amber);width:13px;height:10px;position:absolute;bottom:12px;right:-12px}.pid-p-scale-label{color:var(--pid-dim);letter-spacing:.1em;text-transform:uppercase;font:9px/1 DM Mono,monospace;position:absolute;bottom:12px;right:13px}.pid-p-source-note{border-top:1px solid var(--pid-line);border-bottom:1px solid var(--pid-line);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;padding:14px 0;display:grid}.pid-p-source-note p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.5}.pid-p-source-note a,.pid-p-proportion-note a{color:var(--pid-amber);text-decoration:none}.pid-p-source-note a:hover,.pid-p-proportion-note a:hover{text-decoration:underline}.pid-p-linear-lab{border:1px solid var(--pid-line-strong);background:#07101273;border-radius:11px;grid-template-columns:minmax(170px,.38fr) minmax(0,1fr);gap:18px;padding:17px;display:grid}.pid-p-linear-controls{align-content:center;gap:10px;display:grid}.pid-p-linear-controls>div{flex-wrap:wrap;gap:6px;display:flex}.pid-p-linear-controls strong{color:var(--pid-ink);font:700 23px/1 DM Mono,monospace}.pid-p-linear-controls small{color:var(--pid-muted);font-size:11px}.pid-p-linear-graph{border:1px solid var(--pid-line);background:repeating-linear-gradient(90deg,#0000 0 41px,#c1d3c612 42px),repeating-linear-gradient(#0000 0 41px,#c1d3c612 42px);border-radius:8px;min-height:255px;position:relative;overflow:hidden}.pid-p-linear-axis{z-index:1;background:#c1d3c657;display:block;position:absolute}.pid-p-linear-axis-x{height:1px;top:50%;left:0;right:0}.pid-p-linear-axis-y{width:1px;top:0;bottom:0;left:50%}.pid-p-linear-line{background:var(--pid-amber);transform-origin:0;width:141%;height:3px;transform:rotate(var(--pid-p-line-angle));border-radius:99px;animation:.75s ease-out both pid-p-line-draw;position:absolute;top:50%;left:50%;box-shadow:0 0 12px #e4b34f66}.pid-p-graph-origin,.pid-p-graph-y,.pid-p-graph-x{z-index:2;color:var(--pid-dim);font:9px/1 DM Mono,monospace;position:absolute}.pid-p-graph-origin{top:calc(50% + 7px);left:calc(50% + 7px)}.pid-p-graph-y{top:8px;left:calc(50% + 7px)}.pid-p-graph-x{top:calc(50% + 7px);right:9px}.pid-p-proportion-note{border-left:3px solid var(--pid-mint);background:#8ac3a214;justify-content:space-between;align-items:end;gap:18px;padding:15px;display:flex}.pid-p-proportion-note div{gap:7px;display:grid}.pid-p-proportion-note strong{color:var(--pid-ink);font-size:15px;line-height:1.3}.pid-p-proportion-note small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-p-proportion-note a{flex:none;font:600 9px/1.3 DM Mono,monospace}@keyframes pid-p-line-draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.pid-p-equation{border-left:3px solid var(--pid-amber);background:var(--pid-amber-soft);gap:9px;padding:17px;display:grid}.pid-p-equation strong{color:var(--pid-ink);font:700 16px/1.25 DM Mono,monospace}.pid-p-equation small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-p-coefficient-bar{border-top:1px solid var(--pid-line);border-bottom:1px solid var(--pid-line);flex-wrap:wrap;align-items:center;gap:7px;padding:11px 0;display:flex}.pid-p-coefficient-bar>span{margin-right:auto}.pid-p-wave-card{border:1px solid var(--pid-line);background:#07101273;border-radius:11px;padding:15px}.pid-p-wave-chart{border:1px solid var(--pid-line);background:repeating-linear-gradient(#0000 0 41px,#c1d3c612 42px);border-radius:8px;height:170px;margin-top:12px;position:relative;overflow:hidden}.pid-p-wave-zero{background:#c1d3c659;height:1px;position:absolute;top:50%;left:0;right:0}.pid-p-wave{position:absolute;inset:0}.pid-p-wave i{transform-origin:0;border-radius:99px;width:2.6%;height:3px;position:absolute}.pid-p-wave-aggressive i{background:#8bbad2;box-shadow:0 0 6px #8bbad24d}.pid-p-wave-scaled i{background:#e88972;box-shadow:0 0 6px #e889724d}.pid-p-wave span{color:var(--pid-dim);letter-spacing:.08em;font:9px/1 DM Mono,monospace;position:absolute;right:10px}.pid-p-wave-aggressive span{top:15px}.pid-p-wave-scaled span{top:32px}.pid-p-wave-aggressive{animation:3.3s ease-in-out infinite pid-p-wave-breathe}.pid-p-wave-scaled{animation:1.8s ease-in-out infinite reverse pid-p-wave-breathe}.pid-p-wave-card p{color:var(--pid-muted);margin:11px 0 0;font-size:11px;line-height:1.45}.pid-p-wave-card p strong:first-child{color:#8bbad2}.pid-p-wave-card p strong:last-child{color:#e88972}@keyframes pid-p-wave-breathe{0%,to{opacity:.75;translate:0 1px}50%{opacity:1;translate:0 -1px}}.pid-p-promise{background:#8ac3a214;border:1px solid #8ac3a257;gap:8px;padding:16px;display:grid}.pid-p-promise strong{max-width:700px;color:var(--pid-ink);font-size:16px;line-height:1.35}.pid-p-promise small{color:var(--pid-muted);font-size:11px;line-height:1.45}@media (max-width:820px){.pid-p-stage-lead,.pid-p-scale-lab,.pid-p-linear-lab{grid-template-columns:1fr}.pid-p-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-p-linear-graph{min-height:220px}}@media (max-width:560px){.pid-p-runs,.pid-p-progress{grid-template-columns:1fr}.pid-p-run-heading-row,.pid-p-proportion-note{flex-direction:column;align-items:start}.pid-p-source-note{grid-template-columns:1fr}.pid-p-coefficient-bar{flex-direction:column;align-items:start}.pid-p-coefficient-bar>span{margin-right:0}.pid-p-run-scene{height:165px}.pid-p-stage-lead h3{font-size:27px}}.pid-page .pid-next-button:disabled{border-color:var(--pid-line);color:var(--pid-dim);cursor:not-allowed;opacity:.58;background:0 0;transform:none}.pid-problem-content,.pid-principles-content{gap:24px;padding-top:31px;display:grid}.pid-problem-content{grid-template-columns:minmax(220px,.72fr) minmax(0,1fr);gap:clamp(28px,6vw,78px)}.pid-problem-story{align-content:start;gap:24px;display:grid}.pid-problem-scene{border:1px solid var(--pid-line);background:linear-gradient(#d2d2b4 0 36%,#252d2c 36% 64%,#b9c3aa 64%);border-radius:12px;min-height:168px;position:relative;overflow:hidden}.pid-problem-scene:before,.pid-problem-scene:after{content:"";background:#08100f6b;width:86%;height:2px;position:absolute;top:50%;left:7%;transform:translateY(-50%)}.pid-problem-scene:after{filter:blur(5px);background:#e8897259;width:48%;left:20%;transform:translateY(-50%)rotate(5deg)}.pid-problem-track{filter:blur(3px);background:#060e0d8c;border-radius:50%;height:11px;position:absolute;top:50%;left:7%;right:7%;transform:translateY(-50%)}.pid-problem-robot{background:var(--pid-mint);border:2px solid #17221e;border-radius:10px;width:48px;height:37px;animation:2.2s ease-in-out infinite pid-problem-wobble;position:absolute;top:44%;left:46%;transform:rotate(11deg);box-shadow:0 5px 13px #00000040}.pid-problem-robot:after{border:2px solid var(--pid-coral);content:"";background:0 0;border-radius:50%;width:10px;height:10px;position:absolute;bottom:3px;right:-7px}.pid-problem-robot i{background:#16211d;border-radius:50%;width:5px;height:5px;position:absolute;top:9px}.pid-problem-robot i:first-child{left:12px}.pid-problem-robot i:nth-child(2){left:28px}.pid-problem-robot b{background:var(--pid-amber);border:2px solid #14201b;border-radius:4px;width:11px;height:7px;position:absolute;bottom:-8px;left:18px}.pid-problem-signal{color:var(--pid-coral);letter-spacing:.1em;font:600 9px/1 DM Mono,monospace;animation:2.2s ease-in-out infinite pid-signal-flash;position:absolute;top:17%;left:21%;transform:rotate(-8deg)}.pid-problem-signal-two{animation-delay:-.9s;top:72%;left:65%}@keyframes pid-problem-wobble{0%,to{translate:-12px;rotate:-6deg}50%{translate:13px 4px;rotate:14deg}}@keyframes pid-signal-flash{0%,to{opacity:.35}50%{opacity:1}}.pid-problem-ladder{border-top:1px solid var(--pid-line);gap:0;padding-top:15px;display:grid}.pid-problem-ladder>span{color:var(--pid-amber);letter-spacing:.11em;font:600 9px/1.25 DM Mono,monospace}.pid-problem-ladder>div{border-bottom:1px solid var(--pid-line);grid-template-columns:25px minmax(0,1fr) auto;align-items:baseline;gap:9px;padding:11px 0;display:grid}.pid-problem-ladder b{color:var(--pid-dim);font:600 9px/1 DM Mono,monospace}.pid-problem-ladder strong{color:var(--pid-ink);font-size:12px}.pid-problem-ladder small{color:var(--pid-dim);font-size:10px}.pid-problem-workbench{border:1px solid var(--pid-line-strong);background:#07111359;border-radius:12px;align-content:start;gap:15px;padding:19px;display:grid}.pid-problem-prompt h3{color:var(--pid-ink);margin:9px 0 0;font-size:21px;line-height:1.1}.pid-problem-prompt p{max-width:440px;color:var(--pid-muted);margin:10px 0 0;font-size:12px;line-height:1.5}.pid-problem-options{gap:8px;display:grid}.pid-problem-option{border:1px solid var(--pid-line);color:var(--pid-muted);text-align:left;cursor:pointer;background:#ffffff04;border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:5px 11px;padding:13px;transition:border-color .2s,background .2s,transform .2s;display:grid}:is(.pid-problem-option:hover,.pid-problem-option:focus-visible){border-color:var(--pid-amber);transform:translate(3px)}.pid-problem-option.is-selected{border-color:var(--pid-amber);background:var(--pid-amber-soft)}.pid-problem-option>span{color:var(--pid-dim);letter-spacing:.1em;grid-column:1/-1;font:600 9px/1.2 DM Mono,monospace}.pid-problem-option strong{color:var(--pid-ink);font-size:14px}.pid-problem-option small{color:var(--pid-dim);grid-column:2;font-size:10px;line-height:1.4}.pid-problem-feedback{border-left:3px solid var(--pid-coral);background:#e8897214;padding:13px}.pid-problem-feedback.is-root{border-left-color:var(--pid-mint);background:#8ac3a217}.pid-problem-feedback>span,.pid-fact-result>span{color:var(--pid-coral);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.pid-problem-feedback.is-root>span{color:var(--pid-mint)}.pid-problem-feedback strong{color:var(--pid-ink);margin-top:7px;font-size:12px;line-height:1.35;display:block}.pid-problem-feedback small{color:var(--pid-muted);margin-top:6px;font-size:10px;line-height:1.4;display:block}.pid-principles-content{gap:21px}.pid-principle-lead{grid-template-columns:minmax(0,1fr) minmax(230px,.62fr);align-items:start;gap:26px;display:grid}.pid-principle-lead h3{color:var(--pid-ink);letter-spacing:-.03em;margin:9px 0 0;font-size:clamp(21px,3vw,31px);line-height:1.08}.pid-principle-lead p{max-width:560px;color:var(--pid-muted);margin:11px 0 0;font-size:13px;line-height:1.55}.pid-principle-bridge{border-left:3px solid var(--pid-amber);background:var(--pid-amber-soft);gap:7px;padding:15px;display:grid}.pid-principle-bridge span,.pid-principle-bridge b{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.2 DM Mono,monospace}.pid-principle-bridge b{color:var(--pid-mint);margin-top:8px}.pid-principle-bridge strong{color:var(--pid-ink);font-size:14px;line-height:1.25}.pid-principle-stories{grid-template-columns:1fr 1fr;gap:9px;display:grid}.pid-principle-stories article{border-top:2px solid var(--pid-amber);background:#ffffff05;min-width:0;padding:15px}.pid-principle-stories article:nth-child(2){border-color:var(--pid-blue)}.pid-principle-stories article>span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.25 DM Mono,monospace}.pid-principle-stories article:nth-child(2)>span{color:var(--pid-blue)}.pid-principle-stories p{color:var(--pid-muted);margin:10px 0 13px;font-size:11px;line-height:1.5}.pid-principle-stories a{color:var(--pid-ink);font:600 9px/1.25 DM Mono,monospace;text-decoration:none}.pid-principle-stories a:hover{color:var(--pid-amber)}.pid-fact-lab{border:1px solid var(--pid-line-strong);background:#07111359;border-radius:12px;gap:14px;padding:18px;display:grid}.pid-fact-lab-heading{justify-content:space-between;align-items:baseline;gap:15px;display:flex}.pid-fact-lab-heading>span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.25 DM Mono,monospace}.pid-fact-lab-heading strong{color:var(--pid-muted);font-size:11px;font-weight:400}.pid-fact-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.pid-fact-option{border:1px solid var(--pid-line);min-width:0;color:var(--pid-muted);text-align:left;cursor:pointer;background:#ffffff04;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:6px 8px;padding:11px;transition:border-color .2s,background .2s;display:grid}:is(.pid-fact-option:hover,.pid-fact-option:focus-visible,.pid-fact-option.is-selected){border-color:var(--pid-amber);background:var(--pid-amber-soft)}.pid-fact-option>span{border:1px solid var(--pid-line-strong);width:17px;height:17px;color:var(--pid-amber);border-radius:50%;place-items:center;font:600 11px/1 DM Mono,monospace;display:grid}.pid-fact-option strong{color:var(--pid-ink);align-self:center;font-size:11px;line-height:1.2}.pid-fact-option small{color:var(--pid-dim);grid-column:2;font:9px/1.25 DM Mono,monospace}.pid-fact-result{border-left:3px solid var(--pid-mint);background:#8ac3a214;padding:13px}.pid-fact-result>span{color:var(--pid-mint)}.pid-fact-result strong{color:var(--pid-ink);margin-top:7px;font-size:13px;display:block}.pid-fact-result p{color:var(--pid-muted);margin:6px 0 0;font-size:11px;line-height:1.4}@media (max-width:820px){.pid-progress-steps{grid-template-columns:repeat(5,minmax(115px,1fr));padding-bottom:5px;overflow-x:auto}.pid-progress-step{min-width:115px}.pid-problem-content,.pid-principle-lead{grid-template-columns:1fr}.pid-problem-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.pid-problem-story>.pid-story-beat,.pid-problem-ladder{grid-column:1/-1}.pid-fact-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.pid-problem-story,.pid-principle-stories{grid-template-columns:1fr}.pid-problem-story>.pid-story-beat,.pid-problem-ladder{grid-column:auto}.pid-problem-workbench{padding:14px}.pid-problem-option small{grid-column:1/-1}.pid-principle-stories article{padding:13px}.pid-fact-lab{padding:14px}.pid-fact-lab-heading{flex-direction:column;align-items:start;gap:5px}.pid-fact-options{grid-template-columns:1fr}}.pid-problem-content{align-items:stretch}.pid-problem-story,.pid-problem-workbench{min-width:0}.pid-problem-options{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.pid-problem-option{grid-template-rows:auto auto 1fr;grid-template-columns:1fr;align-items:start;min-height:168px}.pid-problem-option>span,.pid-problem-option small{grid-column:auto}.pid-problem-option small{align-self:end}.pid-target-run-scene{border:1px solid var(--pid-line);background:linear-gradient(#182a2b 0%,#132225 100%);border-radius:12px;min-height:198px;position:relative;overflow:hidden}.pid-target-run-scene:before{content:"";border-top:1px solid #8ac3a242;position:absolute;top:53%;left:10%;right:10%}.pid-target-run-scene:after{content:"";border-top:1px dashed #e4b34f21;border-bottom:1px dashed #e4b34f21;height:34px;position:absolute;top:calc(53% - 17px);left:10%;right:10%}.pid-target-run-path{border-top:1px solid #c1d3c629;width:76%;position:absolute;top:calc(53% - 1px);left:12%}.pid-target-run-point{z-index:2;border-radius:50%;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:53%;transform:translate(-50%,-50%)}.pid-target-run-point span{white-space:nowrap;color:var(--pid-dim);letter-spacing:.08em;font:600 9px/1 DM Mono,monospace;position:absolute;top:25px}.pid-target-run-start{border:1px solid var(--pid-muted);color:var(--pid-ink);background:var(--pid-surface);left:11%}.pid-target-run-target{border:2px solid var(--pid-amber);color:var(--pid-amber);background:var(--pid-amber-soft);left:88%;box-shadow:0 0 0 8px #e4b34f0f}.pid-target-run-target span{color:var(--pid-amber)}.pid-target-run{z-index:3;background:var(--pid-mint);width:28px;height:17px;animation:6.4s linear infinite pid-target-run;animation-delay:var(--pid-run-delay);border:2px solid #15211c;border-radius:5px;position:absolute;top:53%;left:11%;transform:translate(-50%,-50%);box-shadow:0 4px 9px #00000040}.pid-target-run:before{content:"";background:#14201b;border-radius:50%;width:4px;height:4px;position:absolute;top:4px;left:6px;box-shadow:10px 0 #14201b}.pid-target-run:after{content:"";background:var(--pid-amber);border:1px solid #14201b;border-radius:50%;width:7px;height:7px;position:absolute;bottom:1px;right:-6px}.pid-target-run-one{--pid-run-end:78%;--pid-run-delay:0s}.pid-target-run-two{--pid-run-end:84%;--pid-run-delay:-1.6s}.pid-target-run-three{--pid-run-end:80%;--pid-run-delay:-3.2s}.pid-target-run-four{--pid-run-end:86%;--pid-run-delay:-4.8s}@keyframes pid-target-run{0%{opacity:0;left:11%;transform:translate(-50%,-50%)scale(.65)}12%,62%{opacity:1}72%{left:var(--pid-run-end);opacity:1;transform:translate(-50%,-50%)scale(1)}to{left:var(--pid-run-end);opacity:0;transform:translate(-50%,-50%)scale(.82)}}.pid-target-run-label{z-index:4;color:var(--pid-dim);letter-spacing:.08em;opacity:0;animation:6.4s linear infinite pid-target-run-label;animation-delay:var(--pid-run-delay);font:600 8px/1 DM Mono,monospace;position:absolute;top:calc(53% - 42px)}.pid-target-run-label-one{--pid-run-delay:0s;left:73%}.pid-target-run-label-two{color:var(--pid-amber);--pid-run-delay:-1.6s;left:79%}.pid-target-run-label-three{--pid-run-delay:-3.2s;left:75%}.pid-target-run-label-four{--pid-run-delay:-4.8s;left:81%}.pid-target-run-caption{color:var(--pid-muted);text-align:center;font:10px/1.35 DM Mono,monospace;position:absolute;bottom:13px;left:14px;right:14px}@keyframes pid-target-run-label{0%,65%{opacity:0;transform:translateY(3px)}72%,88%{opacity:1;transform:translateY(0)}96%,to{opacity:0;transform:translateY(-2px)}}@media (max-width:560px){.pid-problem-options{grid-template-columns:1fr}.pid-problem-option{min-height:0}.pid-target-run-scene{min-height:184px}}@media (prefers-reduced-motion:reduce){.pid-target-run,.pid-target-run-label,.pid-problem-signal,.pid-problem-robot{animation:none}.pid-target-run{left:var(--pid-run-end);opacity:.8}.pid-target-run-label{opacity:1;transform:none}}.pid-trial-content,.pid-error-content,.pid-correction-content{gap:22px;display:grid}.pid-trial-lead,.pid-error-lead,.pid-correction-lead{grid-template-columns:minmax(0,1fr) minmax(230px,.62fr);align-items:start;gap:28px;display:grid}.pid-trial-lead h3,.pid-error-lead h3,.pid-correction-lead h3{color:var(--pid-ink);letter-spacing:-.04em;margin:9px 0 0;font-size:clamp(23px,3.2vw,34px);line-height:1.06}.pid-trial-lead p,.pid-error-lead p,.pid-correction-lead p{max-width:570px;color:var(--pid-muted);margin:12px 0 0;font-size:13px;line-height:1.55}.pid-trial-lead>div:first-child>span,.pid-error-lead>div:first-child>span,.pid-correction-lead>div:first-child>span,.pid-trial-workbench>span,.pid-correction-workbench>span,.pid-error-example>span,.pid-error-note>span,.pid-trial-reflection>span,.pid-correction-reflection>span{color:var(--pid-amber);letter-spacing:.12em;text-transform:uppercase;font:600 9px/1.25 DM Mono,monospace}.pid-trial-principle,.pid-error-equation,.pid-correction-rule{border-left:3px solid var(--pid-amber);background:var(--pid-amber-soft);gap:8px;padding:16px;display:grid}.pid-trial-principle strong,.pid-error-equation span,.pid-correction-rule span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.25 DM Mono,monospace}.pid-trial-principle span,.pid-error-equation small,.pid-correction-rule b{color:var(--pid-muted);font-size:12px;line-height:1.45}.pid-trial-grid,.pid-steering-grid{grid-template-columns:minmax(0,1.1fr) minmax(240px,.78fr);align-items:stretch;gap:18px;display:grid}.pid-walking-scene{border:1px solid var(--pid-line);background:linear-gradient(#182b2e 0%,#19292a 59%,#101a1b 60%,#11191a 100%);border-radius:12px;min-height:270px;position:relative;overflow:hidden}.pid-walking-scene:before{content:"";border-top:1px dashed #e4b34f40;position:absolute;top:22%;left:9%;right:9%}.pid-walking-floor{background:#c1d3c652;height:2px;position:absolute;bottom:39px;left:7%;right:7%;transform:rotate(-2deg)}.pid-walking-floor i{border:1px solid var(--pid-dim);background:var(--pid-bg-deep);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px}.pid-walking-floor i:first-child{left:0}.pid-walking-floor i:nth-child(2){left:47%}.pid-walking-floor i:nth-child(3){right:0}.pid-walking-label,.pid-walking-attempt{color:var(--pid-dim);letter-spacing:.1em;font:600 9px/1 DM Mono,monospace;position:absolute}.pid-walking-label{top:15px}.pid-walking-label-start{left:8%}.pid-walking-label-end{color:var(--pid-mint);right:8%}.pid-walking-attempt{opacity:0;animation:5.4s ease-in-out infinite pid-walking-attempt;top:28%}.pid-walking-attempt-one{left:34%}.pid-walking-attempt-two{color:var(--pid-amber);animation-delay:-1.8s;left:56%}.pid-walking-attempt-three{color:var(--pid-mint);animation-delay:-3.6s;left:73%}.pid-walking-caption{color:var(--pid-muted);text-align:center;font:10px/1.4 DM Mono,monospace;position:absolute;bottom:14px;left:15px;right:15px}.pid-baby{transform-origin:50% 100%;width:57px;height:108px;animation:5.4s ease-in-out infinite pid-baby-walk;position:absolute;bottom:43px;left:12%}.pid-baby-head{background:#e3bc8a;border:2px solid #18251f;border-radius:50%;width:30px;height:30px;position:absolute;top:0;left:14px;box-shadow:8px 2px 0 -2px #18251f}.pid-baby-body{background:var(--pid-mint);border:2px solid #19251f;border-radius:14px 14px 10px 10px;width:27px;height:42px;position:absolute;top:27px;left:16px}.pid-baby-arm,.pid-baby-leg{transform-origin:50% 4px;background:#e3bc8a;border:2px solid #19251f;border-radius:8px;width:8px;display:block;position:absolute}.pid-baby-arm{height:32px;top:32px}.pid-baby-arm-left{animation:1.3s ease-in-out infinite alternate pid-baby-arm-left;left:10px;transform:rotate(42deg)}.pid-baby-arm-right{animation:1.3s ease-in-out infinite alternate pid-baby-arm-right;right:7px;transform:rotate(-55deg)}.pid-baby-leg{height:38px;top:64px}.pid-baby-leg-left{animation:1.3s ease-in-out infinite alternate pid-baby-leg-left;left:18px;transform:rotate(17deg)}.pid-baby-leg-right{animation:1.3s ease-in-out infinite alternate pid-baby-leg-right;right:13px;transform:rotate(-20deg)}.pid-trial-workbench,.pid-correction-workbench{border:1px solid var(--pid-line-strong);background:#07111359;border-radius:12px;align-content:start;gap:13px;padding:19px;display:grid}.pid-trial-workbench h3,.pid-correction-workbench h3{color:var(--pid-ink);letter-spacing:-.03em;margin:0;font-size:22px;line-height:1.08}.pid-trial-workbench p,.pid-correction-workbench p{color:var(--pid-muted);margin:0;font-size:12px;line-height:1.5}.pid-trial-workbench .pid-next-button{margin-top:4px}.pid-trial-feedback{border-left:3px solid var(--pid-line-strong);background:#ffffff06;min-height:89px;padding:13px}.pid-trial-feedback.is-visible{border-left-color:var(--pid-mint);background:#8ac3a214}.pid-trial-feedback strong{color:var(--pid-ink);font-size:12px;line-height:1.35;display:block}.pid-trial-feedback small{color:var(--pid-muted);margin-top:7px;font-size:10px;line-height:1.4;display:block}.pid-trial-reflection,.pid-correction-reflection{border-top:1px solid var(--pid-line);gap:8px;padding:15px 0 0;display:grid}.pid-trial-reflection strong,.pid-correction-reflection strong{color:var(--pid-ink);font-size:15px;line-height:1.35}.pid-trial-reflection small,.pid-correction-reflection small{color:var(--pid-muted);font-size:11px;line-height:1.45}@keyframes pid-baby-walk{0%,10%{left:12%;transform:translateY(0)rotate(-4deg)}30%{left:35%;transform:translateY(2px)rotate(6deg)}43%{left:47%;transform:translateY(12px)rotate(-11deg)}57%{left:57%;transform:translateY(-1px)rotate(4deg)}82%,to{left:78%;transform:translateY(0)rotate(0)}}@keyframes pid-baby-arm-left{to{transform:rotate(-35deg)}}@keyframes pid-baby-arm-right{to{transform:rotate(28deg)}}@keyframes pid-baby-leg-left{to{transform:rotate(-19deg)}}@keyframes pid-baby-leg-right{to{transform:rotate(22deg)}}@keyframes pid-walking-attempt{0%,15%,to{opacity:0;transform:translateY(4px)}28%,58%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(-3px)}}.pid-error-equation{min-height:126px}.pid-error-equation strong{color:var(--pid-ink);font:600 clamp(17px,2vw,23px)/1.15 DM Mono,monospace}.pid-error-examples{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pid-error-example{border-top:2px solid var(--pid-amber);background:#ffffff05;align-content:start;gap:9px;min-width:0;padding:17px;display:grid}.pid-error-example h4{color:var(--pid-ink);margin:0;font-size:18px;line-height:1.15}.pid-error-example p,.pid-error-example>small{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.45}.pid-error-example>b{color:var(--pid-mint);font-size:13px}.pid-error-challenge{border-color:var(--pid-blue)}.pid-error-challenge>span{color:var(--pid-blue)}.pid-formula{border-left:3px solid var(--pid-mint);background:#8ac3a214;gap:5px;padding:12px;display:grid}.pid-formula small{color:var(--pid-dim);font:9px/1 DM Mono,monospace}.pid-formula strong{color:var(--pid-mint);font:600 19px/1.1 DM Mono,monospace}.pid-answer-options{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.pid-answer-options button{border:1px solid var(--pid-line);color:var(--pid-muted);text-align:left;cursor:pointer;background:#ffffff05;border-radius:8px;gap:5px;padding:10px 8px;display:grid}:is(.pid-answer-options button:hover,.pid-answer-options button:focus-visible,.pid-answer-options button.is-selected){border-color:var(--pid-amber);background:var(--pid-amber-soft)}.pid-answer-options strong{color:var(--pid-ink);font:600 17px/1 DM Mono,monospace}.pid-answer-options small{color:var(--pid-dim);font:9px/1 DM Mono,monospace}.pid-answer-feedback{border-left:3px solid var(--pid-coral);background:#e8897214;padding:10px}.pid-answer-feedback.is-correct{border-left-color:var(--pid-mint);background:#8ac3a214}.pid-answer-feedback strong{color:var(--pid-ink);font-size:11px;display:block}.pid-answer-feedback small{color:var(--pid-muted);margin-top:4px;font-size:10px;line-height:1.35;display:block}.pid-error-note{border-left:3px solid var(--pid-amber);background:var(--pid-amber-soft);gap:6px;padding:14px;display:grid}.pid-error-note strong{color:var(--pid-ink);font-size:14px}.pid-error-note small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-correction-rule strong{color:var(--pid-ink);font-size:14px}.pid-correction-rule b{color:var(--pid-mint);font-size:13px}.pid-steering-scene{border:1px solid var(--pid-line);background:linear-gradient(150deg,#192c2e 0%,#142427 62%,#0d181a 100%);border-radius:12px;min-height:320px;position:relative;overflow:hidden}.pid-steering-road{background:linear-gradient(90deg,#0000 0 18%,#c1d3c614 18% 20%,#0000 20% 80%,#c1d3c614 80% 82%,#0000 82%);height:78%;position:absolute;bottom:-25%;left:0;right:0;transform:perspective(200px)rotateX(12deg)}.pid-steering-road i{background:repeating-linear-gradient(#e4b34fa6 0 22px,#0000 22px 44px);width:2px;position:absolute;top:15%;bottom:0}.pid-steering-road i:first-child{left:34%}.pid-steering-road i:nth-child(2){left:50%}.pid-steering-road i:nth-child(3){left:66%}.pid-steering-car{background:var(--pid-mint);width:68px;height:112px;transform:translateX(-50%) rotate(var(--pid-steering-drift));transform-origin:50% 80%;border:2px solid #14211c;border-radius:23px 23px 17px 17px;animation:3.8s ease-in-out infinite pid-steering-sway;position:absolute;bottom:26%;left:50%;box-shadow:0 10px 18px #00000047}.pid-steering-car:before,.pid-steering-car:after{content:"";background:#17241f;border-radius:6px;width:38px;height:7px;position:absolute;left:13px}.pid-steering-car:before{top:15px}.pid-steering-car:after{bottom:15px}.pid-car-window{background:#8bb8d194;border:2px solid #1c302a;border-radius:11px;width:42px;height:27px;position:absolute;top:31px;left:11px}.pid-steering-car i{background:#41584d;border:2px solid #0c1515;border-radius:8px;width:14px;height:25px;position:absolute;bottom:-8px}.pid-steering-car i:nth-last-child(2){left:5px}.pid-steering-car i:last-child{right:5px}.pid-steering-wheel{width:86px;height:86px;transform:rotate(var(--pid-steering-correction));background:#070f116b;border:9px solid #c1d3c68c;border-radius:50%;animation:3.8s ease-in-out infinite pid-steering-wheel;position:absolute;top:26px;right:14%;box-shadow:inset 0 0 0 2px #e4b34f4d}.pid-steering-wheel i{background:var(--pid-amber);transform-origin:8px 2px;border-radius:4px;width:16px;height:5px;position:absolute;top:31px;left:31px}.pid-steering-wheel i:first-of-type{transform:rotate(30deg)}.pid-steering-wheel i:nth-of-type(2){transform:rotate(150deg)}.pid-steering-wheel span{background:var(--pid-amber);border-radius:50%;width:18px;height:18px;position:absolute;top:30px;left:30px}.pid-steering-hand{transform-origin:50% 100%;background:#e3bc8a;border:2px solid #17211b;border-radius:9px;width:13px;height:43px;position:absolute;top:15px}.pid-steering-hand-left{left:-13px;transform:rotate(31deg)}.pid-steering-hand-right{right:-13px;transform:rotate(-31deg)}.pid-steering-drift-label,.pid-steering-correction-label{border:1px solid var(--pid-line);color:var(--pid-ink);letter-spacing:.08em;background:#10191cd6;border-radius:5px;padding:6px 8px;font:600 9px/1 DM Mono,monospace;position:absolute}.pid-steering-drift-label{color:var(--pid-coral);top:47%;left:11%}.pid-steering-correction-label{color:var(--pid-mint);bottom:22%;right:11%}.pid-steering-caption{color:var(--pid-muted);text-align:center;font:10px/1.35 DM Mono,monospace;position:absolute;bottom:14px;left:14px;right:14px}@keyframes pid-steering-sway{0%,to{transform:translateX(-50%) rotate(calc(var(--pid-steering-drift) * .6))}50%{transform:translateX(-50%) rotate(var(--pid-steering-drift))}}@keyframes pid-steering-wheel{0%,to{transform:rotate(calc(var(--pid-steering-correction) * .6))}50%{transform:rotate(var(--pid-steering-correction))}}.pid-correction-workbench input[type=range]{width:100%;accent-color:var(--pid-amber)}.pid-correction-scale{color:var(--pid-dim);justify-content:space-between;font:9px/1 DM Mono,monospace;display:flex}.pid-correction-scale strong{color:var(--pid-amber)}.pid-correction-formula{border-top:1px solid var(--pid-line);border-bottom:1px solid var(--pid-line);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:13px 0;display:grid}.pid-correction-formula div{gap:5px;display:grid}.pid-correction-formula small{color:var(--pid-dim);letter-spacing:.1em;font:600 9px/1 DM Mono,monospace}.pid-correction-formula strong{color:var(--pid-ink);font:600 19px/1 DM Mono,monospace}.pid-correction-formula span{color:var(--pid-muted);font-size:10px}.pid-correction-formula>b{color:var(--pid-amber);font-size:17px}@media (max-width:820px){.pid-trial-lead,.pid-error-lead,.pid-correction-lead{grid-template-columns:1fr;gap:18px}.pid-trial-grid,.pid-steering-grid,.pid-error-examples{grid-template-columns:1fr}}@media (max-width:560px){.pid-walking-scene,.pid-steering-scene{min-height:235px}.pid-trial-workbench,.pid-correction-workbench{padding:14px}.pid-steering-wheel{transform:scale(.82) rotate(var(--pid-steering-correction));right:9%}.pid-steering-drift-label{left:7%}.pid-steering-correction-label{right:7%}.pid-error-example{padding:14px}}@media (prefers-reduced-motion:reduce){.pid-baby,.pid-baby-arm,.pid-baby-leg,.pid-walking-attempt,.pid-steering-car,.pid-steering-wheel{animation:none}.pid-baby{left:73%;transform:none}.pid-steering-car{transform:translateX(-50%) rotate(var(--pid-steering-drift))}.pid-steering-wheel{transform:rotate(var(--pid-steering-correction))}}.pid-line-intro-content{gap:20px}.pid-line-intro-copy{align-content:start;gap:20px;display:grid}.pid-light-lesson{border:1px solid var(--pid-line);background:#07101261;border-radius:11px;gap:12px;padding:15px;display:grid}.pid-light-lesson>span{color:var(--pid-amber);letter-spacing:.12em;font:600 9px/1.2 DM Mono,monospace}.pid-light-lesson>p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.48}.pid-light-diagram{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pid-light-diagram>div{border:1px solid var(--pid-line);background:#ffffff06;border-radius:8px;min-height:145px;padding:12px;position:relative;overflow:hidden}.pid-light-diagram>div>strong{color:var(--pid-ink);letter-spacing:.1em;font:600 9px/1 DM Mono,monospace;position:absolute;bottom:12px;right:10px}.pid-light-diagram>div>small{color:var(--pid-muted);text-align:right;font:9px/1.35 DM Mono,monospace;position:absolute;bottom:28px;right:10px}.pid-light-surface{border-radius:3px;height:25px;position:absolute;bottom:19px;left:10%;right:10%}.pid-light-surface-black{background:#0b1215;box-shadow:0 0 0 1px #e8897229}.pid-light-surface-white{background:#dfe6d6;box-shadow:0 0 0 1px #e4b34f52}.pid-light-ray,.pid-light-return{background:var(--pid-coral);width:2px;position:absolute;left:33%;box-shadow:0 0 10px #e88972cc}.pid-light-ray{height:91px;top:12px}.pid-light-return{transform-origin:bottom;height:40px;bottom:43px}.pid-light-return-low{opacity:.28;transform:rotate(7deg)}.pid-light-return-high{opacity:1;transform:rotate(-5deg)}.pid-question-callout b{color:var(--pid-amber);margin-top:12px;font-size:12px;line-height:1.35;display:block}.pid-question-callout small+b+small{margin-top:5px}.pid-line-course{background:linear-gradient(#dfe5d4 0%,#c7d0bd 100%);border:1px solid #c1d3c629;border-radius:9px;min-height:306px;margin:21px 0 13px;position:relative;overflow:hidden}.pid-line-course:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#10191809 0 3px,#0000 3px 7px);position:absolute;inset:0}.pid-course-straight{background:#11191a;border-radius:10px;width:51%;height:18px;position:absolute;top:59%;left:5%;transform:rotate(-3deg);box-shadow:0 2px #080d0d59}.pid-course-curve{border:18px solid #11191a;border-color:#11191a #11191a #0000 #0000;border-radius:52%;width:48%;height:55%;position:absolute;top:25%;left:42%;transform:rotate(-17deg)}.pid-course-curve-inner{border-width:6px;border-color:#e4b34f59 #e4b34f59 #0000 #0000;width:30%;height:38%;top:38%;left:51%;transform:rotate(-17deg)}.pid-course-robot{z-index:3;background:var(--pid-mint);border:2px solid #15211d;border-radius:11px;width:55px;height:40px;animation:9s ease-in-out infinite pid-line-course-drive;position:absolute;top:56%;left:6%;transform:translate(-50%,-50%)rotate(-3deg);box-shadow:0 5px 12px #00000047}.pid-course-robot:before{content:"";background:#17231f;border-radius:50%;width:6px;height:6px;position:absolute;top:9px;left:15px;box-shadow:17px 0 #17231f}.pid-course-robot:after{content:"";background:var(--pid-amber);border:2px solid #15211d;border-radius:50%;width:9px;height:9px;position:absolute;bottom:5px;right:-6px}.pid-course-robot .pid-robot-wheel-one,.pid-course-robot .pid-robot-wheel-two{width:14px;height:14px;bottom:-7px}.pid-red-beam{background:var(--pid-coral);width:2px;height:47px;position:absolute;bottom:-43px;left:50%;transform:translate(-50%);box-shadow:0 0 11px #e88972f2}.pid-red-spot{top:65%;left:var(--pid-reflection-left);z-index:4;border:2px solid var(--pid-coral);width:25px;height:25px;box-shadow:0 0 0 6px #e8897214, 0 0 16px rgba(232,137,114,var(--pid-reflection-strength));background:#e889722e;border-radius:50%;transition:left .25s,box-shadow .25s;position:absolute;transform:translate(-50%,-50%)}.pid-course-label{z-index:2;color:#101918b8;letter-spacing:.09em;font:600 9px/1 DM Mono,monospace;position:absolute}.pid-course-label-edge{color:#76602a;top:35%;left:57%}.pid-course-caption{color:#101918bd;text-align:center;font:10px/1.35 DM Mono,monospace;position:absolute;bottom:13px;left:13px;right:13px}.pid-reflection-observation{border-left:3px solid var(--pid-coral);background:#e8897214;grid-template-columns:125px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.pid-reflection-observation div{gap:5px;display:grid}.pid-reflection-observation small{color:var(--pid-dim);letter-spacing:.1em;font:600 8px/1 DM Mono,monospace}.pid-reflection-observation strong{color:var(--pid-ink);font:600 12px/1.1 DM Mono,monospace}.pid-reflection-observation p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.4}.pid-line-edge-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px;display:grid}.pid-line-edge-guide>div{border-top:2px solid var(--pid-line-strong);gap:5px;padding:10px;display:grid}.pid-line-edge-guide>div:first-child{border-color:var(--pid-coral)}.pid-line-edge-guide>div:nth-child(2){border-color:var(--pid-amber)}.pid-line-edge-guide>div:nth-child(3){border-color:var(--pid-mint)}.pid-line-edge-guide span{color:var(--pid-dim);letter-spacing:.08em;font:600 8px/1.1 DM Mono,monospace}.pid-line-edge-guide strong{color:var(--pid-ink);font-size:11px;line-height:1.2}.pid-line-edge-guide small{color:var(--pid-muted);font-size:10px;line-height:1.35}@keyframes pid-line-course-drive{0%,10%{top:55%;left:18%;transform:translate(-50%,-50%)rotate(-1deg)}20%{top:52%;left:30%;transform:translate(-50%,-50%)rotate(1deg)}38%{top:49%;left:42%;transform:translate(-50%,-50%)rotate(-1deg)}56%{top:44%;left:55%;transform:translate(-50%,-50%)rotate(1deg)}70%{top:39%;left:67%;transform:translate(-50%,-50%)rotate(0)}82%{top:44%;left:75%;transform:translate(-50%,-50%)rotate(-1deg)}91%,to{top:55%;left:82%;transform:translate(-50%,-50%)rotate(1deg)}}@media (max-width:560px){.pid-light-diagram{grid-template-columns:1fr}.pid-light-diagram>div{min-height:122px}.pid-line-course{min-height:255px}.pid-line-edge-guide{grid-template-columns:1fr}.pid-reflection-observation{grid-template-columns:1fr;gap:7px}}@media (prefers-reduced-motion:reduce){.pid-course-robot{animation:none;top:49%;left:48%;transform:translate(-50%,-50%)rotate(-12deg)}.pid-red-spot{transition:none}}.pid-red-spot{width:22px;height:22px;opacity:var(--pid-reflection-strength);transition:opacity .25s,box-shadow .25s;top:auto;bottom:-54px;left:50%}.pid-line-course{background:linear-gradient(#c7d5c6 0%,#9bad9d 31%,#708477 31%,#53665d 100%);min-height:350px}.pid-course-horizon{border-top:1px solid #10191847;position:absolute;top:31%;left:0;right:0;box-shadow:0 14px 20px #1019181c}.pid-course-surface{clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);background:linear-gradient(#8c9f8e 0%,#66796b 36%,#45594f 100%);position:absolute;inset:31% 0 0;overflow:hidden}.pid-course-surface:before{content:"";transform-origin:top;background:repeating-linear-gradient(#e0e8d41c 0 1px,#0000 1px 24px),linear-gradient(90deg,#0000 0 49%,#e0e8d414 49.2% 49.5%,#0000 49.7% 100%);position:absolute;inset:0;transform:perspective(360px)rotateX(32deg)scale(1.35)}.pid-course-surface-grain{opacity:.28;background:radial-gradient(circle at 20% 20%,#ffffff29 0 1px,#0000 1.5px) 0 0/32px 25px,radial-gradient(circle at 70% 62%,#0a14122e 0 1px,#0000 1.5px) 0 0/41px 31px;position:absolute;inset:0}.pid-course-black-line{background:linear-gradient(#0b1213 0%,#11191a 58%,#1d2726 100%);border-radius:45% 48% 38% 42%;width:118%;height:31%;position:absolute;top:39%;left:-9%;transform:rotate(-2deg)skew(-5deg);box-shadow:0 5px 12px #060c0b61,inset 0 8px 12px #0003}.pid-course-black-line:after{content:"";background:#45594e7a;height:2px;position:absolute;inset:22% 0 auto;box-shadow:0 42px #45594e42,0 83px #45594e2b}.pid-course-robot{width:188px;height:112px;box-shadow:none;background:url(/pid-line-follower-robot.png) 50%/contain no-repeat;border:0;border-radius:0;animation:18s ease-in-out infinite pid-line-course-drive;top:43%;left:12%}.pid-course-robot:before,.pid-course-robot:after{display:none}.pid-course-robot{filter:drop-shadow(0 7px 5px #070f0d59)}.pid-red-beam{background:var(--pid-coral);transform-origin:top;height:82px;top:77%;bottom:auto;left:87%;transform:translate(-50%)rotate(2deg);box-shadow:0 0 12px #e88972eb}.pid-red-spot{width:29px;height:20px;opacity:var(--pid-reflection-strength);background:#f4534933;border:2px solid #f0645d;top:151px;bottom:auto;left:87%;transform:translate(-50%,-50%)rotate(-2deg);box-shadow:0 0 0 6px #e8897214,0 0 19px #e88972cc}.pid-red-spot i{content:"";border:1px solid #f86d5dad;border-radius:50%;animation:3.4s ease-in-out infinite pid-reflection-halo;position:absolute;inset:-7px}.pid-course-label-black{top:65%;left:14%}.pid-course-caption{bottom:11px}.pid-surface-marker{z-index:2;color:#e9f0ddb3;letter-spacing:.08em;font:600 8px/1 DM Mono,monospace;position:absolute}.pid-surface-marker-dark{top:76%;left:17%}.pid-surface-marker-edge{color:var(--pid-amber);top:56%;left:48%}@keyframes pid-reflection-halo{0%,to{opacity:.45;transform:scale(.72)}50%{opacity:1;transform:scale(1.28)}}@media (max-width:560px){.pid-line-course{min-height:320px}.pid-course-robot{width:155px;height:94px}.pid-red-beam{height:67px}.pid-red-spot{top:130px}.pid-course-label{font-size:8px}.pid-surface-marker{font-size:7px}}@media (prefers-reduced-motion:reduce){.pid-course-robot{animation:none;top:43%;left:48%;transform:translate(-50%,-50%)rotate(0)}.pid-red-spot i{opacity:.72;animation:none;transform:scale(.9)}}.pid-line-course{background:#fff;border-color:#131f1d33;min-height:350px}.pid-line-course:before{background:repeating-linear-gradient(0deg,#131f1d06 0 2px,#0000 2px 8px)}.pid-course-horizon{box-shadow:none;border-color:#131f1d29;top:28%}.pid-course-surface{clip-path:none;background:#fff;inset:28% 0 0;overflow:hidden}.pid-course-surface:before{background:repeating-linear-gradient(#131f1d0a 0 1px,#0000 1px 24px),linear-gradient(90deg,#0000 0 49%,#131f1d06 49.2% 49.5%,#0000 49.7% 100%);transform:none}.pid-course-surface-grain{opacity:.12}.pid-course-black-line{background:#080d0e;border-radius:3px;width:92%;height:24%;top:54%;left:4%;transform:none;box-shadow:0 4px #080d0d33,inset 0 3px #ffffff09}.pid-course-black-line:after{display:none}.pid-course-robot{width:188px;height:112px;animation:20s ease-in-out infinite pid-line-course-drive;top:55%;left:18%}.pid-red-spot{border-radius:50%;width:34px;height:22px;top:calc(72% + 34px);left:87%}.pid-wheel-contact-flash{z-index:5;background:#e4b34ff2;border-radius:50%;width:18px;height:8px;animation:1.4s ease-in-out infinite pid-contact-flash;position:absolute;top:91%;left:33%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #e4b34f2e,0 0 15px #e4b34fdb}.pid-wheel-contact-flash:after{content:"";border-top:1px solid #76602a80;width:max-content;position:absolute;top:8px;left:50%;transform:translate(-50%)}.pid-wheel-contact-flash b{color:#76602a;letter-spacing:.08em;font:600 7px/1 DM Mono,monospace;position:absolute;top:12px;left:50%;transform:translate(-50%)}.pid-course-label-black{color:#ffffffb3;top:80%;left:14%}.pid-course-label-white{top:38%;right:13%}.pid-course-label-edge{top:53%;left:47%}.pid-course-caption{color:#131f1dbd;bottom:11px}.pid-surface-marker{color:#131f1da3}.pid-surface-marker-dark{color:#ffffffb3;top:80%;left:17%}.pid-surface-marker-edge{top:55%;left:48%}.pid-surface-marker-light{top:39%;right:16%}.pid-scan-control{justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.pid-scan-control span{color:var(--pid-dim);letter-spacing:.1em;font:600 8px/1.2 DM Mono,monospace}.pid-scan-control button{color:var(--pid-amber);cursor:pointer;background:#e4b34f0f;border:1px solid #e4b34f7a;border-radius:999px;padding:7px 11px;font:600 9px/1 DM Mono,monospace}:is(.pid-scan-control button:hover,.pid-scan-control button:focus-visible){background:#e4b34f24}@keyframes pid-contact-flash{0%,to{opacity:.55;transform:translate(-50%,-50%)scale(.78)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.12)}}@media (max-width:560px){.pid-course-robot{width:155px;height:94px}.pid-red-beam{height:28px}.pid-red-spot{top:calc(72% + 28px)}.pid-scan-control{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.pid-wheel-contact-flash{opacity:.85;animation:none}.pid-course-robot{animation:none;top:49%;left:50%;transform:translate(-50%,-50%)rotate(0)}.pid-red-spot i{opacity:.72;animation:none;transform:scale(.9)}}.pid-course-robot{top:var(--pid-robot-top);left:var(--pid-robot-left);width:220px;height:176px;transition:top .46s linear,left .46s linear;animation:none;transform:translate(-50%,-50%)rotate(0)}.pid-red-beam{height:44px;top:65.4%;left:10%;transform:translate(-50%)}.pid-red-spot{top:calc(65.4% + 44px);left:10%}.pid-wheel-contact-flash{top:88%;left:65%}.pid-drive-wheel-spin{z-index:4;width:96px;height:96px;animation:pid-wheel-roll var(--pid-wheel-spin-duration) linear infinite;background:repeating-conic-gradient(#070c0efa 0deg 12deg,#485252cc 12deg 18deg,#070c0efa 18deg 42deg);border:8px solid #19c5dceb;border-radius:50%;position:absolute;top:60%;left:65%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 5px #131b1ce6,0 1px 4px #080d0d47}.pid-drive-wheel-spin:before{content:"";background:#101718;border:2px solid #646e6ab3;border-radius:50%;position:absolute;inset:24px}.pid-drive-wheel-spin i{background:#27312f;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #bac3b147}.pid-edge-follow-status{border-left:3px solid var(--pid-mint);background:#50be8714;grid-template-columns:max-content max-content minmax(0,1fr);align-items:baseline;gap:9px;margin-top:10px;padding:10px 12px;display:grid}.pid-edge-follow-status span{color:var(--pid-mint);letter-spacing:.1em;font:600 8px/1.1 DM Mono,monospace}.pid-edge-follow-status strong{color:var(--pid-ink);letter-spacing:.04em;font:600 10px/1.1 DM Mono,monospace}.pid-edge-follow-status small{color:var(--pid-muted);font-size:10px;line-height:1.35}@keyframes pid-wheel-roll{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@media (max-width:560px){.pid-edge-follow-status{grid-template-columns:1fr;gap:5px}.pid-course-robot{width:180px;height:144px}.pid-red-beam{height:39px;top:72.3%}.pid-red-spot{top:calc(72.3% + 39px)}.pid-drive-wheel-spin{border-width:6px;width:78px;height:78px;top:60%;left:65%}.pid-drive-wheel-spin:before{inset:19px}}@media (prefers-reduced-motion:reduce){.pid-course-robot{transition:none}.pid-drive-wheel-spin{animation:none}.pid-edge-follow-status{transition:none}}.pid-notice-content{grid-template-columns:1fr;gap:18px}.pid-notice-story-card{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130b8,#0f1a1cbd);border-radius:12px;padding:18px 20px}.pid-notice-story-card h3{font-size:clamp(25px,3vw,34px)}.pid-notice-story-card p{max-width:780px;margin-top:12px;font-size:14px}.pid-line-lab{padding:16px}.pid-lab-heading{align-items:baseline;margin:0 2px 9px}.pid-lab-heading b{color:var(--pid-dim);letter-spacing:.08em;font-size:9px}.pid-course-live-reading{z-index:6;text-align:right;background:#ffffffe6;border:1px solid #131f1d33;border-radius:9px;gap:3px;min-width:118px;padding:8px 10px;display:grid;position:absolute;top:13px;right:15px;box-shadow:0 4px 12px #131f1d1a}.pid-course-live-reading span{color:#131f1d94;letter-spacing:.1em;font:600 8px/1 DM Mono,monospace}.pid-course-live-reading strong{color:#18221e;letter-spacing:-.04em;font:700 clamp(21px,3vw,30px)/1 DM Mono,monospace}.pid-reflection-observation{margin-top:9px;padding:10px 12px}.pid-edge-follow-status{margin-top:8px;padding:9px 11px}.pid-readout-row{margin-top:12px}.pid-line-edge-guide{margin-top:6px}.pid-notice-context{gap:16px}.pid-light-lesson{padding:14px}.pid-light-diagram>div{min-height:128px}@media (max-width:560px){.pid-notice-content{gap:14px}.pid-notice-story-card{padding:15px}.pid-notice-story-card h3{font-size:25px}.pid-notice-story-card p{font-size:12px}.pid-line-lab{padding:12px}.pid-lab-heading{flex-direction:column;align-items:flex-start;gap:5px}.pid-line-course{min-height:300px}.pid-course-live-reading{min-width:104px;padding:7px 8px;top:10px;right:10px}.pid-course-live-reading strong{font-size:22px}}.pid-gyro-lab-heading span,.pid-gyro-note>span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.1 DM Mono,monospace}.pid-gyro-lab{gap:10px;margin:16px 0 14px;display:grid}.pid-gyro-lab-heading{justify-content:space-between;align-items:baseline;gap:12px;padding:0 2px;display:flex}.pid-gyro-lab-heading b{color:var(--pid-dim);letter-spacing:.08em;font:600 9px/1.1 DM Mono,monospace}.pid-gyro-scene{background:linear-gradient(#dfe6d9 0%,#c7d2c4 31%,#162323 31.5%,#0d1719 100%);border:1px solid #c1d3c62e;border-radius:11px;min-height:390px;position:relative;overflow:hidden}.pid-gyro-sky{background:repeating-linear-gradient(0deg,#131f1d0a 0 2px,#0000 2px 9px),linear-gradient(#edf1e6,#c9d4c6);height:32%;position:absolute;inset:0 0 auto}.pid-gyro-sky:after{content:"";background:#131f1d4d;height:1px;position:absolute;bottom:0;left:12%;right:12%;box-shadow:0 -7px #131f1d14}.pid-gyro-sky span{color:#131f1d8c;letter-spacing:.1em;font:600 8px/1 DM Mono,monospace;position:absolute;top:13px;left:15px}.pid-gyro-road{clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);background:linear-gradient(#223536 0%,#111c1e 58%,#0a1214 100%);position:absolute;inset:31% 0 0;overflow:hidden;box-shadow:inset 0 25px 45px #81c0a314}.pid-gyro-road-edge{background:linear-gradient(#e4b34fcc,#e4b34f24);width:2px;position:absolute;top:0;bottom:0;box-shadow:0 0 12px #e4b34f38}.pid-gyro-road-edge-left{transform-origin:top;left:41%;transform:skew(-14deg)}.pid-gyro-road-edge-right{transform-origin:top;right:41%;transform:skew(14deg)}.pid-gyro-target-line{background:repeating-linear-gradient(#82dbb1db 0 25px,#0000 25px 43px);width:3px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 12px #82dbb147}.pid-gyro-target-line span{color:#bfdfc7b8;letter-spacing:.09em;width:max-content;font:600 8px/1 DM Mono,monospace;position:absolute;top:43%;left:13px;transform:rotate(-2deg)}.pid-gyro-road-mark{background:#e4b34f8c;border-radius:999px;width:4px;height:12px;position:absolute;left:50%;transform:translate(-50%)}.pid-gyro-road-mark-one{top:19%}.pid-gyro-road-mark-two{opacity:.7;height:20px;top:42%}.pid-gyro-road-mark-three{opacity:.9;height:30px;top:70%}.pid-gyro-heading-ray{z-index:3;width:3px;height:24%;transform:translateX(-50%) rotate(var(--pid-gyro-yaw));transform-origin:bottom;background:linear-gradient(#0000,#e88972e0);border-radius:999px;transition:transform .46s linear;position:absolute;bottom:14%;left:50%;box-shadow:0 0 12px #e8897257}.pid-gyro-robot-wrap{bottom:calc(4% + (var(--pid-gyro-progress) * 56%));left:calc(50% + var(--pid-gyro-offset));z-index:4;width:184px;transform:translateX(-50%) scale(calc(1 - (var(--pid-gyro-progress) * .52))) rotate(var(--pid-gyro-yaw));transform-origin:bottom;filter:drop-shadow(0 10px 9px #040a0b59);transition:left .46s linear,bottom .46s linear,transform .46s linear;position:absolute}.pid-gyro-robot-wrap:after{content:"";filter:blur(4px);height:10px;transform:rotate(calc(var(--pid-gyro-yaw) * -1));background:#040a0b52;border-radius:50%;position:absolute;bottom:-2px;left:12%;right:12%}.pid-gyro-robot-wrap img{z-index:1;width:100%;height:auto;display:block;position:relative}.pid-gyro-live-readout{z-index:6;background:#ffffffe0;border:1px solid #131f1d33;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:246px;padding:10px 12px;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #131f1d1a}.pid-gyro-live-readout>div{gap:4px;display:grid}.pid-gyro-live-readout small{color:#131f1d8f;letter-spacing:.1em;font:600 8px/1 DM Mono,monospace}.pid-gyro-live-readout strong{color:#18221e;letter-spacing:-.04em;font:700 24px/1 DM Mono,monospace}.pid-gyro-live-readout span{color:#131f1d9e;font:9px/1.2 DM Mono,monospace}.pid-gyro-scene-caption{z-index:6;border-left:3px solid var(--pid-mint);background:#071012c7;gap:5px;max-width:260px;padding:10px 12px;display:grid;position:absolute;bottom:14px;left:14px}.pid-gyro-scene-caption strong{color:var(--pid-ink);font-size:12px;line-height:1.2}.pid-gyro-scene-caption span{color:var(--pid-muted);font-size:10px;line-height:1.35}.pid-gyro-note{border-left:3px solid var(--pid-amber);background:#e4b34f14;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:13px;padding:11px 13px;display:grid}.pid-gyro-note p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.42}@media (max-width:560px){.pid-gyro-scene{min-height:350px}.pid-gyro-lab-heading{flex-direction:column;align-items:flex-start;gap:5px}.pid-gyro-live-readout{gap:8px;width:calc(100% - 18px);min-width:0;padding:8px 9px;top:9px;right:9px}.pid-gyro-live-readout strong{font-size:21px}.pid-gyro-robot-wrap{width:148px}.pid-gyro-scene-caption{max-width:215px;bottom:10px;left:10px;right:10px}.pid-gyro-note{grid-template-columns:1fr;gap:6px}}@media (prefers-reduced-motion:reduce){.pid-gyro-heading-ray{transition:none;transform:translate(-50%)rotate(0)}.pid-gyro-robot-wrap{transition:none;bottom:22%;left:50%;transform:translate(-50%)scale(.72)}}.pid-sensor-lesson-content{gap:18px;display:grid}.pid-sensor-lesson-lead{grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);align-items:stretch;gap:12px;display:grid}.pid-sensor-lesson-lead .pid-notice-story-card{height:100%}.pid-sensor-lesson-question{background:#e4b34f12;border:1px solid #e4b34f47;border-radius:12px;align-content:center;gap:7px;padding:18px;display:grid}.pid-sensor-lesson-question span,.pid-sensor-next span,.pid-pid-context span,.pid-gyro-bridge span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.1 DM Mono,monospace}.pid-sensor-lesson-question strong,.pid-sensor-next strong,.pid-pid-context strong,.pid-gyro-bridge strong{color:var(--pid-ink);font-size:14px;line-height:1.25}.pid-sensor-lesson-question small,.pid-sensor-next small,.pid-pid-context small,.pid-gyro-bridge small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-sensor-lesson-content>.pid-mode-switch{margin-top:2px}.pid-sensor-next{border-left:3px solid var(--pid-mint);background:#50be8714;gap:6px;padding:14px 16px;display:grid}.pid-pid-context{border:1px solid var(--pid-line);background:#08121457;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.pid-pid-context>div{gap:6px;display:grid}.pid-pid-context button{color:var(--pid-amber);cursor:pointer;background:#e4b34f0f;border:1px solid #e4b34f73;border-radius:999px;flex:none;padding:8px 11px;font:600 9px/1.2 DM Mono,monospace}:is(.pid-pid-context button:hover,.pid-pid-context button:focus-visible){background:#e4b34f24}.pid-gyro-wheel-overlay{z-index:2;aspect-ratio:1;background:repeating-conic-gradient(from 0deg, #f0f8ed80 0 5deg, transparent 5deg 38deg);mix-blend-mode:screen;opacity:.72;pointer-events:none;border:1px solid #f0f8ed94;border-radius:50%;width:18%;animation:9.5s linear infinite pid-gyro-wheel-rotation;position:absolute;top:50.5%}.pid-gyro-wheel-overlay:after{content:"";background:#f0f8edc7;border-radius:50%;position:absolute;inset:42%;box-shadow:0 0 0 1px #131f1d73}.pid-gyro-wheel-overlay-left{left:2%}.pid-gyro-wheel-overlay-right{right:2%}.pid-gyro-wheel-overlay i{background:#f0f8eda6;width:1px;height:84%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pid-gyro-scene.is-paused .pid-gyro-wheel-overlay{animation-play-state:paused}@keyframes pid-gyro-wheel-rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:700px){.pid-sensor-lesson-lead{grid-template-columns:1fr}.pid-pid-context{flex-direction:column;align-items:flex-start}.pid-pid-context button{width:100%}}@media (prefers-reduced-motion:reduce){.pid-gyro-wheel-overlay{animation:none}}.pid-p-line-course{background:#fff}.pid-p-line-course:before{display:none}.pid-p-line-edge{z-index:1;background:#11191a;border-radius:4px;height:31px;top:54%;left:-8%;right:-8%;transform:translateY(-50%);box-shadow:0 2px #080d0d59}.pid-p-line-run-robot{z-index:3;filter:drop-shadow(0 6px 7px #040a0b45);width:142px;height:84px;position:absolute;top:36%;left:14%;transform:translate(-50%,-50%)}.pid-p-line-run-robot img{width:100%;height:auto;display:block;transform:rotateY(180deg)}.pid-p-line-run-wheel{z-index:4;background:repeating-conic-gradient(#070c0edb 0deg 12deg,#b0beb28c 12deg 17deg,#070c0edb 17deg 42deg);border:4px solid #19c5dcc7;border-radius:50%;width:51px;height:51px;animation:1.8s linear infinite pid-p-line-run-wheel-roll;position:absolute;top:69%;left:66%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 3px #131b1cdb,0 1px 4px #080d0d47}.pid-p-line-run-wheel:before{content:"";background:#101718;border:2px solid #646e6ab3;border-radius:50%;position:absolute;inset:13px}.pid-p-line-run-beam{background:var(--pid-coral);width:2px;height:29px;animation:1.15s ease-in-out infinite pid-p-line-sensor-flash;position:absolute;bottom:-4px;left:92%;box-shadow:0 0 10px #e88972f2}.pid-p-line-run-spot{border:2px solid var(--pid-coral);background:#e8897229;border-radius:50%;width:17px;height:17px;animation:1.15s ease-in-out infinite pid-p-line-sensor-flash;position:absolute;bottom:-13px;left:92%;transform:translate(-50%,50%);box-shadow:0 0 0 5px #e8897212,0 0 12px #e8897294}.pid-p-run.is-aggressive .pid-p-line-run-robot{animation:pid-p-line-run-aggressive var(--pid-p-run-duration) ease-in-out infinite}.pid-p-run.is-gentle .pid-p-line-run-robot{animation:pid-p-line-run-gentle var(--pid-p-run-duration) ease-in-out infinite}@keyframes pid-p-line-run-aggressive{0%,8%{top:36%;left:14%;transform:translate(-50%,-50%)}19%{top:28%;left:26%;transform:translate(-50%,-50%)}31%{top:42%;left:39%;transform:translate(-50%,-50%)}44%{top:25%;left:52%;transform:translate(-50%,-50%)}57%{top:43%;left:65%;transform:translate(-50%,-50%)}71%{top:27%;left:78%;transform:translate(-50%,-50%)}85%{top:41%;left:88%;transform:translate(-50%,-50%)}92%,to{top:33%;left:91%;transform:translate(-50%,-50%)}}@keyframes pid-p-line-run-gentle{0%,8%{top:36%;left:14%;transform:translate(-50%,-50%)}22%{top:32%;left:28%;transform:translate(-50%,-50%)}38%{top:39%;left:43%;transform:translate(-50%,-50%)}54%{top:30%;left:58%;transform:translate(-50%,-50%)}70%{top:38%;left:73%;transform:translate(-50%,-50%)}86%{top:33%;left:86%;transform:translate(-50%,-50%)}92%,to{top:35%;left:91%;transform:translate(-50%,-50%)}}@keyframes pid-p-line-run-wheel-roll{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes pid-p-line-sensor-flash{0%,to{opacity:.72}50%{opacity:1}}.pid-p-gyro-course{background:linear-gradient(#dfe6d9 0%,#c7d2c4 31%,#162323 31.5%,#0d1719 100%)}.pid-p-gyro-run-robot{z-index:4;filter:drop-shadow(0 8px 8px #040a0b59);width:118px;position:absolute;bottom:3%;left:50%;transform:translate(-50%)}.pid-p-gyro-run-robot img{width:100%;height:auto;display:block}.pid-p-run.is-aggressive .pid-p-gyro-run-robot{animation:pid-p-gyro-run-aggressive var(--pid-p-run-duration) ease-in-out infinite}.pid-p-run.is-gentle .pid-p-gyro-run-robot{animation:pid-p-gyro-run-gentle var(--pid-p-run-duration) ease-in-out infinite}@keyframes pid-p-gyro-run-aggressive{0%,8%{bottom:3%;left:51%;transform:translate(-50%)scale(1)rotate(-2deg)}22%{bottom:20%;left:42%;transform:translate(-50%)scale(.88)rotate(-13deg)}38%{bottom:37%;left:59%;transform:translate(-50%)scale(.76)rotate(15deg)}54%{bottom:53%;left:40%;transform:translate(-50%)scale(.64)rotate(-17deg)}72%{bottom:68%;left:58%;transform:translate(-50%)scale(.51)rotate(13deg)}92%,to{bottom:82%;left:46%;transform:translate(-50%)scale(.4)rotate(-8deg)}}@keyframes pid-p-gyro-run-gentle{0%,8%{bottom:3%;left:51%;transform:translate(-50%)scale(1)rotate(-1deg)}22%{bottom:20%;left:47%;transform:translate(-50%)scale(.88)rotate(-5deg)}38%{bottom:37%;left:53%;transform:translate(-50%)scale(.76)rotate(5deg)}54%{bottom:53%;left:46%;transform:translate(-50%)scale(.64)rotate(-5deg)}72%{bottom:68%;left:52%;transform:translate(-50%)scale(.51)rotate(4deg)}92%,to{bottom:82%;left:49%;transform:translate(-50%)scale(.4)rotate(-2deg)}}.pid-p-wave i.pid-p-wave-draw{border-radius:0;width:auto;height:auto;animation:3.2s linear both pid-p-wave-draw-left;position:absolute;inset:0}.pid-p-wave i.pid-p-wave-draw b{width:100%;height:100%;display:block;position:absolute;inset:0}.pid-p-wave-scaled i.pid-p-wave-draw{animation-duration:2.4s}@keyframes pid-p-wave-draw-left{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (max-width:560px){.pid-p-line-run-robot{width:116px;height:69px}.pid-p-gyro-run-robot{width:94px}}@media (prefers-reduced-motion:reduce){.pid-p-line-run-robot,.pid-p-gyro-run-robot,.pid-p-line-run-wheel,.pid-p-line-run-beam,.pid-p-line-run-spot,.pid-p-wave i.pid-p-wave-draw{animation:none}}.pid-p-run-scene{height:232px}.pid-p-line-course{perspective:480px;background:repeating-linear-gradient(0deg,#15221f09 0 1px,#0000 1px 21px),linear-gradient(#eef2e8 0%,#c6d3c4 100%);overflow:hidden}.pid-p-line-course:before{z-index:0;content:"";clip-path:polygon(0 0,52% 0,70% 100%,0 100%);background:linear-gradient(90deg,#080e0f,#11191a 76%,#1a2422);position:absolute;inset:0;box-shadow:inset -12px 0 16px #0000002b}.pid-p-line-course:after{z-index:0;content:"";pointer-events:none;opacity:.46;background:repeating-linear-gradient(0deg,#0000 0 43px,#ffffff21 44px 45px);position:absolute;inset:0}.pid-p-line-edge{z-index:1;clip-path:polygon(51.7% 0,52.5% 0,70.5% 100%,69.4% 100%);opacity:.7;background:#e4b34fc7;border-radius:0;width:auto;height:auto;inset:0;transform:none;box-shadow:0 0 9px #e4b34f3d}.pid-p-line-horizon{z-index:1;background:#131f1d38;height:1px;position:absolute;top:10%;left:8%;right:8%;box-shadow:0 -6px #131f1d0f}.pid-p-line-run-robot{z-index:3;aspect-ratio:1061/848;transform-origin:50% 78%;filter:drop-shadow(0 8px 8px #040a0b4d);width:150px;animation:pid-p-line-front-run-aggressive var(--pid-p-run-duration) cubic-bezier(.45,.05,.55,.95) infinite;position:absolute;top:12%;left:54%;transform:translate(-50%,-50%)scale(.34)}.pid-p-run.is-gentle .pid-p-line-run-robot{animation-name:pid-p-line-front-run-gentle}.pid-p-line-run-robot img{object-fit:contain;width:100%;height:100%;display:block;transform:none}.pid-p-line-run-wheel{z-index:4;transform-origin:50%;background:#070c0e14;border:1px solid #0948504d;border-radius:46%;width:13%;height:56%;position:absolute;top:63%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #ffffff1a}.pid-p-line-wheel-left{left:7.2%}.pid-p-line-wheel-right{left:92.8%}.pid-p-line-run-wheel b{border-radius:inherit;animation:pid-p-line-wheel-tread var(--pid-wheel-spin-duration) linear infinite;background:repeating-linear-gradient(#02353d14 0 8px,#01171b8f 8px 11px,#28d2e114 11px 17px);display:block;position:absolute;inset:-18% 8%}.pid-p-line-wheel-right b{animation-duration:var(--pid-wheel-spin-duration-right)}.pid-p-run.is-aggressive .pid-p-line-run-wheel{animation:pid-p-line-wheel-steer-aggressive var(--pid-p-run-duration) ease-in-out infinite}.pid-p-run.is-gentle .pid-p-line-run-wheel{animation:pid-p-line-wheel-steer-gentle var(--pid-p-run-duration) ease-in-out infinite}.pid-p-line-run-beam{background:linear-gradient(#fff7c8 0%,#ff5c50 55%,#ff493e2e);width:3px;height:21%;animation:1s ease-in-out infinite pid-p-line-sensor-flash;inset:88% auto auto 50%;transform:translate(-50%);box-shadow:0 0 8px #ff5746eb,0 0 15px #ffdd81a8}.pid-p-line-run-spot{background:#ffe5962e;border:2px solid #ff6255;border-radius:50%;width:24px;height:15px;animation:1s ease-in-out infinite pid-p-line-sensor-flash;inset:109% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #ff5f4921,0 0 15px #ffd479e6}.pid-p-line-reading{z-index:5;text-align:right;background:#ffffffe0;border:1px solid #131f1d29;border-radius:8px;gap:2px;min-width:104px;padding:7px 9px;display:grid;position:absolute;top:13px;right:13px}.pid-p-line-reading span,.pid-p-line-reading small{color:#131f1d94;letter-spacing:.08em;font:600 7px/1.1 DM Mono,monospace}.pid-p-line-reading strong{color:#17231f;font:700 21px/1 DM Mono,monospace}@keyframes pid-p-line-front-run-aggressive{0%,7%{opacity:0;top:12%;left:54%;transform:translate(-50%,-50%)scale(.34)}14%{opacity:1}24%{top:28%;left:52%;transform:translate(-50%,-50%)scale(.48)}40%{top:44%;left:66%;transform:translate(-50%,-50%)scale(.63)}57%{top:60%;left:56%;transform:translate(-50%,-50%)scale(.78)}74%{top:75%;left:73%;transform:translate(-50%,-50%)scale(.94)}92%{opacity:1;top:89%;left:63%;transform:translate(-50%,-50%)scale(1.1)}to{opacity:0;top:94%;left:67%;transform:translate(-50%,-50%)scale(1.16)}}@keyframes pid-p-line-front-run-gentle{0%,7%{opacity:0;top:12%;left:54%;transform:translate(-50%,-50%)scale(.34)}14%{opacity:1}24%{top:28%;left:56%;transform:translate(-50%,-50%)scale(.48)}40%{top:44%;left:61%;transform:translate(-50%,-50%)scale(.63)}57%{top:60%;left:62%;transform:translate(-50%,-50%)scale(.78)}74%{top:75%;left:68%;transform:translate(-50%,-50%)scale(.94)}92%{opacity:1;top:89%;left:68%;transform:translate(-50%,-50%)scale(1.1)}to{opacity:0;top:94%;left:69%;transform:translate(-50%,-50%)scale(1.16)}}@keyframes pid-p-line-wheel-steer-aggressive{0%,7%{transform:translate(-50%,-50%)rotate(0)scaleX(1)}24%{transform:translate(-50%,-50%)rotate(-4deg)scaleX(.9)}40%{transform:translate(-50%,-50%)rotate(5deg)scaleX(.88)}57%{transform:translate(-50%,-50%)rotate(-5deg)scaleX(.88)}74%{transform:translate(-50%,-50%)rotate(4deg)scaleX(.9)}92%,to{transform:translate(-50%,-50%)rotate(-2deg)scaleX(.95)}}@keyframes pid-p-line-wheel-steer-gentle{0%,7%{transform:translate(-50%,-50%)rotate(0)}24%{transform:translate(-50%,-50%)rotate(-2deg)scaleX(.96)}40%{transform:translate(-50%,-50%)rotate(2deg)scaleX(.96)}57%{transform:translate(-50%,-50%)rotate(-2deg)scaleX(.96)}74%{transform:translate(-50%,-50%)rotate(2deg)scaleX(.96)}92%,to{transform:translate(-50%,-50%)rotate(-1deg)}}@keyframes pid-p-line-wheel-tread{0%{background-position:0 0}to{background-position:0 34px}}.pid-p-gyro-run-robot{width:118px;animation-timing-function:cubic-bezier(.45,.05,.55,.95);bottom:3%;left:50%}.pid-p-run.is-aggressive .pid-p-gyro-run-robot{animation-name:pid-p-gyro-run-aggressive-real}.pid-p-run.is-gentle .pid-p-gyro-run-robot{animation-name:pid-p-gyro-run-gentle-real}.pid-p-gyro-wheel{z-index:5;aspect-ratio:1;background:repeating-conic-gradient(from 0deg, #f0f8ed85 0 5deg, transparent 5deg 36deg);mix-blend-mode:screen;opacity:.7;width:18%;animation:pid-p-gyro-wheel-spin var(--pid-wheel-spin-duration) linear infinite;border:1px solid #f0f8ed99;border-radius:50%;position:absolute;top:54%}.pid-p-gyro-wheel:after{content:"";background:#f0f8edc7;border-radius:50%;position:absolute;inset:41%;box-shadow:0 0 0 1px #131f1d6b}.pid-p-gyro-wheel-left{left:2.5%}.pid-p-gyro-wheel-right{animation-duration:var(--pid-wheel-spin-duration-right);animation-direction:reverse;right:2.5%}@keyframes pid-p-gyro-run-aggressive-real{0%,7%{opacity:0;bottom:3%;left:50%;transform:translate(-50%)scale(1)rotate(0)}14%{opacity:1}26%{bottom:22%;left:46%;transform:translate(-50%)scale(.85)rotate(-3deg)}44%{bottom:40%;left:54%;transform:translate(-50%)scale(.71)rotate(4deg)}62%{bottom:58%;left:46.5%;transform:translate(-50%)scale(.58)rotate(-3deg)}80%{bottom:73%;left:53%;transform:translate(-50%)scale(.47)rotate(2.5deg)}94%{opacity:1;bottom:83%;left:49%;transform:translate(-50%)scale(.39)rotate(-1deg)}to{opacity:0;bottom:86%;left:50%;transform:translate(-50%)scale(.36)rotate(0)}}@keyframes pid-p-gyro-run-gentle-real{0%,7%{opacity:0;bottom:3%;left:50%;transform:translate(-50%)scale(1)rotate(0)}14%{opacity:1}26%{bottom:22%;left:48.5%;transform:translate(-50%)scale(.85)rotate(-1.2deg)}44%{bottom:40%;left:51.5%;transform:translate(-50%)scale(.71)rotate(1.3deg)}62%{bottom:58%;left:49%;transform:translate(-50%)scale(.58)rotate(-1deg)}80%{bottom:73%;left:51%;transform:translate(-50%)scale(.47)rotate(.8deg)}94%{opacity:1;bottom:83%;left:50%;transform:translate(-50%)scale(.39)rotate(0)}to{opacity:0;bottom:86%;left:50%;transform:translate(-50%)scale(.36)rotate(0)}}@keyframes pid-p-gyro-wheel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:560px){.pid-p-run-scene{height:210px}.pid-p-line-run-robot{width:128px}.pid-p-line-reading{min-width:94px;top:9px;right:9px}.pid-p-gyro-run-robot{width:98px}}@media (prefers-reduced-motion:reduce){.pid-p-line-run-robot,.pid-p-line-run-wheel,.pid-p-line-run-wheel b,.pid-p-line-run-beam,.pid-p-line-run-spot,.pid-p-gyro-run-robot,.pid-p-gyro-wheel{animation:none}.pid-p-line-run-robot{opacity:1;top:63%;left:63%;transform:translate(-50%,-50%)scale(.8)}.pid-p-gyro-run-robot{opacity:1;bottom:46%;left:50%;transform:translate(-50%)scale(.65)}}.pid-p-wave-chart{background:repeating-linear-gradient(90deg,#0000 0 40px,#c1d3c612 41px),repeating-linear-gradient(#0000 0 41px,#c1d3c612 42px),#091416}.pid-p-wave-aggressive,.pid-p-wave-scaled{animation:none}.pid-p-wave i.pid-p-wave-draw{box-shadow:none;background:0 0;animation:6.4s linear both pid-p-wave-draw-left}.pid-p-wave i.pid-p-wave-draw b{background:#8bbad2;box-shadow:0 0 7px #8bbad257}.pid-p-wave-scaled i.pid-p-wave-draw{animation-duration:5.8s;animation-delay:.35s}.pid-p-wave-scaled i.pid-p-wave-draw b{background:#e88972;box-shadow:0 0 7px #e8897257}.pid-integral-content{gap:18px;display:grid}.pid-i-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pid-i-progress button{border:1px solid var(--pid-line);min-height:70px;color:var(--pid-muted);text-align:left;cursor:pointer;background:#08121447;border-radius:10px;gap:7px;padding:10px 12px;transition:border-color .2s,background .2s,color .2s,transform .2s;display:grid}:is(.pid-i-progress button:hover,.pid-i-progress button:focus-visible){color:var(--pid-ink);border-color:#e4b34f8a;transform:translateY(-1px)}.pid-i-progress button.is-active{color:var(--pid-ink);background:#e4b34f1f;border-color:#e4b34fbd}.pid-i-progress button.is-complete{color:var(--pid-mint);border-color:#50be876b}.pid-i-progress span,.pid-i-story-card>span,.pid-i-question-card>span,.pid-i-stage-lead>div>span,.pid-i-equation-card>span,.pid-i-history-copy>span,.pid-i-memory-note>span,.pid-i-scale-copy>span,.pid-i-formula-bridge>span,.pid-i-code-explanation>span,.pid-i-stage-footer>span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.15 DM Mono,monospace}.pid-i-progress strong{color:inherit;font-size:12px;line-height:1.2}.pid-i-stage{gap:16px;display:grid}.pid-i-lead-grid,.pid-i-stage-lead{grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);align-items:stretch;gap:14px;display:grid}.pid-i-story-card,.pid-i-question-card,.pid-i-equation-card{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130b8,#0f1a1cbd);border-radius:12px;padding:18px}.pid-i-story-card{align-content:start;gap:10px;display:grid}.pid-i-story-card h3,.pid-i-stage-lead h3{color:var(--pid-ink);letter-spacing:-.04em;margin:0;font-size:clamp(24px,3vw,36px);line-height:1.04}.pid-i-story-card p,.pid-i-stage-lead p{max-width:680px;color:var(--pid-muted);margin:0;font-size:13px;line-height:1.5}.pid-i-question-card{background:#e4b34f12;border-color:#e4b34f4d;align-content:center;gap:10px;display:grid}.pid-i-question-card strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-i-question-card small,.pid-i-equation-card small,.pid-i-code-explanation p,.pid-i-code-explanation small{color:var(--pid-muted);font-size:11px;line-height:1.45}.pid-i-answer-buttons,.pid-i-ki-buttons,.pid-i-history-controls{flex-wrap:wrap;gap:8px;display:flex}.pid-i-answer-buttons button,.pid-i-ki-buttons button,.pid-i-history-controls button{color:var(--pid-muted);cursor:pointer;background:#08121457;border:1px solid #c1d3c63d;border-radius:999px;padding:9px 11px;font:600 10px/1.15 DM Mono,monospace;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.pid-i-answer-buttons button:hover,.pid-i-answer-buttons button:focus-visible,.pid-i-ki-buttons button:hover,.pid-i-ki-buttons button:focus-visible,.pid-i-history-controls button:hover,.pid-i-history-controls button:focus-visible){color:var(--pid-ink);border-color:#e4b34f9e;transform:translateY(-1px)}.pid-i-answer-buttons button.is-selected,.pid-i-ki-buttons button.is-selected{border-color:var(--pid-amber);color:var(--pid-ink);background:#e4b34f29}.pid-i-history-controls button:first-child{color:var(--pid-mint);background:#50be8714;border-color:#50be877a}.pid-i-history-controls button:disabled{cursor:default;opacity:.5;transform:none}.pid-i-human-robot-bridge{border-left:3px solid var(--pid-mint);background:#50be8714;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);align-items:center;gap:12px;padding:14px 16px;display:grid}.pid-i-human-robot-bridge>div{gap:5px;display:grid}.pid-i-human-robot-bridge>div>span{color:var(--pid-mint);letter-spacing:.1em;font:600 9px/1.1 DM Mono,monospace}.pid-i-human-robot-bridge strong{color:var(--pid-ink);font-size:14px;line-height:1.2}.pid-i-human-robot-bridge small{color:var(--pid-muted);font-size:11px;line-height:1.3}.pid-i-human-robot-bridge>b{color:var(--pid-amber);font:700 22px/1 DM Mono,monospace}.pid-i-stage-lead>div:first-child{align-content:center;gap:9px;padding:4px 2px;display:grid}.pid-i-equation-card{background:#e4b34f12;border-color:#e4b34f57;align-content:center;gap:10px;display:grid}.pid-i-equation-card strong,.pid-i-formula-bridge strong{color:var(--pid-ink);font:600 clamp(18px,2vw,25px)/1.15 DM Mono,monospace}.pid-i-history-lab{border:1px solid var(--pid-line);background:#08121461;border-radius:12px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:14px;padding:16px;display:grid}.pid-i-history-copy{align-content:start;gap:10px;display:grid}.pid-i-history-copy h3{color:var(--pid-ink);margin:0;font-size:23px;line-height:1.1}.pid-i-history-copy p{color:var(--pid-muted);margin:0;font-size:12px;line-height:1.45}.pid-i-total-readout{border-left:3px solid var(--pid-mint);background:#50be8714;gap:5px;margin-top:4px;padding:13px;display:grid}.pid-i-total-readout small{color:var(--pid-mint);letter-spacing:.1em;font:600 8px/1.1 DM Mono,monospace}.pid-i-total-readout strong{color:var(--pid-ink);font:700 34px/1 DM Mono,monospace}.pid-i-total-readout span{color:var(--pid-muted);font-size:10px}.pid-i-history-table{border:1px solid var(--pid-line);background:#040c0e66;border-radius:10px;align-self:stretch;overflow:hidden}.pid-i-history-table-head,.pid-i-history-row{grid-template-columns:.6fr 1fr 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.pid-i-history-table-head{color:var(--pid-dim);border-bottom:1px solid var(--pid-line);letter-spacing:.08em;font:600 8px/1.1 DM Mono,monospace}.pid-i-history-row{border-bottom:1px solid #c1d3c61a;animation:.35s both pid-i-row-in}.pid-i-history-row:last-child{border-bottom:0}.pid-i-history-row span{color:var(--pid-dim);font:600 10px/1 DM Mono,monospace}.pid-i-history-row strong{color:var(--pid-coral);font:700 15px/1 DM Mono,monospace}.pid-i-history-row b{color:var(--pid-ink);font:700 15px/1 DM Mono,monospace}.pid-i-history-empty{min-height:150px;color:var(--pid-muted);text-align:center;place-items:center;padding:20px;font-size:11px;line-height:1.4;display:grid}@keyframes pid-i-row-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.pid-i-memory-note,.pid-i-formula-bridge{border-left:3px solid var(--pid-amber);background:#e4b34f14;gap:6px;padding:13px 15px;display:grid}.pid-i-memory-note strong,.pid-i-formula-bridge strong{font-size:15px}.pid-i-memory-note small,.pid-i-formula-bridge small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-i-scale-lab{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130b8,#0f1a1cbd);border-radius:12px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:16px;padding:17px;display:grid}.pid-i-scale-copy{align-content:center;gap:10px;display:grid}.pid-i-scale-copy h3{color:var(--pid-ink);margin:0;font-size:25px;line-height:1.08}.pid-i-scale-copy p{color:var(--pid-muted);margin:0;font-size:12px;line-height:1.45}.pid-i-scale-copy code{border-left:3px solid var(--pid-coral);color:var(--pid-ink);background:#040c0e8a;padding:10px 11px;font:11px/1.45 DM Mono,monospace;display:block;overflow-x:auto}.pid-i-scale-visual{border:1px solid var(--pid-line);background:#040c0e6b;border-radius:10px;align-content:center;gap:14px;padding:14px;display:grid}.pid-i-scale-bar{grid-template-columns:110px 1fr max-content;align-items:center;gap:10px;display:grid}.pid-i-scale-bar span{color:var(--pid-dim);letter-spacing:.08em;font:600 8px/1.1 DM Mono,monospace}.pid-i-scale-bar i{background:linear-gradient(90deg,#e88972d9,#e8897257);border-radius:3px;height:15px;transition:width .5s;display:block}.pid-i-scale-bar.is-scaled i{background:linear-gradient(90deg,#82dbb1db,#82dbb15c)}.pid-i-scale-bar b{color:var(--pid-ink);font:700 12px/1 DM Mono,monospace}.pid-i-scale-result{border-top:1px solid var(--pid-line);gap:5px;margin-top:2px;padding-top:12px;display:grid}.pid-i-scale-result small{color:var(--pid-amber);letter-spacing:.1em;font:600 8px/1.1 DM Mono,monospace}.pid-i-scale-result strong{color:var(--pid-ink);font:700 27px/1 DM Mono,monospace}.pid-i-scale-result span{color:var(--pid-muted);font-size:10px}.pid-i-code-lesson{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:14px;display:grid}.pid-i-code-block{border:1px solid var(--pid-line);background:#071113;border-radius:11px;gap:8px;padding:15px;display:grid}.pid-i-code-block>div{background:#c1d3c60b;border-left:3px solid #c1d3c638;gap:6px;padding:10px;transition:border-color .25s,background .25s;display:grid}.pid-i-code-block>div.is-highlighted{border-color:var(--pid-mint);background:#50be871a}.pid-i-code-block span{color:var(--pid-dim);letter-spacing:.1em;font:600 8px/1.1 DM Mono,monospace}.pid-i-code-block code{color:var(--pid-ink);font:600 13px/1.3 DM Mono,monospace}.pid-i-code-block small{color:var(--pid-muted);font-size:10px;line-height:1.35}.pid-i-code-explanation{background:#e4b34f12;border:1px solid #e4b34f47;border-radius:11px;align-content:center;gap:9px;padding:17px;display:grid}.pid-i-code-explanation strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-i-code-explanation p{margin:0}.pid-i-code-explanation code{color:var(--pid-ink);font:600 11px/1.3 DM Mono,monospace}.pid-i-final-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:2px;display:grid}.pid-i-final-map div{border:1px solid var(--pid-line);background:#0812144d;gap:5px;padding:9px;display:grid}.pid-i-final-map b{color:var(--pid-amber);font:700 19px/1 DM Mono,monospace}.pid-i-final-map span{color:var(--pid-muted);font-size:10px;line-height:1.25}.pid-i-stage-footer{border-top:1px solid var(--pid-line);grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:12px;padding-top:14px;display:grid}.pid-i-stage-footer strong{color:var(--pid-ink);font-size:14px;line-height:1.25}.pid-i-stage-footer .pid-next-button{margin-left:auto}@media (max-width:760px){.pid-i-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-i-lead-grid,.pid-i-stage-lead,.pid-i-history-lab,.pid-i-scale-lab,.pid-i-code-lesson{grid-template-columns:1fr}.pid-i-stage-footer{grid-template-columns:1fr;gap:8px}.pid-i-stage-footer .pid-next-button{width:100%;margin-left:0}}@media (max-width:520px){.pid-i-progress button{min-height:62px;padding:9px}.pid-i-story-card,.pid-i-question-card,.pid-i-equation-card,.pid-i-scale-lab{padding:14px}.pid-i-human-robot-bridge{grid-template-columns:1fr;gap:8px}.pid-i-human-robot-bridge>b{justify-self:center;transform:rotate(90deg)}.pid-i-history-table-head,.pid-i-history-row{grid-template-columns:.55fr 1fr 1fr;padding:9px}.pid-i-scale-bar{grid-template-columns:92px 1fr max-content;gap:7px}.pid-i-scale-bar span{font-size:7px}.pid-i-final-map{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.pid-i-progress button,.pid-i-answer-buttons button,.pid-i-ki-buttons button,.pid-i-history-controls button{transition:none}.pid-i-history-row{animation:none}.pid-i-scale-bar i{transition:none}}.pid-problem-options{grid-template-columns:1fr}.pid-problem-option{grid-template-rows:auto auto;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);min-height:0}.pid-problem-option>span{grid-column:1/-1}.pid-problem-option strong{grid-column:1}.pid-problem-option small{grid-area:2/2;align-self:start}@media (max-width:560px){.pid-problem-option{grid-template-columns:1fr}.pid-problem-option>span,.pid-problem-option strong,.pid-problem-option small{grid-column:1}.pid-problem-option small{grid-row:auto}}.pid-sensor-code-lab{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130a8,#081214b8);border-radius:12px;gap:15px;margin-top:3px;padding:17px;display:grid}.pid-sensor-code-heading{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:18px;display:grid}.pid-sensor-code-heading>div:first-child{gap:8px;display:grid}.pid-sensor-code-heading span,.pid-sensor-pseudocode-head span,.pid-sensor-editor-head span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.15 DM Mono,monospace}.pid-sensor-code-heading h3{color:var(--pid-ink);letter-spacing:-.03em;margin:0;font-size:clamp(22px,3vw,32px);line-height:1.04}.pid-sensor-code-heading p{max-width:660px;color:var(--pid-muted);margin:0;font-size:12px;line-height:1.45}.pid-sensor-code-mode{border-left:3px solid var(--pid-mint);background:#50be8714;gap:5px;min-width:150px;padding:11px 12px;display:grid}.pid-sensor-code-mode b{color:var(--pid-mint);letter-spacing:.08em;font:600 10px/1.15 DM Mono,monospace}.pid-sensor-code-mode small{color:var(--pid-muted);font:10px/1.3 DM Mono,monospace}.pid-sensor-code-grid{grid-template-columns:minmax(220px,.82fr) minmax(0,1.18fr);gap:12px;display:grid}.pid-sensor-pseudocode,.pid-sensor-editor{border:1px solid var(--pid-line);background:#040c0e7a;border-radius:10px;min-width:0}.pid-sensor-pseudocode{align-content:start;gap:10px;padding:13px;display:grid}.pid-sensor-pseudocode-head,.pid-sensor-editor-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.pid-sensor-pseudocode-head b,.pid-sensor-editor-head b{color:var(--pid-dim);letter-spacing:.09em;font:600 8px/1.15 DM Mono,monospace}.pid-sensor-pseudocode ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pid-sensor-pseudocode li{background:#c1d3c609;border-left:2px solid #c1d3c62b;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;padding:7px 8px;display:grid}.pid-sensor-pseudocode li>span{color:var(--pid-dim);font:600 9px/1.3 DM Mono,monospace}.pid-sensor-pseudocode li p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.35}.pid-sensor-reference-note{border-left:3px solid var(--pid-amber);color:var(--pid-muted);background:#e4b34f12;margin-top:2px;padding:10px;font-size:10px;line-height:1.4}.pid-sensor-editor{align-content:start;gap:9px;padding:13px;display:grid}.pid-sensor-editor textarea{resize:vertical;width:100%;min-height:210px;color:var(--pid-ink);tab-size:4;background:#071113;border:1px solid #c1d3c640;border-radius:7px;outline:none;padding:12px;font:12px/1.5 DM Mono,monospace;transition:border-color .2s,box-shadow .2s,color .2s}.pid-sensor-editor textarea::placeholder{color:var(--pid-dim)}.pid-sensor-editor textarea:focus{border-color:var(--pid-amber);box-shadow:0 0 0 2px #e4b34f1f}.pid-sensor-editor.is-accepted textarea{color:#8fe0b1;border-color:#50be87cc;box-shadow:0 0 0 2px #50be871a}.pid-sensor-editor.is-accepted .pid-sensor-editor-head b,.pid-sensor-code-lab.is-accepted .pid-sensor-editor-head b{color:var(--pid-mint)}.pid-sensor-live-feedback{border-left:3px solid var(--pid-amber);background:#e4b34f17;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:9px;padding:10px 11px;display:grid}.pid-sensor-live-feedback strong{color:var(--pid-amber);letter-spacing:.08em;font:600 9px/1.2 DM Mono,monospace}.pid-sensor-live-feedback span{color:var(--pid-muted);font-size:10px;line-height:1.4}.pid-sensor-live-feedback.is-error{border-left-color:var(--pid-coral);background:#e889721a}.pid-sensor-live-feedback.is-error strong{color:var(--pid-coral)}.pid-sensor-live-feedback.is-accepted{border-left-color:var(--pid-mint);background:#50be871a}.pid-sensor-live-feedback.is-accepted strong{color:var(--pid-mint)}.pid-sensor-editor-actions{flex-wrap:wrap;gap:8px;display:flex}.pid-sensor-editor-actions button{border:1px solid var(--pid-line-strong);min-height:35px;color:var(--pid-muted);cursor:pointer;background:#c1d3c60a;border-radius:999px;padding:8px 11px;font:600 10px/1.15 DM Mono,monospace;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.pid-sensor-editor-actions button:hover,.pid-sensor-editor-actions button:focus-visible){border-color:var(--pid-amber);color:var(--pid-ink);background:#e4b34f1a;transform:translateY(-1px)}.pid-sensor-editor-actions .pid-check-button{border-color:var(--pid-amber);color:var(--pid-ink);background:#e4b34f26}.pid-sensor-editor-actions .pid-sensor-coach-button{color:var(--pid-mint);border-color:#8ac3a280}.pid-sensor-editor-actions button:disabled{cursor:wait;opacity:.6;transform:none}@media (max-width:760px){.pid-sensor-code-heading{grid-template-columns:1fr}.pid-sensor-code-mode{min-width:0}.pid-sensor-code-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.pid-sensor-editor textarea,.pid-sensor-editor-actions button{transition:none}}.pid-proportional-code-lab{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#20302bb8,#081214c2);border-radius:12px;gap:15px;margin-top:3px;padding:17px;display:grid}.pid-integral-code-lab{margin-top:14px}.pid-proportional-code-heading{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:18px;display:grid}.pid-proportional-code-heading>div:first-child{gap:8px;display:grid}.pid-proportional-code-heading span,.pid-proportional-pseudocode-head span,.pid-proportional-editor-head span,.pid-step-six-baseline span,.pid-step-seven-baseline span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.15 DM Mono,monospace}.pid-proportional-code-heading h3{color:var(--pid-ink);letter-spacing:-.03em;margin:0;font-size:clamp(22px,3vw,32px);line-height:1.04}.pid-proportional-code-heading p{max-width:690px;color:var(--pid-muted);margin:0;font-size:12px;line-height:1.45}.pid-proportional-code-mode{border-left:3px solid var(--pid-mint);background:#50be8714;gap:5px;min-width:150px;padding:11px 12px;display:grid}.pid-proportional-code-mode b{color:var(--pid-mint);letter-spacing:.08em;font:600 10px/1.15 DM Mono,monospace}.pid-proportional-code-mode small{color:var(--pid-muted);font:10px/1.3 DM Mono,monospace}.pid-proportional-tabs{border:1px solid var(--pid-line-strong);border-radius:999px;justify-self:start;gap:3px;padding:3px;display:inline-flex}.pid-proportional-tabs button{color:var(--pid-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 11px;font:600 10px/1.2 DM Mono,monospace}.pid-proportional-tabs button.is-selected{color:#161a16;background:var(--pid-amber)}.pid-proportional-code-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:12px;display:grid}.pid-proportional-pseudocode,.pid-proportional-editor,.pid-step-six-baseline,.pid-step-seven-baseline{border:1px solid var(--pid-line);background:#040c0e7a;border-radius:10px;min-width:0}.pid-proportional-pseudocode{align-content:start;gap:10px;padding:13px;display:grid}.pid-proportional-pseudocode-head,.pid-proportional-editor-head,.pid-step-six-baseline>div,.pid-step-seven-baseline>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.pid-proportional-pseudocode-head b,.pid-proportional-editor-head b,.pid-step-six-baseline b,.pid-step-seven-baseline b{color:var(--pid-dim);letter-spacing:.09em;font:600 8px/1.15 DM Mono,monospace}.pid-proportional-pseudocode ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pid-proportional-pseudocode li{background:#c1d3c609;border-left:2px solid #c1d3c62b;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;padding:7px 8px;display:grid}.pid-proportional-pseudocode li>span{color:var(--pid-dim);font:600 9px/1.3 DM Mono,monospace}.pid-proportional-pseudocode li p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.35}.pid-proportional-reference-note{border-left:3px solid var(--pid-amber);color:var(--pid-muted);background:#e4b34f12;margin-top:2px;padding:10px;font-size:10px;line-height:1.4}.pid-proportional-editor-wrap{align-content:start;gap:10px;display:grid}.pid-step-six-baseline,.pid-step-seven-baseline{padding:13px}.pid-step-six-baseline pre,.pid-step-seven-baseline pre{color:var(--pid-dim);gap:4px;margin:11px 0 0;font:10px/1.45 DM Mono,monospace;display:grid;overflow-x:auto}.pid-step-six-baseline code,.pid-step-seven-baseline code{white-space:pre;min-width:max-content;display:block}.pid-step-six-baseline code i,.pid-step-seven-baseline code i{color:#c1d3c659;width:24px;font-style:normal;display:inline-block}.pid-proportional-editor{align-content:start;gap:9px;padding:13px;display:grid}.pid-proportional-editor textarea{resize:vertical;width:100%;min-height:175px;color:var(--pid-ink);tab-size:4;background:#071113;border:1px solid #c1d3c640;border-radius:7px;outline:none;padding:12px;font:12px/1.5 DM Mono,monospace;transition:border-color .2s,box-shadow .2s,color .2s}.pid-proportional-editor textarea::placeholder{color:var(--pid-dim)}.pid-proportional-editor textarea:focus{border-color:var(--pid-amber);box-shadow:0 0 0 2px #e4b34f1f}.pid-proportional-editor.is-accepted textarea{color:#8fe0b1;border-color:#50be87cc;box-shadow:0 0 0 2px #50be871a}.pid-proportional-editor.is-accepted .pid-proportional-editor-head b{color:var(--pid-mint)}.pid-proportional-live-feedback{border-left:3px solid var(--pid-amber);background:#e4b34f17;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:9px;padding:10px 11px;display:grid}.pid-proportional-live-feedback strong{color:var(--pid-amber);letter-spacing:.08em;font:600 9px/1.2 DM Mono,monospace}.pid-proportional-live-feedback span{color:var(--pid-muted);font-size:10px;line-height:1.4}.pid-proportional-live-feedback.is-error{border-left-color:var(--pid-coral);background:#e889721a}.pid-proportional-live-feedback.is-error strong{color:var(--pid-coral)}.pid-proportional-live-feedback.is-accepted{border-left-color:var(--pid-mint);background:#50be871a}.pid-proportional-live-feedback.is-accepted strong,.pid-proportional-live-feedback.is-accepted span{color:var(--pid-mint)}@media (max-width:760px){.pid-proportional-code-heading{grid-template-columns:1fr}.pid-proportional-code-mode{min-width:0}.pid-proportional-code-grid{grid-template-columns:1fr}.pid-proportional-tabs{border-radius:10px;grid-template-columns:1fr;width:100%;display:grid}}@media (prefers-reduced-motion:reduce){.pid-proportional-editor textarea,.pid-proportional-tabs button{transition:none}}.pid-derivative-content{gap:18px;display:grid}.pid-d-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pid-d-progress button{border:1px solid var(--pid-line);min-height:70px;color:var(--pid-muted);text-align:left;cursor:pointer;background:#08121447;border-radius:10px;gap:7px;padding:10px 12px;transition:border-color .2s,background .2s,color .2s,transform .2s;display:grid}:is(.pid-d-progress button:hover,.pid-d-progress button:focus-visible){color:var(--pid-ink);border-color:#e4b34f8a;transform:translateY(-1px)}.pid-d-progress button.is-active{color:var(--pid-ink);background:#e4b34f1f;border-color:#e4b34fbd}.pid-d-progress button.is-complete{color:var(--pid-mint);border-color:#50be876b}.pid-d-progress span,.pid-d-story-card>span,.pid-d-question-card>span,.pid-d-time-heading>div>span,.pid-d-stage-lead>div>span,.pid-d-rate-copy>span,.pid-d-forecast-copy>span,.pid-d-example-row span,.pid-d-equation-card>span,.pid-d-code-explanation>span,.pid-d-stage-footer>span{color:var(--pid-amber);letter-spacing:.1em;font:600 9px/1.15 DM Mono,monospace}.pid-d-progress strong{color:inherit;font-size:12px;line-height:1.2}.pid-d-stage{gap:17px;display:grid}.pid-d-lead-grid,.pid-d-stage-lead{grid-template-columns:minmax(0,1.18fr) minmax(250px,.82fr);align-items:stretch;gap:14px;display:grid}.pid-d-story-card,.pid-d-question-card,.pid-d-equation-card{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130b8,#0f1a1cbd);border-radius:12px;padding:18px}.pid-d-story-card{align-content:start;gap:10px;display:grid}.pid-d-story-card h3,.pid-d-stage-lead h3,.pid-d-time-heading h3{color:var(--pid-ink);letter-spacing:-.04em;margin:0;font-size:clamp(24px,3vw,36px);line-height:1.04}.pid-d-story-card p,.pid-d-stage-lead p,.pid-d-time-heading p,.pid-d-rate-copy p,.pid-d-forecast-copy p{max-width:680px;color:var(--pid-muted);margin:0;font-size:13px;line-height:1.5}.pid-d-question-card{background:#e4b34f12;border-color:#e4b34f4d;align-content:center;gap:10px;display:grid}.pid-d-question-card strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-d-answer-buttons{flex-wrap:wrap;gap:8px;display:flex}.pid-d-answer-buttons button,.pid-d-time-heading>button{color:var(--pid-muted);cursor:pointer;background:#08121457;border:1px solid #c1d3c63d;border-radius:999px;padding:9px 11px;font:600 10px/1.15 DM Mono,monospace;transition:border-color .2s,color .2s,background .2s,transform .2s}:is(.pid-d-answer-buttons button:hover,.pid-d-answer-buttons button:focus-visible,.pid-d-time-heading>button:hover,.pid-d-time-heading>button:focus-visible){color:var(--pid-ink);border-color:#e4b34f9e;transform:translateY(-1px)}.pid-d-answer-buttons button.is-selected{border-color:var(--pid-amber);color:var(--pid-ink);background:#e4b34f29}.pid-d-question-card small{color:var(--pid-muted);font-size:11px;line-height:1.45}.pid-d-time-lab{border:1px solid var(--pid-line-strong);background:linear-gradient(135deg,#1e3130a6,#081214b8);border-radius:12px;gap:14px;padding:17px;display:grid}.pid-d-time-heading{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:18px;display:grid}.pid-d-time-heading>div{gap:9px;display:grid}.pid-d-time-heading>button{color:var(--pid-amber);border-color:#e4b34f7a}.pid-d-time-plot{border:1px solid var(--pid-line);background:#071113;border-radius:10px;min-height:245px;padding:31px 16px 15px;position:relative;overflow:hidden}.pid-d-time-grid{opacity:.55;background:repeating-linear-gradient(90deg,#0000 0 13.8%,#c1d3c614 13.9% 14%),repeating-linear-gradient(#0000 0 39px,#c1d3c60f 40px);position:absolute;inset:0}.pid-d-time-axis{background:#c1d3c647;height:1px;position:absolute;bottom:56px;left:14px;right:14px}.pid-d-time-values{z-index:1;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:8px;height:174px;display:grid;position:relative}.pid-d-time-point{align-content:end;justify-items:center;gap:7px;height:100%;display:grid;position:relative}.pid-d-time-point i{transform-origin:bottom;background:#8ac3a25c;border-radius:5px 5px 2px 2px;width:min(20px,70%);min-height:20px;transition:background .35s,transform .35s;display:block}.pid-d-time-point b{color:var(--pid-muted);font:700 11px/1 DM Mono,monospace}.pid-d-time-point small{color:var(--pid-dim);letter-spacing:.07em;text-transform:uppercase;font:8px/1 DM Mono,monospace}.pid-d-time-point.is-past i{background:#8ac3a294}.pid-d-time-point.is-current i{background:var(--pid-amber);animation:1.4s ease-in-out infinite pid-d-current-pulse;transform:scaleX(1.28);box-shadow:0 0 17px #e4b34f52}.pid-d-time-point.is-current b,.pid-d-time-point.is-current small{color:var(--pid-ink)}.pid-d-time-point.is-future i{background:repeating-linear-gradient(135deg,#e8897299 0 4px,#e889722e 4px 8px)}.pid-d-time-zones{z-index:1;color:var(--pid-dim);letter-spacing:.08em;grid-template-columns:2fr 2fr 2fr;gap:8px;font:600 8px/1.15 DM Mono,monospace;display:grid;position:absolute;bottom:15px;left:16px;right:16px}.pid-d-time-zones span:nth-child(2){color:var(--pid-amber);text-align:center}.pid-d-time-zones span:last-child{color:var(--pid-coral);text-align:right}.pid-d-time-readout{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pid-d-time-readout>div{border-left:3px solid var(--pid-mint);background:#50be8712;gap:6px;padding:11px 12px;display:grid}.pid-d-time-readout>div.is-now{border-left-color:var(--pid-amber);background:#e4b34f14}.pid-d-time-readout>div.is-future{border-left-color:var(--pid-coral);background:#e8897214}.pid-d-time-readout span{color:var(--pid-dim);letter-spacing:.08em;font:600 8px/1.1 DM Mono,monospace}.pid-d-time-readout strong{color:var(--pid-ink);font:700 25px/1 DM Mono,monospace}.pid-d-time-readout small{color:var(--pid-muted);grid-column:1/-1;margin-top:2px;font-size:10px;line-height:1.35}@keyframes pid-d-current-pulse{0%,to{opacity:.72}50%{opacity:1}}.pid-d-human-robot-bridge{border-left:3px solid var(--pid-mint);background:#50be8714;grid-template-columns:minmax(0,1fr) max-content minmax(0,1fr);align-items:center;gap:12px;padding:14px 16px;display:grid}.pid-d-human-robot-bridge>div{gap:5px;display:grid}.pid-d-human-robot-bridge>div>span{color:var(--pid-mint);letter-spacing:.1em;font:600 9px/1.1 DM Mono,monospace}.pid-d-human-robot-bridge strong{color:var(--pid-ink);font-size:14px;line-height:1.2}.pid-d-human-robot-bridge small{color:var(--pid-muted);font-size:11px;line-height:1.3}.pid-d-human-robot-bridge>b{color:var(--pid-amber);font:700 22px/1 DM Mono,monospace}.pid-d-stage-lead>div:first-child{align-content:center;gap:9px;padding:4px 2px;display:grid}.pid-d-stage-lead>div:first-child>span{display:block}.pid-d-stage-lead p{margin-top:3px}.pid-d-rate-lab,.pid-d-forecast-lab,.pid-d-code-lesson{border:1px solid var(--pid-line-strong);background:#0812146b;border-radius:12px;grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);gap:15px;padding:17px;display:grid}.pid-d-rate-copy,.pid-d-forecast-copy{align-content:center;gap:10px;display:grid}.pid-d-rate-copy h3{color:var(--pid-ink);margin:0;font-size:25px;line-height:1.08}.pid-d-rate-formula{border-left:3px solid var(--pid-amber);background:#e4b34f14;gap:5px;padding:11px 12px;display:grid}.pid-d-rate-formula strong{color:var(--pid-ink);font:700 17px/1 DM Mono,monospace}.pid-d-rate-formula span{color:var(--pid-muted);font-size:11px;line-height:1.35}.pid-d-tangent-visual{border:1px solid var(--pid-line);background:repeating-linear-gradient(90deg,#0000 0 41px,#c1d3c612 42px),repeating-linear-gradient(#0000 0 41px,#c1d3c612 42px),#071113;border-radius:9px;min-height:230px;position:relative;overflow:hidden}.pid-d-tangent-axis{background:#c1d3c647;height:1px;position:absolute;bottom:26%;left:12%;right:12%}.pid-d-tangent-point{z-index:2;border:2px solid var(--pid-amber);background:var(--pid-bg-deep);border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 0 12px #e4b34f40}.pid-d-tangent-point-a{bottom:39%;left:29%}.pid-d-tangent-point-b{bottom:51%;left:61%}.pid-d-tangent-line{background:var(--pid-coral);transform-origin:0;border-radius:99px;width:36%;height:3px;transition:transform .4s,background .4s;position:absolute;top:50%;left:30%;transform:rotate(-13deg)}.pid-d-tangent-visual.is-fast .pid-d-tangent-line{background:var(--pid-coral);transform:rotate(-27deg)}.pid-d-tangent-visual.is-slow .pid-d-tangent-line{background:var(--pid-mint);transform:rotate(-8deg)}.pid-d-tangent-label-a,.pid-d-tangent-label-b{color:var(--pid-dim);font:9px/1.2 DM Mono,monospace;position:absolute}.pid-d-tangent-label-a{bottom:25%;left:22%}.pid-d-tangent-label-b{bottom:25%;left:56%}.pid-d-tangent-visual>strong{color:var(--pid-amber);letter-spacing:.08em;text-transform:uppercase;font:600 9px/1.2 DM Mono,monospace;position:absolute;top:13px;right:13px}.pid-d-example-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pid-d-example-row>div{border:1px solid var(--pid-line);background:#c1d3c609;gap:7px;padding:13px;display:grid}.pid-d-example-row strong{color:var(--pid-ink);font-size:14px;line-height:1.25}.pid-d-example-row small{color:var(--pid-muted);font-size:11px;line-height:1.35}.pid-d-forecast-track{border:1px solid var(--pid-line);background:linear-gradient(#8ac3a214,#0000 52%),#071113;border-radius:9px;min-height:216px;position:relative;overflow:hidden}.pid-d-forecast-track:before{content:"";background:#c1d3c638;height:1px;position:absolute;top:58%;left:9%;right:9%}.pid-d-forecast-past,.pid-d-forecast-current,.pid-d-forecast-next{z-index:1;letter-spacing:.07em;padding:7px 8px;font:600 9px/1.1 DM Mono,monospace;position:absolute}.pid-d-forecast-past{color:var(--pid-mint);top:25%;left:12%}.pid-d-forecast-current{color:var(--pid-amber);top:42%;left:42%}.pid-d-forecast-next{color:var(--pid-coral);top:61%;right:10%}.pid-d-forecast-curve{background:linear-gradient(90deg, var(--pid-mint), var(--pid-amber), var(--pid-coral));transform-origin:0;border-radius:99px;width:61%;height:2px;position:absolute;top:51%;left:17%;transform:rotate(13deg)}.pid-d-forecast-arrow{color:var(--pid-coral);font:700 25px/1 DM Mono,monospace;animation:1.6s ease-in-out infinite pid-d-arrow-nudge;position:absolute;top:53%;right:17%}@keyframes pid-d-arrow-nudge{0%,to{opacity:.65;transform:translate(0)}50%{opacity:1;transform:translate(6px)}}.pid-d-forecast-copy strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-d-forecast-copy code{border-left:3px solid var(--pid-amber);color:var(--pid-ink);background:#040c0e8a;padding:11px;font:600 11px/1.4 DM Mono,monospace;display:block}.pid-d-equation-card{background:#e4b34f12;border-color:#e4b34f57;align-content:center;gap:9px;display:grid}.pid-d-equation-card strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-d-equation-card small{color:var(--pid-muted);font-size:11px;line-height:1.4}.pid-d-code-lesson{background:0 0;border:0;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);padding:0}.pid-d-code-block{border:1px solid var(--pid-line);background:#071113;border-radius:11px;gap:8px;padding:15px;display:grid}.pid-d-code-block>div{background:#c1d3c60b;border-left:3px solid #c1d3c638;gap:6px;padding:10px;display:grid}.pid-d-code-block>div:first-child{border-color:var(--pid-mint)}.pid-d-code-block>div:last-child{border-color:var(--pid-amber)}.pid-d-code-block span{color:var(--pid-dim);letter-spacing:.1em;font:600 8px/1.1 DM Mono,monospace}.pid-d-code-block code{color:var(--pid-ink);font:600 12px/1.35 DM Mono,monospace}.pid-d-code-explanation{background:#e4b34f12;border:1px solid #e4b34f47;border-radius:11px;align-content:center;gap:9px;padding:17px;display:grid}.pid-d-code-explanation strong{color:var(--pid-ink);font-size:17px;line-height:1.2}.pid-d-code-explanation p{color:var(--pid-muted);margin:0;font-size:11px;line-height:1.45}.pid-d-code-explanation code{color:var(--pid-ink);font:600 11px/1.3 DM Mono,monospace}.pid-d-final-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:2px;display:grid}.pid-d-final-map div{border:1px solid var(--pid-line);background:#0812144d;gap:5px;padding:9px;display:grid}.pid-d-final-map b{color:var(--pid-amber);font:700 19px/1 DM Mono,monospace}.pid-d-final-map span{color:var(--pid-muted);font-size:10px;line-height:1.25}.pid-d-stage-footer{border-top:1px solid var(--pid-line);grid-template-columns:max-content minmax(0,1fr) max-content;align-items:center;gap:12px;padding-top:14px;display:grid}.pid-d-stage-footer strong{color:var(--pid-ink);font-size:14px;line-height:1.25}.pid-d-stage-footer .pid-next-button{margin-left:auto}.pid-derivative-code-lab{margin-top:14px}.pid-step-eight-baseline{background:#50be870b}@media (max-width:760px){.pid-d-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-d-lead-grid,.pid-d-stage-lead,.pid-d-rate-lab,.pid-d-forecast-lab,.pid-d-code-lesson,.pid-d-time-heading{grid-template-columns:1fr}.pid-d-time-heading>button{justify-self:start}.pid-d-stage-footer{grid-template-columns:1fr;gap:8px}.pid-d-stage-footer .pid-next-button{width:100%;margin-left:0}}@media (max-width:520px){.pid-d-progress button{min-height:62px;padding:9px}.pid-d-story-card,.pid-d-question-card,.pid-d-time-lab,.pid-d-rate-lab,.pid-d-forecast-lab{padding:14px}.pid-d-human-robot-bridge{grid-template-columns:1fr;gap:8px}.pid-d-human-robot-bridge>b{justify-self:center;transform:rotate(90deg)}.pid-d-time-plot{min-height:220px;padding-left:9px;padding-right:9px}.pid-d-time-values{gap:3px}.pid-d-time-zones{font-size:7px;left:9px;right:9px}.pid-d-time-readout,.pid-d-example-row,.pid-d-final-map{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.pid-d-progress button,.pid-d-answer-buttons button,.pid-d-time-heading>button,.pid-d-tangent-line,.pid-d-time-point i{transition:none}.pid-d-time-point.is-current,.pid-d-forecast-arrow{animation:none}}@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}
