:root{--paper:#fff8e6;--ink:#182127;--blue:#2055e8;--yellow:#ffd43b;--mint:#9eddbd;--coral:#f78e78;--line:#c8c5b6;--gutter:clamp(20px,5vw,80px);color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 "IBM Plex Sans",system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{cursor:pointer}button:disabled{cursor:default}img,video{max-width:100%;display:block}p{max-width:68ch}code,pre{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:.87em}h1,h2,h3,p,figure{margin-top:0}h1,h2{font-weight:600;letter-spacing:-.055em;line-height:1.03}h1{font-size:clamp(48px,6.2vw,94px);margin-bottom:28px}h2{font-size:clamp(36px,4vw,60px)}h3{line-height:1.25;font-weight:600;letter-spacing:-.025em}.skip{position:fixed;left:16px;top:-80px;background:var(--yellow);padding:10px;z-index:10}.skip:focus{top:10px}.mast{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px var(--gutter);border-bottom:1px solid var(--line)}.mark{font-size:30px;font-weight:600;letter-spacing:-.06em;text-decoration:none}.mark span{font-size:17px;margin-left:8px;letter-spacing:0}.mast nav{display:flex;align-items:center;gap:30px;font-size:15px}.mast nav a{text-decoration:none}.nav-install{border:1px solid var(--ink);border-radius:30px;padding:8px 23px}.hero{max-width:1680px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);align-items:center;gap:0;padding:70px var(--gutter) 76px}.hero-copy{position:relative;z-index:1}.lede{font-size:18px;max-width:51ch;line-height:1.6;margin-bottom:30px}.goal label{display:block;font-weight:500;margin-bottom:8px}.goal-entry{display:flex;gap:8px;max-width:560px}.goal input{min-width:0;flex:1;width:100%;padding:13px 14px;border:1px solid var(--ink);border-radius:8px;background:#fffdf5;color:var(--ink)}button{border:1px solid var(--ink);border-radius:8px;background:var(--yellow);color:var(--ink);padding:12px 18px;font-weight:500}button:hover:enabled{background:#ffe16e}button:disabled{opacity:.65}.after-goal{font-size:13px;color:#525b60;line-height:1.55;margin:12px 0 28px;max-width:56ch}.no-js{font-size:14px;border-left:3px solid var(--blue);padding-left:12px}.text-link{font-size:15px}.text-link span{display:inline-block;margin-left:12px}.workshop{margin:0 -20px 0 10px;align-self:center}.workshop img{width:100%;height:auto;mix-blend-mode:multiply}.workshop figcaption{font-size:13px;text-align:center;margin-top:18px;color:#525b60}.illustration{padding:55px var(--gutter) 65px;background:#f2ecd9;border-block:1px solid var(--line)}.illustration-heading{display:flex;justify-content:space-between;gap:36px;max-width:1400px;margin:auto auto 32px}.illustration-heading h2{margin-bottom:0}.illustration-heading>p{max-width:36ch;align-self:end;font-size:15px}.section-note{font-size:14px;letter-spacing:0;margin-bottom:15px;color:#525b60}.shift-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:40px;max-width:1400px;margin:auto}.work-order{background:#fffdf5;border:1px solid var(--ink);border-radius:4px;box-shadow:6px 6px 0 var(--yellow);padding:24px;align-self:start}.ticket-head{display:flex;justify-content:space-between;border-bottom:1px dashed #92988a;padding-bottom:12px;font-size:13px}.ticket-head span:last-child{font-weight:600}#order-goal{font-size:25px;font-weight:500;line-height:1.3;overflow-wrap:anywhere;margin:24px 0}#shift-status{min-height:3.3em;font-size:16px}.shift-controls{display:flex;gap:8px}.shift-controls button{font-size:14px;padding:7px 16px;background:transparent}#mode-note{font-size:12px;color:#525b60;margin:18px 0 0}.shift-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}.shift-steps li{border-top:2px solid #adb1a3;padding-top:12px}.shift-steps button{display:flex;gap:10px;align-items:center;padding:0;border:0;background:none;font-weight:600;font-size:18px;min-height:44px;text-align:left}.shift-steps button:disabled{opacity:1}.shift-steps button:hover:enabled{background:none;color:var(--blue)}.shift-steps button span{display:grid;place-items:center;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-size:12px;flex-shrink:0}.shift-steps p{font-size:14px;line-height:1.55;margin:8px 0 0}.shift-steps [aria-pressed=true]{color:var(--blue)}.shift-steps li:has([aria-pressed=true]){border-color:var(--blue)}.record{padding:95px var(--gutter);max-width:1500px;margin:auto}.record-heading{margin-bottom:60px}.record-heading h2{font-size:clamp(44px,5.2vw,76px);margin-bottom:24px}.record-layout{display:grid;grid-template-columns:minmax(160px,.6fr) minmax(0,1.6fr);gap:9vw}.record-rail{position:sticky;top:35px;align-self:start;font-size:16px}.record-rail>p{font-size:24px;line-height:1.3;letter-spacing:-.025em}.record-rail ol{list-style:none;padding:0;margin:30px 0;counter-reset:beat}.record-rail li{counter-increment:beat;border-top:1px solid var(--line);padding:9px 0}.record-rail li:before{content:counter(beat);display:inline-block;width:26px;font-size:12px;color:#525b60}.record-rail a{text-decoration:none;font-size:14px}.beat{padding:0 0 65px;margin-bottom:50px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.beat h2{font-size:clamp(30px,3vw,43px);letter-spacing:-.04em;margin-bottom:28px}.when{font-size:13px;color:#525b60;margin-bottom:12px}.msg{background:#fffdf5;border-left:3px solid var(--blue);padding:20px 22px;margin:20px 0}.msg.hold{border-color:#b63e27;background:#fff0e5}.msg.ok{border-color:#2b775b;background:#e6f5e8}.msg .hdr{font-size:12px;color:#525b60;margin-bottom:10px}.msg .body{font-size:16px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.roster{width:100%;border-collapse:collapse;font-size:15px}.roster td{padding:14px 10px 14px 0;border-bottom:1px solid var(--line);vertical-align:top}.roster td:first-child{font-weight:500;width:32%}.dim{color:#525b60}.parts{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:25px 0}.parts li{font-size:13px;padding:4px 10px;border:1px solid transparent}.parts .req{border-color:var(--ink)}.wide{padding:76px var(--gutter);border-top:1px solid var(--line)}.wide>.in{max-width:1350px;margin:auto}.intro{font-size:19px;max-width:70ch;margin-bottom:40px}.manual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 60px;list-style:none;counter-reset:moment;padding:0}.manual li{counter-increment:moment;position:relative;padding:24px 0 24px 52px;border-top:1px solid var(--line)}.manual li:before{content:counter(moment);position:absolute;left:0;top:25px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);border:1px solid var(--ink);font-size:14px}.manual h3{margin-bottom:10px;font-size:22px}.manual p{margin:0;font-size:16px}.agents{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--line);margin:35px 0}.agent{padding:24px 12px 24px 0;min-width:0}.agent b{display:block;font-size:19px;margin-bottom:12px}.agent code{display:block;font-size:11px;overflow-wrap:anywhere}.facts{padding-left:20px;max-width:76ch}.facts li{padding:7px 0}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px}#install{background:var(--blue);color:#fffdf5}#install h2{color:var(--yellow)}#install .facts{font-size:16px}.links{display:flex;flex-wrap:wrap;gap:15px;margin-top:25px;font-size:14px}.cmd{background:#142556;border:1px solid #6c8af2;border-radius:6px;overflow:hidden}.cmd pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:22px;margin:0;font-size:13px;line-height:1.9}.cmd .bar{border-top:1px solid #6c8af2;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.cmd button{padding:5px 12px;font-size:13px}.term{margin-top:25px}.term video{width:100%;height:auto;border-radius:6px}footer{padding:50px var(--gutter);font-size:13px}footer .in{max-width:1350px;margin:auto;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:80px}footer p{max-width:80ch}footer .he{font-size:19px}button:enabled:active{transform:translateY(1px)}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr;padding-top:45px}.goal-entry{flex-direction:column}.workshop{margin-right:0}.hero h1{font-size:60px}.shift-grid{grid-template-columns:1fr 1.2fr;gap:24px}.shift-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.agents{grid-template-columns:repeat(3,minmax(0,1fr))}.two{gap:30px}}
@media(max-width:700px){body{font-size:16px}.mast{padding:17px 20px}.mark{font-size:26px}.mark span{font-size:14px}.mast nav{gap:15px;font-size:12px}.mast nav a:first-child{display:none}.nav-install{padding:6px 15px}.hero{display:flex;flex-direction:column;gap:28px;padding:40px 20px 32px}.hero h1{font-size:49px;margin-bottom:22px}.lede{font-size:16px;margin-bottom:25px}.goal-entry{flex-direction:column}.goal-entry button{width:100%}.goal input{font-size:16px}.after-goal{font-size:12px;margin-bottom:20px}.workshop{margin:0;width:100%;max-width:560px}.workshop figcaption{font-size:12px;margin-top:10px}.illustration{padding:38px 20px 40px}.illustration-heading{display:block;margin-bottom:25px}.illustration-heading h2{font-size:34px}.illustration-heading>p{margin:20px 0;max-width:none}.shift-grid{display:block}.shift-steps{margin-top:35px;gap:22px 18px}.shift-steps button{font-size:17px}.shift-steps p{font-size:13px}.record{padding:55px 20px 15px}.record-heading{margin-bottom:35px}.record-heading h2{font-size:44px}.record-layout{display:block}.record-rail{position:static;margin-bottom:35px}.record-rail>p{display:none}.record-rail ol{display:flex;flex-wrap:wrap;gap:8px 15px;margin:0}.record-rail li{padding:3px 0;border:0}.record-rail li:before{width:18px}.record-rail a{font-size:12px}.beat{padding-bottom:35px;margin-bottom:35px}.beat h2{font-size:31px}.msg{padding:16px 14px}.msg .hdr{font-size:11px}.msg .body{font-size:14px}.roster{font-size:13px}.roster td:first-child{width:37%}.wide{padding:45px 20px}.wide h2{font-size:38px}.intro{font-size:17px}.manual{grid-template-columns:1fr}.manual li{padding:22px 0 22px 45px}.manual h3{font-size:20px}.manual p{font-size:15px}.agents{grid-template-columns:repeat(2,minmax(0,1fr))}.agent{padding:20px 12px 20px 0}.agent b{font-size:17px}.agent code{font-size:11px}.two{grid-template-columns:1fr;gap:30px}.cmd pre{font-size:11px;padding:15px}.cmd .bar{font-size:11px}.links{font-size:13px}footer{padding:35px 20px}footer .in{grid-template-columns:1fr;gap:18px}.section-note{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}button:enabled:active{transform:none}}
.workshop{border:1px solid var(--ink);border-radius:16px;padding:12px;background:#ffefc4;box-shadow:5px 5px 0 var(--yellow)}.workshop img{border-radius:8px;mix-blend-mode:normal}.workshop figcaption{border-top:1px solid #b6aa87;padding:12px 3px 0;margin-top:12px;color:var(--ink)}
@media(max-width:700px){.hero{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;padding-top:25px}.hero-copy{display:contents}.hero h1{grid-row:1;font-size:44px;margin:0}.workshop{grid-row:2;padding:8px;width:100%;margin:0;box-shadow:3px 3px 0 var(--yellow)}.workshop figcaption{font-size:11px;padding-top:8px;margin-top:8px}.hero .lede{grid-row:3;margin:12px 0 0}.hero .goal{grid-row:4}.hero .after-goal{grid-row:5;margin:0}.hero noscript{grid-row:6}.hero .text-link{grid-row:7}}

[hidden]{display:none!important}

h1{letter-spacing:-.045em}.cast-stage{position:relative;isolation:isolate}.hero-film{position:absolute;inset:0;background:var(--paper);display:grid;align-content:center;z-index:3;border-radius:8px;overflow:hidden}.hero-film video{width:100%;max-height:100%;aspect-ratio:4/3;object-fit:contain}.hero-film #close-film{position:absolute;right:10px;top:10px;font-size:12px;padding:7px 10px}.workshop figcaption{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:12px;text-align:left}.workshop figcaption>span{font-size:12px}.workshop .shift-controls{gap:6px;flex-wrap:wrap}.workshop .shift-controls button{min-height:40px;background:var(--paper);padding:6px 11px;font-size:12px}.workshop #watch-hold{background:var(--yellow)}#watch-hold span{font-size:10px;display:block;line-height:1.2}#film-status{font-size:11px;line-height:1.45;flex-basis:100%;margin:0;color:#525b60}.factory-floor{--ticket-x:0%;--gate-angle:-90deg;--part-opacity:0;--checked:0;padding:12px 6px 0;overflow:hidden;container-type:inline-size}.floor-line{display:flex;justify-content:space-between;font-size:10px;line-height:1.5;color:#525b60;padding:0 2px 7px}.floor-track{height:91px;position:relative;border-bottom:9px solid var(--blue);border-radius:0 0 8px 8px;background:linear-gradient(transparent 65%,#eee0b8 65%);isolation:isolate}.floor-belt{position:absolute;bottom:0;left:-30px;width:calc(100% + 180px);height:16px;background:repeating-linear-gradient(90deg,var(--ink) 0 16px,#f5e7c1 16px 22px);border-block:2px solid var(--ink)}.floor-ticket{position:absolute;left:4%;bottom:17px;width:31%;height:65px;background:#fffdf5;border:1.5px solid var(--ink);border-radius:4px;padding:6px 26px 6px 8px;box-shadow:3px 3px 0 #d7bf7a;transform:translateX(var(--ticket-x));z-index:1;font-size:11px;line-height:1.2;overflow:hidden}.ticket-label{display:block;font-size:8px;color:#525b60;border-bottom:3px solid var(--yellow);padding-bottom:3px;margin-bottom:4px}.ticket-goal{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.ticket-check{position:absolute;right:3px;top:4px;border:2px solid #246548;border-radius:50%;color:#246548;background:#e6f5e8;font-size:12px;line-height:1;width:16px;text-align:center;transform:rotate(-12deg);opacity:var(--checked)}.floor-gate{position:absolute;left:57%;bottom:30px;width:25%;max-width:125px;height:19px;background:repeating-linear-gradient(135deg,var(--coral) 0 9px,#fff4d5 9px 18px);border:2px solid var(--ink);border-radius:3px;transform-origin:8px 50%;transform:rotate(var(--gate-angle));z-index:2}.floor-gate span{position:absolute;left:36%;top:-20px;color:#8e281b;font-size:10px;font-weight:650;letter-spacing:.03em;background:var(--paper);padding:0 4px}.floor-part{position:absolute;left:calc(50.5% - 6px);bottom:12px;background:var(--mint);border:2px solid var(--ink);border-radius:5px;width:12px;height:12px;text-align:center;font-size:11px;line-height:8px;opacity:var(--part-opacity);z-index:2}.floor-lamp{position:absolute;right:3%;bottom:25px;width:12px;height:12px;background:var(--yellow);border:1.5px solid var(--ink);border-radius:50%}.floor-readout{display:flex;justify-content:space-between;gap:10px;font-size:11px;line-height:1.4;padding-top:9px;min-height:25px}.floor-state{font-weight:650}.floor-message{text-align:right;color:#525b60}.factory-floor[data-stage="1"]{--ticket-x:25%}.factory-floor[data-stage="2"],.factory-floor[data-stage="3"]{--ticket-x:50%;--gate-angle:0deg}.factory-floor[data-stage="3"]{--part-opacity:1}.factory-floor[data-stage="4"]{--ticket-x:50%;--part-opacity:1;--checked:1}.factory-floor[data-stage="5"]{--ticket-x:200%;--checked:1}.factory-floor[data-stage="2"] .floor-lamp,.factory-floor[data-stage="3"] .floor-lamp{background:var(--coral)}.factory-floor[data-stage="4"] .floor-lamp,.factory-floor[data-stage="5"] .floor-lamp{background:var(--mint)}.work-order>.factory-floor{margin-top:18px}.record-layout{grid-template-columns:minmax(250px,.9fr) minmax(0,1.4fr);gap:6vw}.record-theatre{border:1px solid var(--ink);border-radius:12px;padding:10px;background:#ffefc4;overflow:hidden}.record-theatre img{border-radius:6px;width:100%;height:auto}.record-theatre .factory-floor{padding-inline:0}.record-theatre #record-state{font-size:13px;line-height:1.35;margin:12px 0 0;padding-top:10px;border-top:1px solid #b6aa87}.record-rail ol{margin:18px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px}.record-rail ol a{font-size:12px}.record-rail li:before{width:19px}.record-rail a[aria-current="step"]{color:var(--blue);font-weight:650}.record-rail li:has([aria-current="step"]){border-color:var(--blue)}
@media(max-width:1000px) and (min-width:701px){.hero{grid-template-columns:1fr;gap:35px}.hero h1{font-size:76px}.hero .workshop{max-width:700px;margin:auto}.hero .goal-entry{flex-direction:row}.hero .lede{max-width:65ch}.record-layout{grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);gap:35px}}
@media(max-width:700px){.workshop figcaption{gap:9px}.workshop figcaption>span{flex-basis:100%}.workshop .shift-controls{width:100%}.workshop .shift-controls button{flex:1}.factory-floor{padding-top:9px}.floor-track{height:77px}.floor-ticket{height:54px;font-size:9px;padding:4px 24px 4px 5px}.ticket-label{font-size:7px;padding-bottom:2px;margin-bottom:3px}.floor-gate{height:17px}.floor-gate span{font-size:8px;top:-16px}.floor-readout{font-size:10px;gap:6px}.floor-message{max-width:72%}.record-rail{position:sticky;top:0;background:var(--paper);z-index:5;padding:2px 0;margin:0 0 28px;border-bottom:1px solid var(--line)}.record-theatre{padding:4px 8px;border-radius:7px}.record-theatre>img,.record-theatre .floor-line,.record-theatre .floor-readout{display:none}.record-theatre .factory-floor{padding-top:0}.record-theatre .floor-track{height:50px}.record-theatre .floor-ticket{height:29px;bottom:12px;font-size:8px;padding:3px 24px 3px 5px}.record-theatre .ticket-label{display:none}.record-theatre .floor-gate{height:12px;bottom:12px;width:20%;max-width:60px}.record-theatre .floor-gate span{top:-12px;font-size:7px}.record-theatre .floor-part{bottom:7px}.record-theatre .floor-lamp{bottom:18px;width:9px;height:9px}.record-theatre #record-state{font-size:10px;padding-top:3px;margin-top:3px;line-height:1.2}.record-rail ol{display:flex;flex-wrap:nowrap;gap:14px;overflow-x:auto;margin:4px 0 0;white-space:nowrap;padding:0 1px 3px}.record-rail li{flex-shrink:0}.record-rail a{font-size:10px}.record-rail li:before{font-size:9px;width:14px}.beat{scroll-margin-top:var(--record-offset,110px)}}
.floor-track:after{content:'';position:absolute;left:57%;bottom:15px;width:14px;height:36px;background:var(--coral);border:2px solid var(--ink);border-radius:5px;z-index:1}.floor-gate span{display:none}.factory-floor[data-stage="2"] .floor-gate span,.factory-floor[data-stage="3"] .floor-gate span{display:block}.floor-gate{transform-origin:7px 50%}.record-theatre .floor-track:after{height:29px;bottom:12px}.record-theatre[data-event="doorbell"] #record-state:before{content:'Return received. ';color:#246548}.record-theatre[data-event="retro"] #record-state:before{content:'Lesson recorded. ';color:#246548}
@media(max-width:700px){.workshop{display:flex;flex-direction:column}.workshop .cast-stage{order:1}.workshop>.factory-floor{order:2}.workshop figcaption{display:contents}.workshop figcaption>span{order:3;padding-top:8px;font-size:10px}.workshop .shift-controls{order:0;margin-bottom:10px}.workshop .shift-controls button{min-height:34px;padding:5px 7px;font-size:11px}#watch-hold span{display:inline;font-size:9px;margin-left:4px}.workshop #film-status{order:4;padding-top:7px;font-size:10px}.hero .goal{grid-row:3;margin-top:10px}.hero .lede{grid-row:4}.hero .after-goal{grid-row:5}.record-theatre .floor-track:after{height:26px;bottom:12px}}


[data-floor="record"] .floor-ticket,[data-floor="record"] .floor-gate{transition:transform 380ms cubic-bezier(.2,.7,.2,1)}[data-floor="record"] .floor-part,[data-floor="record"] .ticket-check{transition:opacity 180ms}.document-hidden [data-floor="record"] *{transition:none!important}


@media(max-width:700px){.record-rail ol{font-size:12px;line-height:20px}.record-rail ol a{font-size:11px;display:inline-flex;align-items:center;min-height:24px}}
