:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f7f5ef;--paper-deep:#eeeae0;--ink:#202b3a;--muted:#79818a;--line:#e7e3d9;--coral:#ef7665;--coral-deep:#d85f51;--mint:#b8e4d3;--mint-deep:#448e78;--yellow:#f4d878;--navy:#273747;--shadow:0 18px 48px #2b313714;background:var(--paper);color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;font-family:DM Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}html{background:var(--paper);min-width:320px}body{background:radial-gradient(ellipse at 14% 8%, #ffffffd1, transparent 38rem), radial-gradient(ellipse at 100% 50%, #ede2cd3d, transparent 34rem), var(--paper);min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #448e788c}.site-shell{min-height:100vh;overflow:hidden}.loading-shell{background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100vh;display:flex}.loading-brand{color:var(--ink);letter-spacing:-.08em;font-size:24px;font-weight:900}.loading-brand span{color:var(--coral)}.loading-message{color:var(--muted);font-size:11px}.topbar{border-bottom:1px solid #202b3a12;justify-content:space-between;align-items:center;width:min(1160px,100% - 64px);height:78px;margin:0 auto;display:flex}.brand{color:var(--ink);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.brand-icon{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:2px;width:31px;height:31px;margin-right:8px;display:grid;position:relative;transform:rotate(-7deg)}.brand-icon i{border:2px solid var(--navy);background:#fffdf7;border-radius:4px}.brand-icon i:nth-child(2){background:var(--yellow)}.brand-icon i:nth-child(3){background:var(--mint)}.brand-icon i:nth-child(4){background:var(--coral);position:relative}.brand-icon i:nth-child(4):after{content:"";background:#fff;border-radius:50%;width:3px;height:3px;position:absolute;top:5px;left:4px}.brand-name{letter-spacing:-.07em;font-size:22px;font-weight:900}.brand-period{color:var(--coral);align-self:flex-start;margin:3px 0 0 1px;font-size:23px;font-weight:900}.topbar-note{color:#707983;letter-spacing:.04em;align-items:center;gap:9px;font-size:12px;font-weight:600;display:flex}.online-dot{background:#71b59c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #71b59c21}.page-content{width:min(1160px,100% - 64px);margin:0 auto}.hero-row{justify-content:space-between;align-items:center;min-height:236px;padding:40px 28px 29px;display:flex}.hero-copy{z-index:1;position:relative}.eyebrow{color:#8b9298;letter-spacing:.13em;margin:0 0 11px;font-family:DM Mono,monospace;font-size:10px;font-weight:500;line-height:1.5}.hero-copy h1{color:var(--ink);letter-spacing:-.07em;margin:0;font-size:clamp(30px,4vw,43px);font-weight:800;line-height:1.28}.hero-copy h1 span{z-index:0;color:var(--coral);position:relative}.hero-copy h1 span:after{z-index:-1;content:"";background:#f7d9c9;border-radius:8px;height:11px;position:absolute;bottom:1px;left:1px;right:1px}.hero-description{color:#727c86;margin:13px 0 0;font-size:13px;font-weight:500;line-height:1.9}.hero-sticker{flex-direction:column;justify-content:center;align-items:center;width:188px;height:146px;display:flex;position:relative;transform:rotate(4deg)}.hero-sticker:before{content:"";background:#fbf8ef;border:1px solid #e9e2d4;border-radius:44% 56% 51% 49%/47% 39% 61% 53%;position:absolute;inset:5px 11px 10px}.sticker-grid{background:#283848;border-radius:10px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:3px;width:72px;height:72px;padding:4px;display:grid;position:relative;transform:rotate(-4deg)}.sticker-grid i{background:#f1eee4;border-radius:3px}.sticker-grid .sticker-player{background:var(--coral);position:relative}.sticker-player:after{content:"";background:#fff;border-radius:50%;width:3px;height:3px;position:absolute;top:7px;left:8px;box-shadow:8px 0 #fff}.sticker-grid .sticker-goal{color:#438a75;place-items:center;font-size:18px;display:grid}.sticker-caption{color:#82918b;letter-spacing:.08em;margin-top:10px;font-family:DM Mono,monospace;font-size:8px;position:relative;transform:rotate(-3deg)}.mode-tabs{border-bottom:1px solid #dedbd2;align-items:flex-end;gap:7px;height:58px;padding-left:16px;display:flex}.mode-tab{color:#858b91;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:10px 10px 0 0;align-items:center;gap:9px;height:48px;padding:0 20px;font-size:12px;font-weight:700;transition:color .18s,background .18s,border-color .18s;display:flex;position:relative}.mode-tab:hover{color:var(--ink)}.mode-tab.active{color:var(--ink);background:#fbfaf6;border-color:#dedbd2;box-shadow:0 -3px 12px #1f2c3605}.tab-icon{border-radius:6px;place-items:center;width:21px;height:21px;font-size:10px;display:grid}.tab-play{color:#448a73;background:#dff0e7}.tab-create{color:var(--coral-deep);background:#fce4dc;font-size:13px}.new-pill{color:#a38c55;letter-spacing:.06em;background:#f3eee1;border-radius:4px;margin-left:1px;padding:3px 5px;font-family:DM Mono,monospace;font-size:7px}.play-layout,.editor-layout{grid-template-columns:minmax(0,1fr) 326px;gap:28px;padding:27px 16px 34px;display:grid}.play-main,.editor-main{min-width:0}.section-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-height:68px;padding:0 2px 17px;display:flex}.section-heading .eyebrow{margin-bottom:3px}.section-heading h2{color:var(--ink);letter-spacing:-.04em;margin:0;font-size:21px;font-weight:800;line-height:1.35}.section-subtitle{color:#858d93;margin:3px 0 0;font-size:11px;line-height:1.6}.move-counter{background:#fbfaf6;border:1px solid #e8e5dc;border-radius:9px;flex-direction:column;align-items:center;width:66px;padding:7px 8px 5px;display:flex}.counter-label{color:#a1a6a7;letter-spacing:.12em;font-family:DM Mono,monospace;font-size:7px}.move-counter strong{color:var(--navy);font-family:DM Mono,monospace;font-size:21px;line-height:1.25}.board-frame{background:#fcfbf7;border:1px solid #e9e4d9;border-radius:17px;width:100%;max-width:620px;margin:0 auto;padding:clamp(10px,2vw,18px);position:relative;box-shadow:0 12px 34px #3d3d340f,0 2px 4px #3d3d3408}.board-grid{aspect-ratio:1;background:#e8e5dc;border-radius:10px;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);gap:clamp(3px,.65vw,6px);width:100%;display:grid;overflow:hidden}.board-cell{cursor:default;background:#f1efe8;border:0;border-radius:5px;place-items:center;min-width:0;padding:0;transition:transform .14s,background .14s,box-shadow .14s;display:grid;position:relative;overflow:hidden}.board-cell:disabled{opacity:1}.board-cell:not(:disabled){cursor:crosshair}.board-cell:not(:disabled):hover{z-index:1;transform:scale(.94);box-shadow:0 0 0 2px #ef7665bf}.cell-floor{background-image:radial-gradient(#dfdcd2 1px,#0000 1px);background-size:10px 10px}.cell-wall{background:#344757;box-shadow:inset 0 0 0 1px #ffffff12,inset 0 -4px #0000001a}.cell-wall:before{content:"";border:1px solid #ffffff21;border-radius:2px;position:absolute;inset:15%}.cell-goal{background:#dff0e7}.goal-mark{color:#438a73;border:2px dashed #76ae98;border-radius:50%;place-items:center;width:60%;height:60%;display:grid;position:relative}.goal-mark i{border:1px solid #448e7838;border-radius:50%;position:absolute;inset:3px}.goal-mark b{font-size:clamp(13px,2vw,23px);line-height:1}.cell-plate{background:#f8e9b9}.plate-mark{background:#f4d878;border:3px solid #d0a949;border-radius:50%;width:47%;height:47%;box-shadow:0 2px #e5c265}.has-box.cell-plate .plate-mark{opacity:.4}.cell-gate{background:#e9d4c9}.gate-mark{background:#d6aa97;border:2px solid #b77f6c;border-bottom-width:3px;border-radius:4px 4px 2px 2px;justify-content:space-between;align-items:stretch;width:58%;height:66%;padding:2px 3px;transition:opacity .2s,transform .2s;display:flex;box-shadow:0 3px #7b524526}.gate-mark i{background:#986b5b;border-radius:2px;width:2px}.gate-open .gate-mark{opacity:.22;transform:scale(.88)}.cell-gate.gate-open{background:#e9f0e8}.crate{z-index:2;background:linear-gradient(145deg,#e6ae78,#d69162);border:2px solid #bb815b;border-radius:5px;place-items:center;width:70%;height:70%;display:grid;position:absolute;transform:rotate(-2deg);box-shadow:0 4px #b97552,inset 0 1px #ffffff73}.crate i{border:1px solid #7e4b3061;border-radius:3px;width:66%;height:66%}.character{z-index:3;flex-direction:column;justify-content:center;align-items:center;width:62%;height:66%;animation:.22s cubic-bezier(.2,.8,.25,1.3) pop-in;display:flex;position:absolute}.character:before{content:"";background:linear-gradient(150deg,#ff9c83,#ec705f 72%);border:2px solid #d45e50;border-radius:46% 46% 39% 39%;width:91%;height:82%;position:absolute;top:2%;box-shadow:0 4px #c6584d,inset 0 2px #fff6}.character-face{z-index:1;gap:7px;margin-top:-6px;display:flex}.character-face i{background:#fff9e7;border-radius:3px;width:3px;height:5px}.character-shadow{z-index:-1;filter:blur(2px);background:#3238372b;border-radius:50%;width:68%;height:10%;position:absolute;bottom:-2px}@keyframes pop-in{0%{opacity:.6;transform:scale(.72)}to{opacity:1;transform:scale(1)}}.board-cleared{border-color:#a9d9c3;box-shadow:0 12px 35px #448e781f}.clear-banner{z-index:4;background:#f8fffaf5;border:1px solid #a8d6c1;border-radius:12px;align-items:center;gap:11px;padding:12px 15px;animation:.25s ease-out slide-up;display:flex;position:absolute;bottom:22px;left:22px;right:22px;box-shadow:0 8px 24px #23453624}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.clear-spark{color:#39856b;background:#def0e5;border-radius:10px;place-items:center;width:32px;height:32px;font-size:17px;display:grid}.clear-banner div{flex-direction:column;flex:1;gap:2px;display:flex}.clear-banner strong{color:#2e6f59;font-size:12px}.clear-banner div span{color:#84968d;font-size:10px}.small-text-button{color:#478b74;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 2px;font-size:10px;font-weight:700}.small-text-button:hover{color:#2e6f59}.play-controls{justify-content:space-between;align-items:center;gap:15px;padding:17px 7px 0;display:flex}.utility-buttons{flex-wrap:wrap;gap:7px;display:flex}.utility-button{color:#65717b;cursor:pointer;background:#fbfaf6;border:1px solid #e5e1d7;border-radius:8px;align-items:center;gap:6px;min-height:35px;padding:0 10px;font-size:10px;font-weight:600;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.utility-button:hover:not(:disabled){color:#3e7f69;background:#fff;border-color:#cbd7cf}.utility-button:disabled{color:#b9bbb8;cursor:not-allowed}.utility-button>span{font-size:16px;line-height:1}.direction-pad{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(3,1fr);gap:4px;width:105px;height:75px;display:grid;position:relative}.direction-button{color:#526b65;cursor:pointer;background:#fcfcf8;border:1px solid #d9ded7;border-radius:7px;place-items:center;font-size:16px;font-weight:700;transition:transform .12s,background .12s;display:grid;box-shadow:0 2px #e3e4dc}.direction-button:hover:not(:disabled){background:#e5f1e8;transform:translateY(-1px)}.direction-button:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.direction-button:disabled{opacity:.45;cursor:not-allowed}.direction-up{grid-area:1/2}.direction-left{grid-area:2/1}.direction-down{grid-area:2/2}.direction-right{grid-area:2/3}.pad-center{color:#c5c8c0;pointer-events:none;font-size:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.keyboard-hint{color:#a0a4a1;align-items:center;gap:4px;margin:13px 6px 0;font-size:9px;display:flex}kbd{color:#7d8588;background:#fdfcf8;border:1px solid #deddd5;border-radius:4px;place-items:center;min-width:17px;height:17px;margin-left:1px;font-family:DM Mono,monospace;font-size:9px;display:inline-grid}.course-sidebar,.editor-sidebar{background:#fcfbf7d6;border:1px solid #e6e2d8;border-radius:13px;align-self:start;padding:17px}.sidebar-title-row{border-bottom:1px solid #edeae2;justify-content:space-between;align-items:center;padding:0 1px 12px;display:flex}.sidebar-title-row .eyebrow{margin-bottom:3px}.sidebar-title-row h3,.toolbox-heading h3{color:var(--ink);letter-spacing:-.04em;margin:0;font-size:15px;font-weight:800}.course-count{color:#93896d;background:#f2efe5;border-radius:7px;place-items:center;width:30px;height:27px;font-family:DM Mono,monospace;font-size:10px;display:grid}.course-list{flex-direction:column;gap:7px;padding-top:11px;display:flex}.course-card{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:11px;width:100%;padding:9px 8px;transition:background .15s,border-color .15s,transform .15s;display:flex;position:relative}.course-card:hover{background:#fffdf8;border-color:#e8e3d7;transform:translateY(-1px)}.course-card.selected{background:#f1f8f1;border-color:#badaca}.course-thumb{background:#354958;border-radius:7px;flex:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:2px;width:48px;height:48px;padding:3px;display:grid;transform:rotate(-2deg)}.course-thumb i{background:#eeeae0;border-radius:2px}.course-thumb .thumb-player{background:var(--coral)}.course-thumb .thumb-goal{color:#418b73;background:#cce8d9;place-items:center;font-size:10px;display:grid}.thumb-1{background:#52614e;transform:rotate(2deg)}.thumb-2{background:#71574a;transform:rotate(-3deg)}.course-card-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.course-card-topline{color:#9a9e9a;align-items:center;gap:7px;font-family:DM Mono,monospace;font-size:8px;display:flex}.course-number{color:#bbab83}.course-author{font-family:Noto Sans JP,sans-serif}.course-card-copy strong{color:#34404a;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;overflow:hidden}.course-card-description{color:#91979a;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.selected-mark{color:#55987d;font-size:10px;font-weight:800;position:absolute;top:7px;right:7px}.create-invite{color:#b56556;text-align:left;cursor:pointer;background:#fff9f4;border:1px dashed #e7b3a6;border-radius:9px;align-items:center;gap:10px;width:100%;margin-top:3px;padding:10px 9px;transition:background .15s,border-color .15s;display:flex}.create-invite:hover{border-color:var(--coral);background:#fff2eb}.invite-plus{background:#fae1d8;border-radius:7px;place-items:center;width:27px;height:27px;font-size:17px;display:grid}.create-invite>span:nth-child(2){flex-direction:column;flex:1;gap:2px;display:flex}.create-invite strong{font-size:10px}.create-invite small{color:#a88c81;font-size:8px}.invite-arrow{font-size:13px}.sidebar-tip{color:#ac9761;background:#f4f1e7;border-radius:8px;gap:8px;margin:13px 1px 0;padding:10px;display:flex}.sidebar-tip>span{flex:none;font-size:11px}.sidebar-tip p{color:#8f866f;margin:0;font-size:9px;line-height:1.6}.editor-heading{align-items:flex-end}.editor-heading .eyebrow{margin-bottom:5px}.title-field-label{color:#7e878c;margin:0 0 4px;font-size:9px;font-weight:700;display:block}.course-title-input{width:min(330px,58vw);height:37px;color:var(--ink);background:#fffefa;border:1px solid #e3dfd5;border-radius:8px;padding:0 11px;font-size:12px;font-weight:700;transition:border-color .15s,box-shadow .15s}.course-title-input::placeholder{color:#bdc0bb;font-weight:500}.course-title-input:focus{border-color:#8fbea8;outline:none;box-shadow:0 0 0 3px #70af901f}.quiet-button{color:#7c8588;cursor:pointer;white-space:nowrap;background:#fbfaf6;border:1px solid #e6e1d5;border-radius:7px;min-height:33px;padding:0 10px;font-size:9px;font-weight:600}.quiet-button:hover{color:#bb6c5b;border-color:#e2c3b6}.editor-board-wrap{max-width:620px;margin:0 auto}.editor-board-frame{border-color:#eadfd1}.editor-board-frame .board-grid{cursor:crosshair}.editor-board-frame .cell-floor{background-color:#f7f1e8;background-image:linear-gradient(45deg,#c2a78d1a 25%,#0000 25%),linear-gradient(-45deg,#c2a78d1a 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c2a78d1a 75%),linear-gradient(-45deg,#0000 75%,#c2a78d1a 75%);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px}.editor-board-frame .board-cell:not(:disabled){cursor:crosshair}.editor-footer-row{justify-content:space-between;align-items:center;gap:12px;padding:17px 5px 0;display:flex}.editor-progress{color:#8b9292;white-space:nowrap;align-items:center;gap:7px;font-size:9px;font-weight:600;display:flex}.progress-dot{color:#a4a6a1;background:#fbfaf6;border:1px solid #dedbd1;border-radius:50%;place-items:center;width:20px;height:20px;font-family:DM Mono,monospace;font-size:8px;display:grid}.progress-dot.done{color:#4c9277;background:#e7f3e9;border-color:#b6d6c4}.progress-line{background:#dedbd1;width:17px;height:1px}.button-primary{color:#fff;cursor:pointer;background:linear-gradient(#f4816e,#e76c5b);border:1px solid #dd6958;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:10px;font-weight:800;transition:transform .12s,box-shadow .12s,filter .12s;display:inline-flex;box-shadow:0 3px #cf5f50,0 5px 12px #e269572b}.button-primary:hover{filter:saturate(1.08)brightness(1.02);transform:translateY(-1px)}.button-primary:active{transform:translateY(2px);box-shadow:0 1px #cf5f50}.test-button{min-width:122px}.test-button span{font-size:9px}.editor-sidebar{padding:19px}.toolbox-heading .eyebrow{margin-bottom:5px}.toolbox-heading h3{font-size:16px}.toolbox-heading>p:last-child{color:#8c9393;margin:5px 0 0;font-size:10px}.tool-palette{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:15px;display:grid}.tool-option{color:#788187;cursor:pointer;background:#fdfcf8;border:1px solid #e9e5dc;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:67px;padding:5px 2px;font-size:8px;font-weight:600;transition:border-color .15s,background .15s,transform .15s;display:flex}.tool-option:hover{border-color:#d5cbb8;transform:translateY(-1px)}.tool-option.selected{color:#b85f50;background:#fff3ed;border-color:#e5aa9d;box-shadow:inset 0 0 0 1px #ef766524}.tool-mark{color:#7c8588;background:#efede6;border-radius:7px;place-items:center;min-width:25px;height:25px;font-size:16px;line-height:1;display:grid}.tool-wall .tool-mark{color:#405461;background:#e0e5e4}.tool-start .tool-mark{color:var(--coral-deep);background:#fae0d8}.tool-goal .tool-mark{color:#438a73;background:#dff0e7}.tool-box .tool-mark{color:#a36c47;background:#f3dfc8}.tool-plate .tool-mark{color:#a38335;background:#f8ebc7}.tool-gate .tool-mark{color:#976b5b;background:#eadbd2}.tool-erase .tool-mark{color:#937e78;background:#efebea}.tool-hint{color:#ad9253;background:#f5f1e6;border-radius:8px;gap:8px;margin-top:13px;padding:10px;display:flex}.tool-hint>span{flex:none;font-size:11px}.tool-hint p{color:#8b8064;margin:0;font-size:9px;line-height:1.65}.editor-rule-card{border-bottom:1px solid #efede6;gap:10px;padding:13px 2px 12px;display:flex}.rule-number{color:#d1b78c;flex:none;font-family:DM Mono,monospace;font-size:9px}.editor-rule-card strong{color:#57636a;font-size:9px;font-weight:800;display:block}.editor-rule-card p{color:#959b99;margin:3px 0 0;font-size:8px;line-height:1.65}.editor-save-note{color:#829289;align-items:flex-start;gap:7px;margin-top:13px;font-size:8px;line-height:1.6;display:flex}.editor-save-note span{color:#6ca88a;font-size:11px}.test-ribbon{color:#8d958e;align-items:center;gap:11px;padding:0 4px 9px;font-size:9px;display:flex}.test-ribbon>span:first-child{color:#47896f;align-items:center;gap:6px;font-weight:800;display:inline-flex}.test-ribbon i{background:#62ac86;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #e4f3e9}.test-ribbon .small-text-button{margin-left:auto}.verified-card{background:#f1faf3;border:1px solid #b7dcc7;border-radius:10px;align-items:center;gap:10px;margin-top:13px;padding:12px;display:flex}.verified-icon{color:#438369;background:#d5eddd;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.verified-card>span:nth-child(2){flex-direction:column;flex:1;gap:2px;display:flex}.verified-card strong{color:#42765f;font-size:10px}.verified-card small{color:#83a08f;font-size:8px}.compact-button{min-height:32px;padding:0 10px;font-size:9px}.test-control-row{justify-content:space-between;align-items:center;gap:10px;padding:13px 6px 0;display:flex}.test-control-row .direction-pad{width:93px;height:67px}.share-panel{background:#fffaf0;border:1px solid #e8d6ba;border-radius:10px;grid-template-columns:35px 1fr;gap:7px 10px;margin:15px 0 0;padding:13px;display:grid}.share-panel-icon{color:#a98742;background:#f5e9ca;border-radius:9px;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.share-panel-copy{flex-direction:column;justify-content:center;gap:2px;display:flex}.share-panel-copy strong{color:#685c43;font-size:10px}.share-panel-copy span{color:#999078;font-size:8px}.share-url-row{grid-column:1/-1;gap:7px;display:flex}.share-url-row input{color:#7e786b;background:#fffefa;border:1px solid #e8e2d3;border-radius:6px;flex:1;min-width:0;height:33px;padding:0 9px;font-family:DM Mono,monospace;font-size:8px}.copy-button{min-height:33px;padding:0 12px}.bottom-note{background:#f5f0e5;border:1px solid #e9e1d1;border-radius:11px;align-items:center;gap:13px;margin:0 16px 34px;padding:16px 20px;display:flex;position:relative;overflow:hidden}.bottom-note-icon{color:#c2a255;background:#fff9e8;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;font-size:14px;display:grid}.bottom-note strong{color:#6e695e;font-size:10px}.bottom-note p{color:#999184;margin:3px 0 0;font-size:9px}.bottom-note-squiggle{color:#e5d7b9;letter-spacing:-.09em;font-size:20px;font-weight:900;position:absolute;right:20px;transform:rotate(-8deg)}.site-footer{color:#a2a5a1;letter-spacing:.03em;border-top:1px solid #202b3a12;justify-content:space-between;width:min(1160px,100% - 64px);margin:0 auto;padding:15px 16px 24px;font-size:8px;display:flex}.toast-message{z-index:20;color:#fff;background:#2c4050;border:1px solid #405867;border-radius:9px;max-width:min(360px,100vw - 44px);padding:12px 16px;font-size:11px;font-weight:600;animation:.2s ease-out slide-up;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 26px #1b272e2e}@media (min-width:1100px){.play-layout,.editor-layout{grid-template-columns:minmax(0,1fr) 326px;gap:34px;padding-left:20px;padding-right:20px}.play-main{padding-right:12px}.board-frame{max-width:590px}}@media (max-width:820px){.topbar,.page-content,.site-footer{width:min(100% - 36px,680px)}.hero-row{min-height:202px;padding:28px 11px 24px}.hero-sticker{transform-origin:100%;width:146px;transform:scale(.88)rotate(4deg)}.play-layout,.editor-layout{grid-template-columns:minmax(0,1fr);gap:20px;padding:22px 8px 28px}.course-sidebar,.editor-sidebar{width:100%}.course-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.create-invite{min-height:68px}.sidebar-tip{margin-top:10px}.editor-sidebar{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.toolbox-heading,.tool-palette,.tool-hint,.editor-save-note{grid-column:1/-1}.editor-rule-card{align-self:start}.tool-palette{grid-template-columns:repeat(8,minmax(0,1fr))}.tool-option{min-height:64px}.tool-hint{margin-bottom:1px}.bottom-note{margin-left:8px;margin-right:8px}}@media (max-width:560px){.topbar,.page-content,.site-footer{width:calc(100% - 24px)}.topbar{height:63px}.topbar-note{gap:7px;font-size:9px}.brand-icon{width:26px;height:26px;margin-right:5px}.brand-name,.brand-period{font-size:19px}.hero-row{min-height:178px;padding:25px 4px 20px}.hero-copy .eyebrow{margin-bottom:7px;font-size:8px}.hero-copy h1{max-width:275px;font-size:clamp(25px,7vw,34px)}.hero-copy h1 span:after{height:8px}.hero-description{margin-top:9px;font-size:10px}.desktop-break{display:none}.hero-sticker{width:100px;height:112px;margin-right:-10px;transform:scale(.75)rotate(4deg)}.hero-sticker:before{inset:9px 3px}.sticker-grid{width:64px;height:64px}.sticker-caption{font-size:7px}.mode-tabs{gap:3px;height:52px;padding-left:1px}.mode-tab{gap:6px;height:43px;padding:0 10px;font-size:10px}.tab-icon{width:18px;height:18px;font-size:9px}.new-pill{font-size:6px}.play-layout,.editor-layout{gap:16px;padding:18px 0 24px}.section-heading{min-height:61px;padding:0 1px 11px}.section-heading h2{font-size:17px}.section-subtitle{max-width:245px;font-size:9px}.move-counter{width:55px;padding:5px}.move-counter strong{font-size:18px}.board-frame{border-radius:13px;padding:9px}.board-grid{border-radius:7px;gap:3px}.board-cell{border-radius:3px}.cell-wall:before{inset:18%}.character-face{gap:5px}.character-face i{width:2px;height:4px}.play-controls{align-items:flex-start;padding:13px 1px 0}.utility-buttons{gap:5px}.utility-button{gap:4px;min-height:32px;padding:0 7px;font-size:8px}.utility-button>span{font-size:14px}.direction-pad{gap:3px;width:89px;height:65px}.direction-button{border-radius:6px;font-size:14px}.keyboard-hint{margin-top:10px;font-size:8px}kbd{min-width:15px;height:15px;font-size:8px}.course-sidebar,.editor-sidebar{border-radius:11px;padding:13px}.course-list{grid-template-columns:1fr}.course-card{padding:7px}.course-thumb{width:42px;height:42px}.create-invite{min-height:58px}.editor-heading{align-items:flex-end}.course-title-input{width:min(280px,66vw);height:35px;font-size:11px}.quiet-button{min-height:31px;padding:0 7px;font-size:8px}.editor-progress{gap:4px;font-size:7px}.progress-dot{width:17px;height:17px;font-size:7px}.progress-line{width:8px}.editor-footer-row{gap:5px;padding:13px 0 0}.test-button{min-width:100px;min-height:35px;padding:0 8px;font-size:9px}.editor-sidebar{display:block}.tool-palette{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}.tool-option{min-height:61px;font-size:8px}.tool-hint{margin-bottom:0}.editor-rule-card{padding:11px 2px}.verified-card{gap:7px;padding:9px}.verified-card strong{font-size:9px}.compact-button{min-height:29px;padding:0 7px;font-size:8px}.test-control-row{align-items:flex-start;gap:5px;padding:10px 1px 0}.test-control-row .utility-buttons{flex-direction:column}.test-control-row .direction-pad{width:82px;height:61px}.clear-banner{gap:7px;padding:9px;bottom:13px;left:13px;right:13px}.clear-banner strong{font-size:10px}.clear-banner div span,.small-text-button{font-size:8px}.bottom-note{gap:9px;margin:0 0 24px;padding:13px 12px}.bottom-note-icon{width:26px;height:26px}.bottom-note strong{font-size:8px}.bottom-note p{max-width:250px;font-size:8px}.bottom-note-squiggle{font-size:13px;bottom:8px;right:10px}.site-footer{padding:12px 2px 18px}.toast-message{text-align:center;max-width:none;bottom:12px;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
