@import url('/assets/fonts/fonts.css');
:root{--paper:#f5f5ed;--ink:#253e30;--muted:#818579;--line:#e0e3d6;--green:#568a36;--lime:#c1ec83;--white:#fffef8;--orange:#e89051;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #e0a157;outline-offset:4px}button{border:0;background:none}a{color:inherit;text-decoration:none}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.site-header{max-width:1296px;margin:auto;height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 2px}.brand{display:flex;align-items:center;gap:10px;font-size:29px;font-weight:700;letter-spacing:-1.4px}.brand>svg{width:32px;height:32px}.brand-light{font-weight:450}.brand-dot{color:#7e9d55}.site-header nav{display:flex;gap:35px;align-items:center;font-size:13px;font-weight:550}.site-header nav button{padding:0;color:#85877b}.site-header nav span{padding-left:5px}.nav-active{position:relative}.nav-active:after{position:absolute;content:'';bottom:-40px;left:0;right:0;height:2px;background:var(--ink)}.local-badge{display:flex;align-items:center;gap:9px;font-size:11px;color:#697362}.local-badge .icon{margin-left:7px;width:17px}.status-dot{display:inline-block;width:6px;height:6px;flex-shrink:0;background:#8eb966;border-radius:50%}.local-badge .status-dot{box-shadow:0 0 0 4px #e9eedc}main{max-width:1190px;margin:auto}.hero{display:flex;justify-content:space-between;align-items:center;padding:49px 0 35px}.eyebrow{font-size:10px;letter-spacing:1.65px;font-weight:650;display:flex;align-items:center;gap:9px}.tiny-line{height:1px;width:20px;background:#7b955e}h1{font-size:55px;font-weight:550;letter-spacing:-2.5px;line-height:1.08;margin:17px 0 16px;position:relative;display:inline-block}.serif{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-style:italic}.hero h1 .serif{color:#638849}.hero-squiggle{position:absolute;width:150px;right:4px;bottom:-12px;fill:none;stroke:#b0c292;stroke-width:2;stroke-linecap:round}.hero p{font-size:13px;line-height:1.8;color:#777e6f;margin:0}.hero-note{display:flex;gap:18px;position:relative;margin-right:76px;margin-top:14px;transform:rotate(7deg);font-size:16px;line-height:1.45;color:#858d72}.note-star{font-size:44px;line-height:1;color:#9da88c}.hero-note strong{font-weight:550;color:#506445}.hero-note>svg{position:absolute;width:68px;bottom:-46px;right:4px;fill:none;stroke:#98a382;stroke-width:1.7}.playground{display:grid;grid-template-columns:minmax(0,1fr) 359px;gap:25px;align-items:start;scroll-margin-top:20px}.game-card{background:var(--white);border:1px solid #dfe3d4;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px #33452804}.game-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 21px;border-bottom:1px solid #e9eadd}.mode-tabs{display:flex;background:#f0f2e8;padding:4px;border-radius:8px;gap:3px}.mode-tabs button{display:flex;gap:7px;align-items:center;padding:9px 14px;border-radius:6px;font-size:11px;color:#7e8375;font-weight:550;transition:.2s}.mode-tabs .selected{background:var(--white);color:#2e4a35;box-shadow:0 1px 4px #253e3012}.mode-tabs .icon{width:16px;height:16px}.game-tools{display:flex;gap:12px}.icon-button{display:grid;place-items:center;padding:4px;color:#858d7d}.icon-button:hover{color:var(--ink)}.score-bar{display:flex;align-items:center;gap:43px;padding:21px 27px 19px}.score-bar>div:not(.player-status){display:flex;flex-direction:column;gap:5px}.metric-label{font-size:9px;letter-spacing:1.3px;font-weight:600;color:#8b9180}.score-bar strong{font-size:29px;line-height:1.1;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums}.small-crown{font-size:12px;color:#a2ad81;margin-left:4px}.player-status{display:flex;align-items:center;gap:7px;margin-left:auto;font-size:10px;color:#7e8a70}.live-tag{font-size:8px;letter-spacing:.8px;background:#eff4e5;border:1px solid #e1eacd;border-radius:4px;padding:3px 5px;color:#749454;margin-left:3px}.board-wrap{margin:0 21px;position:relative;border-radius:9px;overflow:hidden;background:#e8eddb;border:1px solid #d9e1c7}#board{display:block;width:100%;aspect-ratio:1.17;height:auto;touch-action:none}.board-caption{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#e5ebd5;font-size:8px;letter-spacing:1px;color:#73805e;border-top:1px solid #d8e1c8}.board-caption>span{display:flex;gap:7px;align-items:center}.board-caption .status-dot{height:5px;width:5px;background:#85a267}.board-caption button{font-size:9px;letter-spacing:0;display:flex;align-items:center;gap:7px;color:#8a957b;padding:0}.board-caption .icon{width:13px;height:13px}.game-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 23px}.speed-control{display:flex;align-items:center;gap:11px}.speed-options{display:flex;gap:5px}.speed-options button{font-size:10px;padding:5px 8px;border-radius:4px;color:#8c9380}.speed-options .active{background:#eff3e5;color:#688845;font-weight:600}.game-footer-right{display:flex;gap:20px;align-items:center;font-size:10px;color:#9b9f8e}.subtle-button{display:flex;align-items:center;gap:5px;font-size:10px;color:#7c8570}.subtle-button .icon{width:13px;height:13px}.learning-column{display:flex;flex-direction:column;gap:17px}.training-card{border-radius:16px;background:#263f32;color:#f5f6e8;padding:26px 25px 18px;box-shadow:0 8px 20px #263f3210;position:relative;overflow:hidden}.training-card:before{content:'';position:absolute;width:190px;height:190px;border:1px solid #ffffff04;border-radius:50%;right:-116px;top:80px;box-shadow:0 0 0 30px #ffffff02,0 0 0 60px #ffffff01;pointer-events:none}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:5px}.training-card .eyebrow{font-size:8px;letter-spacing:1.5px;color:#abbfa6}.training-status{display:flex;align-items:center;gap:6px;font-size:8px;color:#c1d6b6;border:1px solid #6b8b583d;padding:5px 7px;border-radius:20px;background:#56744520;white-space:nowrap}.training-status .status-dot{width:5px;height:5px;background:#b4de87;box-shadow:0 0 0 3px #87ae5c14}.training-card h2{font-weight:500;font-size:25px;letter-spacing:-.9px;margin:23px 0 8px}.green-dot{color:#b4de87}.training-card h2 .green-dot{display:none}.training-card>p{font-size:11px;line-height:1.8;color:#a8baa5;margin:0}.training-metrics{display:grid;grid-template-columns:1fr 1fr;margin:24px 0 28px}.training-metrics>div{display:flex;flex-direction:column;gap:7px;position:relative}.training-metrics>div+div{border-left:1px solid #69805a40;padding-left:25px}.training-metrics span{font-size:10px;color:#a7b8a1}.training-metrics strong{font-size:37px;font-weight:450;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}.training-metrics .apple-mini{color:#de9b69;font-size:11px;position:absolute;left:61px;bottom:8px}.training-card>.training-note{margin:-16px 0 24px;color:#a7b8a1;font-size:12px;line-height:1.5}.chart-heading{display:flex;justify-content:space-between;font-size:10px;gap:5px;color:#d6e1cb}.chart-key{font-size:8px;color:#9caf91;display:flex;align-items:center;gap:5px}.chart-key i{display:block;height:2px;width:10px;background:#b5dd80}.chart-container{position:relative;height:110px;margin-top:13px}#chart{width:100%;height:100%;display:block}.chart-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#b5c5a3;background:linear-gradient(transparent,#263f3260)}.chart-empty[hidden]{display:none}.chart-axis{display:flex;justify-content:space-between;font-size:7px;letter-spacing:.8px;color:#92a68a;margin-top:4px}.exploration-header{display:flex;align-items:center;justify-content:space-between;font-size:10px;margin-top:25px}.exploration-header>span{display:flex;align-items:center;gap:5px;color:#c6d5be}.exploration-header strong{font-size:11px;font-weight:500;color:#d3eabc}.info-button{border:1px solid #80997080;border-radius:50%;width:11px;height:11px;display:inline-grid;place-items:center;padding:0;font-size:7px;color:#91a783;font-family:Georgia,serif}.exploration-track{height:5px;border-radius:4px;background:#46603f;margin-top:11px;overflow:hidden}.exploration-track>div{height:100%;width:100%;background:#b7dd8a;border-radius:4px;transition:width .6s}.exploration-labels{display:flex;justify-content:space-between;font-size:7px;color:#92a888;margin-top:8px}.training-actions{display:flex;gap:8px;margin-top:23px}.training-actions button{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;border-radius:6px;font-size:10px;font-weight:500;flex:1;background:#c1e995;color:#2a4430;border:1px solid #c1e995;transition:.2s}.training-actions button+button{flex:0 0 84px;background:transparent;color:#bfd2ae;border-color:#6c855750}.training-actions button[aria-pressed=true]{background:#dbb16f;color:#263f32;border-color:#dbb16f}.training-actions .icon{width:13px;height:13px}.save-status{display:flex;gap:4px;align-items:center;justify-content:center;font-size:8px;color:#99ae8e;margin-top:13px}.save-status .icon{width:12px;height:12px}.model-card{display:flex;align-items:flex-start;gap:12px;position:relative;padding:20px 18px 17px;background:#edeee1;border:1px solid #e2e5d6;border-radius:11px;flex-wrap:wrap}.model-symbol{width:38px;height:38px;border-radius:8px;background:#e4e9d5;display:grid;place-items:center;margin-top:3px}.model-symbol svg{width:30px;height:30px;fill:#e4e9d5;stroke:#91a576;stroke-width:1}.model-card .metric-label{font-size:7px;letter-spacing:1px}.model-card h3{font-size:15px;letter-spacing:-.3px;font-weight:550;margin:7px 0 7px}.model-card p{font-size:9px;line-height:1.7;color:#8c9280;margin:0}.arrow-link{position:absolute;right:13px;top:21px;color:#99a384;font-size:19px;padding:0}.model-chips{display:flex;gap:5px;width:100%;margin-top:3px}.model-chips span{font-size:7px;border:1px solid #d9dfcb;border-radius:4px;padding:5px 7px;color:#798665;background:#f4f5eb}.reset-row{display:flex;justify-content:space-between;font-size:9px;color:#9a9f8b;padding:0 5px}.reset-row button{font-size:9px;color:#879078;padding:0;display:flex;gap:7px}.how-section{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:39px;border-top:1px solid var(--line);margin-top:40px;padding-top:32px;padding-bottom:34px}.how-intro .eyebrow{font-size:8px;letter-spacing:1.2px}.how-intro h2{font-size:26px;letter-spacing:-.9px;line-height:1.2;font-weight:500;margin:12px 0}.how-intro .serif{color:#648348}.how-intro p{font-size:10px;line-height:1.8;color:#8d9382;margin:0}.lesson{position:relative;padding-top:9px}.lesson-number{position:absolute;right:6px;top:5px;font-size:9px;color:#a5ad95}.lesson-icon{font-size:30px;color:#8ea873;line-height:1;height:33px}.lesson h3{font-size:13px;font-weight:550;margin:14px 0 8px;letter-spacing:-.2px}.lesson p{font-size:10px;color:#8b927f;line-height:1.8;margin:0;max-width:190px}.site-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:22px 0 30px;font-size:9px;color:#a1a590}.site-footer button{font-size:9px;padding:0;color:#869273}.site-footer button span{padding-left:8px}.board-overlay{position:absolute;inset:0 0 34px;background:#eaf0d9dc;backdrop-filter:blur(4px);z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column}.board-overlay[hidden]{display:none}.overlay-icon{width:53px;height:53px;border:1px solid #91ad6d55;border-radius:50%;display:grid;place-items:center;color:#6c914c;font-size:28px;background:#e3ebd1}.board-overlay h2{font-size:34px;font-weight:500;letter-spacing:-1px;margin:18px 0 5px}.board-overlay p{font-size:12px;color:#7a8767;margin:0 0 24px}.primary-button{display:flex;align-items:center;justify-content:center;gap:24px;padding:12px 23px;border-radius:7px;background:#344f36;color:#f5f6e8;font-size:12px;font-weight:500}.primary-button:hover{background:#486a3e}.overlay-help{font-size:9px;color:#8f9b7c;margin-top:16px}.touch-controls{display:none;text-align:center;padding:0 20px 20px}.touch-controls button{background:#e9eedb;border:1px solid #dbe3cc;border-radius:8px;width:43px;height:35px;margin:3px}.touch-controls>div{display:flex;justify-content:center}.game-card:fullscreen{background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;border:0;border-radius:0;padding:12px}.game-card:fullscreen .game-toolbar,.game-card:fullscreen .score-bar,.game-card:fullscreen .game-footer{width:min(90vw,850px)}.game-card:fullscreen .board-wrap{width:min(85vh,90vw);max-width:850px}.game-card:fullscreen #board{aspect-ratio:1.17}dialog{border:1px solid #dfe6d2;background:var(--white);color:var(--ink);border-radius:17px;padding:36px;max-width:480px;width:calc(100% - 32px);box-shadow:0 20px 100px #172d3240}dialog::backdrop{background:#1b342c60;backdrop-filter:blur(5px)}dialog h2{font-size:27px;letter-spacing:-.7px;font-weight:500}dialog p,dialog li{font-size:12px;line-height:1.9;color:#748067}dialog a{text-decoration:underline}dialog .dialog-close{position:absolute;top:12px;right:14px;font-size:25px}dialog .primary-button{margin-top:23px}dialog code{font-size:10px;background:#edf1e2;padding:2px 5px;border-radius:3px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#263f32;color:#edf3e2;font-size:12px;max-width:90vw;padding:13px 22px;border-radius:9px;z-index:10;box-shadow:0 5px 30px #263f3230}.toast[hidden]{display:none}.training-card.paused .training-status .status-dot{background:#d8b37e}.error .status-dot{background:#d49175}@media(min-width:1450px){main{max-width:1230px}.playground{grid-template-columns:minmax(0,1fr) 375px}.training-card{padding:28px}.training-card h2{font-size:27px}.chart-container{height:123px}.hero{padding-top:54px;padding-bottom:42px}}@media(max-width:1330px){.site-header{margin:0 40px}main{margin:0 65px}.playground{grid-template-columns:minmax(0,1fr) 335px}.training-card{padding:24px 22px}.training-card h2{font-size:23px}.score-bar{gap:30px}.hero-note{margin-right:44px}}@media(max-width:1080px){main{margin:0 35px}.site-header{margin:0 25px}.playground{gap:18px;grid-template-columns:minmax(0,1fr) 310px}.training-card{padding:22px 19px}.game-toolbar{padding:13px}.mode-tabs button{padding:8px 9px}.score-bar{padding:18px;gap:22px}.metric-label{font-size:8px}.player-status{font-size:8px}.live-tag{display:none}.board-wrap{margin:0 13px}.training-card h2{font-size:22px}.training-metrics{margin:20px 0}.chart-heading{font-size:9px}.chart-key{font-size:7px}.chart-container{height:89px}.exploration-header{margin-top:21px}.training-actions{margin-top:20px}.how-section{gap:25px}.game-footer-right>span{display:none}.hero h1{font-size:50px}.hero-note{margin-right:28px}}@media(max-width:800px){.local-badge{display:none}.site-header{height:78px;margin:0 22px}.nav-active:after{bottom:-29px}.site-header nav{gap:20px;font-size:11px}main{margin:0 22px}.hero{padding:33px 0}.hero h1{font-size:45px}.hero-note{margin-right:15px;font-size:13px;gap:11px}.note-star{font-size:34px}.playground{grid-template-columns:1fr;gap:22px}.learning-column{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:16px}.training-card{grid-row:span 2;padding:24px}.model-card{padding:20px 15px;gap:8px}.model-card p{font-size:10px}.model-chips{flex-wrap:wrap}.reset-row{flex-direction:column;align-items:flex-start;gap:12px}.game-card{max-width:650px;width:100%;margin:auto}.score-bar{padding:19px 24px}.player-status{font-size:10px}.live-tag{display:inline}.game-toolbar{padding:15px 20px}.board-wrap{margin:0 20px}.training-card h2{font-size:23px}.chart-container{height:100px}.how-section{grid-template-columns:1fr 1fr;gap:30px}.how-intro{padding-right:15px}.lesson p{max-width:220px}.site-footer{font-size:8px;gap:20px}.site-footer button{font-size:8px;white-space:nowrap}}@media(max-width:500px){.site-header{height:70px;margin:0 17px}.brand{font-size:25px;gap:7px}.brand>svg{width:27px}.site-header nav{gap:15px;font-size:10px}.nav-active:after{bottom:-25px}main{margin:0 16px}.hero{padding:29px 3px 28px}.hero .eyebrow{font-size:7px;letter-spacing:1.1px}.hero h1{font-size:39px;letter-spacing:-1.8px;margin-top:14px}.hero p{font-size:10px}.hero-note{display:none}.hero-squiggle{width:121px}.game-toolbar{padding:11px 12px}.mode-tabs button{font-size:10px;padding:8px 10px}.game-tools{gap:6px}.game-tools .icon{width:16px}.score-bar{padding:16px;gap:25px}.score-bar strong{font-size:24px}.metric-label{font-size:7px;letter-spacing:1px}.player-status{font-size:8px}.live-tag{display:none}.board-wrap{margin:0 11px}.board-caption{padding:9px;font-size:6px;letter-spacing:.7px}.board-caption button{font-size:7px}.game-footer{padding:12px 15px}.speed-control{gap:7px}.learning-column{display:flex;gap:15px}.training-card{width:100%;padding:26px}.training-card h2{font-size:27px}.training-metrics{margin:23px 0}.chart-container{height:130px}.chart-heading{font-size:11px}.chart-key{font-size:8px}.exploration-header{font-size:11px}.exploration-labels{font-size:8px}.training-actions button{font-size:11px;padding:12px}.save-status{font-size:9px}.model-card{width:100%;padding:20px;gap:14px}.model-card .metric-label{font-size:8px}.model-card p{font-size:10px}.model-chips span{font-size:8px}.reset-row{width:100%;flex-direction:row;align-items:center;font-size:9px;padding:3px 5px}.how-section{margin-top:30px;padding-top:26px;gap:30px 22px}.how-intro h2{font-size:24px}.how-intro .eyebrow{font-size:7px}.lesson h3{font-size:13px}.lesson p{font-size:10px}.site-footer{align-items:flex-start;line-height:1.6;font-size:8px}.site-footer>span{max-width:190px}.touch-controls.visible{display:block}.board-overlay h2{font-size:28px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
