html{line-height:1.5;-webkit-text-size-adjust:100%}button,input,textarea,select{font-family:inherit}svg{display:inline-block;vertical-align:middle}


:root{--cream:#f8f7f2;--paper:#fffefa;--ink:#263d36;--green:#34634f;--green-dark:#244b3b;--muted:#85857c;--line:#e7e6dc;--lilac:#e7e0f4;--peach:#f6dfd0;--yellow:#f3e7ba;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Aptos","Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.5}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #92b5a2;outline-offset:4px}input,textarea,select{min-width:0}input,textarea{color:var(--ink);background:#fffefa;border:1px solid var(--line);border-radius:11px;padding:13px 15px;outline:none;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus{border-color:#79a68c;box-shadow:0 0 0 3px #34634f0d}input::placeholder,textarea::placeholder{color:#a3a299}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h1{font-weight:750}h2{font-weight:700}h3{font-weight:650}svg{flex-shrink:0}button{border:0;background:none}a{color:inherit}label{display:block;font-size:13px;font-weight:600}.app-shell{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.site-header{border-bottom:1px solid var(--line);height:91px;background:var(--cream)}.header-inner{max-width:1200px;padding:0 28px;height:100%;margin:auto;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:11px;padding:0;text-align:left;font-weight:750;font-size:25px;letter-spacing:-1px;line-height:1.1}.logo-mark{background:var(--green);color:#fffef5;width:44px;height:44px;display:grid;place-items:center;border-radius:13px;transform:rotate(-5deg)}.logo-mark svg{transform:rotate(5deg)}.logo-light{font-weight:400}.logo small{display:block;font-weight:500;font-size:7px;letter-spacing:1.05px;line-height:1.8;margin-top:4px;color:#909389}nav{display:flex;gap:26px;align-items:center}.help-button{display:flex;gap:7px;align-items:center;color:#687268;font-size:13px}.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:47px;padding:12px 21px;border-radius:11px;font-size:13px;font-weight:650;transition:background .16s,transform .16s;white-space:nowrap}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{background:var(--green);color:#fffdf3}.button-primary:hover:not(:disabled){background:var(--green-dark)}.button-outline{border:1px solid #d2d6c9;background:transparent}.button-outline:hover{background:#efefe6}.button-danger-outline{color:#ae6356;border:1px solid #dec2b7;background:#fffaf5}.small{min-height:39px;padding:9px 15px}.full-width{width:100%}.header-mode{font-size:12px;color:#7c847a;display:flex;gap:7px;align-items:center}.live-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;border-radius:50%;background:#73997b}.home-wrap{max-width:1160px;padding:58px 28px 40px;margin:auto}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:84px;align-items:start}.eyebrow{display:flex;align-items:center;gap:7px;letter-spacing:1.35px;font-size:9px;font-weight:700;color:#7b8772}.hero-copy{padding-top:7px}.hero-copy h1{font-size:clamp(42px,4.5vw,59px);line-height:1.09;margin-top:22px;position:relative;letter-spacing:-2.5px;width:max-content;max-width:100%}.hero-copy h1 span{color:var(--green)}.title-swoosh{display:block;width:86%;height:13px;margin-left:15px;margin-top:2px;opacity:.65}.hero-description{font-size:14px;line-height:1.85;color:#7c8177;margin-top:21px}.card{border:1px solid var(--line);border-radius:20px;background:var(--paper)}.join-card{padding:28px 30px 21px;box-shadow:0 10px 35px #263d3605;position:relative}.join-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:15px;background:#ede8db;color:#6c7764;margin-bottom:22px}.tiny-label{font-weight:700;color:#8a8e80;font-size:9px;letter-spacing:1.3px}.join-card h2{font-size:30px;letter-spacing:-1px;margin-top:7px;line-height:1.15}.muted{color:#82877b;font-size:13px;line-height:1.7}.join-card>p{margin-top:12px;font-size:12px}.join-card form{margin-top:23px}.join-card label{margin-bottom:8px;font-size:11px;letter-spacing:.1px}.join-card input{width:100%;margin-bottom:17px;font-size:13px;background:#faf9f5;height:47px}.join-card .code-input{font-size:25px;font-weight:600;letter-spacing:8px;line-height:1;height:58px;padding-left:20px}.code-input::placeholder{font-weight:400;color:#b4b6a8}.avatar-picker{display:flex;align-items:center;background:#f5f3ed;border-radius:13px;padding:10px;gap:11px;margin:3px 0 20px}.avatar-picker>div{flex:1;line-height:1.5}.avatar-picker span{display:block;font-size:8px;letter-spacing:1px;color:#8d8d81}.avatar-picker strong{font-size:12px;font-weight:600}.avatar-picker button{background:#fffefa;display:grid;place-items:center;width:33px;height:33px;border-radius:9px;border:1px solid #e6e5db;color:#7c8675}.join-submit{width:100%;height:49px;justify-content:space-between}.join-bottom{display:flex;align-items:center;justify-content:center;gap:6px;color:#8d9287;font-size:10px;margin-top:17px}.avatar{vertical-align:middle;flex-shrink:0}.story-demo{position:relative;background:#f0efe6;border:1px solid #e4e3d8;border-radius:17px;padding:18px 23px 15px;max-width:470px;margin-top:30px;box-shadow:4px 5px 0 #e9e8df}.demo-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.85px;color:#7d8779}.demo-top>span:first-child{display:flex;align-items:center;gap:7px}.demo-progress{background:#e1e8dc;border-radius:5px;padding:3px 8px;font-size:8px;letter-spacing:0}.demo-line{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0 18px;align-items:center}.demo-word{display:inline-flex;align-items:center;background:var(--paper);border:1px solid #dcded3;border-radius:7px;padding:7px 12px;color:#626c5e;font-size:13px;box-shadow:0 2px 0 #d9dcd0}.demo-word.green{background:#e2eade;color:#456745;border-color:#c6d4c0;box-shadow:none}.demo-slot{display:grid;place-items:center;width:45px;height:35px;border:1px dashed #aeb9a0;border-radius:7px;color:#8e9c85}.demo-bank{display:flex;align-items:center;gap:13px;margin-left:12px}.demo-bank .demo-word{background:#fbfaf6}.demo-word.coral{background:#f7e1d3;transform:translateY(-5px) rotate(4deg);color:#9b6e58;position:relative;border-color:#e6c4ab}.demo-pointer{position:absolute;bottom:-13px;right:-8px;color:#fff8e9;stroke-width:1.3;filter:drop-shadow(1px 2px 1px #253c351b)}.tilt-left{transform:rotate(-6deg)}.tilt-right{transform:rotate(3deg)}.demo-feedback{display:flex;align-items:center;gap:7px;color:#6f8770;font-size:9px;margin-top:20px;padding-top:12px;border-top:1px solid #dcded3}.floating-plus{position:absolute;right:-16px;top:92px;background:#e5dff1;color:#82709e;width:51px;height:53px;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:11px;transform:rotate(8deg);font-size:23px;font-weight:600;border:3px solid var(--cream)}.floating-plus small{font-size:7px;font-weight:500;letter-spacing:.7px;line-height:1}.hero-social{display:flex;align-items:center;gap:11px;margin-top:27px;font-size:10px;color:#8b8e80;line-height:1.6}.hero-social strong{font-size:10px;font-weight:500;color:#6c7867}.hero-social>svg{color:#b4b889;margin-left:5px}.avatar-stack{display:flex;padding-left:0}.avatar-stack svg{border:3px solid var(--cream);border-radius:15px;width:39px;height:39px;margin-left:-8px}.avatar-stack svg:first-child{margin-left:0}.features{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:27px;border-top:1px solid var(--line);padding-top:27px}.features>div{position:relative;padding-left:58px}.icon-bubble{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:13px;color:#746890}.lilac{background:var(--lilac)}.peach{background:var(--peach);color:#a3785c}.yellow{background:var(--yellow);color:#99894d}.features .icon-bubble{position:absolute;left:0;top:0}.features h3{font-size:14px;letter-spacing:-.25px;margin:1px 0 7px}.features p{font-size:11px;color:#8d8f83}.teacher-callout{display:flex;align-items:center;justify-content:space-between;background:#eeeee5;border-radius:13px;padding:18px 22px;margin-top:33px;border:1px solid #e2e5d6;gap:15px}.teacher-callout>div{display:flex;align-items:center;gap:13px}.teacher-callout svg{color:#738467}.teacher-callout strong{font-size:13px;font-weight:600;display:block}.teacher-callout small{display:block;font-size:10px;color:#87927f;margin-top:4px}.teacher-callout .button{font-size:11px;min-height:36px;padding:8px 14px;background:var(--paper)}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;max-width:1160px;width:100%;margin:auto;padding:23px 28px;font-size:9px;color:#979b8c}.site-footer>span:first-child{display:flex;gap:7px;align-items:center;color:#808b77;font-weight:600;font-size:11px}.footer-star{color:#b3b88c;margin-left:6px}.resume-strip{margin-top:27px;display:flex;align-items:center;gap:10px;padding:14px 0;font-size:11px;color:#7b8779;flex-wrap:wrap}.resume-strip>div{display:flex;gap:7px;flex-wrap:wrap}.resume-strip button{display:flex;gap:6px;align-items:center;border:1px solid #dcdfd1;border-radius:7px;padding:5px 9px;background:#fffef8;font-size:10px}.error{color:#a45543;background:#fbebe4;border:1px solid #f0d8ce;padding:12px 14px;border-radius:10px;font-size:12px;line-height:1.65;margin:14px 0}.danger-text{color:#b65c48}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.back-link{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#879180;padding:0}.create-wrap,.room-wrap{max-width:1160px;margin:auto;padding:30px 28px 55px}.page-intro{margin:28px 0 32px}.page-intro h1{font-size:40px;line-height:1.1;margin-top:12px}.page-intro h1 span{color:var(--green)}.page-intro p{color:#889080;font-size:13px;margin-top:15px}.create-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:34px;align-items:start}.panel-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.panel-top h2,.settings-card h2{font-size:18px;display:flex;align-items:center;gap:10px;letter-spacing:-.4px}.section-num{font-size:10px;display:inline-grid;place-items:center;border:1px solid #d4dccc;background:#e8ede1;color:#738665;width:26px;height:26px;border-radius:8px;letter-spacing:0}.text-button{display:flex;gap:5px;align-items:center;color:#6d8a6b;font-size:11px;white-space:nowrap}.draft-explanation{margin-top:13px;font-size:11px;max-width:600px}.count-control{display:flex;align-items:center;justify-content:space-between;margin:21px 0;gap:20px}.count-control label{font-size:12px;color:#7a8372}.count-stepper{display:flex;border:1px solid #dcded2;border-radius:9px;overflow:hidden;background:var(--paper)}.count-stepper button{font-size:19px;width:32px;padding:3px 0}.count-stepper select{width:47px;border:0;border-left:1px solid #e7e8dc;border-right:1px solid #e7e8dc;background:var(--paper);padding:3px;text-align:center;font-size:13px;color:var(--ink)}.draft-card{margin-bottom:17px;overflow:hidden;border-radius:14px}.draft-card-heading{padding:13px 16px;display:flex;gap:11px;align-items:center;border-bottom:1px solid var(--line)}.text-number{width:31px;height:31px;display:inline-grid;place-items:center;background:var(--lilac);border-radius:9px;font-size:11px;font-weight:650;color:#7d7191;flex-shrink:0}.draft-card-heading>input{border:0;padding:0;background:none;box-shadow:none;font-weight:600;font-size:13px;min-width:30px;flex:1;border-radius:0}.upload-button{display:flex;align-items:center;gap:5px;font-size:10px;color:#7f8775;cursor:pointer;white-space:nowrap}.upload-button input{display:none}.draft-card textarea{padding:18px 17px;border:0;background:var(--paper);width:100%;border-radius:0;resize:vertical;min-height:125px;font-size:13px;line-height:1.75;box-shadow:none}.draft-card-foot{display:flex;justify-content:space-between;gap:15px;padding:9px 17px;border-top:1px solid var(--line);font-size:9px;color:#939889;background:#faf9f5}.settings-card{position:sticky;top:24px;padding:24px 23px;border-radius:15px}.settings-card h2{margin-bottom:26px}.settings-card>label{font-size:11px;color:#727e69;margin:19px 0 8px}.settings-card>input{width:100%;font-size:12px;padding:11px 12px}.duration-heading{display:flex;align-items:center;gap:6px!important;margin-top:25px!important}.duration-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.duration-grid button{border:1px solid #e2e3d7;border-radius:8px;padding:10px 8px;font-size:11px;background:#fbfaf5;color:#88907f;display:flex;align-items:center;justify-content:center;gap:6px}.duration-grid button.selected{background:#e7eee1;border-color:#a7b99e;color:#4f7147}.settings-hint{font-size:10px;color:#909582;line-height:1.7;margin:14px 0 22px}.custom-duration{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:10px;color:#87917e}.custom-duration input{width:68px;padding:8px 10px;font-size:12px}.game-summary{border-top:1px solid var(--line);padding-top:15px;margin-bottom:23px}.game-summary>div{display:flex;justify-content:space-between;font-size:11px;color:#8b9280;margin-bottom:10px}.game-summary b{color:#5a7051;font-size:12px;font-weight:600}.settings-bottom{display:flex;gap:5px;align-items:center;justify-content:center;font-size:9px;color:#96a08b;margin-top:13px}.room-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px}.room-status{display:flex;gap:7px;align-items:center;color:#75916e;font-size:10px;border:1px solid #dae2d1;background:#edf0e6;padding:5px 10px;border-radius:20px}.status-finished{color:#988565;background:#f1ece0;border-color:#e5dcc8}.status-finished .live-dot{background:#bba885}.room-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.room-title-row h1{font-size:32px;margin-top:10px;outline:none;overflow-wrap:anywhere;max-width:800px}.room-code{padding:7px 14px;border:1px solid #dfe3d4;border-radius:11px;background:#f2f3ea;text-align:center;flex-shrink:0}.room-code>span{font-size:7px;letter-spacing:1px;display:block;color:#8b937e}.room-code button{display:flex;gap:13px;align-items:center;font-size:23px;letter-spacing:3px;font-weight:600;padding:0}.room-code svg{color:#92a084}.teacher-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.stat-card{display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:13px;padding:17px 20px;background:var(--paper);font-size:10px;color:#8c9382}.stat-card>svg{color:#8ca282}.stat-card b{display:block;font-size:25px;font-weight:650;color:var(--ink);line-height:1.3;margin-top:2px}.stat-card small{font-size:11px;font-weight:400;color:#929b86}.teacher-room-grid,.student-room-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.host-control{padding:32px;text-align:center;background:#f1f2e8;border-color:#dfe5d4}.host-control-icon{background:#e1e8d8;color:#799166;border-radius:16px;margin:0 auto 16px;width:62px;height:62px;display:grid;place-items:center}.host-control h2{font-size:23px;margin-bottom:10px}.host-control>p{font-size:12px;line-height:1.8;color:#859178;max-width:450px;margin:auto}.big-game-code{display:flex;justify-content:center;gap:7px;margin:28px 0}.big-game-code span{font-size:33px;font-weight:650;width:46px;line-height:60px;background:#fffef8;border:1px solid #dce2d2;border-radius:10px;box-shadow:0 3px 0 #dfe3d5}.big-game-code span:nth-child(3){margin-right:9px}.host-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.host-actions .button{font-size:11px;padding:10px 14px}.host-note{font-size:9px;color:#9ba58d;display:block;margin-top:16px}.end-control{background:#f5eede;border-color:#e6dfcd}.end-control .host-control-icon{background:#ece2c3;color:#a18a4f}.end-control>p{margin-bottom:23px}.leaderboard{position:sticky;top:24px;overflow:hidden;border-radius:16px}.board-heading{display:flex;align-items:center;gap:11px;padding:19px 17px;border-bottom:1px solid var(--line)}.board-heading .icon-bubble{width:36px;height:36px;border-radius:11px}.board-heading h3{font-size:15px;letter-spacing:-.3px}.board-heading p{font-size:9px;color:#909986;margin-top:5px}.leader-list{padding:8px;max-height:570px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d9dece transparent}.leader-row{display:flex;gap:8px;align-items:center;padding:10px 9px;margin-bottom:3px;border-radius:10px;border:1px solid transparent}.leader-row.is-self{background:#edf2e6;border-color:#dde7cf}.rank{font-size:11px;color:#9b9e8f;min-width:14px;text-align:center}.rank-1{color:#baa05b}.rank-2,.rank-3{color:#86927a}.leader-info{flex:1;min-width:0}.leader-info strong{font-size:11px;font-weight:600;display:block;overflow-wrap:anywhere;line-height:1.3}.leader-info em{margin-left:5px;font-style:normal;font-size:8px;font-weight:400;color:#789366}.progress-track{height:4px;overflow:hidden;border-radius:3px;background:#ecefe4;position:relative}.progress-track>div{background:#8daa7c;height:100%;border-radius:3px;transition:width .3s}.leader-info .progress-track{margin-top:6px;height:3px}.leader-score{text-align:right;min-width:31px}.leader-score b{font-size:16px;font-weight:600;display:block;line-height:1.2}.leader-score small{font-size:7px;color:#92a184;line-height:1.1}.board-foot{display:flex;gap:5px;align-items:center;justify-content:center;padding:13px 8px;font-size:9px;color:#98a189;border-top:1px solid var(--line);background:#fbfaf5}.empty-board{text-align:center;padding:37px 15px;color:#a2af92}.empty-board>svg{margin-bottom:12px}.empty-board p{font-size:11px;color:#809173;margin-bottom:5px}.empty-board small{font-size:9px;color:#a4ac95}.lobby-players{margin:26px 0}.lobby-players h3{font-size:14px;margin-bottom:17px}.lobby-players h3>span{color:#8a9a7c;font-size:11px;font-weight:400;margin-left:5px}.lobby-players>div{display:flex;flex-wrap:wrap;gap:17px}.lobby-player{display:flex;align-items:center;flex-direction:column;gap:7px;max-width:88px;text-align:center;font-size:10px;color:#859378;overflow-wrap:anywhere}.teacher-texts{margin-top:25px}.teacher-texts>h3{font-size:13px;display:flex;align-items:center;gap:7px;margin-bottom:12px}.teacher-texts h3 small{font-size:9px;font-weight:400;margin-left:auto;color:#9ca68e}.source-detail{margin-bottom:10px;border-radius:11px;overflow:hidden}.source-detail summary{display:flex;align-items:center;gap:10px;padding:12px 15px;cursor:pointer;list-style:none}.source-detail summary::-webkit-details-marker{display:none}.source-detail .text-number{width:25px;height:25px;font-size:10px;border-radius:7px}.source-detail summary strong{font-size:12px;flex:1;overflow-wrap:anywhere}.source-detail summary>span:last-child{font-size:9px;color:#9aa38d}.source-detail p{padding:5px 17px 20px;font-size:12px;color:#7d8d6f;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.student-stats{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:25px;padding:16px 18px}.player-stat{display:flex;align-items:center;gap:11px;border-right:1px solid var(--line);padding:0 16px;min-width:0}.player-stat:first-child{padding-left:0}.player-stat:last-child{border:0}.player-stat small{display:block;font-size:7px;letter-spacing:.9px;color:#8d977d}.player-stat strong{font-size:23px;font-weight:600;line-height:1.3;display:block;overflow-wrap:anywhere;margin-top:3px}.player-stat:first-child strong{font-size:14px}.player-stat em{font-size:11px;font-weight:400;font-style:normal;color:#99a68a}.stat-icon{color:#9cae89}.points-stat .stat-icon{color:#a69b70}.points-stat strong{color:#618451}.urgent strong,.urgent b,.urgent>.stat-icon{color:#bf7965}.waiting-card{text-align:center;padding:44px 25px 23px;background:#f4f4eb}.waiting-avatars{display:flex;justify-content:center;gap:10px;align-items:center;margin-bottom:29px}.waiting-avatars>svg:first-child{transform:rotate(-10deg)}.waiting-avatars>svg:last-child{transform:rotate(8deg)}.waiting-card>.eyebrow{justify-content:center}.waiting-card h2{font-size:30px;margin:12px 0}.waiting-card>p{font-size:12px;color:#8c987f;line-height:1.9}.waiting-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #dfe5d4;background:#e9ede0;font-size:10px;color:#8b9e77;padding:7px 16px;border-radius:20px;margin:22px auto 30px}.waiting-pill .live-dot{animation:breathe 2s infinite}@keyframes breathe{50%{opacity:.35}}.mini-rules{display:grid;grid-template-columns:repeat(3,1fr);padding-top:21px;border-top:1px solid #e2e6d7}.mini-rules>div{display:flex;align-items:center;justify-content:center;gap:10px;font-size:9px;line-height:1.5;color:#8e9d7e;text-align:left}.play-instruction{display:flex;gap:9px;align-items:flex-start;font-size:10px;color:#929d85;margin:0 0 16px;line-height:1.75}.play-instruction svg{margin-top:2px}.play-instruction strong{font-weight:600;color:#6e8860}.play-card{margin-bottom:21px;border-radius:15px;overflow:hidden}.play-card-header{display:flex;align-items:center;gap:13px;padding:18px 20px}.play-card-header .text-number{width:36px;height:36px;border-radius:11px}.play-card-header h2{font-size:16px;letter-spacing:-.3px;overflow-wrap:anywhere}.play-card-header p{color:#97a28c;font-size:9px;margin-top:4px}.text-count{margin-left:auto;color:#72885f;font-size:20px;font-weight:650;white-space:nowrap}.text-count small{font-size:10px;font-weight:400;color:#a0ab94}.play-card>.progress-track{border-radius:0;height:3px}.text-play-body{padding:20px}.drop-zone{border:1.5px dashed #d7dec9;border-radius:10px;background:#f7f8f1;min-height:91px;padding:13px;display:flex;gap:6px;align-content:flex-start;align-items:center;flex-wrap:wrap;margin-top:9px;transition:background .2s,border .2s}.drop-zone.drop-active{border-color:#68915c;background:#e8f0dc;box-shadow:0 0 0 4px #71935c15}.drop-zone.drop-done{border:1px solid #dae4cc;background:#f0f5e7;display:block}.next-word-slot{display:flex;gap:6px;align-items:center;justify-content:center;font-size:10px;color:#a0ad8c;border:1px dashed #ced9bd;background:#f3f6eb;border-radius:6px;min-height:33px;padding:6px 9px}.drop-zone:not(:has(.placed-word)) .next-word-slot{border:0;background:none;margin:auto;font-size:11px}.placed-word{display:inline-flex;gap:6px;align-items:center;border:1px solid #d1dec1;background:#e6efdb;color:#5d7d49;padding:6px 9px;border-radius:6px;font-size:12px;overflow-wrap:anywhere;max-width:100%;animation:pop .22s ease-out}.placed-word svg{color:#8bab6c}.bank-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:20px 0 10px}.bank-heading>span:last-child{font-size:9px;color:#a1aa93}.word-bank{display:flex;flex-wrap:wrap;gap:7px}.word-tile{display:inline-flex;gap:3px;align-items:center;max-width:100%;padding:7px 10px 7px 6px;background:#fffefa;border:1px solid #dde1d1;border-radius:7px;box-shadow:0 2px 0 #e2e4d8;font-size:12px;color:#657458;line-height:1.4;cursor:grab;transition:background .12s,transform .12s,border .12s;user-select:none}.word-tile>span{overflow-wrap:anywhere;min-width:0}.word-tile svg{color:#c0c7b2}.word-tile:hover:not(:disabled){background:#f2f4e8;border-color:#b7c6a4;transform:translateY(-2px)}.word-tile:active{cursor:grabbing}.word-dragging{opacity:.35!important}.word-tile.wrong-word{border-color:#e9b89d;color:#b88068;background:#fbeae1;animation:shake .25s}.word-tile.word-pending{background:#f1eddc;border-color:#d3c99b;opacity:.7}.word-feedback{display:flex;align-items:center;gap:6px;padding:9px 11px;font-size:10px;border-radius:7px;line-height:1.5;margin-top:10px}.feedback-correct{background:#e8f1de;color:#6d8a54}.feedback-wrong{background:#fbede2;color:#b08468}.complete-number{background:#e2ecd4;color:#739353}.completed-original{font-size:13px;line-height:1.9;color:#668553;white-space:pre-wrap;overflow-wrap:anywhere}.result-banner{display:flex;gap:19px;align-items:center;border:1px solid #e7dfc5;background:#f4edda;border-radius:15px;padding:24px;margin-bottom:22px}.result-medal{width:67px;height:67px;border-radius:22px;background:#eee2b8;color:#b59851;display:grid;place-items:center;flex-shrink:0}.result-banner .eyebrow{color:#a49468;font-size:8px}.result-banner h2{font-size:23px;margin:7px 0}.result-banner p{font-size:11px;line-height:1.7;color:#9a916e}.connection-banner{display:flex;align-items:center;gap:9px;background:#f6e9d4;border:1px solid #e8d5ad;border-radius:9px;font-size:11px;color:#a39261;padding:11px 15px;margin-bottom:18px}.copy-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--green);color:#fffef5;display:flex;align-items:center;gap:8px;border-radius:10px;padding:12px 19px;font-size:12px;z-index:60;box-shadow:0 4px 15px #263d3622}.room-error{margin-top:0}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#263d3660;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:22px;overflow-y:auto}.modal{position:relative;width:min(100%,500px);padding:32px;box-shadow:0 20px 70px #19352826;max-height:calc(100dvh - 44px);overflow-y:auto}.modal-close{position:absolute;right:17px;top:17px;padding:5px;color:#929c83}.modal h2{font-size:27px;margin:17px 0}.help-steps{margin:24px 0}.help-steps p{display:flex;gap:13px;font-size:12px;line-height:1.7;color:#8b957f;margin:15px 0}.help-steps b{flex-shrink:0;border-radius:8px;background:#e8eee0;color:#7c9368;width:25px;height:25px;display:grid;place-items:center;font-weight:500;font-size:11px}.help-steps strong{color:#6e825c;font-weight:600}.help-note{font-size:10px;color:#a0a890;border-top:1px solid #e5e8da;padding-top:15px;margin-bottom:21px;line-height:1.7}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.small-modal{max-width:400px}.small-modal h2{font-size:24px}@keyframes pop{from{transform:scale(.92);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
@media(min-width:1400px){.home-wrap{padding-top:70px}.hero-grid{gap:95px}.hero-copy h1{font-size:61px}.hero-description{font-size:15px}.story-demo{margin-top:33px}.features{margin-top:55px}}
@media(max-width:1050px){.hero-grid{gap:42px;grid-template-columns:minmax(0,1fr) 340px}.join-card{padding:26px}.hero-copy h1{font-size:47px}.desktop-break{display:none}.hero-description{max-width:410px}.teacher-room-grid,.student-room-grid{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.player-stat{padding:0 10px;gap:8px}.student-stats{padding:14px}.player-stat .stat-icon svg{width:17px}.player-stat small{font-size:6px;letter-spacing:.5px}.player-stat strong{font-size:21px}.leader-row{padding:9px 5px;gap:6px}.board-heading{padding:17px 13px}.board-heading h3{font-size:14px}.create-layout{gap:23px;grid-template-columns:minmax(0,1fr) 300px}.panel-top{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:780px){.site-header{height:77px}.header-inner{padding:0 20px}.logo{font-size:23px}.logo-mark{width:39px;height:39px}.logo small{font-size:6px}nav{gap:15px}.help-button span{display:none}.hero-grid{gap:30px;grid-template-columns:1fr 310px}.home-wrap{padding:37px 22px}.hero-copy h1{font-size:38px;letter-spacing:-1.8px}.hero-copy .eyebrow{font-size:7px;letter-spacing:.8px}.hero-description{font-size:12px}.story-demo{padding:15px 15px 13px}.demo-line{gap:5px}.demo-word{font-size:11px;padding:6px 8px}.demo-slot{width:32px;height:29px}.demo-bank{gap:8px;margin-left:0}.floating-plus{right:-9px;width:42px;height:45px;font-size:20px}.demo-feedback{font-size:8px}.hero-social{gap:8px;font-size:9px}.hero-social strong{font-size:9px}.hero-social>svg{display:none}.join-card{padding:23px}.join-card h2{font-size:27px}.join-card>p{font-size:11px}.join-icon{margin-bottom:16px}.features{gap:15px;margin-top:32px}.features>div{padding-left:0}.features .icon-bubble{position:static;margin-bottom:13px}.features h3{font-size:13px}.features p{font-size:10px}.teacher-callout{padding:17px;align-items:flex-start}.teacher-callout small{max-width:300px}.site-footer{padding:20px 22px}.site-footer>span:last-child{display:none}.create-layout{grid-template-columns:1fr}.settings-card{position:static;order:-1}.settings-card h2{margin-bottom:12px}.duration-grid{grid-template-columns:repeat(3,1fr)}.settings-card .game-summary{display:flex;gap:17px;flex-wrap:wrap;margin-bottom:16px}.settings-card .game-summary>div{gap:7px}.create-wrap,.room-wrap{padding:26px 22px 40px}.page-intro h1{font-size:35px}.teacher-room-grid,.student-room-grid{grid-template-columns:1fr}.leaderboard{position:static}.leader-list{max-height:360px}.student-stats{grid-template-columns:repeat(2,1fr);gap:13px}.player-stat{padding:0 10px}.player-stat:nth-child(2){border:0}.player-stat:nth-child(3){padding-left:0}.player-stat:nth-child(3),.player-stat:nth-child(4){border-top:1px solid var(--line);padding-top:13px}.player-stat small{font-size:7px}.teacher-stats{gap:9px}.stat-card{padding:13px 12px;gap:10px}.stat-card>svg{width:18px}.stat-card b{font-size:21px}.stat-card small{display:block;font-size:9px}.room-title-row h1{font-size:27px}.room-title-row{margin-bottom:23px}.room-code button{font-size:20px}.room-code{padding:6px 9px}.play-card-header h2{font-size:15px}.play-card-header{padding:16px}.text-play-body{padding:16px}.host-control{padding:28px}.mini-rules{gap:5px}.mini-rules>div{gap:6px;font-size:8px}}
@media(max-width:620px){.home-wrap{padding:28px 19px 28px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero-copy{padding-top:4px}.hero-copy h1{font-size:46px;letter-spacing:-2px;margin-top:17px}.hero-copy .eyebrow{font-size:8px}.hero-description{font-size:13px;margin-top:17px}.title-swoosh{height:11px}.story-demo{max-width:460px;margin-top:24px;padding:17px 19px}.demo-word{font-size:13px;padding:7px 10px}.demo-feedback{font-size:9px}.demo-slot{width:36px;height:32px}.demo-bank{gap:14px;margin-left:11px}.hero-social{margin-top:23px;font-size:10px}.hero-social strong{font-size:10px}.join-card{padding:24px;border-radius:18px}.join-icon{display:none}.join-card h2{font-size:26px;line-height:1.15}.join-card h2 br{display:none}.join-card form{margin-top:19px}.join-card .code-input{font-size:27px;letter-spacing:9px}.join-card input{height:49px}.join-card .join-bottom{font-size:10px}.features{grid-template-columns:1fr;gap:23px;margin-top:32px;padding-top:23px}.features>div{padding-left:57px;min-height:43px}.features .icon-bubble{position:absolute;top:0}.features h3{font-size:14px}.features p{font-size:11px}.teacher-callout{flex-direction:column;gap:16px;padding:18px}.teacher-callout strong{font-size:13px}.teacher-callout small{font-size:10px}.teacher-callout>.button{width:100%}.site-header nav{gap:10px}.header-inner{padding:0 18px}.header-inner .button{font-size:10px;padding:8px 11px;gap:6px}.header-inner .button svg:last-child{display:none}.logo{gap:8px;font-size:22px}.logo small{font-size:5.7px;letter-spacing:.8px}.logo-mark{width:36px;height:36px;border-radius:11px}.logo-mark svg{width:19px}.header-mode{font-size:9px}.create-wrap,.room-wrap{padding:22px 18px 35px}.page-intro h1{font-size:33px}.page-intro p{font-size:12px}.page-intro{margin:24px 0}.draft-card-heading{padding:11px 12px;gap:9px}.draft-card-heading .text-number{width:25px;height:25px;font-size:9px}.upload-button span{display:none}.upload-button{padding:5px}.draft-card-foot{font-size:8px;gap:8px}.settings-card{padding:21px 20px}.settings-card h2{font-size:16px}.duration-grid button{font-size:10px}.panel-top h2{font-size:16px}.room-title-row{align-items:flex-start;gap:13px}.room-title-row h1{font-size:25px}.room-title-row .eyebrow{font-size:7px;letter-spacing:.8px}.room-code{padding:7px 9px}.room-code button{font-size:17px;letter-spacing:1.5px;gap:7px}.room-code button svg{width:13px}.room-code>span{font-size:6px}.room-status{font-size:9px}.teacher-stats{gap:7px}.stat-card{padding:12px 8px;gap:6px;flex-direction:column;text-align:center}.stat-card b{font-size:18px;line-height:1.3}.stat-card>svg{width:19px;height:19px}.stat-card small{font-size:8px;line-height:1.4}.stat-card>span{font-size:8px}.host-control{padding:23px 15px}.host-control h2{font-size:21px}.host-control>p{font-size:11px}.big-game-code{gap:5px;margin:23px 0}.big-game-code span{width:37px;font-size:28px;line-height:51px;border-radius:8px}.host-actions .button{width:100%}.host-note{font-size:8px}.student-stats{padding:13px 12px}.player-stat:first-child .avatar{width:42px;height:42px}.player-stat strong{font-size:21px}.player-stat:first-child strong{font-size:13px}.player-stat small{font-size:6px;letter-spacing:.6px}.player-stat em{font-size:10px}.student-room-grid{gap:22px}.waiting-card{padding:35px 18px 23px}.waiting-card h2{font-size:26px}.waiting-card>p{font-size:11px}.waiting-avatars{gap:8px}.mini-rules>div{flex-direction:column;text-align:center;gap:6px;font-size:8px}.play-card-header{gap:10px;padding:15px}.play-card-header .text-number{width:32px;height:32px;font-size:10px}.play-card-header h2{font-size:14px}.play-card-header p{font-size:8px}.text-count{font-size:18px}.text-play-body{padding:16px 13px}.word-tile{font-size:13px;min-height:39px;padding:8px 10px 8px 6px}.word-bank{gap:8px}.drop-zone{min-height:100px;padding:11px;gap:6px}.placed-word{font-size:12px}.play-instruction{font-size:10px}.word-feedback{font-size:9px}.bank-heading .tiny-label{font-size:8px;letter-spacing:.8px}.result-banner{padding:19px 16px;gap:13px}.result-medal{width:48px;height:48px;border-radius:15px}.result-medal svg{width:26px}.result-banner h2{font-size:20px}.result-banner p{font-size:10px}.result-banner .eyebrow{font-size:6px;letter-spacing:.8px}.site-footer{font-size:8px;padding:18px 19px}.modal{padding:27px 23px}.modal h2{font-size:25px}.help-steps p{font-size:11px}.help-note{font-size:9px}.resume-strip{font-size:10px;gap:8px}.resume-strip>div{width:100%;margin-left:27px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Comfortable reading sizes for the activity itself. */
.word-tile{font-size:14px;min-height:41px}.placed-word{font-size:14px}.completed-original{font-size:15px}.play-instruction{font-size:12px}.word-feedback{font-size:11px}.leader-info strong{font-size:12px}.drop-zone .next-word-slot{font-size:11px}
@media(max-width:620px){.word-tile{font-size:14px;min-height:42px}.placed-word{font-size:13px}.completed-original{font-size:14px}.play-instruction{font-size:11px}.word-feedback{font-size:10px}}
