@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,Noto Sans JP,sans-serif;color:#263731;background:#f6f7f3;font-synthesis:none;font-weight:400;--muted:#7e8981;--line:#e3e6de;--green:#244c42}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #b08b49;outline-offset:4px}a{color:inherit;text-decoration:none}button,select{touch-action:manipulation}svg{flex-shrink:0}button{transition:background .2s,transform .2s,box-shadow .2s}p{line-height:1.9}h1,h2,h3,p{margin:0}.app{min-height:100vh}.sidebar{width:245px;background:#142522;color:#a7b5ab;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:33px 19px 0;z-index:30;overflow-y:auto}.brand{display:flex;align-items:center;gap:11px;color:#f4f3e8;padding:0 10px 39px;font-size:1.25rem;letter-spacing:2px;font-weight:700}.brand-symbol{color:#d3b77f;display:flex}.brand small{display:block;font-size:.625rem;letter-spacing:1.5px;margin-top:5px;font-weight:400;color:#98a99e}.sidebar-section-label{font-size:.625rem;letter-spacing:1.8px;padding:0 13px;color:#788d7f;font-weight:600}.main-nav{margin-top:12px;display:grid;gap:5px}.main-nav button{display:flex;align-items:center;gap:11px;text-align:left;font-size:.8125rem;padding:14px 13px;border-radius:6px;white-space:nowrap}.main-nav button.selected{background:#2b4038;color:#eed}.main-nav button.selected svg{color:#d1bb86}.main-nav button:hover,.chapter-nav button:hover{background:#23382f}.main-nav button span{margin-left:auto;font-size:.625rem;padding:2px 6px;border-radius:4px;background:#3b5143;color:#d3dcce}.chapter-label{display:flex;justify-content:space-between;margin:37px 0 12px}.chapter-nav{display:grid;gap:3px}.chapter-nav button{display:flex;align-items:center;font-size:.75rem;gap:11px;padding:10px 13px;text-align:left;border-radius:5px}.chapter-no{font-size:.6875rem;color:#728677;letter-spacing:1px;font-family:DM Sans,sans-serif}.chapter-progress{margin-left:auto;font-size:.625rem;color:#6d8273}.chapter-nav button.current{color:#e5d3a8;background:#253a31}.sidebar-bottom{margin-top:auto;padding-top:24px}.workshop-progress{background:#1d3029;border:1px solid #2d4034;padding:16px 13px;border-radius:7px}.workshop-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:.6875rem}.workshop-progress strong{font-family:DM Sans,sans-serif;color:#e2e6d8;font-size:1.1875rem}.workshop-progress strong small{font-size:.6875rem;color:#798b7c;font-weight:400}.progress-track{height:4px;border-radius:9px;background:#354739;overflow:hidden;margin:12px 0}.progress-track i{display:block;height:100%;background:#b8bd8b;border-radius:9px}.workshop-progress>small{font-size:.5625rem;color:#839485}.quiet-button{display:flex;align-items:center;gap:9px;width:100%;font-size:.75rem;padding:20px 12px}.quiet-button svg:last-child{margin-left:auto}.sidebar-footer{border-top:1px solid #2b3b2f;padding:18px 0;display:flex;justify-content:space-between;font-size:.4375rem;letter-spacing:.8px;color:#607667}.workspace{margin-left:245px}.topbar{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 43px;border-bottom:1px solid var(--line);background:#fafbf7}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:.75rem;color:#8b948c}.breadcrumb strong{font-weight:500;color:#34443a}.topbar-actions{display:flex;align-items:center;gap:20px}.star-total{display:flex;gap:7px;align-items:center;font-size:.875rem;font-weight:600;color:#a78b4c}.star-total small{font-weight:400;font-size:.6875rem;color:#9da496}.divider{height:18px;width:1px;background:#e2e5dc}.icon-button{padding:7px;display:inline-flex;align-items:center;justify-content:center;color:#748174;min-width:32px;min-height:32px;border-radius:5px}.icon-button:hover{background:#e9eee4}.avatar{width:30px;height:30px;display:grid;place-items:center;border:1px solid #dce1d4;border-radius:50%;background:#e9eddf;color:#667353;font-size:.75rem}.mobile-menu{display:none}main{padding:39px 44px 15px;max-width:1510px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:.625rem;letter-spacing:2px;color:#8b9785;font-weight:600}h1{font-size:1.9375rem;letter-spacing:1px;line-height:1.5;font-weight:700;margin-top:8px}.page-heading p{font-size:.75rem;color:#7a847b;margin-top:10px;letter-spacing:.3px}.edition{text-align:right;align-self:center;color:#879180}.edition>span{font-size:.5rem;letter-spacing:1.5px}.edition strong{display:block;font-size:2.3125rem;font-weight:400;line-height:1.4;color:#465344}.edition strong span{font-size:.8125rem;letter-spacing:2px;margin-left:8px}.featured{height:279px;position:relative;display:flex;overflow:hidden;border-radius:10px;background:#142b2d;color:#e9eee4;border:1px solid #243a35;margin-bottom:33px}.featured-copy{position:relative;z-index:2;width:52%;padding:27px 31px;pointer-events:none}.featured-copy button{pointer-events:auto}.feature-tag{color:#b9c7a8;letter-spacing:1.8px;font-size:.5625rem;display:flex;gap:8px;align-items:center;margin-bottom:20px}.feature-tag>span{width:5px;height:5px;border-radius:50%;background:#c4cb9a}.featured-chapter{font-size:.5625rem;letter-spacing:2px;color:#91a69e}.featured h2{font-size:1.6875rem;font-weight:600;letter-spacing:1.7px;margin:4px 0 10px}.featured p{font-size:.6875rem;color:#a6b8ae;line-height:1.9}.featured-copy button{display:inline-flex;align-items:center;gap:26px;background:#e2c995;color:#28392d;border-radius:5px;padding:11px 16px;font-size:.6875rem;font-weight:700;margin-top:17px}.featured-copy button:hover{background:#f3dfaf;transform:translateY(-2px)}.feature-footnote{display:flex;align-items:center;gap:10px;position:absolute;bottom:16px;font-size:.5rem;letter-spacing:.6px;color:#849d92}.feature-footnote i{height:8px;width:1px;background:#667e71}.featured-scene{position:absolute;top:-16px;right:-30px;bottom:0;left:42%;pointer-events:none}.featured-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#142b2d,transparent 32%)}.scene-mark{position:absolute;bottom:20px;right:67px;font-size:.5rem;letter-spacing:1.2px;color:#799488;z-index:1}.scene-mark span{margin-left:13px;color:#8c9d8a}.feature-level{position:absolute;right:22px;top:23px;display:flex;align-items:center;gap:3px;font-size:.5rem;letter-spacing:1px;color:#99ae9c}.feature-level span{margin-right:6px}.feature-level i{width:3px;height:8px;background:#c4bb8d}.feature-level i.dim{background:#455e51}.library-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.library-heading>div{display:flex;align-items:center;gap:14px}.library-heading h2{font-size:1.125rem;letter-spacing:.7px}.library-heading>div>span{font-size:.625rem;color:#969e90}.search-box{display:flex;align-items:center;gap:9px;background:#fcfdf9;border:1px solid #e0e4da;border-radius:5px;padding:9px 12px;color:#98a18e;width:213px}.search-box input{background:none;border:0;outline:none;min-width:0;width:100%;font-size:.6875rem;color:#40523f}.search-box input::placeholder{color:#9da592}.search-box button{display:flex;padding:0}.filters{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:21px;gap:10px}.filter-tabs{display:flex;gap:24px;align-self:stretch}.filter-tabs button{font-size:.6875rem;padding:2px 0 13px;color:#899180;position:relative;white-space:nowrap}.filter-tabs button.active{color:#354d35;font-weight:600}.filter-tabs button.active:after{position:absolute;content:"";height:2px;background:#466546;bottom:-1px;left:0;right:0}.filter-tabs button span{font-size:.5625rem;border-radius:4px;background:#e5eadf;padding:2px 6px;margin-left:8px}.chapter-select{display:flex;gap:8px;align-items:center;padding-bottom:12px;font-size:.625rem;color:#929b89}.chapter-select select{font-size:.625rem;border:0;background:none;color:#55634b;max-width:155px}.puzzle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.puzzle-card{text-align:left;padding:0;background:#fdfefb;border:1px solid #dfe4d9;border-radius:8px;overflow:hidden;box-shadow:0 2px 3px #23361d03}.puzzle-card:hover{transform:translateY(-4px);box-shadow:0 8px 22px #263c2710;border-color:#b6c2a6}.card-art{height:152px;position:relative;overflow:hidden;border-bottom:1px solid #e6eade}.card-art>svg{width:100%;height:100%}.card-number{position:absolute;left:15px;top:12px;font-size:.625rem;color:#8e9985;font-weight:500}.type-badge,.clear-badge{position:absolute;right:12px;top:12px;font-size:.4375rem;letter-spacing:1px;color:#849276;border:1px solid #dce3d3;padding:3px 6px;border-radius:3px;background:#f4f7edb3}.clear-badge{display:flex;gap:4px;align-items:center;color:#587647}.card-play{opacity:0;transition:opacity .2s;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;display:grid;place-items:center;background:#1f4c3be6;border-radius:50%;color:#fff;box-shadow:0 0 0 8px #ffffff7a}.puzzle-card:hover .card-play{opacity:1}.card-details{padding:15px 16px}.card-chapter{display:flex;align-items:center;gap:5px;font-size:.5625rem;color:#8a9881;margin-bottom:6px}.card-details h3{font-size:.9375rem;letter-spacing:.3px;font-weight:600;display:flex;align-items:center;justify-content:space-between}.card-details h3 svg{color:#acb6a2}.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.difficulty{display:flex;gap:3px;align-items:center}.difficulty i{height:7px;width:3px;border-radius:1px;background:#e1e7d9}.difficulty i.lit{background:#85986c}.difficulty span{font-size:.5625rem;margin-left:5px;color:#8e9a82}.stars{display:inline-flex;gap:3px;color:#d2d9c8}.stars .filled{color:#bea16a}.pagination{display:flex;align-items:center;justify-content:space-between;padding:23px 0;color:#919b86;font-size:.625rem;gap:15px}.pagination>div{display:flex;gap:3px;flex-wrap:wrap}.pagination button{min-width:27px;height:28px;border-radius:4px;display:grid;place-items:center;font-size:.625rem}.pagination button.active{background:#35543b;color:#fff}.pagination button:not(:disabled):hover{background:#dfe8d6}.bottom-note{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:23px 0 8px;font-size:.625rem;color:#8e9c84}.bottom-note>span:last-child{margin-left:auto;font-size:.5rem;letter-spacing:1.4px}.page-footer{max-width:1510px;margin:0 auto;display:flex;justify-content:space-between;padding:20px 44px 25px;font-size:.5rem;color:#9aa38f;border-top:1px solid #eaede3}.page-footer>span:first-child{letter-spacing:1.4px}.page-footer i{font-style:normal;letter-spacing:.3px;margin-left:9px;font-size:.5rem}.back-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.75rem;padding:10px 0;color:#73836c}.play-heading{display:flex;justify-content:space-between;align-items:center}.game-title{display:flex;justify-content:space-between;align-items:center;margin:9px 0 25px}.game-title p{font-size:.8125rem;color:#7b8873;margin-top:9px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:23px}.game-board{background:#172d30;border:1px solid #2e4744;border-radius:10px;overflow:hidden}.board-top{display:flex;justify-content:space-between;padding:19px;color:#94aaa0;font-size:.5625rem;letter-spacing:.5px}.board-top>span:first-child{display:flex;gap:7px;align-items:center;letter-spacing:1.7px}.live-dot{height:5px;width:5px;background:#c7b87e;border-radius:50%}.board-canvas{height:460px;position:relative}.board-canvas canvas{touch-action:pan-y}.accessible-board{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;max-width:100%;aspect-ratio:1;width:var(--board-size, 344px);height:auto;margin:auto;pointer-events:none}.accessible-board button{pointer-events:auto;position:relative;border-radius:8px;background:transparent;color:#acc4b0;min-width:0}.accessible-board button:disabled{opacity:1}.accessible-board button:focus-visible{outline:2px solid #edd089;outline-offset:-6px;background:#ffffff10}.accessible-board button:hover:not(:disabled){background:#ffffff09}.accessible-board button span{position:absolute;bottom:3px;left:0;right:0;text-align:center;font-size:.5rem;letter-spacing:1px}.accessible-board .hint-cell{box-shadow:inset 0 0 0 2px #e8ce83;animation:pulse 1s infinite alternate}.board-legend{display:flex;align-items:center;gap:18px;padding:16px 20px;border-top:1px solid #2d4541;color:#8fa99b;font-size:.5625rem}.board-legend>span,.board-legend button{display:flex;align-items:center;gap:6px}.board-legend button{margin-left:auto;font-size:.5625rem}.legend-dot{width:7px;height:7px;border-radius:50%}.brass{background:#d4b36b}.mint{background:#94c4a6}.game-panel{border:1px solid var(--line);padding:23px 20px;border-radius:9px;background:#fcfdf9;align-self:start}.game-panel h3{font-size:1rem;margin:13px 0}.game-panel>p{font-size:.75rem;color:#88927e}.move-counter{display:flex;justify-content:space-between;align-items:center;margin:25px 0 14px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.75rem;color:#7e8b74}.move-counter strong{font-size:2.1875rem;font-weight:500;color:#43533b}.move-counter small{font-size:.6875rem;margin-left:6px}.target-line{display:flex;align-items:center;gap:5px;font-size:.625rem;color:#ac986b}.target-line span{margin-left:auto}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:13px;background:#335b47;color:#f4f8ed;border-radius:5px;padding:13px 19px;font-size:.8125rem;font-weight:500}.primary-button:hover:not(:disabled){background:#244833;transform:translateY(-1px)}.run-button{width:100%;margin-top:25px}.game-tools{display:flex;gap:9px;margin-top:13px}.game-tools button{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;gap:7px;border:1px solid #e1e6d8;border-radius:5px;padding:11px 4px;font-size:.5625rem;color:#849377}.hint-button{margin-top:15px;display:flex;align-items:center;gap:6px;padding:12px 4px;width:100%;color:#9b8b62;font-size:.6875rem}.hint-button>span{margin-left:auto;font-size:.5625rem;color:#a6ad9a}.workshop-note{display:flex;gap:10px;border-top:1px solid var(--line);padding-top:19px;margin-top:9px;color:#98a187}.workshop-note p{font-size:.625rem}.stat-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.stat-cards>div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:25px}.stat-cards span{display:block;font-size:.8125rem;color:#8a947f}.stat-cards strong{display:block;font-size:1.9375rem;margin-top:13px;font-weight:500}.chapter-stats{display:grid;grid-template-columns:1fr 1fr;gap:15px}.chapter-stats button{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid var(--line);background:#fcfdf9;border-radius:7px;text-align:left}.chapter-stats button>div{flex:1}.chapter-stats h3{font-size:.875rem}.chapter-stats .progress-track{background:#e8ecdf;margin-bottom:0}.chapter-stats button>span{font-size:.6875rem;color:#92a180}.heading-icon{color:#bbaa74}.empty-state{text-align:center;padding:65px 20px;color:#92a080}.empty-state h3{font-size:1.125rem;color:#4f6444;margin:20px 0 10px}.empty-state p{font-size:.8125rem;margin-bottom:22px}.modal{width:min(480px,calc(100% - 32px));max-height:85dvh;border:1px solid #d7e0cd;border-radius:14px;padding:27px;background:#fafcf5;color:#32482f;box-shadow:0 20px 80px #0b201d44}.modal::backdrop{background:#102421a6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.modal-heading h2{font-size:1.25rem}.help-intro{display:flex;align-items:center;gap:17px;background:#ecf0e3;padding:20px;border-radius:7px;margin:22px 0;color:#839b6e}.help-intro p{font-size:.8125rem}.help-steps{padding-left:24px;font-size:.875rem}.help-steps li{padding:6px 0 6px 8px}.help-steps p{font-size:.75rem;color:#869278;margin-top:5px}.help-rating{border-top:1px solid var(--line);padding-top:17px}.help-rating p,.small-note{font-size:.6875rem;color:#8a987d;line-height:1.8;margin-top:10px}.full{width:100%;margin-top:20px}.setting-row{display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}.setting-row strong{font-size:.875rem}.setting-row p{font-size:.6875rem;color:#859477;margin-top:5px}.toggle{width:44px;height:25px;border-radius:15px;background:#d7dfcf;padding:3px}.toggle span{display:block;width:19px;height:19px;background:#fff;border-radius:50%;transition:transform .2s}.toggle.on{background:#5a8050}.toggle.on span{transform:translate(19px)}.setting-info{display:flex;gap:13px;padding:25px 0;color:#7e916f}.setting-info strong{font-size:.8125rem}.setting-info p{font-size:.75rem;margin-top:8px}.success{text-align:center}.success-icon{margin:25px auto 20px;width:85px;height:85px;border-radius:50%;background:#ece6ce;color:#b59a52;display:grid;place-items:center}.success h2{font-size:1.5rem;margin:10px 0 15px}.success>.stars svg{width:30px;height:30px;margin:0 4px}.success p{font-size:.8125rem;margin:20px 0;color:#869276}.success-actions{display:grid;gap:10px}.success-actions .full{margin-top:0}.toast{position:fixed;bottom:25px;left:calc(50% + 100px);transform:translate(-50%);background:#294737;color:#f3f4e5;border:1px solid #4f6950;padding:15px 18px;box-shadow:0 8px 30px #1c302f30;border-radius:8px;font-size:.75rem;display:flex;gap:12px;align-items:center;z-index:100;max-width:calc(100% - 30px)}.toast button{display:flex;color:#b4c1a2;padding:4px}.fatal{text-align:center;padding:20vh 20px}.fatal p{margin:20px}.nav-scrim{display:none}@keyframes pulse{to{box-shadow:inset 0 0 0 4px #e8ce8370}}@media(min-width:1500px){main{padding-top:45px}.featured{height:315px}.featured-copy{padding:30px 40px}.featured h2{font-size:2rem}.featured p,.featured-copy button{font-size:.8125rem}.feature-footnote{bottom:23px}.card-art{height:178px}.card-details{padding:18px 20px}.card-details h3{font-size:1.0625rem}.card-chapter{font-size:.6875rem}}@media(max-width:1150px){.sidebar{width:218px;padding-left:12px;padding-right:12px}.brand{font-size:1.0625rem;letter-spacing:1.2px}.workspace{margin-left:218px}.topbar{padding:0 27px}main{padding:30px 27px 10px}.page-footer{padding-left:27px;padding-right:27px}.edition{display:none}.puzzle-grid{gap:14px}.card-details{padding:13px 12px}.card-details h3{font-size:.8125rem}.featured-copy{padding-left:25px}.game-layout{grid-template-columns:minmax(0,1fr) 215px;gap:15px}.board-canvas{height:420px}.game-panel{padding:20px 15px}.chapter-select>span{display:none}.chapter-stats{grid-template-columns:1fr}.game-title p{max-width:480px}.board-top{font-size:.5rem;padding:15px 10px}.board-legend{gap:9px;padding:14px 10px}}@media(max-width:960px){.sidebar{width:195px}.brand{font-size:.9375rem;padding-left:5px;gap:8px}.brand small{font-size:.5rem}.main-nav button{font-size:.6875rem;padding-left:10px;gap:8px}.chapter-nav button{font-size:.625rem;padding-left:10px;gap:8px}.workspace{margin-left:195px}.topbar{padding:0 23px;height:65px}.topbar-actions{gap:10px}.breadcrumb{gap:8px;font-size:.625rem}main{padding:27px 23px 10px}h1{font-size:1.625rem}.page-heading p{font-size:.6875rem;max-width:390px}.puzzle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured{height:270px}.featured h2{font-size:1.4375rem}.featured-copy{width:60%}.featured-scene{left:35%;right:-90px;opacity:.85}.feature-level{display:none}.featured-scene:after{background:linear-gradient(90deg,#142b2d,transparent 60%)}.scene-mark{right:110px;font-size:.4375rem}.scene-mark span{display:none}.game-layout{grid-template-columns:1fr}.board-canvas{height:430px}.game-panel{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.game-panel>.eyebrow,.game-panel>h3,.game-panel>p,.workshop-note{display:none}.move-counter{margin:0;grid-column:1;padding:5px 0}.run-button{grid-column:2;grid-row:1;margin:0}.target-line{grid-column:1;grid-row:2}.game-tools{margin:0;grid-column:2;grid-row:2/4}.hint-button{grid-column:1;margin:0}.game-tools button{padding:6px}.stat-cards{gap:10px}.stat-cards>div{padding:17px}.stat-cards strong{font-size:1.5rem}.bottom-note>span:last-child{display:none}.page-footer{padding-left:23px;padding-right:23px;gap:15px}.page-footer i{display:none}.toast{left:calc(50% + 90px)}}@media(max-width:700px){.sidebar{transform:translate(-100%);width:245px;transition:transform .2s}.sidebar.mobile-open{transform:translate(0)}.sidebar .brand{font-size:1.25rem;padding:5px 10px 35px}.sidebar .brand small{font-size:.625rem}.main-nav button{font-size:.8125rem}.chapter-nav button{font-size:.75rem;padding-top:11px;padding-bottom:11px}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0e211c88;z-index:25}.workspace{margin-left:0}.mobile-menu{display:flex}.breadcrumb>svg,.breadcrumb>span,.breadcrumb>svg+span+svg{display:none}.topbar{height:62px;padding:0 14px}.breadcrumb{gap:7px;font-size:.6875rem}.topbar-actions{gap:8px}.topbar-actions .divider,.avatar{display:none}.star-total{font-size:.75rem}.star-total small{font-size:.5625rem}.icon-button{min-width:35px;min-height:35px}.topbar-actions .icon-button{padding:6px}main{padding:27px 19px 10px}.page-heading{margin-bottom:23px}h1{font-size:1.625rem;letter-spacing:.5px}.eyebrow{font-size:.5rem;letter-spacing:1.3px}.page-heading p{font-size:.6875rem;line-height:1.9;max-width:310px}.featured{height:268px;border-radius:8px;margin-bottom:29px}.featured-copy{padding:24px 19px;width:72%}.feature-tag{font-size:.4375rem;letter-spacing:1px;margin-bottom:20px}.featured h2{font-size:1.375rem;letter-spacing:.6px}.featured p{font-size:.625rem}.featured-copy button{padding:11px 12px;font-size:.625rem;gap:13px}.featured-scene{left:37%;right:-145px;opacity:.7}.featured-scene:after{background:linear-gradient(90deg,#142b2d,transparent 75%)}.scene-mark{display:none}.feature-footnote{font-size:.4375rem;bottom:17px}.library-heading{margin-bottom:18px;gap:12px}.library-heading h2{font-size:1rem}.library-heading>div{gap:8px}.library-heading>div>span{font-size:.5625rem;white-space:nowrap}.search-box{width:140px;padding:8px;font-size:.625rem}.search-box input{font-size:.625rem}.filters{gap:5px}.filter-tabs{gap:16px}.filter-tabs button{font-size:.625rem;padding-bottom:12px}.filter-tabs button span{display:none}.chapter-select select{font-size:.625rem;max-width:100px}.puzzle-grid{gap:12px}.card-art{height:125px}.card-details{padding:12px 11px}.card-chapter{font-size:.5rem;gap:3px}.card-chapter svg{width:11px;height:11px}.card-details h3{font-size:.75rem}.card-details h3 svg{width:14px}.card-bottom{margin-top:12px;gap:5px}.difficulty{gap:2px}.difficulty span{font-size:.5rem;margin-left:3px}.difficulty i{width:2px;height:6px}.stars{gap:2px}.stars svg{width:10px;height:10px}.card-number{font-size:.5625rem;top:10px;left:10px}.type-badge,.clear-badge{font-size:.375rem;top:8px;right:8px;padding:3px 4px}.clear-badge svg{width:9px;height:9px}.pagination{align-items:flex-start;flex-direction:column;gap:13px;padding:20px 0}.pagination>div{gap:2px;width:100%;justify-content:space-between}.pagination button{min-width:23px}.bottom-note{font-size:.625rem;padding-top:20px}.page-footer{font-size:.4375rem;padding:17px 19px;gap:14px;line-height:1.6}.page-footer>span:first-child{letter-spacing:1px}.page-footer>span:last-child{max-width:210px;text-align:right}.game-title h1{font-size:1.5625rem}.game-title p{font-size:.75rem}.game-title>.stars svg{width:14px;height:14px}.game-title{gap:12px;align-items:flex-start}.play-heading .eyebrow{font-size:.4375rem}.board-canvas{height:370px}.game-panel{padding:15px}.board-top{padding:16px 12px;font-size:.5rem;gap:8px}.board-top>span:first-child{letter-spacing:.8px}.board-legend{gap:12px;font-size:.5rem}.board-legend button{font-size:.5rem}.toast{left:50%;font-size:.75rem;bottom:20px;width:max-content}.stat-cards{grid-template-columns:1fr}.stat-cards>div{display:flex;align-items:center;justify-content:space-between}.stat-cards strong{margin:0}.chapter-stats button{padding:17px}.modal{padding:22px}.modal-heading h2{font-size:1.125rem}.help-steps p{font-size:.8125rem}.help-steps strong{font-size:.9375rem}.small-note{font-size:.75rem}.success>.stars svg{width:29px;height:29px}.success p{font-size:.75rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:370px){main{padding-left:13px;padding-right:13px}.topbar-actions{gap:2px}.library-heading>div>span{display:none}.filter-tabs{gap:10px}.card-details{padding:10px 8px}.difficulty span{display:none}}.board-canvas{height:auto;aspect-ratio:1;max-width:480px;margin:0 auto}.accessible-board{width:87%;height:87%;max-width:none;aspect-ratio:1}.main-nav button{font-size:.875rem}.chapter-nav button{font-size:.75rem}.page-heading p{font-size:.875rem;max-width:670px}.featured p,.featured-copy button{font-size:.8125rem}.card-details h3{font-size:1rem}.card-chapter{font-size:.75rem}.difficulty span{font-size:.6875rem}.filter-tabs button,.search-box input{font-size:.8125rem}.chapter-select select{font-size:.75rem}.game-panel>p{font-size:.875rem}.game-tools button,.hint-button{font-size:.75rem}.accessible-board button span{font-size:.625rem}.board-top,.board-legend,.board-legend button{font-size:.6875rem}.game-title p,.help-steps p{font-size:.875rem}.pagination button{min-width:32px;min-height:36px}.quiet-button{font-size:.8125rem}.modal p{font-size:.875rem}.sidebar-section-label{font-size:.6875rem}.sidebar-footer{font-size:.5rem}@media(max-width:1150px)and (min-width:701px){.main-nav button{font-size:.75rem}.chapter-nav button{font-size:.6875rem}.featured p,.featured-copy button{font-size:.75rem}.board-top{font-size:.625rem}}@media(max-width:700px){.featured{height:292px}.featured-copy{width:80%}.featured-copy button,.featured p{font-size:.75rem}.page-heading p{font-size:.8125rem;max-width:450px}.library-heading{flex-wrap:wrap}.search-box{width:148px}.filter-tabs{gap:13px}.filter-tabs button{font-size:.75rem}.chapter-select select{max-width:85px;font-size:.6875rem}.card-details h3{font-size:.875rem;line-height:1.7}.card-chapter{font-size:.625rem}.card-bottom{flex-wrap:wrap;gap:8px}.card-bottom .stars svg{width:12px;height:12px}.difficulty span{font-size:.625rem}.pagination button{min-width:27px;min-height:36px}.pagination>div{justify-content:flex-start;gap:4px}.board-top{font-size:.5625rem}.board-legend{gap:10px;font-size:.625rem}.board-legend button{font-size:.625rem}.accessible-board button span{font-size:.5rem}.board-canvas{height:auto}.game-tools button{font-size:.6875rem}.game-title p{font-size:.8125rem}.game-title h1{font-size:1.4375rem}}@media(max-width:700px){.sidebar{visibility:hidden}.sidebar.mobile-open{visibility:visible}}.lab{--lab-ink:#263e3c;--lab-green:#2e6859;--lab-border:#dfe5dc;color:var(--lab-ink)}.lab button{min-height:40px}.lab-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:27px}.lab-heading h1{font-size:1.875rem;letter-spacing:1px}.lab-heading p{font-size:.875rem;color:#7d897f;margin-top:7px}.lab-progress{display:grid;grid-template-columns:auto auto;align-items:center;gap:3px 10px;color:#a68e56}.lab-progress strong{font-size:1.6875rem;font-weight:500;color:#455a48}.lab-progress small{font-size:.8125rem;color:#85907d}.lab-progress>span{grid-column:1/3;font-size:.6875rem;color:#82907c}.mechanism-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid var(--lab-border);border-radius:9px;overflow:hidden;background:#fcfdf9;margin-bottom:26px}.mechanism-tabs>button{display:flex;align-items:center;gap:11px;text-align:left;padding:16px 13px;position:relative;border-right:1px solid var(--lab-border);font-size:.875rem;white-space:nowrap}.mechanism-tabs>button:last-child{border-right:0}.mechanism-tabs>button.active{background:#284c44;color:#f4f0dc}.mechanism-tab-icon{font-family:Arial,sans-serif;display:grid;place-items:center;width:31px;height:33px;font-size:1.625rem;flex-shrink:0;color:#82998c}.mechanism-tabs>button.active .mechanism-tab-icon{color:#d6bd84}.mechanism-tabs small{display:block;font-size:.5625rem;color:#919d8a;letter-spacing:.3px;margin-top:5px;white-space:normal}.mechanism-tabs>button.active small{color:#b2c5b5}.tab-dot{width:4px;height:4px;border-radius:50%;background:#d6bd84;position:absolute;right:9px;top:9px}.challenge-strip{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.challenge-strip>div{display:flex;align-items:center;gap:14px}.lab-pill{font-size:.5625rem;letter-spacing:1.2px;background:#e9eddf;color:#738568;border:1px solid #d9e1cd;border-radius:4px;padding:5px 8px}.challenge-strip h2{font-size:1.125rem;font-weight:600}.challenge-strip>label{display:flex;align-items:center;gap:11px;color:#85917a;font-size:.6875rem}.challenge-strip select{max-width:205px;padding:9px 26px 9px 10px;border:1px solid var(--lab-border);border-radius:5px;background:#fff;color:#52634a;font-size:.75rem;min-height:40px}.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) 274px;gap:22px;align-items:start}.lab-main{min-width:0}.machine-viewport{position:relative;background:#12272e;border:1px solid #2c474a;border-radius:11px;overflow:hidden;box-shadow:0 8px 25px #1c34210a}.machine-topline{display:flex;justify-content:space-between;gap:12px;padding:18px 19px 0;color:#6b9195;letter-spacing:1.2px;font-size:.5rem;position:relative;z-index:1;pointer-events:none}.machine-topline>span:first-child{display:flex;align-items:center;gap:6px;color:#94aaa6}.machine-topline i{width:5px;height:5px;border-radius:50%;background:#6a8384}.machine-topline .machine-live i{background:#b9cf95;box-shadow:0 0 8px #b9cf9540}.machine-canvas{height:365px;position:relative}.machine-canvas canvas{touch-action:none}.machine-loading{height:100%;display:flex;align-items:center;justify-content:center;gap:12px;color:#b3c5b9;font-size:.875rem}.machine-source,.machine-output{position:absolute;top:53px;left:20px;color:#cbbb8d;pointer-events:none;z-index:2;display:grid;gap:4px}.machine-source>span:first-child,.machine-output>span:first-child{font-size:.5rem;letter-spacing:1.5px;color:#7d9c99}.machine-source strong,.machine-output strong{font-size:1.4375rem;font-weight:500;line-height:1.3}.machine-source strong small,.machine-output strong small{font-size:.625rem;color:#819b92}.machine-source>span:last-child,.machine-output>span:last-child{font-size:.625rem;color:#95aaa0}.machine-output{left:auto;right:20px;text-align:right;color:#88c6b6}.machine-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 18px 14px;font-size:.5625rem;color:#6f938f;pointer-events:none}.playback-bar{background:#1c343b;display:flex;gap:14px;align-items:center;border-top:1px solid #2c474b;padding:10px 14px;color:#a2b8ae}.playback-bar button{display:flex;gap:7px;align-items:center;font-size:.6875rem;padding:6px 8px;border-radius:4px;color:#b5c9bd;white-space:nowrap}.playback-bar button:hover{background:#2b474a}.playback-bar button.animation-button{color:#e2cf9b;background:#304744;padding:8px 12px}.playback-bar label{display:flex;align-items:center;gap:8px;font-size:.625rem;white-space:nowrap}.playback-bar select{background:#1c343b;color:#d5dcc7;border:1px solid #49605e;border-radius:4px;padding:7px 6px;font-size:.6875rem;min-height:37px}.playback-divider{height:18px;width:1px;background:#355054;margin-left:auto}.playback-bar .view-selected{color:#e2cf9b}.drive-flow{display:flex;align-items:stretch;gap:3px;margin:16px 0;overflow-x:auto;padding:0 0 3px}.flow-source{display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:60px}.flow-source>span{font-size:.5rem;color:#95a084;letter-spacing:1px}.flow-source strong{font-size:.75rem;font-weight:500;white-space:nowrap}.flow-segment{display:flex;align-items:center;gap:5px;flex:1;min-width:0}.flow-segment>svg{color:#a6b19c;width:13px}.flow-segment>button{border:1px solid #e0e6d6;background:#fdfefb;border-radius:5px;padding:10px 11px;text-align:left;flex:1;min-width:0}.flow-segment>button.active{border-color:#81a390;box-shadow:0 0 0 1px #81a390;background:#edf3e9}.flow-segment button>span{display:flex;gap:5px;align-items:center;font-size:.625rem;color:#799379;white-space:nowrap}.flow-segment strong{display:block;font-weight:600;font-size:1rem;letter-spacing:.7px;margin-top:6px}.flow-segment strong small{display:block;font-size:.625rem;letter-spacing:0;font-weight:400;margin-top:5px;color:#8a9a7f}.part-editor{padding:20px;background:#fcfdf9;border:1px solid var(--lab-border);border-radius:9px}.editor-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.editor-title>div{display:flex;gap:8px;align-items:center}.editor-title h3{font-size:.875rem;font-weight:600}.editor-title>div>span{font-size:.625rem;color:#8d9b83;border:1px solid #e0e6d7;border-radius:4px;padding:3px 7px}.editor-title>div>svg{color:#809779}.editor-title>button{display:flex;gap:6px;align-items:center;font-size:.6875rem;color:#8a9982;padding:0}.transmission-options{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:19px}.transmission-options button{display:flex;justify-content:center;gap:7px;align-items:center;border:1px solid #e1e6db;border-radius:5px;font-size:.75rem;padding:10px 4px;color:#7e9277}.lab .chosen{border-color:#829f88!important;color:#375e42!important;background:#edf2e4!important}.wheel-selectors{display:grid;grid-template-columns:1fr 1fr;gap:19px}.wheel-selectors label{font-size:.8125rem;display:flex;align-items:center;gap:8px;color:#546d4a;margin-bottom:8px}.wheel-selectors label small{font-size:.625rem;color:#95a087}.wheel-selectors>div>div{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.wheel-selectors button{border:1px solid #e1e6d8;border-radius:4px;background:#fff;font-size:.875rem;padding:4px 2px;color:#758b6e;font-family:DM Sans,sans-serif}.wheel-selectors>div:first-child .chosen{background:#f3edda!important;color:#907238!important;border-color:#c9b481!important}.belt-mode{display:flex;align-items:center;gap:8px;margin-top:18px;padding-top:17px;border-top:1px solid #e8ecdf}.belt-mode>span{font-size:.75rem;color:#86967d;margin-right:4px}.belt-mode>button{border:1px solid #e0e6d6;border-radius:5px;padding:6px 12px;font-size:.75rem;color:#7e9175}.belt-mode small{font-size:.625rem;margin-left:6px;color:#94a087}.transmission-note{font-size:.6875rem;color:#8d9b7f;margin-top:16px}.stroke-selector{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-top:17px;border-top:1px solid #e4e8da;padding-top:16px}.stroke-selector label{font-size:.75rem;color:#687f5e}.stroke-selector label small{display:block;font-size:.625rem;color:#95a386;margin-top:4px}.stroke-selector>div{display:flex;gap:5px}.stroke-selector button{padding:6px 10px;border:1px solid #dee6d2;border-radius:5px;font-size:.75rem;color:#829576}.target-panel{border:1px solid var(--lab-border);border-radius:9px;background:#fcfdf9;padding:22px}.target-heading{display:flex;align-items:center;justify-content:space-between;color:#8b9b79}.target-heading>span{font-size:.5625rem;letter-spacing:2px}.target-panel>h2{font-size:1.125rem;line-height:1.5;margin:15px 0 10px}.target-panel>p{font-size:.75rem;color:#8b967e;line-height:1.9}.target-speed{border-top:1px solid #e5e9dc;margin-top:20px;padding-top:19px}.target-speed>span{font-size:.6875rem;color:#93a083}.target-speed>strong{display:block;font-size:2.9375rem;color:#496242;font-weight:500;letter-spacing:-1px;line-height:1.2;margin:10px 0}.target-speed>strong>small{font-size:.875rem;font-weight:400;letter-spacing:0;margin-left:9px;color:#9ba58d}.target-speed>div{font-size:.8125rem;color:#778c69;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.target-speed>div>small{font-size:.5625rem;color:#a4ad98}.goal-checks{display:grid;gap:13px;padding:19px 0;border-bottom:1px solid #e3e9d8;margin-bottom:18px}.goal-checks>div{display:flex;justify-content:space-between;align-items:center;gap:6px;color:#a2aa97;font-size:.6875rem}.goal-checks>div>span{display:flex;align-items:center;gap:7px}.goal-checks strong{font-size:.6875rem;font-weight:400;color:#8d9b80}.goal-checks .met,.goal-checks .met strong{color:#658662}.check-ring{width:13px;height:13px;border-radius:50%;border:1px solid #c7d1bc}.check-answer{width:100%;font-size:.8125rem}.lab-secondary-actions{display:flex;justify-content:space-between;gap:10px;margin:11px 0}.lab-secondary-actions button{display:flex;gap:7px;align-items:center;font-size:.6875rem;color:#8b9a7d;padding:5px 2px}.ratio-note{display:flex;flex-wrap:wrap;justify-content:space-between;border-top:1px solid #e8eddf;padding-top:17px;margin-top:5px;gap:8px}.ratio-note>span{font-size:.6875rem;color:#94a285}.ratio-note>strong{font-size:.8125rem;font-weight:500;color:#647b59}.ratio-note small{flex-basis:100%;font-size:.5625rem;color:#a5af99}.motion-goal{display:flex;gap:20px;padding-top:17px}.motion-goal>span{font-size:.625rem;color:#8d9e7e;flex:1}.motion-goal strong{display:block;font-size:1.4375rem;font-weight:500;color:#6f865f;margin-top:6px}.motion-goal small{font-size:.5625rem;font-weight:400;margin-left:4px;color:#9baa8b}.lab-hint{font-size:.75rem;line-height:1.9;background:#f3efdd;border:1px solid #e4dab6;border-radius:6px;padding:13px;color:#948155;margin:10px 0}.lab-feedback{margin:16px 0;padding:17px;border-radius:7px;background:#edf2e4;border:1px solid #ccdcb9;color:#6d875b}.lab-feedback.success{text-align:center}.lab-feedback h3{font-size:1.0625rem;margin:7px 0}.lab-feedback p{font-size:.75rem;line-height:1.8;margin:7px 0}.lab-feedback button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:#537c4d;border-radius:4px;color:#f4f6e9;padding:9px 5px;font-size:.75rem;margin-top:13px}.lab-feedback.retry{background:#f3efe1;color:#938155;border-color:#e4d9b6}.mechanism-info{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid #e2e7d8;margin-top:4px}.mechanism-info>div{display:flex;align-items:center;gap:16px;max-width:680px}.mechanism-info-icon{font-size:2.0625rem;color:#96a480;flex-shrink:0}.mechanism-info h3{font-size:.875rem;font-weight:500;color:#6f825c;margin-bottom:5px}.mechanism-info p{font-size:.75rem;color:#92a081;line-height:1.8}.mechanism-info>button{display:flex;align-items:center;gap:7px;font-size:.6875rem;white-space:nowrap;color:#839675}.lab-help{padding:20px;border:1px solid #dce5cf;border-radius:8px;background:#eff3e7;margin-top:15px}.lab-help h3{font-size:1rem}.lab-help li,.lab-help p{font-size:.875rem;color:#7c916c;line-height:1.9}.lab-help a{text-decoration:underline}.lab-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0}.lab-bottom button{display:flex;gap:7px;align-items:center;font-size:.75rem;color:#839976;white-space:nowrap}.lab-bottom>span{font-size:.625rem;color:#a0ae92;text-align:center}.lab-version{font-size:.6875rem;color:#799180;letter-spacing:1px}@media(min-width:1500px){.machine-canvas{height:435px}.mechanism-tabs>button{padding:20px 19px;font-size:.9375rem}.mechanism-tabs small{font-size:.625rem}.lab-layout{grid-template-columns:minmax(0,1fr) 296px}.target-panel{padding:25px}.target-panel>p{font-size:.875rem}.target-panel>h2{font-size:1.25rem}.goal-checks>div,.goal-checks strong{font-size:.8125rem}.lab-heading h1{font-size:2.0625rem}.machine-topline{font-size:.625rem}}@media(max-width:1200px){.lab-layout{grid-template-columns:minmax(0,1fr) 230px;gap:15px}.target-panel{padding:17px}.target-panel>h2{font-size:1rem}.mechanism-tabs>button{padding:15px 9px;gap:5px;font-size:.75rem}.mechanism-tab-icon{width:24px;font-size:1.4375rem}.mechanism-tabs small{font-size:.5rem}.machine-canvas{height:345px}.machine-topline>span:last-child{display:none}.playback-bar{gap:6px;padding:8px}.playback-bar label{gap:4px;font-size:.5625rem}.playback-bar button{font-size:.625rem;gap:4px;padding:6px}.playback-bar button.animation-button{padding:8px}.playback-divider{display:none}.part-editor{padding:16px}.transmission-options{gap:5px}.transmission-options button{font-size:.6875rem;gap:3px}.wheel-selectors{gap:12px}.flow-source{min-width:47px}.flow-source strong{font-size:.625rem}.flow-segment>button{padding:8px}.flow-segment button>span{font-size:.5625rem;gap:3px}.flow-segment button>span>svg{display:none}.flow-segment strong{font-size:.875rem}.flow-segment strong small{font-size:.5625rem}.mechanism-info{align-items:flex-start}.mechanism-info>div{gap:11px}.lab-progress{display:none}}@media(max-width:1000px){.lab-layout{grid-template-columns:minmax(0,1fr)}.mechanism-tabs{gap:0}.mechanism-tabs>button{justify-content:center;flex-direction:column;text-align:center;gap:6px}.mechanism-tabs small{display:none}.mechanism-tabs .mechanism-tab-icon{height:25px}.machine-canvas{height:355px}.target-panel{display:grid;grid-template-columns:1fr 1fr;gap:9px 23px;padding:22px}.target-heading{grid-column:1/3}.target-panel>h2{margin:2px 0;font-size:1.1875rem;grid-column:1}.target-panel>p{grid-column:1;font-size:.75rem}.target-speed{grid-column:2;grid-row:2/5;border:0;margin:0;padding:0;text-align:right}.target-speed>strong{margin:7px 0}.target-speed>div{justify-content:flex-end}.goal-checks{grid-column:1/3;grid-template-columns:1fr 1fr;margin:0;padding:13px 0;border-top:1px solid #e4e9db}.check-answer{grid-column:2;grid-row:auto}.lab-secondary-actions{grid-column:1;grid-row:auto;align-self:center;margin:0;grid-row:6}.check-answer{grid-row:6}.ratio-note{grid-column:1/3}.motion-goal{grid-column:1;padding-top:7px;gap:14px}.motion-goal strong{font-size:1.1875rem}.lab-feedback,.lab-hint{grid-column:1/3;margin:4px 0}.lab-feedback.success{display:grid;grid-template-columns:auto 1fr;gap:0 13px;text-align:left}.lab-feedback.success>svg{grid-row:1/3;align-self:center}.lab-feedback.success h3{margin:0}.lab-feedback.success p{margin:6px 0 0}.lab-feedback.success button{grid-column:1/3}.playback-bar{padding:10px 14px;gap:12px}.playback-bar button{font-size:.6875rem}.playback-divider{display:block}.playback-bar label{font-size:.6875rem}.transmission-options button{font-size:.8125rem;gap:7px}.flow-segment button>span{font-size:.6875rem}.flow-segment button>span>svg{display:block}.flow-segment strong{font-size:1.0625rem}.flow-segment strong small{display:inline;margin-left:9px;font-size:.625rem}.mechanism-info{flex-direction:column;gap:5px}.mechanism-info>button{align-self:flex-end}.lab-bottom{flex-wrap:wrap}.lab-bottom>span{order:3;flex-basis:100%}}@media(max-width:700px){.lab-heading{margin-bottom:22px}.lab-heading h1{font-size:1.625rem}.lab-heading p{font-size:.8125rem;max-width:290px;line-height:1.9}.mechanism-tabs{margin-bottom:20px}.mechanism-tabs>button{padding:12px 3px;font-size:.6875rem;gap:7px}.mechanism-tabs>button:last-child{font-size:.625rem}.mechanism-tab-icon{font-size:1.5rem}.challenge-strip{flex-wrap:wrap;gap:12px}.challenge-strip>div{gap:10px;flex-wrap:wrap}.challenge-strip h2{font-size:1.0625rem}.lab-pill{font-size:.5rem}.challenge-strip>label{width:100%;justify-content:space-between;font-size:.75rem}.challenge-strip select{max-width:230px;flex:1;font-size:.8125rem}.machine-topline{padding:15px 14px 0;font-size:.5rem;letter-spacing:1px}.machine-canvas{height:295px}.machine-source,.machine-output{top:44px;left:14px}.machine-output{right:14px;left:auto}.machine-source strong,.machine-output strong{font-size:1.4375rem}.machine-caption{padding:0 12px 12px;font-size:.5rem;gap:6px}.machine-caption>span:last-child{display:none}.playback-bar{flex-wrap:wrap;gap:7px;padding:10px}.playback-bar label{font-size:.625rem;gap:5px}.playback-bar button{font-size:.625rem;gap:5px;padding:7px 4px}.playback-bar .animation-button{padding:8px 9px}.playback-bar select{font-size:.6875rem;padding:7px 3px}.playback-divider{display:none}.playback-bar>button:last-child{margin-left:auto}.drive-flow{margin:13px 0;gap:1px}.flow-source{min-width:42px}.flow-source>span{font-size:.4375rem}.flow-source strong{font-size:.5625rem}.flow-segment{gap:2px}.flow-segment>svg{width:10px}.flow-segment>button{padding:9px 7px;min-width:0}.flow-segment button>span{font-size:.5625rem;gap:3px;white-space:normal}.flow-segment button>span>svg{display:none}.flow-segment strong{font-size:.9375rem;white-space:nowrap;letter-spacing:0}.flow-segment strong small{display:block;margin-left:0;font-size:.5625rem;margin-top:4px}.part-editor{padding:16px 13px}.editor-title{margin-bottom:13px}.editor-title h3{font-size:.875rem}.editor-title>div{gap:6px}.editor-title>div>span{display:none}.editor-title>button{font-size:.6875rem;gap:4px}.transmission-options{gap:5px;margin-bottom:17px}.transmission-options button{flex-direction:column;gap:5px;font-size:.6875rem;padding:9px 3px;min-height:57px}.transmission-options svg{width:17px;height:17px}.wheel-selectors{gap:13px}.wheel-selectors label{font-size:.75rem;gap:6px}.wheel-selectors label small{font-size:.5625rem}.wheel-selectors>div>div{gap:3px}.wheel-selectors button{font-size:.8125rem;min-height:42px}.belt-mode{gap:6px;padding-top:14px;margin-top:15px}.belt-mode>span{font-size:.6875rem;margin-right:0}.belt-mode button{padding:7px 9px;font-size:.6875rem}.belt-mode small{font-size:.5625rem;margin-left:4px}.transmission-note{font-size:.6875rem}.stroke-selector{flex-wrap:wrap;gap:11px}.stroke-selector>div{flex:1;justify-content:flex-end}.stroke-selector button{font-size:.75rem;padding:5px 8px;white-space:nowrap}.stroke-selector label{font-size:.6875rem}.stroke-selector label small{font-size:.5625rem}.target-panel{padding:19px 16px;gap:9px 15px}.target-panel>h2{font-size:1.0625rem}.target-panel>p{font-size:.75rem}.target-speed>span{font-size:.625rem}.target-speed>strong{font-size:2.375rem}.target-speed>strong>small{font-size:.75rem}.target-speed>div{font-size:.75rem}.target-speed>div>small{font-size:.5rem}.target-heading>span{font-size:.5625rem}.goal-checks{gap:12px 15px}.goal-checks>div,.goal-checks strong{font-size:.625rem}.goal-checks>div>span{gap:4px}.goal-checks svg{width:13px}.check-answer{font-size:.8125rem;padding:13px 8px}.lab-secondary-actions{gap:6px}.lab-secondary-actions button{font-size:.6875rem;gap:4px}.motion-goal{gap:13px}.motion-goal>span{font-size:.5625rem}.motion-goal strong{font-size:1.25rem}.motion-goal small{font-size:.5rem}.mechanism-info{padding:20px 0 10px;gap:4px}.mechanism-info-icon{font-size:1.6875rem}.mechanism-info h3{font-size:.875rem}.mechanism-info p{font-size:.75rem}.mechanism-info>div{align-items:flex-start}.lab-bottom{padding:12px 0;gap:7px}.lab-bottom>span{font-size:.625rem}.lab-help{padding:16px}.lab-help ol{padding-left:20px}.lab-help p,.lab-help li{font-size:.8125rem}}.lab .transmission-options button,.lab .wheel-selectors label,.lab .belt-mode button{font-size:.875rem}.lab .wheel-selectors button{font-size:1rem}.lab .target-panel>p,.lab .transmission-note,.lab .mechanism-info p{font-size:.8125rem}.lab .playback-bar button,.lab .lab-secondary-actions button{font-size:.75rem}.lab .goal-checks>div,.lab .goal-checks strong{font-size:.75rem}.lab .flow-segment button>span{font-size:.75rem}.lab .stroke-selector button{font-size:.8125rem}.lab .machine-caption{font-size:.625rem}@media(max-width:1200px)and (min-width:1001px){.lab .transmission-options button{font-size:.6875rem}.lab .flow-segment button>span{font-size:.625rem}.lab .playback-bar button{font-size:.625rem}}@media(max-width:700px){.lab .transmission-options button{font-size:.75rem}.lab .wheel-selectors label{font-size:.8125rem}.lab .wheel-selectors button{font-size:.875rem}.lab .belt-mode button{font-size:.75rem}.lab .goal-checks>div,.lab .goal-checks strong{font-size:.6875rem}.lab .flow-segment button>span{font-size:.625rem}.lab .playback-bar button{font-size:.625rem}.lab .lab-secondary-actions button{font-size:.6875rem}.lab .machine-caption{font-size:.5625rem}.lab .target-panel>p{font-size:.75rem}}.atlas{color:#2d4542}.atlas-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.atlas-heading h1{font-size:1.75rem}.atlas-heading p{font-size:.875rem;color:#829084;margin-top:9px}.atlas-progress{display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:center;color:#ad945f}.atlas-progress strong{font-size:1.75rem;color:#53684b;font-weight:500}.atlas-progress small{font-size:.75rem;color:#93a087}.atlas-progress>span{grid-column:1/3;font-size:.6875rem;text-align:center;color:#94a182}.atlas-categories{display:flex;gap:6px;overflow-x:auto;padding:4px 0 13px;margin-bottom:7px;scrollbar-width:thin}.atlas-categories button{white-space:nowrap;padding:10px 12px;border:1px solid #dde5d6;border-radius:6px;background:#fcfdf9;font-size:.75rem;min-height:42px}.atlas-categories button>span{font-size:.5625rem;color:#94a287;margin-right:7px}.atlas-categories button.active{background:#2c5449;color:#f2f2df;border-color:#2c5449}.atlas-categories button.active>span{color:#cdb887}.atlas-browser-heading{display:flex;justify-content:space-between;align-items:center;margin:10px 0 13px;gap:10px;font-size:.8125rem}.atlas-browser-heading>span{color:#68805e}.atlas-browser-heading small{font-size:.6875rem;color:#98a58e;margin-left:8px}.atlas-browser-heading>div{display:flex;align-items:center;gap:17px}.atlas-unfinished{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:.75rem;color:#829775}.atlas-unfinished input{accent-color:#3e765c;width:15px;height:15px}.atlas-search{display:flex;align-items:center;gap:8px;border:1px solid #e0e6d8;border-radius:5px;background:#fff;padding:9px 11px;color:#98a88a}.atlas-search input{border:0;background:none;outline:0;width:170px;font-size:.75rem;color:#5d7352}.atlas-catalog{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto;padding:2px 2px 4px;margin-bottom:26px;scrollbar-width:thin}.atlas-catalog>button{display:flex;align-items:center;gap:8px;text-align:left;border:1px solid #dfe7d6;border-radius:6px;background:#fcfdf9;padding:12px 10px;font-size:.75rem;min-height:55px;line-height:1.6}.atlas-catalog>button:hover{background:#eaf1e4}.atlas-catalog>button.active{border-color:#779b82;background:#e9f0e0;box-shadow:0 0 0 1px #779b82}.atlas-id{font-size:.625rem;color:#97a78b;letter-spacing:.6px}.atlas-catalog>button>svg{margin-left:auto;color:#819971;flex-shrink:0;width:13px}.atlas-catalog>button>span:nth-child(2){flex:1}.atlas-empty{grid-column:1/-1;padding:25px;font-size:.875rem;color:#879879}.atlas-selected-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0 16px}.atlas-selected-title>div{display:flex;gap:12px;align-items:center}.atlas-selected-title h2{font-size:1.3125rem}.atlas-selected-title>span{font-size:.6875rem;color:#94a289;display:flex;gap:6px;align-items:center;white-space:nowrap}.atlas-workspace{display:grid;grid-template-columns:minmax(0,1fr) 274px;gap:22px;align-items:start}.atlas-main{min-width:0}.atlas-viewport{background:#10272e;border:1px solid #29464d;border-radius:10px;overflow:hidden}.atlas-scene-top{display:flex;justify-content:space-between;padding:17px 18px 0;gap:10px;font-size:.5625rem;letter-spacing:1px;color:#7e9e9c}.atlas-scene-top>span:first-child{display:flex;align-items:center;gap:7px}.atlas-scene-top i{width:5px;height:5px;background:#5b7a7d;border-radius:50%}.atlas-scene-top i.active{background:#cccb8b}.atlas-canvas{height:380px}.atlas-canvas canvas{touch-action:none}.atlas-scene-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.5625rem;color:#789a96;padding:0 16px 14px}.atlas-scene-caption>span:last-child{display:flex;align-items:center;gap:5px}.atlas-scene-caption i{width:6px;height:6px;background:#d7b77b;border-radius:50%}.atlas-scene-caption i:nth-of-type(2){background:#79c0b0;margin-left:6px}.atlas-scene-caption i:nth-of-type(3){background:#849da5;margin-left:6px}.atlas-playback{display:flex;align-items:center;gap:16px;padding:10px 13px;border-top:1px solid #304b4c;background:#1a343b;color:#a6beb4}.atlas-playback button{display:flex;gap:7px;align-items:center;font-size:.75rem;padding:9px 10px;border-radius:4px;min-height:40px}.atlas-playback button:first-child{background:#304843;color:#dfca91}.atlas-playback label{display:flex;gap:6px;align-items:center;font-size:.6875rem}.atlas-playback select{padding:7px;border:1px solid #45615e;border-radius:4px;background:#1a343b;color:#bfcebd;font-size:.75rem;min-height:37px}.atlas-playback button:nth-last-child(2){margin-left:auto}.atlas-controls{margin-top:18px;border:1px solid #dce5d4;background:#fcfdf8;border-radius:9px;padding:20px}.atlas-controls h3{display:flex;align-items:center;gap:9px;font-size:.9375rem;font-weight:500;margin-bottom:20px}.atlas-control-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid #e6ecdd}.atlas-control-row>label{font-size:.875rem;flex:1}.atlas-control-row>label small{display:block;font-size:.625rem;color:#95a789;margin-top:5px}.atlas-control-row>div{display:flex;gap:7px}.atlas-control-row button{min-width:60px;min-height:43px;border:1px solid #e0e8d6;background:#fff;border-radius:5px;padding:8px 11px;font-size:.9375rem;color:#7a946b}.atlas-control-row button small{font-size:.625rem;color:#9cac8e;margin-left:5px}.atlas-control-row button.chosen{background:#edf2e2;border-color:#95ac7d;color:#4d7348}.atlas-scrub{margin-top:13px;border-top:1px solid #e1e8d6;padding-top:15px;color:#91a181;font-size:.75rem}.atlas-scrub summary{cursor:pointer;min-height:30px}.atlas-scrub label{display:block;padding-top:8px}.atlas-scrub input{width:100%;accent-color:#5f8860;margin:12px 0;display:block}.atlas-scrub p{font-size:.6875rem}.atlas-mission{background:#fcfdf8;border:1px solid #dce4d4;padding:22px;border-radius:9px}.atlas-mission>h3{font-size:1.125rem;margin:17px 0 11px}.atlas-mission>p{font-size:.8125rem;line-height:1.9;color:#86987a}.atlas-target{padding:19px 0;border-top:1px solid #e2e9d8;border-bottom:1px solid #e2e9d8;margin-top:18px}.atlas-target>span{font-size:.75rem;color:#899e7c}.atlas-target strong{display:block;font-size:2.625rem;font-weight:500;line-height:1.2;margin-top:10px;color:#4f7348}.atlas-target strong small{font-size:.875rem;margin-left:8px;color:#9aac8a}.atlas-target-spec{margin:17px 0;font-size:.75rem;display:grid;gap:12px}.atlas-target-spec>div{display:flex;justify-content:space-between;gap:8px}.atlas-target-spec dt{color:#8c9f7e}.atlas-target-spec dd{margin:0;color:#6c8860}.atlas-current{padding:17px 0;border-top:1px solid #e0e8d4;font-size:.75rem;color:#a1ae90}.atlas-current>strong{font-size:1.375rem;font-weight:500;display:block;margin:8px 0 14px;color:#79936a}.atlas-current>strong>small{font-size:.75rem;margin-left:8px}.atlas-current>div{display:flex;align-items:center;gap:7px;margin-top:9px}.atlas-current .met{color:#598455}.atlas-mission .lab-feedback{margin:15px 0}.atlas-mission>p.atlas-model-note{font-size:.625rem;border-top:1px solid #e4eadb;padding-top:15px;margin-top:12px;color:#a0ad91}.atlas-next{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 0}.atlas-next button{display:flex;align-items:center;gap:8px;min-height:40px;font-size:.75rem;color:#789468}.atlas-next>span{font-size:.625rem;color:#9bac8c;text-align:center}.atlas-about{font-size:.75rem;color:#99a98c;border-top:1px solid #e3e9d9;padding:20px 0}.atlas-about summary{cursor:pointer;min-height:34px}.atlas-about p{font-size:.8125rem;line-height:1.9;margin-top:12px}.atlas-about a{text-decoration:underline}.atlas-active .sidebar .chapter-nav,.atlas-active .sidebar .chapter-label,.atlas-active .sidebar .workshop-progress,.atlas-active .sidebar-bottom .quiet-button{display:none}@media(min-width:1500px){.atlas-canvas{height:450px}.atlas-catalog>button{font-size:.875rem}.atlas-workspace{grid-template-columns:minmax(0,1fr) 296px}}@media(max-width:1150px){.atlas-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.atlas-workspace{grid-template-columns:minmax(0,1fr) 235px;gap:15px}.atlas-mission{padding:17px}.atlas-progress{display:none}.atlas-heading h1{font-size:1.5625rem}.atlas-control-row{flex-wrap:wrap}.atlas-control-row>div{flex:1;justify-content:flex-end}.atlas-controls{padding:16px}.atlas-playback{gap:9px}.atlas-playback button{font-size:.6875rem;padding:8px}.atlas-scene-caption>span:last-child{display:none}.atlas-selected-title h2{font-size:1.1875rem}.atlas-browser-heading small{display:none}}@media(max-width:960px){.atlas-workspace{grid-template-columns:1fr}.atlas-canvas{height:350px}.atlas-mission{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;padding:22px}.atlas-mission>.target-heading,.atlas-mission>.lab-feedback,.atlas-mission>.lab-hint,.atlas-mission>.atlas-model-note{grid-column:1/3}.atlas-mission>h3{grid-column:1;margin:4px 0;font-size:1.0625rem}.atlas-mission>p{grid-column:1;font-size:.75rem}.atlas-target{grid-column:2;grid-row:2/4;border:0;margin:0;padding:0;text-align:right}.atlas-target>strong{font-size:2.3125rem}.atlas-target-spec{grid-column:1;margin:4px 0}.atlas-current{grid-column:2;grid-row:4/7;padding:0;border:0;text-align:right}.atlas-current>div{justify-content:flex-end}.atlas-mission>.check-answer{grid-column:1;align-self:center}.atlas-mission>.lab-secondary-actions{grid-column:1;margin:0}.atlas-selected-title>span{display:none}.atlas-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.atlas-heading h1{font-size:1.5rem;line-height:1.6}.atlas-heading p{font-size:.8125rem;max-width:300px}.atlas-heading .eyebrow{font-size:.4375rem;letter-spacing:1px}.atlas-categories button{font-size:.75rem;padding:9px 10px}.atlas-categories{margin-bottom:5px}.atlas-browser-heading{align-items:flex-start;flex-direction:column;gap:10px}.atlas-browser-heading>div{width:100%;justify-content:space-between;gap:8px}.atlas-search input{width:155px;font-size:.75rem}.atlas-unfinished{font-size:.75rem}.atlas-catalog{gap:7px;max-height:230px;margin-bottom:22px}.atlas-catalog>button{padding:10px 8px;font-size:.75rem;gap:6px;min-height:57px}.atlas-id{font-size:.5625rem}.atlas-catalog>button>svg{width:11px}.atlas-selected-title>div{align-items:flex-start;flex-direction:column;gap:10px}.atlas-selected-title h2{font-size:1.3125rem}.atlas-canvas{height:310px}.atlas-scene-top{font-size:.5rem;padding:14px 12px 0}.atlas-scene-caption{font-size:.5625rem;padding:0 12px 12px}.atlas-playback{gap:6px;padding:9px}.atlas-playback button{font-size:.625rem;gap:4px;white-space:nowrap;padding:8px 6px}.atlas-playback label{font-size:.625rem;gap:4px}.atlas-playback select{font-size:.6875rem;padding:6px 3px}.atlas-controls{padding:17px 13px}.atlas-controls h3{font-size:.9375rem;margin-bottom:13px}.atlas-control-row{gap:10px}.atlas-control-row>label{font-size:.8125rem;min-width:102px}.atlas-control-row>label>small{font-size:.5625rem}.atlas-control-row>div{gap:5px}.atlas-control-row button{min-width:47px;padding:8px 7px;font-size:.875rem}.atlas-control-row button small{font-size:.5625rem;margin-left:3px}.atlas-mission{gap:10px 16px;padding:18px 16px}.atlas-mission>h3{font-size:1rem}.atlas-mission>p{font-size:.75rem}.atlas-target>strong{font-size:2.0625rem}.atlas-target>strong small{font-size:.75rem;margin-left:4px}.atlas-target>span{font-size:.6875rem}.atlas-target-spec{font-size:.6875rem}.atlas-current>span{font-size:.625rem}.atlas-current>strong{font-size:1.5rem}.atlas-mission .check-answer{font-size:.75rem;padding:12px 8px}.atlas-mission .lab-secondary-actions{flex-wrap:wrap;gap:5px}.atlas-next{flex-wrap:wrap;gap:6px;padding:15px 0}.atlas-next>span{order:3;flex-basis:100%;font-size:.625rem}.atlas-mission>p.atlas-model-note{font-size:.6875rem}.atlas-about,.atlas-about p{font-size:.75rem}}@media(max-width:960px){.atlas-mission>.check-answer{grid-row:5}.atlas-mission>.lab-secondary-actions{grid-row:6}.atlas-mission>.lab-feedback{grid-row:7}.atlas-mission>.atlas-model-note{grid-row:auto}}.data-settings{margin-top:20px}.text-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:1rem}.text-setting select{font:inherit;padding:10px;border:1px solid #9cab99;border-radius:6px;background:#fff;color:#294737}.data-settings p{line-height:1.8;margin:12px 0;overflow-wrap:anywhere}.data-settings h3{margin-top:24px}.data-actions{display:flex;gap:12px;flex-wrap:wrap}.data-actions button,.data-actions>label{position:relative;overflow:hidden;border:1px solid #91a28e;border-radius:6px;padding:12px;min-height:44px;font-size:.875rem;cursor:pointer}.data-actions input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;cursor:pointer}.data-actions label:focus-within{outline:2px solid #335b47}.modal{overflow:auto}.setting-row{gap:16px}.toggle{flex-shrink:0}button,input,select{touch-action:manipulation}.atlas-control-row>.gesture-slider{display:flex;flex-direction:column;flex:1;min-width:150px;gap:4px}.gesture-slider output{font-size:1.1rem;color:#335b47}.gesture-slider input{width:100%;min-height:44px;accent-color:#497c66;cursor:ew-resize}.range-ticks{display:flex;justify-content:space-between;font-size:.75rem;color:#65806b}.atlas-selected-title{touch-action:pan-y;-webkit-user-select:none;user-select:none}.auto-judge{padding:12px 0;color:#55785b;font-size:.875rem}.atlas-control-row>label{overflow-wrap:anywhere}.atlas-heading,.atlas-selected-title,.atlas-playback{flex-wrap:wrap}.atlas-mission{overflow-wrap:anywhere}.atlas-mission>.auto-judge{grid-column:1;grid-row:5}@media(max-width:700px){.atlas-control-row>label{min-width:100%}.atlas-mission{display:block}.atlas-target,.atlas-current{text-align:left}.atlas-current>div{justify-content:flex-start}.atlas-mission>.lab-secondary-actions{margin:12px 0}.atlas-selected-title>span{display:block;font-size:.75rem}.topbar{height:auto;min-height:62px;flex-wrap:wrap;gap:8px;padding-top:8px;padding-bottom:8px}.breadcrumb{flex:1;min-width:150px}.atlas-search input{max-width:100%}.atlas-browser-heading>div{flex-wrap:wrap}.atlas-search{max-width:100%}}
