@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700;800;900&family=Fredoka:wght@600;700&display=swap";:root{--navy:#12304a;--deep:#0b5966;--water:#0f8290;--aqua:#60d0ca;--foam:#eafbf5;--paper:#fffdf4;--sand:#f3d99b;--yellow:#ffd95c;--coral:#ef745f;--blue:#4a82d1;--ink:#163347;--muted:#66828c;--shadow:0 22px 58px #08303d3d;color:var(--ink);background:#d9f2eb;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;margin:0}body{background:linear-gradient(#eafbf5,#c7e8df);min-height:100vh}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{flex-direction:column;min-height:100vh;display:flex;overflow:hidden}.topbar{background:var(--paper);border-bottom:4px solid var(--navy);align-items:center;gap:13px;min-height:72px;padding:10px clamp(16px,4vw,56px);display:flex}.brand-mark{background:var(--yellow);border-radius:50%;place-items:center;width:47px;height:47px;font-size:27px;display:grid;box-shadow:inset 0 -4px #ba87172e}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{color:var(--navy);font:700 23px/1 Fredoka,sans-serif}.brand-copy small{color:#66828c;letter-spacing:1.2px;text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:900}.top-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.room-pill{color:#4e746e;letter-spacing:1px;background:#e7f2ee;border-radius:99px;padding:7px 10px;font-size:9px;font-weight:900}.plain-button,.new-game,.cancel-button{color:var(--navy);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;font-weight:900;text-decoration:underline}.ask-button:disabled{display:none}.sound-button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:50%;width:39px;height:39px;font-size:18px}.scorebar{background:#dff4ed;border-bottom:1px solid #b5d8cf;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:69px;padding:8px clamp(16px,4vw,56px);display:grid}.player-chip{color:#486a70;background:#ffffff85;border:2px solid #0000;border-radius:11px;justify-content:space-between;justify-self:start;align-items:center;gap:14px;min-width:150px;padding:9px 12px;transition:all .2s;display:flex}.chip-detective{flex:none;display:block;position:relative}.chip-detective-art{background-color:#d9c28d;border:2px solid #fff;border-radius:6px;width:37px;height:42px;display:block;box-shadow:0 2px #12304a26}.chip-detective b{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#12304ae6;border-radius:2px;padding:2px 1px;font-size:6px;line-height:1;position:absolute;bottom:2px;left:2px;right:2px;overflow:hidden}.player-chip>span:not(.chip-detective){flex:1}.player-chip.blue{justify-self:end}.player-chip.current{border-color:var(--yellow);background:#fff;transform:translateY(-2px);box-shadow:0 5px #12304a17}.player-chip span{font-weight:900}.player-chip strong{color:var(--navy);font-size:11px}.player-chip.coral.current span{color:#c84b3c}.player-chip.blue.current span{color:#326bb5}.timer-block{text-align:center}.timer-block strong,.timer-block span{display:block}.timer-block strong{color:var(--navy);font:700 24px/1 Fredoka,sans-serif}.timer-block span{color:#67868a;text-transform:uppercase;letter-spacing:.8px;margin-top:4px;font-size:9px;font-weight:900}.pond-board{isolation:isolate;background:linear-gradient(170deg,#167986 0%,#0d6371 55%,#0b5664 100%);flex:1;grid-template-columns:minmax(280px,1fr) minmax(230px,310px) minmax(280px,1fr);gap:clamp(16px,2vw,32px);min-height:620px;padding:28px clamp(18px,3.8vw,54px) 32px;display:grid;position:relative;overflow:hidden}.pond-board:before{content:"";z-index:-2;opacity:.28;background:radial-gradient(circle at 8% 18%,#0000 0 70px,#ffffff26 72px 74px,#0000 76px),radial-gradient(circle at 85% 72%,#0000 0 110px,#ffffff1a 112px 115px,#0000 117px);position:absolute;inset:0}.water-ripple{z-index:-1;border:3px solid #8ee8de1f;border-radius:50%;width:330px;height:100px;position:absolute;transform:rotate(-8deg)}.ripple-one{top:45%;left:-100px}.ripple-two{top:20%;right:-110px;transform:rotate(12deg)}.player-area{background:#04313d33;border:2px solid #ffffff24;border-radius:18px;flex-direction:column;min-width:0;padding:16px;transition:all .25s;display:flex}.player-area.active{background:#042d386b;border-color:#ffd95ccc;box-shadow:0 0 0 5px #ffd95c14,inset 0 0 34px #ffffff08}.player-area.waiting{filter:saturate(.7)}.area-heading{color:#c5e6e4;letter-spacing:1.2px;justify-content:space-between;align-items:center;font-size:9px;font-weight:900;display:flex}.area-heading strong{color:#9dc6c5;background:#0000002e;border-radius:4px;padding:5px 7px;font-size:8px}.active .area-heading strong{background:var(--yellow);color:var(--navy)}.detective-heading{align-items:center;gap:10px;margin:12px 0;display:flex}.detective-portrait{flex:none;display:block;position:relative}.detective-art{border:3px solid var(--yellow);background-color:#d6bd82;border-radius:7px;flex:none;width:54px;height:66px;display:block;box-shadow:0 5px #021f2a40}.detective-portrait b{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#12304ae6;border-radius:3px;padding:3px 1px;font-size:7px;line-height:1;position:absolute;bottom:3px;left:3px;right:3px;overflow:hidden}.hand-label{color:#fff;flex:1;min-width:0;margin:4px 0 0;font:600 21px/1 Fredoka,sans-serif}.hand-label em{color:#add3d0;text-transform:uppercase;letter-spacing:.8px;margin-top:5px;font:800 8px/1 DM Sans,sans-serif;display:block}.word-hand{grid-template-columns:repeat(2,minmax(105px,1fr));align-content:start;gap:12px;min-height:335px;display:grid}.word-card{border:5px solid var(--list-color);min-height:104px;color:var(--navy);cursor:pointer;transform:rotate(var(--tilt));background:linear-gradient(#fffef8,#f8efd8);border-radius:9px 9px 18px;padding:14px 8px 10px;transition:all .16s;position:relative;box-shadow:0 8px #07293640,0 13px 20px #021f2a38}.word-card:after{content:"";pointer-events:none;border:1px dashed #12304a2b;border-radius:5px 5px 12px;position:absolute;inset:5px}.word-card:before{content:"";z-index:2;border:2px solid #78858a;border-radius:8px;width:9px;height:33px;position:absolute;top:-9px;right:13px;transform:rotate(10deg)}.card-detective-art{z-index:1;border:2px solid var(--navy);opacity:.82;background-color:#d6bd82;border-radius:4px;width:30px;height:38px;display:block;position:absolute;top:7px;left:8px}.word-card span,.word-card small{z-index:1;display:block;position:relative}.word-card span{overflow-wrap:anywhere;font:700 clamp(26px,3vw,42px)/1 Fredoka,sans-serif}.word-card small{color:#8e8878;letter-spacing:1.5px;text-transform:uppercase;margin-top:8px;font-size:7px;font-weight:900}.word-card:hover:not(:disabled){transform:translateY(-5px)rotate(0)}.word-card.selected{border-color:var(--yellow);background:#fff;transform:translateY(-8px)rotate(0)scale(1.025);box-shadow:0 0 0 5px #ffd95c59,0 11px #07293647}.word-card:disabled{cursor:default;opacity:.62}.card-back{color:#fff;cursor:default;background:repeating-linear-gradient(135deg,#12304a 0 10px,#17445c 10px 20px);border-color:#6ed0cb;flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 8px #07293640,0 13px 20px #021f2a38}.card-back:before{display:none}.card-back:after{border-color:#ffffff40;inset:7px}.card-back span{font-size:32px}.card-back small{color:#b9e8e2}.empty-hand{color:#a9d1cf;text-align:center;border:2px dashed #ffffff2e;border-radius:12px;grid-column:1/-1;align-self:center;padding:30px;font-size:12px}.book-shelf{border-top:1px solid #ffffff24;margin-top:auto;padding-top:15px}.books-label{color:#9dc8c5;letter-spacing:1.3px;margin-bottom:8px;font-size:8px;font-weight:900;display:block}.book-list{flex-wrap:wrap;gap:6px;min-height:39px;display:flex}.book-list>small{color:#7facaa;font-size:10px}.word-book{color:var(--navy);background:#e5f6ec;border-radius:5px;padding:5px 7px;font-size:9px;box-shadow:0 3px #0000001f}.word-book b{margin-left:2px}.pond-center{text-align:center;color:#fff;align-self:center}.fish-pond{background:radial-gradient(circle at 34% 27%,#ffffff2e,#0000 28%),#0b6c7a;border:7px solid #8edad4;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:170px;height:170px;margin:0 auto 21px;transition:all .25s;display:flex;box-shadow:inset 0 0 0 10px #06424e59,0 13px #032b3747,0 25px 45px #021f293d}.fish-pond.match{border-color:var(--yellow);animation:.48s pond-pop}.fish-pond.fish{animation:.35s pond-wiggle}@keyframes pond-pop{50%{transform:scale(1.08)}}@keyframes pond-wiggle{33%{transform:rotate(-3deg)}66%{transform:rotate(3deg)}}.pond-fish{font-size:50px;line-height:1}.fish-pond strong{font:700 26px/1 Fredoka,sans-serif}.fish-pond small{color:#b7e3df;text-transform:uppercase;letter-spacing:1px;margin-top:3px;font-size:8px;font-weight:900}.bubble{border:2px solid #ffffff59;border-radius:50%;width:8px;height:8px;position:absolute}.b1{transform:translate(42px,-56px)}.b2{width:12px;height:12px;transform:translate(57px,-35px)}.b3{width:6px;height:6px;transform:translate(-52px,-48px)}.turn-label{color:var(--yellow);letter-spacing:1.5px;text-transform:uppercase;margin:0 0 7px;font-size:10px;font-weight:900}.pond-center h1{margin:0;font:700 clamp(30px,3.2vw,44px)/1.02 Fredoka,sans-serif}.status-message{color:#c0dfdd;max-width:270px;min-height:54px;margin:12px auto 14px;font-size:12px;line-height:1.45}.hear-button{color:#d9f4f0;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:0 auto 11px;font-size:11px;font-weight:900;text-decoration:underline;display:block}.primary-button{background:var(--yellow);min-height:51px;color:var(--navy);cursor:pointer;border:0;border-radius:9px;padding:0 19px;font-weight:900;transition:all .14s;box-shadow:0 6px #c49d2c,0 13px 26px #03232d38}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px #c49d2c,0 16px 29px #03232d3b}.primary-button:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #c49d2c}.primary-button:disabled{opacity:.42;cursor:not-allowed}.ask-button{width:min(100%,270px);padding-inline:13px}.ask-button b{margin-right:5px}.read-aloud-step{color:#d9f3ef;background:#042d384d;border:2px dashed #ffd95c8c;border-radius:9px;max-width:285px;margin:0 auto 11px;padding:10px 12px;font-size:11px;line-height:1.45;display:none}.read-aloud-step b{color:var(--yellow);font-size:16px}.read-aloud-step strong{color:#fff;font-size:13px}.answer-panel{border:3px solid var(--yellow);background:#042d3870;border-radius:14px;width:min(100%,320px);margin:0 auto;padding:14px;box-shadow:0 8px #021f2a38}.answer-panel>p{color:#d7f1ee;margin:0 0 11px;font-size:11px;font-weight:800}.yes-card-instruction{background:#e9fff0;border:3px solid #67d58f;border-radius:10px;padding:12px;line-height:1.45;color:var(--navy)!important;margin:0!important;font-size:12px!important}.yes-card-instruction b{color:#23804a;margin-bottom:3px;font:700 21px/1 Fredoka,sans-serif;display:block}.yes-card-instruction strong{color:#16733f;font-size:15px}.answer-or{color:#a8d0cb;letter-spacing:1px;margin:8px 0;font-size:8px;font-weight:900;display:block}.no-button{background:var(--coral);color:#fff;cursor:pointer;border:0;border-radius:10px;width:100%;min-height:55px;padding:8px;font-size:11px;font-weight:900;line-height:1.25;box-shadow:0 5px #021f2a4d}.no-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #021f2a4d}.no-button:disabled{opacity:.5;cursor:wait}.no-say-prompt{letter-spacing:.7px;text-transform:uppercase;font-weight:900;color:#c7e6e2!important;margin:0 0 9px!important;font-size:9px!important}.no-say-prompt strong{color:#fff;letter-spacing:0;text-transform:none;margin-top:4px;font:700 17px/1.15 Fredoka,sans-serif;display:block}.waiting-answer{color:#fff;border:2px dashed #ffffff57;border-radius:12px;width:min(100%,270px);margin:0 auto;padding:14px}.waiting-answer span,.waiting-answer b,.waiting-answer small{display:block}.waiting-answer span{font-size:30px}.waiting-answer b{color:var(--yellow);font:700 17px/1.2 Fredoka,sans-serif}.waiting-answer small{color:#b7dcd8;margin-top:5px;font-size:9px}.coach-tip{color:#8fbcba;margin:12px 0 0;font-size:9px}.connection-error{color:#a3372d;background:#ffe4df;border-radius:7px;max-width:440px;margin:10px auto;padding:9px 11px;font-size:10px;font-weight:900;line-height:1.4}.game-footer{background:var(--paper);border-top:4px solid var(--list-color);color:#668078;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;min-height:61px;padding:9px clamp(16px,4vw,56px);font-size:10px;display:grid}.current-set i{background:var(--list-color);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb,var(--list-color) 18%,transparent);border-radius:50%;margin-right:5px;display:inline-block}.live-note{letter-spacing:1px;font-size:8px;font-weight:900}.live-note i{background:#41a66f;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block;box-shadow:0 0 0 4px #41a66f21}.new-game{justify-self:end}.room-gate,.modal-layer{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#052935d6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.room-gate{z-index:200;background:radial-gradient(circle at 15% 20%,#ffd95c59 0 3px,#0000 4px) 0 0/62px 62px,radial-gradient(circle at 85% 72%,#60d0ca52 0 4px,#0000 5px) 0 0/83px 83px,linear-gradient(145deg,#0d7280,#12304a 62%,#6e3978);overflow:auto}.gate-card,.setup-card,.rules-card,.winner-card,.invite-card{border:7px solid var(--sand);background:var(--paper);width:min(92vw,520px);max-height:92vh;box-shadow:var(--shadow);border-radius:12px;padding:38px;position:relative;overflow:auto}.gate-card{border-color:var(--yellow);text-align:center;background:linear-gradient(135deg,#fffdf4 0 64%,#fff2c7 64%);width:min(94vw,760px);padding:30px 44px 34px;overflow:hidden;box-shadow:0 25px #06303d47,0 38px 80px #031f2b73}.gate-card:before{content:"CLASSIFIED • C.A.T. SIGHT WORD EVIDENCE • CLASSIFIED";background:var(--coral);color:#fff;letter-spacing:1px;padding:6px 62px;font-size:7px;font-weight:900;position:absolute;top:32px;left:-53px;transform:rotate(-35deg)}.gate-case-ribbon{background:var(--navy);color:var(--yellow);letter-spacing:1.5px;border-radius:0 0 12px 12px;margin:-30px auto 18px;padding:10px 22px 9px;font-size:9px;font-weight:900;display:inline-block}.gate-detective-lineup{background:linear-gradient(#53cfc8 0 58%,#f3bd4f 58%);border:3px solid #b78622;border-radius:17px;justify-content:center;align-items:flex-end;gap:9px;width:min(100%,570px);margin:2px auto 19px;padding:19px 20px 13px;display:flex;position:relative;box-shadow:inset 0 0 0 4px #ffffff59,0 8px #9b6a23}.gate-detective-lineup:before{content:"DETECTIVES ON THE CASE";color:var(--navy);letter-spacing:1.7px;font-size:7px;font-weight:900;position:absolute;top:6px}.gate-detective{transform:rotate(var(--lineup-tilt,0deg));display:block;position:relative}.gate-detective:first-child,.gate-detective:nth-child(5){--lineup-tilt:-3deg}.gate-detective:nth-child(2),.gate-detective:nth-child(4){--lineup-tilt:2deg}.gate-detective i{background-color:#d6bd82;border:4px solid #fff;border-radius:12px;width:78px;height:100px;display:block;box-shadow:0 5px #12304a47}.gate-detective:nth-child(3) i{border-color:var(--yellow);width:92px;height:116px}.gate-detective b{color:#fff;background:#12304ae8;border-radius:4px;padding:4px 2px;font-size:8px;position:absolute;bottom:4px;left:4px;right:4px}.gate-paw{color:#e6ae30;opacity:.25;font-size:33px;position:absolute}.paw-one{top:22px;right:21px;transform:rotate(18deg)}.paw-two{bottom:22px;left:26px;transform:rotate(-25deg)}.gate-evidence{justify-content:center;gap:8px;margin:15px auto 3px;display:flex}.gate-evidence span{border:3px solid var(--navy);min-width:65px;color:var(--navy);background:#fff;border-radius:5px 5px 11px;padding:8px 9px;font:700 12px/1 Fredoka,sans-serif;transform:rotate(-2deg);box-shadow:0 4px #12304a29}.gate-evidence span:nth-child(2n){border-color:var(--coral);transform:rotate(2deg)}.eyebrow{color:#c75646;letter-spacing:1.8px;text-transform:uppercase;margin:0 0 9px;font-size:9px;font-weight:900}.gate-card h1,.setup-card h2,.rules-card h2,.winner-card h2,.invite-card h2{color:var(--navy);margin:0;font:700 38px/1.03 Fredoka,sans-serif}.gate-card>p:not(.eyebrow),.winner-card>p{color:var(--muted);line-height:1.5}.gate-card form{gap:10px;width:min(100%,530px);margin:19px auto 12px;display:grid}label,legend{color:#516d72;letter-spacing:.7px;text-align:left;text-transform:uppercase;font-size:10px;font-weight:900}input,textarea,select{width:100%;color:var(--navy);text-transform:none;background:#fff;border:2px solid #c3d7cf;border-radius:8px;outline:none;margin-top:7px;padding:12px 13px}input:focus,textarea:focus,select:focus{border-color:var(--water);box-shadow:0 0 0 4px #0f82901f}#room-code{text-align:center;letter-spacing:12px;border-color:var(--water);font:700 32px/1 Fredoka,sans-serif;box-shadow:0 4px #0f82902e}.form-error{color:#c14237;min-height:17px;font-size:10px;font-weight:800}.gate-card>small{color:#8a9b98;margin-top:10px;font-size:9px;line-height:1.4;display:block}.gate-game-room-link{color:#087982;text-underline-offset:4px;margin-top:17px;font-size:11px;font-weight:900;text-decoration:underline;display:inline-block}.setup-card{width:min(94vw,820px)}.setup-card h2{margin-bottom:22px}.name-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.detective-assignment{background:#f4f8f5;border:2px solid #d8e2dc;border-radius:10px;gap:10px;padding:12px;display:grid}.assignment-picker{grid-template-columns:34px 84px 34px;justify-content:center;align-items:center;gap:8px;display:grid}.assignment-portrait{width:84px;height:142px;display:block;position:relative}.assignment-art{border:4px solid var(--list-color);background-color:#d6bd82;border-radius:8px;width:84px;height:142px;display:block;box-shadow:0 4px #becbc5}.assignment-portrait b{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#12304aeb;border-radius:3px;padding:4px 2px;font-size:8px;line-height:1;position:absolute;bottom:4px;left:4px;right:4px;overflow:hidden}.detective-arrow,.pose-cycle{color:#fff;cursor:pointer;border:0;place-items:center;display:grid;box-shadow:0 3px #12304a38}.detective-arrow{background:var(--water);border-radius:9px;width:34px;height:44px;font:700 28px/1 Fredoka,sans-serif}.pose-cycle{background:var(--navy);border:2px solid #fff;border-radius:50%;width:27px;height:27px;font-size:16px;line-height:1;position:absolute;top:6px;right:6px}.detective-arrow:hover,.pose-cycle:hover{background:var(--coral);transform:translateY(-1px)}.detective-arrow:focus-visible,.pose-cycle:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.detective-assignment label{min-width:0}.detective-assignment input{padding:8px 9px}fieldset{border:0;margin:21px 0 0;padding:0}legend{margin-bottom:9px}.choice-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.choice-grid button,.time-choices button{color:#547071;cursor:pointer;background:#f3f8f5;border:2px solid #d1dfd9;border-radius:9px;padding:12px 8px}.choice-grid button strong,.choice-grid button span{display:block}.choice-grid button strong{color:var(--navy);font-size:12px}.choice-grid button span{margin-top:3px;font-size:8px}.choice-grid button.selected,.time-choices button.selected{border-color:var(--water);background:#dff5f0;box-shadow:0 0 0 3px #0f829017}.case-selectors{border-left:7px solid var(--list-color);background:color-mix(in srgb,var(--list-color) 7%,#f4f8f5);border-radius:9px;grid-template-columns:1fr 1fr;gap:12px;padding:12px;display:grid}.word-preview{border:2px dashed var(--list-color);background:color-mix(in srgb,var(--list-color) 6%,#fff);border-radius:9px;margin-top:18px;padding:13px}.word-preview>span{color:#6b8582;letter-spacing:1.2px;margin-bottom:8px;font-size:8px;font-weight:900;display:block}.word-preview p{color:var(--navy);margin:0;font-size:11px;font-weight:800;line-height:1.55}.custom-list{margin-top:18px;display:block}.custom-list textarea{resize:vertical;min-height:73px}.custom-list small{color:#718988;text-transform:none;margin-top:4px;font-size:9px;display:block}.time-choices{gap:8px;display:flex}.time-choices button{min-width:78px;font-weight:900}.start-button{width:100%;margin-top:24px}.cancel-button{width:100%;margin-top:13px}.invite-card{width:min(92vw,650px)}.invite-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.invite-card input{font-size:11px}.invite-copy{width:100%;margin-top:15px}.invite-card>small{color:#718988;text-align:center;margin-top:15px;font-size:9px;line-height:1.5;display:block}.student-case-code{border:4px dashed var(--coral);color:var(--navy);letter-spacing:8px;text-align:center;background:#fff5da;border-radius:12px;margin:17px auto;padding:13px 18px 11px;font:700 clamp(40px,9vw,64px)/1 Fredoka,sans-serif}.student-door-link{color:#087982;text-align:center;text-underline-offset:4px;margin:0 0 15px;font-weight:900;text-decoration:underline;display:block}.backup-private-link{color:#5c7677;background:#edf5f2;border-radius:8px;margin-top:18px;padding:11px 13px;font-size:10px}.backup-private-link summary{cursor:pointer;font-weight:900}.backup-private-link label{margin-top:10px}.student-door-page{background:radial-gradient(circle at 12% 18%,#ffd95c73 0 4px,#0000 5px) 0 0/66px 66px,radial-gradient(circle at 88% 76%,#60d0ca66 0 5px,#0000 6px) 0 0/89px 89px,linear-gradient(145deg,#0d7280,#12304a 62%,#6e3978);place-items:center;min-height:100vh;padding:24px;display:grid;overflow:auto}.student-door-card{border:8px solid var(--yellow);text-align:center;background:linear-gradient(140deg,#fffdf4 0 68%,#fff1c2 68%);border-radius:18px;width:min(94vw,610px);padding:42px 48px 34px;position:relative;overflow:hidden;box-shadow:0 25px #06303d47,0 42px 90px #031f2b85}.student-door-card:before,.student-door-card:after{content:"🐾";color:#ef745f2e;font-size:72px;position:absolute;transform:rotate(-22deg)}.student-door-card:before{bottom:52px;left:-14px}.student-door-card:after{top:78px;right:-9px;transform:rotate(24deg)}.student-door-stamp{background:var(--navy);color:var(--yellow);letter-spacing:1.5px;border-radius:0 0 12px 12px;margin:-42px auto 24px;padding:10px 22px 9px;font-size:9px;font-weight:900;display:inline-block}.student-door-badge{z-index:1;background:var(--aqua);border:5px solid #fff;border-radius:50%;place-items:center;width:82px;height:82px;margin:0 auto 15px;font-size:43px;display:grid;position:relative;box-shadow:0 7px #2b9994}.student-door-card h1{z-index:1;color:var(--navy);margin:0;font:700 clamp(38px,7vw,56px)/1 Fredoka,sans-serif;position:relative}.student-door-intro{z-index:1;max-width:450px;color:var(--muted);margin:14px auto 22px;font-size:13px;line-height:1.55;position:relative}.student-door-card form{z-index:1;text-align:left;max-width:430px;margin:0 auto;position:relative}.student-door-card label{color:#527176;letter-spacing:.8px;text-transform:uppercase;margin:13px 0 6px;font-size:10px;font-weight:900;display:block}.student-door-card input{width:100%;height:54px;color:var(--navy);background:#fff;border:3px solid #bfd7d0;border-radius:10px;outline:none;padding:0 15px;font-size:17px;font-weight:800}.student-door-card input:focus{border-color:var(--water);box-shadow:0 0 0 4px #0f829024}.student-door-card .student-door-code-input{text-align:center;letter-spacing:7px;text-transform:uppercase;height:68px;font:700 31px/1 Fredoka,sans-serif}.student-door-open{width:100%;margin-top:20px}.student-door-error{color:#b33b31;text-align:center;min-height:32px;margin:12px 0 0;font-size:11px;font-weight:900;line-height:1.4}.student-door-file-tabs{z-index:1;justify-content:center;gap:7px;margin:12px 0;display:flex;position:relative}.student-door-file-tabs span{background:var(--coral);color:#fff;border-radius:7px 7px 3px 3px;padding:7px 10px 6px;font-size:9px;font-weight:900;transform:rotate(-2deg)}.student-door-file-tabs span:nth-child(2){background:var(--yellow);color:var(--navy);transform:rotate(2deg)}.student-door-file-tabs span:nth-child(3){background:var(--aqua);color:var(--navy)}.student-door-file-tabs span:nth-child(4){background:var(--blue)}.student-door-card>small{z-index:1;color:#748b89;font-size:9px;display:block;position:relative}.private-memory-page{background:#12304a;grid-template-rows:auto 1fr;min-height:100vh;display:grid}.private-memory-nav{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;gap:18px;min-height:54px;padding:9px 18px;font-size:11px;font-weight:900;display:flex}.private-memory-nav a{background:var(--yellow);color:var(--navy);border-radius:8px;padding:9px 13px;text-decoration:none}.private-memory-frame{background:#dff5ec;border:0;width:100%;min-height:calc(100vh - 54px)}.game-room-card{width:min(96vw,1040px)}.game-room-instructions{z-index:1;text-align:left;background:#ffffffc7;border:3px solid #b9d9d0;border-radius:13px;max-width:570px;margin:0 auto 18px;padding:16px 20px;position:relative}.game-room-instructions h2{color:var(--navy);text-align:center;margin:0 0 9px;font:700 20px/1.1 Fredoka,sans-serif}.game-room-instructions ol{color:#527176;margin:0;padding-left:23px;font-size:11px;line-height:1.55}.game-room-instructions li+li{margin-top:5px}.game-room-instructions b{color:var(--navy)}.game-room-badge-access{z-index:1;border:3px solid var(--aqua);text-align:left;background:#e8f8f3;border-radius:15px;max-width:570px;margin:0 auto 24px;padding:19px 22px;position:relative}.game-room-badge-access>.eyebrow{margin-bottom:4px}.game-room-badge-access h2{color:var(--navy);margin:0;font:700 24px/1 Fredoka,sans-serif}.game-room-badge-access>p:not(.eyebrow){color:#527176;margin:8px 0 14px;font-size:10px;line-height:1.45}.game-room-badge-access form{max-width:420px}.game-library{z-index:1;border:4px solid var(--navy);background:linear-gradient(150deg,#e8faf4,#fff9de);border-radius:18px;margin:24px auto;padding:25px;position:relative;box-shadow:0 10px #14394e24}.game-library-heading{text-align:left;margin-bottom:17px}.game-library-heading .eyebrow{margin-bottom:5px}.game-library-heading h2{color:var(--navy);margin:0;font:700 30px/1 Fredoka,sans-serif}.game-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.game-card{border:4px solid var(--navy);min-height:190px;color:var(--navy);text-align:left;border-radius:17px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 7px #14394e33}.game-card:hover,.game-card:focus-visible{outline:none;transform:translateY(-4px)rotate(-.4deg);box-shadow:0 11px #14394e38}.game-card-coral{background:linear-gradient(135deg,#fff5eb,#ffd7c5);border-color:#ed735e}.game-card-aqua{background:linear-gradient(135deg,#effcf8,#bfeee2);border-color:#18a69c}.game-card-green{background:linear-gradient(135deg,#f1fff2,#c9efc5);border-color:#57a45c}.game-card-yellow{background:linear-gradient(135deg,#fffbe9,#ffe07a);border-color:#d99c1d}.game-card-blue{background:linear-gradient(135deg,#f0f8ff,#c9e4ff);border-color:#4a8bc4}.game-card-icon{background:#ffffff7a;border-right:3px dashed #14394e38;flex:0 0 92px;place-items:center;width:92px;font-size:44px;display:grid}.game-card-copy{flex-direction:column;flex:1;align-items:flex-start;padding:17px 18px;display:flex}.game-card-badges{flex-wrap:wrap;gap:6px;margin-bottom:9px;display:flex}.game-card-badges span{letter-spacing:.08em;text-transform:uppercase;background:#14394e1a;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900}.game-card strong{font:700 21px/1.08 Fredoka,sans-serif}.game-card-description{color:#527176;margin:8px 0 13px;font-size:10px;line-height:1.45}.game-card-button{background:var(--navy);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:8px;margin-top:auto;padding:7px 11px;font-size:9px;font-weight:900}.game-library-more{color:#527176;text-align:center;margin:20px 0 0;font:700 16px/1 Fredoka,sans-serif}.assigned-game-entry{z-index:1;border:3px dashed var(--coral);text-align:left;background:#ffffffc7;border-radius:15px;max-width:640px;margin:27px auto 20px;padding:24px;position:relative}.assigned-game-entry>.eyebrow{margin-bottom:4px}.assigned-game-entry>h2{color:var(--navy);margin:0;font:700 26px/1 Fredoka,sans-serif}.assigned-game-entry>p:not(.eyebrow){color:#527176;margin:8px 0 14px;font-size:10px;line-height:1.45}.game-room-choice-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.game-room-choice-buttons>.primary-button{text-align:center;justify-content:center;align-items:center;line-height:1.1;text-decoration:none;display:inline-flex}.assigned-game-entry .game-room-choice-buttons{align-items:stretch}.assigned-game-entry .game-room-choice-buttons>.primary-button{flex:220px;min-height:78px}.assigned-game-entry .game-room-choice-buttons>.primary-button:first-child{text-align:left;justify-content:center;align-items:center;gap:12px;display:flex}.assigned-game-entry .game-room-choice-buttons>.primary-button:first-child:before{content:"";background:url(/cat-badge.png) 50%/contain no-repeat;flex:0 0 58px;width:58px;height:58px}.family-game-room-note{z-index:1;border-left:5px solid var(--aqua);color:#527176;text-align:left;background:#e8f8f3;border-radius:6px;max-width:570px;margin:4px auto 14px;padding:12px 15px;position:relative}.family-game-room-note b{color:var(--navy);font:700 16px/1 Fredoka,sans-serif;display:block}.family-game-room-note p{margin:5px 0 0;font-size:10px;line-height:1.5}.teacher-badge-tools{z-index:1;border:3px solid var(--yellow);text-align:left;background:#fff5ce;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;max-width:570px;margin:2px auto 18px;padding:16px 18px;display:flex;position:relative}.teacher-badge-tools h2{color:var(--navy);margin:1px 0 5px;font:700 21px/1 Fredoka,sans-serif}.teacher-badge-tools p:not(.eyebrow){color:#527176;margin:0;font-size:10px;line-height:1.4}.teacher-badge-tools a{background:var(--navy);color:#fff;border-radius:9px;flex:none;padding:11px 13px;font-size:10px;font-weight:900;text-decoration:none}.badge-registry-card{width:min(94vw,670px)}.badge-registry-list{z-index:1;text-align:left;background:#fffc;border:3px solid #b9d9d0;border-radius:13px;max-width:430px;margin:20px auto 0;padding:15px;position:relative}.badge-registry-list h2{color:var(--navy);text-align:center;margin:0 0 10px;font:700 20px/1 Fredoka,sans-serif}.badge-registry-rows{gap:7px;display:grid}.badge-registry-row{color:#527176;background:#edf8f5;border-radius:8px;grid-template-columns:58px 1fr auto;align-items:center;gap:8px;padding:8px 9px;font-size:11px;display:grid}.badge-registry-row span{letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:900}.badge-registry-row strong{color:var(--navy)}.badge-registry-row b{color:#087982;font-family:Fredoka,sans-serif;font-size:16px}.badge-role-teacher{background:#fff1c2}.badge-registry-back{z-index:1;color:#087982;text-underline-offset:4px;margin-top:18px;font-size:12px;font-weight:900;text-decoration:underline;display:inline-block;position:relative}.badge-registry-message{color:#087982}.student-room-folders{width:min(94vw,980px);max-width:980px;padding:24px}.student-room-folders details+details{margin-top:18px}.student-room-folders summary{cursor:pointer;color:var(--navy);font:700 20px/1.1 Fredoka,sans-serif}.student-room-folders details>p{color:#527176;margin:12px 0 0}.student-room-game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:16px;padding:2px 2px 8px;display:grid}.student-room-game-grid .game-card{min-height:190px}.student-room-game-grid .game-card-icon{flex-basis:78px;width:78px;font-size:36px}.student-room-game-grid .game-card-copy{padding:15px 16px}.student-room-game-grid .game-card strong{font-size:19px}.student-room-math-grid{max-width:720px;margin-inline:auto}.war-score,.war-answers{flex-wrap:wrap;justify-content:center;gap:14px;margin:18px auto;display:flex}.war-score span{background:var(--yellow);min-width:138px;color:var(--navy);border-radius:11px;padding:12px 16px;font:900 17px/1 Fredoka,sans-serif;box-shadow:0 6px #cba025}.war-table{background:#e8f7f2;border:4px solid #b9d9d0;border-radius:18px;grid-template-columns:1fr minmax(150px,.9fr) 1fr;align-items:center;gap:16px;margin:24px auto;padding:18px;display:grid}.war-hand{border:3px solid var(--navy);text-align:center;background:#fffdf4;border-radius:14px;min-width:0;padding:14px;box-shadow:0 6px #14394e2e}.war-hand h3{color:var(--navy);margin:0;font:700 22px/1 Fredoka,sans-serif}.war-hand p,.war-center small{color:#527176;margin:6px 0 12px;font-size:11px;font-weight:800}.war-card{color:#fff;background:repeating-linear-gradient(135deg,#12304a 0 11px,#17445c 11px 22px);border:5px solid #12304a;border-radius:15px;place-content:center;gap:9px;min-height:145px;display:grid;box-shadow:0 7px #021f2a40}.war-card span{font:700 58px/1 Fredoka,sans-serif}.war-card small{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.war-card-revealed{color:var(--navy);background:linear-gradient(145deg,#fff7ea,#ffd7c5);border-color:#ed735e}.war-center{text-align:center;justify-items:center;gap:9px;display:grid}.war-center b{color:#c55241;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.war-center strong{color:var(--navy);font:700 clamp(28px,4vw,44px)/1 Fredoka,sans-serif}.war-center small{margin:0}.war-answers .primary-button{min-width:82px}.war-answers .primary-button,.war-score span{text-decoration:none}.math-war-game{max-width:1160px}.math-war-round{color:#527176;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin:8px 0 15px;font-weight:900}.math-war-table{background:radial-gradient(circle,#327268,#1d5148);border:5px solid #b9d9d0;border-radius:22px;grid-template-columns:1fr minmax(210px,.65fr) 1fr;align-items:center;gap:20px;margin:22px auto;padding:24px;display:grid;box-shadow:inset 0 0 0 10px #ffffff0f}.math-war-hand{text-align:center;background:#fffdf4;border:4px solid #12304a;border-radius:18px;min-width:0;padding:18px 12px;transition:all .2s;box-shadow:0 8px #021f2a38}.math-war-hand.math-war-winner{border-color:#f6c85f;transform:translateY(-5px);box-shadow:0 10px #cba025}.math-war-hand h3{color:#12304a;margin:0 0 14px;font:700 24px/1 Fredoka,sans-serif}.math-war-cards{justify-content:center;gap:10px;min-height:145px;display:flex}.math-war-card{color:#fff;background:repeating-linear-gradient(135deg,#12304a 0 10px,#17445c 10px 20px);border:5px solid #173f55;border-radius:13px;place-content:center;gap:4px;width:92px;min-height:136px;display:grid;box-shadow:0 6px #021f2a3d}.math-war-card:nth-child(2){transform:translateY(7px)rotate(3deg)}.math-war-card-up{color:#12304a;background:linear-gradient(145deg,#fffdf4,#ffdfc9);border-color:#ed735e}.math-war-card b{font:700 54px/1 Fredoka,sans-serif}.math-war-card span{letter-spacing:.08em;font:900 12px/1 DM Sans,sans-serif}.math-war-total{color:#527176;min-height:24px;margin:15px 0 0;font-weight:900}.math-war-total strong{color:#12304a;font-size:26px}.math-war-center{text-align:center;color:#fff;justify-items:center;gap:12px;display:grid}.math-war-center b{color:#f6c85f;letter-spacing:.12em;font-size:11px}.math-war-center strong{font:700 clamp(25px,3vw,40px)/1.05 Fredoka,sans-serif}.math-war-center small{color:#d8ece3;max-width:230px;font-weight:800}.student-room-setup{width:min(94vw,800px);max-width:800px}.student-room-picture-help{color:#527176;text-align:center;margin:0 0 13px;font-size:12px}.student-room-detective-grid{margin-bottom:20px}.student-room-detective-grid .student-detective-option i{height:108px}.student-room-detective-grid .student-detective-option.girl i,.student-room-detective-grid .student-detective-option.person i{aspect-ratio:5/6;height:auto}.student-word-bank{background:#fff;border:2px solid #bfd7d0;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;max-height:280px;margin:10px 0;padding:10px;display:grid;overflow:auto}.student-word-bank label{color:var(--navy);text-transform:none;letter-spacing:0;margin:0;font-size:11px}.student-word-bank input{width:auto;height:auto}@media (width<=760px){.game-library{padding:17px}.game-card-grid,.student-room-game-grid{grid-template-columns:1fr}.game-card{min-height:165px}.student-room-folders{padding:17px}.student-room-detective-grid .student-detective-option i{height:88px}.student-room-detective-grid .student-detective-option.girl i,.student-room-detective-grid .student-detective-option.person i{height:auto}.math-war-table{grid-template-columns:1fr;padding:14px}.math-war-center{order:-1}.math-war-cards{min-height:116px}.math-war-card{width:76px;min-height:112px}.math-war-card b{font-size:45px}}@media (width<=460px){.game-card{display:block}.game-card-icon{border-bottom:3px dashed #14394e38;border-right:0;width:100%;height:65px}}.student-profile-layer{z-index:170;background:linear-gradient(145deg,#085b65f0,#12304af5)}.student-profile-card{border:8px solid var(--yellow);text-align:center;background:linear-gradient(145deg,#fffdf4,#e8faf4);border-radius:18px;width:min(94vw,760px);max-height:92vh;padding:34px 42px;position:relative;overflow:auto;box-shadow:0 28px 80px #021f2a80}.student-profile-card h2{color:var(--navy);margin:0;font:700 clamp(34px,5vw,46px)/1 Fredoka,sans-serif}.student-profile-card>p:not(.eyebrow):not(.connection-error){color:var(--muted);font-size:12px;line-height:1.5}.student-must-choose{border:3px dashed var(--coral);background:#fff0ea;border-radius:10px;padding:11px 15px;color:var(--navy)!important;margin:12px auto 18px!important;font-size:13px!important}.student-must-choose b{color:#c54f3c;font:700 19px/1 Fredoka,sans-serif}.student-name-field{width:min(100%,420px);margin:0 auto 18px;display:block}.student-detective-grid{background:#edf8f4;border:2px solid #bed9d2;border-radius:14px;grid-template-columns:repeat(5,1fr);gap:9px;padding:13px;display:grid}.student-detective-option{min-width:0;color:var(--navy);cursor:pointer;background:#fff;border:3px solid #0000;border-radius:10px;padding:5px 5px 7px;box-shadow:0 3px #12304a1f}.student-detective-option i{background-color:#f4dca4;border-radius:7px;width:100%;height:78px;display:block}.student-detective-option b{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:9px;display:block;overflow:hidden}.student-detective-option:hover,.student-detective-option:focus-visible{border-color:var(--aqua);outline:none;transform:translateY(-2px)}.student-detective-option.selected{border-color:var(--coral);background:#fff1ec;box-shadow:0 0 0 4px #ef745f2b,0 4px #12304a1f}.student-selected-detective{border:3px solid var(--yellow);text-align:left;background:#fff;border-radius:13px;justify-content:center;align-items:center;gap:17px;width:min(100%,440px);margin:18px auto 0;padding:13px;display:flex}.student-selected-picture{flex:none;width:92px;height:125px;display:block;position:relative}.student-selected-picture i{border:4px solid var(--coral);background-color:#f4dca4;border-radius:9px;width:92px;height:125px;display:block}.student-selected-picture b{color:#fff;text-align:center;background:#12304aeb;border-radius:3px;padding:4px 2px;font-size:8px;position:absolute;bottom:4px;left:4px;right:4px}.student-selected-detective>div strong,.student-selected-detective>div small{display:block}.student-selected-detective>div strong{color:var(--navy);font:700 18px/1.1 Fredoka,sans-serif}.student-selected-detective>div small{color:var(--muted);margin-top:5px;font-size:9px}.student-selected-detective button{background:var(--water);color:#fff;cursor:pointer;border:0;border-radius:8px;margin-top:11px;padding:9px 12px;font-size:10px;font-weight:900}.student-profile-save{width:100%;margin-top:22px}.close-button{width:37px;height:37px;color:var(--navy);cursor:pointer;background:#e5eee9;border:0;border-radius:50%;font-size:23px;position:absolute;top:12px;right:12px}.rules-card ol{gap:14px;margin:23px 0;padding:0;list-style:none;display:grid}.rules-card li{gap:12px;display:flex}.rules-card li>b{height:34px;color:var(--deep);background:#dff4ee;border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.rules-card li strong{font-size:13px}.rules-card li p{color:var(--muted);margin:3px 0 0;font-size:11px}.rules-card>.primary-button,.winner-card>.primary-button{width:100%}.winner-card{text-align:center}.celebrate{isolation:isolate;background:#052935e6;overflow:hidden}.certificate-card{z-index:2;width:min(94vw,680px);box-shadow:0 28px 90px #00000080,inset 0 0 0 4px #fff9df,inset 0 0 0 7px var(--navy);background:radial-gradient(circle,#fffdf4 0,#f6ebca 72%,#e3c983 100%);border:12px double #b78622;padding:48px 58px 42px;animation:.62s cubic-bezier(.18,.89,.32,1.28) both certificate-pop;overflow:visible}.certificate-card:before,.certificate-card:after{content:"✦";color:#b78622;font-size:28px;position:absolute;top:17px}.certificate-card:before{left:22px}.certificate-card:after{right:22px}.certificate-seal{background:var(--navy);width:76px;height:76px;color:var(--yellow);border:7px double #f8dc72;border-radius:50%;place-items:center;margin:-4px auto 16px;font-size:36px;display:grid;box-shadow:0 0 0 5px #b78622,0 8px 19px #2d1f043d}.certificate-kicker{color:#8a651b;letter-spacing:2.4px;margin:0 0 10px;font-size:11px;font-weight:900;line-height:1.2}.case-closed-stamp{border:5px double var(--coral);color:#c54f3c;letter-spacing:1px;margin:2px auto 17px;padding:7px 14px 4px;font:700 16px/.9 Fredoka,sans-serif;display:inline-block;transform:rotate(-6deg)}.certificate-presented{margin:0 0 4px;font-size:12px;color:#7a725f!important}.certificate-card .winner-name{color:var(--navy);text-wrap:balance;margin:0 auto 8px;font-size:clamp(40px,7vw,62px);line-height:1}.certificate-headline{text-wrap:balance;font:700 clamp(20px,3vw,29px)/1.15 Fredoka,sans-serif;color:#c54f3c!important;margin:0 auto 13px!important}.certificate-card>p:not(.certificate-kicker):not(.certificate-headline){color:var(--muted)}.last-word{background:#e8f6f0;border-radius:7px;padding:9px}.final-score{border-block:2px solid #b786226b;justify-content:center;align-items:center;gap:18px;margin:23px 0;padding:14px 18px;display:flex}.final-score span{min-width:120px;color:var(--muted);font-size:11px}.final-score span b{display:block}.final-score strong{color:var(--navy);margin:6px;font:700 38px/1 Fredoka,sans-serif;display:block}.final-score i{color:#91866e;letter-spacing:1px;text-transform:uppercase;font-size:8px;font-style:normal}.celebration-layer{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-piece{--burst-x:0vw;--burst-y:-86vh;--land-x:0vw;--burst-spin:720deg;--spin:1800deg;--delay:0s;--duration:8s;--color:#ffd95c;--size:10px;width:var(--size);height:calc(var(--size) * 1.7);background:var(--color);animation:confetti-burst var(--duration) linear var(--delay) both;border-radius:2px;position:absolute;top:100vh;left:50vw;box-shadow:0 0 0 1px #ffffff40}.confetti-piece:nth-child(3n){border-radius:50%}.confetti-piece:nth-child(4n){height:4px;width:calc(var(--size) * 2.4);border-radius:999px}.confetti-piece.party-favor{width:auto;height:auto;box-shadow:none;background:0 0;font:34px/1 sans-serif}@keyframes confetti-burst{0%{opacity:0;animation-timing-function:cubic-bezier(.05,.82,.16,1);transform:translateY(10vh)rotate(0)}3%{opacity:1}14%{opacity:1;transform:translate3d(var(--burst-x),var(--burst-y),0) rotate(var(--burst-spin));animation-timing-function:cubic-bezier(.18,.48,.3,1)}to{opacity:.96;transform:translate3d(var(--land-x),12vh,0) rotate(var(--spin))}}@keyframes certificate-pop{0%{opacity:0;transform:translateY(28px)scale(.78)rotate(-1deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}.find-clue-layer{z-index:160;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#052935d1;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.clue-pile-card{border:8px solid var(--sand);background:var(--paper);width:min(94vw,720px);color:var(--navy);text-align:center;border-radius:18px;padding:28px 30px 24px;animation:.42s ease-out both pile-arrive;box-shadow:0 30px 80px #021f2a8c}.clue-pile-card h2{margin:0;font:700 clamp(38px,6vw,58px)/1 Fredoka,sans-serif}.clue-pile-card>p:not(.eyebrow):not(.connection-error){color:var(--muted);margin:10px auto 4px;font-size:12px}.clue-file-pile{width:min(100%,620px);height:360px;margin:0 auto;position:relative}.clue-file-button{left:var(--pile-x);top:var(--pile-y);width:158px;height:108px;transform:rotate(var(--pile-rotate));border:5px solid color-mix(in srgb,var(--folder-color) 72%,#6f531c);background:var(--folder-color);color:var(--navy);cursor:pointer;border-radius:7px 14px 14px 7px;justify-content:space-between;align-items:center;padding:25px 18px 13px;transition:all .16s;display:flex;position:absolute;box-shadow:0 9px #12304a38,0 15px 24px #12304a38,inset 0 0 0 3px #ffffff4d}.clue-file-button:before{content:"";border:5px solid color-mix(in srgb,var(--folder-color) 72%,#6f531c);background:var(--folder-color);border-bottom:0;border-radius:10px 13px 0 0;width:84px;height:28px;position:absolute;top:-24px;left:-5px}.clue-file-button span{letter-spacing:1.2px;text-align:left;font-size:11px;font-weight:900}.clue-file-button i{font-size:28px;font-style:normal}.clue-file-button:hover:not(:disabled),.clue-file-button:focus-visible{z-index:20;outline-offset:3px;outline:4px solid #fff;transform:rotate(0)translateY(-14px)scale(1.12);box-shadow:0 13px #12304a40,0 24px 35px #12304a4d}.clue-file-button:disabled{cursor:wait;opacity:.65}@keyframes pile-arrive{0%{opacity:0;transform:scale(.8)translateY(35px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=980px){.pond-board{grid-template-columns:minmax(220px,1fr) 210px minmax(220px,1fr);gap:12px;padding-inline:16px}.player-area{padding:12px}.word-hand{grid-template-columns:1fr;min-height:430px}.word-card{min-height:77px}.word-card span{font-size:28px}.fish-pond{width:140px;height:140px}.pond-fish{font-size:40px}}@media (width<=720px){.topbar{min-height:60px;padding-block:7px}.brand-mark{width:40px;height:40px;font-size:22px}.brand-copy strong{font-size:17px}.brand-copy small,.room-pill{display:none}.plain-button{font-size:11px}.scorebar{gap:8px;padding-inline:9px}.player-chip{text-align:center;min-width:0;padding:7px;display:block}.chip-detective{display:none}.player-chip strong{margin-top:2px;font-size:9px;display:block}.timer-block strong{font-size:20px}.timer-block span{font-size:7px}.pond-board{grid-template-columns:1fr;grid-template-areas:"center""p1""p2";min-height:0;overflow:visible}.pond-center{grid-area:center}.player-1{grid-area:p1}.player-2{grid-area:p2}.word-hand{grid-template-columns:repeat(2,1fr);min-height:0}.player-area{min-height:315px}.book-shelf{margin-top:18px}.fish-pond{width:120px;height:120px;margin-bottom:14px}.pond-center h1{font-size:32px}.status-message{min-height:0}.game-footer{grid-template-columns:1fr 1fr}.live-note{display:none}.choice-grid{grid-template-columns:1fr 1fr}.case-selectors,.name-row{grid-template-columns:1fr}.gate-card,.setup-card,.rules-card,.invite-card{padding:29px 22px}.gate-card{padding-top:29px}.gate-case-ribbon{margin-top:-29px}.gate-detective-lineup{gap:4px;padding-inline:8px}.gate-detective i{width:49px;height:72px}.gate-detective:nth-child(3) i{width:57px;height:82px}.gate-detective b{font-size:6px}.gate-evidence{gap:4px}.gate-evidence span{flex:1;min-width:0;padding-inline:4px;font-size:10px}.certificate-card{padding:40px 24px 30px}.gate-card h1,.setup-card h2,.rules-card h2,.invite-card h2{font-size:32px}.certificate-card .winner-name{font-size:clamp(36px,11vw,52px)}.final-score{gap:8px;padding-inline:4px}.final-score span{min-width:85px}}@media (width<=620px){.clue-pile-card{padding-inline:14px}.clue-file-pile{transform-origin:top;height:330px;margin-bottom:-55px;transform:scale(.82)}.clue-file-button{width:140px;height:96px}.student-profile-card{padding:30px 16px}.student-detective-grid{grid-template-columns:repeat(4,1fr);gap:6px;padding:8px}.student-detective-option i{height:68px}.student-selected-detective{gap:10px}.student-selected-picture,.student-selected-picture i{width:78px;height:108px}.student-door-page{padding:12px}.student-door-card{padding:36px 18px 28px}.student-door-stamp{margin-top:-36px}.student-case-code{letter-spacing:5px}.student-door-file-tabs{gap:3px}.student-door-file-tabs span{padding-inline:7px;font-size:8px}}@media (prefers-reduced-motion:reduce){.confetti-piece{display:none}.certificate-card,.clue-pile-card{animation:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.showdown-gate,.showdown-app{color:#12304a;background:linear-gradient(145deg,#063f50,#0d7880 54%,#43366e);min-height:100vh}.memory-teacher-gate{background:linear-gradient(145deg,#063f50,#0d7880 54%,#43366e);place-items:center;min-height:100vh;padding:24px;display:grid}.memory-teacher-gate>section{border:7px solid var(--yellow);width:min(94vw,540px);color:var(--navy);text-align:center;background:#fffdf4;border-radius:18px;padding:38px;box-shadow:0 22px #021f2a42,0 38px 80px #021f2a73}.memory-teacher-gate p{color:#c75646;letter-spacing:1.7px;margin:0 0 9px;font-size:10px;font-weight:900}.memory-teacher-gate h1{margin:0;font:700 38px/1.05 Fredoka,sans-serif}.memory-teacher-gate>section>span{color:#5e7779;margin:12px 0 18px;line-height:1.5;display:block}.memory-teacher-gate form{text-align:left;gap:11px;display:grid}.memory-teacher-gate input{text-align:center;letter-spacing:5px;font-size:24px;font-weight:900}.memory-teacher-gate button{background:var(--yellow);min-height:50px;color:var(--navy);cursor:pointer;border:0;border-radius:9px;font-weight:900;box-shadow:0 5px #c49d2c}.memory-teacher-gate small{color:#b44139;min-height:16px;font-weight:800}.memory-teacher-gate a{color:#087982;margin-top:19px;font-weight:900;display:inline-block}.showdown-gate{background-image:radial-gradient(circle at 12% 18%,#ffd95c7a 0 3px,#0000 4px),radial-gradient(circle at 84% 78%,#60d0ca4d 0 4px,#0000 5px),linear-gradient(145deg,#063f50,#0d7880 54%,#43366e);background-size:57px 57px,83px 83px,auto;place-items:center;padding:28px;display:grid}.showdown-panel{border:7px solid var(--yellow);background:#fffdf4;border-radius:20px;width:min(94vw,720px);padding:40px;box-shadow:0 22px #021f2a40,0 38px 80px #021f2a73}.showdown-panel h1,.showdown-header h1,.showdown-modal h2{color:var(--navy);margin:0;font:700 clamp(34px,5vw,56px)/1 Fredoka,sans-serif}.showdown-panel>p{color:#56757a;line-height:1.55}.showdown-kicker,.showdown-header p{letter-spacing:1.7px;font-size:10px;font-weight:900;color:#c75646!important}.showdown-panel form,.showdown-setup{gap:15px;margin-top:24px;display:grid}.showdown-selects{grid-template-columns:1fr 1fr;gap:12px;display:grid}.showdown-panel button,.showdown-modal button,.draw-button,.end-button{background:var(--yellow);min-height:48px;color:var(--navy);cursor:pointer;border:0;border-radius:10px;font-weight:900;box-shadow:0 5px #c49d2c}.showdown-panel button:disabled{opacity:.45;cursor:wait}.showdown-preview{background:#fff4ce;border:2px dashed #ebb049;border-radius:9px;padding:12px;font-size:12px;margin:0!important}.showdown-error{min-height:18px;font-weight:800;color:#bc3f36!important}.showdown-panel>a{color:#087982;font-weight:900}.showdown-header{border-bottom:5px solid var(--yellow);background:#fffdf4;justify-content:space-between;align-items:center;gap:20px;padding:23px clamp(18px,5vw,70px);display:flex}.showdown-header h1{font-size:clamp(28px,4vw,44px)}.showdown-header p{margin:0 0 5px}.showdown-header>div:last-child{text-align:right;color:#577277;gap:6px;font-size:11px;display:grid}.showdown-header b{color:var(--navy);letter-spacing:1px}.showdown-status{background:#e9f5ef;grid-template-columns:1fr minmax(240px,1.4fr) 1fr;align-items:center;gap:14px;padding:12px clamp(18px,5vw,70px);display:grid}.showdown-status>div{background:#fff;border:2px solid #bed9d0;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:10px;display:grid}.showdown-status>div b{font-size:14px}.showdown-status>div small{color:#6e8988}.showdown-status>div strong{color:#c55241;grid-area:1/2/3;justify-self:end;font-size:12px}.showdown-status p{color:#31585d;text-align:center;margin:0;font-size:12px;font-weight:800;line-height:1.35}.showdown-board{grid-template-columns:250px minmax(260px,1fr) minmax(370px,1.25fr);gap:22px;padding:28px clamp(18px,4vw,58px) 50px;display:grid}.specialty-box{border:4px solid var(--yellow);background:#fffdf4;border-radius:15px;align-self:start;padding:15px;box-shadow:0 7px #021f2a38}.specialty-box h2{color:var(--navy);margin:0 0 11px;font:700 24px/1 Fredoka,sans-serif}.specialty-box>div{border-top:1px dashed #b9ccc5;gap:3px;padding:9px 0;display:grid}.specialty-box b{color:#c55241;font-size:12px}.specialty-box strong{color:#1a5f64;font-size:10px}.specialty-box span{color:#657d7e;font-size:9px;line-height:1.35}.showdown-center{color:#fff;text-align:center;align-self:center}.showdown-piles{justify-content:center;align-items:center;gap:16px;display:flex}.draw-pile{color:#fff;background:repeating-linear-gradient(135deg,#12304a 0 11px,#17445c 11px 22px);border:5px solid #6ed0cb;border-radius:13px;align-content:center;place-items:center;width:116px;height:158px;display:grid;box-shadow:0 8px #021f2a59}.draw-pile b{font:700 26px/1 Fredoka,sans-serif;display:block}.draw-pile small{letter-spacing:1px;font-size:9px;font-weight:900}.active-rule{color:#c9ece7;letter-spacing:.5px;max-width:390px;margin:20px auto 12px;font-size:10px;line-height:1.7}.active-rule b{color:var(--navy);background:#fff;border-radius:4px;padding:2px 5px}.active-rule b.coral{color:#c95040}.active-rule b.blue{color:#3276bb}.active-rule b.green{color:#287d55}.active-rule b.gold{color:#a97912}.read-prompt,.wait-prompt{color:#e3f5f0;max-width:340px;margin:12px auto;font-size:12px;line-height:1.45}.draw-button,.end-button{margin:5px;padding:0 13px;font-size:12px}.end-button{background:#f1e8d0;box-shadow:0 5px #bfb096}.showdown-hand{background:#022c364d;border:3px solid #ffffff3d;border-radius:17px;min-width:0;padding:17px}.hand-title{color:#fff;justify-content:space-between;align-items:center;margin-bottom:12px;font:700 20px/1 Fredoka,sans-serif;display:flex}.hand-title button{background:var(--yellow);color:var(--navy);cursor:pointer;border:0;border-radius:6px;padding:7px;font-size:9px;font-weight:900}.hand-grid{grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:12px;display:grid}.show-card{border:5px solid var(--color,#ef745f);min-height:158px;color:var(--navy);cursor:pointer;background:linear-gradient(#fffef8,#f7ecd3);border-radius:12px 12px 22px;padding:13px 8px;transition:all .14s;position:relative;box-shadow:0 7px #021f2a47,0 13px 20px #021f2a33}.show-card:not(:disabled):hover{transform:translateY(-5px)rotate(1deg)}.show-card:disabled{cursor:default}.show-card.coral{--color:#ef745f}.show-card.blue{--color:#4a82d1}.show-card.green{--color:#59a95d}.show-card.gold{--color:#d0ae2f}.show-card.special{background:linear-gradient(145deg,#fff8d7,#e9f5e9)}.show-card em,.show-card strong,.show-card small{z-index:1;display:block;position:relative}.show-card em{color:#c55241;text-transform:uppercase;min-height:14px;font-size:9px;font-style:normal;font-weight:900}.show-card strong{overflow-wrap:anywhere;margin-top:15px;font:700 clamp(22px,2.8vw,34px)/1 Fredoka,sans-serif}.show-card small{color:#72837e;letter-spacing:1px;text-transform:uppercase;margin-top:10px;font-size:8px;font-weight:900}.showdown-piles .show-card{cursor:default;width:142px}.showdown-piles .show-card strong{font-size:31px}.showdown-modal{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#021f2abf;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.showdown-modal section{border:6px solid var(--yellow);width:min(94vw,440px);color:var(--navy);text-align:center;background:#fffdf4;border-radius:16px;padding:30px;box-shadow:0 22px #021f2a40}.showdown-modal section>p{color:#597377;line-height:1.5}.showdown-modal select{margin-bottom:16px}.color-options{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.color-options button{text-transform:capitalize;color:#fff}.color-options .coral{background:#ef745f;box-shadow:0 5px #ba4e41}.color-options .blue{background:#4a82d1;box-shadow:0 5px #315d9c}.color-options .green{background:#59a95d;box-shadow:0 5px #3d7d42}.color-options .gold{background:#d0ae2f;box-shadow:0 5px #a98818}@media (width<=1000px){.showdown-board{grid-template-columns:220px 1fr}.showdown-hand{grid-column:1/-1}.hand-grid{grid-template-columns:repeat(5,minmax(100px,1fr))}.showdown-center{align-self:start}}@media (width<=680px){.showdown-header,.showdown-status{text-align:center;grid-template-columns:1fr;display:grid}.showdown-header>div:last-child{text-align:center}.showdown-status>div{text-align:left}.showdown-board{grid-template-columns:1fr;padding-inline:14px}.specialty-box{order:3}.hand-grid{grid-template-columns:repeat(2,minmax(115px,1fr))}.showdown-panel{padding:28px 20px}.showdown-selects{grid-template-columns:1fr}.showdown-piles .show-card{width:128px}.draw-pile{width:105px}.showdown-status p{order:-1}}.math-war-original-page{background:#122c39;flex-direction:column;min-height:100vh;display:flex}.math-war-original-frame{background:#f7f3e9;border:0;width:100%;min-height:calc(100vh - 4.5rem);display:block}.math-war-original-back{color:#fff;align-self:center;margin:.9rem;font-size:1rem;font-weight:800}
