@font-face{font-family:PitSans;src:local("Avenir Next"),local("Segoe UI"),local("Arial");font-display:swap}
:root{--paper:#f6f7f3;--white:#fff;--ink:#173d32;--muted:#77847c;--line:#e4e9e1;--lime:#d2ef96;--orange:#ed8c54;--green:#32785c;--sidebar:208px;--shadow:0 8px 32px #22392c05}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 PitSans,"Avenir Next",system-ui,-apple-system,sans-serif}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button,input,select{font:inherit}button,a,input,select,summary{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #82b84d;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.16;letter-spacing:-.04em}h2{font-size:24px}h3{font-size:20px}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;background:var(--lime);padding:12px;z-index:100}.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#173d32;color:#d7e3d9;display:flex;flex-direction:column;padding:34px 19px 20px;z-index:10}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 42px}.brand-mark{display:grid;place-items:center;width:37px;height:43px;color:var(--lime)}.brand-mark svg{width:35px;height:35px;stroke-width:1.6}.brand-name{font-size:28px;letter-spacing:-1.5px;font-weight:800;line-height:1;color:#fff}.brand-name>span{color:var(--lime);font-weight:400}.brand-name small{display:block;color:#b7c9b6;font-size:6.5px;letter-spacing:1.5px;margin-top:9px;font-weight:600}.nav-caption{font-size:9px;color:#8eac9a;letter-spacing:2px;padding-left:18px;margin-bottom:14px}.main-nav{display:flex;flex-direction:column;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;padding:13px 16px;border-radius:0;color:#bbcec0;font-size:13px;font-weight:500;transition:.2s}.nav-item svg{width:19px;height:19px}.nav-item:hover{background:#ffffff0c;color:#fff}.nav-item.active{background:#d5ee9c;color:#173d32;font-weight:700}.nav-dot{margin-left:auto;width:5px;height:5px;background:#173d32;border-radius:0}.sidebar-bottom{margin-top:auto}.energy-note{margin:70px 13px 30px;border-bottom:1px solid #ffffff16;padding-bottom:24px}.energy-note svg{color:#cdeb98;width:28px;height:28px}.energy-note p{font-size:20px;font-weight:500;line-height:1.35;letter-spacing:-.6px;color:#f0f5df;margin:13px 0}.energy-note>span{font-size:7px;letter-spacing:1.6px;color:#90ad98}.admin-link{display:flex;justify-content:space-between;margin:19px 16px 0;color:#9ab5a2;font-size:10px}.workspace{margin-left:var(--sidebar);max-width:1900px}.topbar{height:79px;border-bottom:1px solid var(--line);padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-title{display:flex;align-items:center;gap:11px;font-size:12px;font-weight:500;color:#5c7060}.tiny-logo{display:grid;place-items:center;width:28px;height:28px;background:#e9eedf;border-radius:0;color:#788d60}.tiny-logo svg{width:17px;height:17px}.topbar-actions{display:flex;align-items:center;gap:20px}.preview-badge{font-size:9px;border:1px solid #dce4d1;padding:4px 9px;border-radius:0;color:#667c54}.language-form{display:flex;align-items:center;gap:7px}.language-form svg{width:15px;height:15px;color:#6d7e70}.language-form select{border:0;background:transparent;font-size:11px;color:#536657;max-width:100px}.language-form button{background:none;border:0;padding:4px;font-size:15px}main{padding:35px 40px 24px}.hero{display:flex;justify-content:space-between;align-items:center;padding:0 5px 29px;max-width:1320px;margin:auto}.eyebrow{display:flex;gap:8px;align-items:center;font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:15px}.eyebrow>span{width:6px;height:6px;background:var(--orange);border-radius:0}.hero h1{font-size:clamp(38px,4vw,61px);font-weight:600;margin-bottom:15px;letter-spacing:-2.7px;line-height:1.06}.hero h1 em{font-family:Georgia,serif;font-weight:400;font-style:italic;color:#6f895f}.hero p{max-width:490px;font-size:13px;color:#748171;line-height:1.8;margin-bottom:0}.hero-stamp{position:relative;display:flex;align-items:center;gap:16px;border:1px solid #d5ddc6;border-radius:0;width:159px;height:159px;transform:rotate(9deg);padding:30px;color:#829065;margin-right:45px}.hero-stamp>svg{width:31px;height:31px;stroke-width:1}.hero-stamp>span{font-size:10px;letter-spacing:1.4px;line-height:1.6}.hero-stamp b{font-weight:700}.hero-stamp .stamp-orbit{position:absolute;right:3px;top:13px;font-size:30px;line-height:1;background:var(--paper)}
.game-layout{max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:22px;align-items:start}.game-card,.leaderboard-card{background:var(--white);border:1px solid var(--line);border-radius:0;box-shadow:var(--shadow);overflow:hidden}.card-heading{display:flex;justify-content:space-between;align-items:center;padding:23px 25px 19px}.section-kicker{display:block;font-size:8px;font-weight:600;letter-spacing:1.8px;color:#8c9a87;margin-bottom:8px}.card-heading h2{margin:0;font-size:28px;font-weight:600}.title-dot{color:var(--orange)}.icon-button{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px;border-radius:0}.icon-button:hover{background:#edf1e9}.sound-button{font-size:10px;color:#8a9889}.sound-button svg{width:17px;height:17px}.sound-button[aria-pressed=true]{color:var(--green)}.hud{display:grid;grid-template-columns:1.1fr 1fr 1fr;margin:0 25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0}.hud-stat{display:flex;align-items:center;gap:10px;justify-content:center;border-right:1px solid var(--line)}.hud-stat:first-child{justify-content:flex-start}.hud-stat:last-child{border:0}.stat-icon{color:#8d9f89}.stat-icon.warm{color:#df8b4e}.stat-icon svg{width:24px;height:24px}.stat-label{font-size:9px;color:#859180;display:block;margin-bottom:3px}.hud strong{font-size:25px;font-weight:600;letter-spacing:-1px;line-height:1}.hud strong small{font-size:12px;color:#9aa78f;margin-left:3px;font-weight:400;letter-spacing:0}.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) 218px;min-height:400px;padding-right:25px}.arena{position:relative;display:flex;justify-content:center;align-items:center;min-height:400px;background-image:radial-gradient(#b5c1a52c .8px,transparent .8px);background-size:15px 15px;overflow:hidden;padding:34px 18px 38px}.arena-coordinates{position:absolute;left:23px;font-size:6px;letter-spacing:1.5px;color:#a1ac94;white-space:nowrap}.coord-top{top:18px}.coord-bottom{bottom:16px;display:flex;align-items:center;gap:6px}.live-dot{display:inline-block;width:5px;height:5px;border-radius:0;background:#81a15f;flex-shrink:0}.board-platform{width:min(100%,264px);transform:none;filter:drop-shadow(7px 17px 9px #193e2821);padding:10px;background:#e3e6d7;border-radius:0;border:1px solid #cbd4bc;border-bottom:8px solid #b1bfa0;transition:transform .5s}.game-board{touch-action:none;user-select:none;-webkit-user-select:none;display:grid;grid-template-columns:repeat(6,1fr);gap:3px;position:relative;outline-offset:12px}.cell{aspect-ratio:1;position:relative;border-radius:0;background:#d4ddc7;border-bottom:3px solid #b6c5a7;isolation:isolate}.cell:nth-child(odd){background:#dbe2cf}.cell.water{background:#cf8b63;border-color:#b97550;box-shadow:inset 0 1px 3px #6c4e1722}.cell.water::before{content:"";position:absolute;inset:22% 15%;border-top:1px solid #ffdbb098;border-bottom:1px solid #ffdbb070;border-radius:0;transform:skewY(-15deg)}.cell.water::after{content:"≈";font:22px/1 Georgia,serif;color:#ffdfb5a1;position:absolute;inset:-5px 0 auto;text-align:center;animation:steam 3s infinite;animation-delay:var(--delay,0s);z-index:2;pointer-events:none}.cell.covered{background:#5a8a70;border-color:#3d6b53;box-shadow:inset 1px 1px #a4c7a2}.cell.covered::before{content:"";position:absolute;inset:20%;border:1px solid #b5d0ac60;border-radius:0}.cell.stack{background:#c2cdaf;border-color:#9eb08b}.stack-art{position:absolute;inset:14% 10%;border-radius:0;background:#719375;border:1px solid #4e7254;box-shadow:0 -4px #a7bd90,0 -5px #6f8f65,0 -8px #c7d9a9,0 -9px #76926e;transform:rotate(-5deg);z-index:3}.stack-art::after{content:"+";position:absolute;inset:0;display:grid;place-items:center;color:#e3efcc;font-size:16px}.worker{position:absolute;left:50%;top:50%;width:21px;height:32px;transform:translate(-50%,-68%);z-index:5;filter:drop-shadow(2px 3px 1px #243e3a55);pointer-events:none}.worker-body{position:absolute;width:16px;height:16px;background:#253f38;border-radius:0;left:2px;bottom:3px;border-top:5px solid #f8bd5a}.worker-body::before,.worker-body::after{content:"";position:absolute;background:#2b4339;width:5px;height:7px;bottom:-6px;border-radius:0}.worker-body::before{left:1px}.worker-body::after{right:1px}.worker-head{position:absolute;background:#e6b28b;width:13px;height:12px;border-radius:0;top:1px;left:4px;border-top:5px solid #f0b44c;z-index:2}.worker-head::after{content:"";position:absolute;background:#f0b44c;width:18px;height:3px;top:-2px;left:-3px;border-radius:0}.worker-load{position:absolute;left:-3px;top:-10px;width:27px;height:11px;background:#a6c294;border:1px solid #63855a;border-radius:0;box-shadow:0 2px #527349}.cell.just-covered{animation:place .25s ease-out}.game-board.playing .water::after{animation-duration:1.7s}.mission-panel{align-self:center;border-left:1px solid var(--line);padding:5px 0 5px 22px}.pill{display:inline-block;font-size:8px;letter-spacing:1.1px;text-transform:uppercase;background:#edf3e3;border-radius:0;padding:5px 9px;color:#7a8f5d;font-weight:600;margin-bottom:12px}.mission-panel h3{font-size:23px;font-weight:600;line-height:1.2;margin-bottom:12px}.mission-copy{font-size:11px;color:#7a8875;line-height:1.8;margin-bottom:21px}.field-label{display:block;font-size:10px;font-weight:600;margin-bottom:7px}.field-label>span{font-size:8px;color:#8b9886;font-weight:400;margin-left:4px}input[type=text],input[type=email],input[type=password],textarea{width:100%;background:#fafbf8;border:1px solid #dce3d5;border-radius:0;padding:11px 12px;color:#274f3b;font-size:12px;transition:.2s}input::placeholder{color:#a2ac98}input:focus{border-color:#83a46e;outline:2px solid #cde7b14d;outline-offset:0}.check-label{display:flex;gap:8px;align-items:flex-start;font-size:9px;line-height:1.6;color:#7c8977;margin:13px 0 17px;cursor:pointer}.check-label input{margin:2px 0 0;width:13px;height:13px;accent-color:var(--green);flex-shrink:0}.check-label a{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:0;border:1px solid transparent;padding:12px 17px;font-size:11px;font-weight:600;line-height:1.5;min-height:43px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-1px)}.button svg{width:16px;height:16px}.primary{background:var(--ink);color:#fff}.primary:hover{background:#2b5840}.secondary{background:#f6f8f1;color:#536e46;border-color:#e1e7d7}.secondary:hover{background:#e9f0df}.start-button{width:100%;justify-content:space-between;padding:13px}.quiet-note{display:flex;align-items:center;justify-content:center;gap:5px;font-size:8px;color:#99a28f;margin:13px 0 0}.quiet-note svg{width:11px;height:11px}.live-pill{background:#e9f5d7;color:#4b7a35}.carrying-display{display:flex;align-items:center;gap:9px;padding:12px;background:#f4f6ed;border:1px dashed #ccd8be;border-radius:0;margin:18px 0 14px;font-size:10px}.carrying-display svg{color:#87a76a}.carrying-display.loaded{background:#e9f2d6;border-color:#8dac65}.progress-track{height:5px;border-radius:0;background:#e7ecdf;overflow:hidden}.progress-track span{display:block;width:0;height:100%;background:#8dad65;transition:width .2s}.progress-label{font-size:9px;color:#8b9b7b;display:block;margin-top:6px;margin-bottom:22px}.control-strip{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:13px 25px;gap:10px}.keyboard-hint{display:flex;align-items:center;gap:12px;color:#84917b;font-size:9px;line-height:1.4}.keyboard-hint small{display:block;color:#a1ac96;font-size:8px}.keycaps{display:flex;align-items:flex-end;gap:3px}.keycaps>div{display:flex;flex-direction:column;gap:3px}kbd{font:10px/1 system-ui;display:grid;place-items:center;width:19px;height:17px;border:1px solid #dae1d2;border-bottom-width:2px;border-radius:0;background:#fafbf7;color:#7e8d70}.text-button{display:inline-flex;align-items:center;gap:7px;font-size:9px;border:0;background:transparent;padding:8px 0;color:#718663}.text-button svg{width:14px;height:14px}.dpad{display:flex;gap:5px}.dpad button{width:32px;height:32px;border:1px solid #dfe6d6;background:#f6f8ef;border-bottom-width:3px;border-radius:0;font-size:19px;touch-action:none;user-select:none}.dpad button:active{background:#dcecc4;border-bottom-width:1px}.right-column{display:flex;flex-direction:column;gap:20px}.leaderboard-card{padding:23px 22px 0}.leaderboard-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.leaderboard-heading h2{font-size:23px;margin:0;font-weight:600}.trophy-mark{display:grid;place-items:center;width:35px;height:35px;background:#f6efd6;border-radius:0;color:#bc9e48}.trophy-mark svg{width:19px;height:19px}.subtle{color:#8a9781;font-size:10px;line-height:1.8}.ranking-labels{display:flex;justify-content:space-between;color:#a0ab94;font-size:7px;letter-spacing:1px;text-transform:uppercase;padding:15px 0 9px;border-bottom:1px solid var(--line)}.leaderboard-list{list-style:none;padding:0;margin:0;min-height:190px}.leaderboard-list li{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eff2e9;font-size:10px}.leaderboard-list li:last-child{border:0}.rank-number{color:#9bab8b;font-size:9px;width:13px;font-variant-numeric:tabular-nums}.rank-avatar{width:27px;height:27px;border-radius:0;display:grid;place-items:center;background:#edf2df;color:#87996a;font-size:10px}.leaderboard-list li:first-child .rank-avatar{background:#f4e9c9;color:#ac8a37}.rank-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:110px}.rank-name small{display:block;color:#a1ac96;font-size:8px}.rank-score{margin-left:auto;color:#5a7843;font-size:12px;font-weight:600;white-space:nowrap}.leaderboard-list .empty-ranking{min-height:190px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:12px;color:#98a38e;font-size:11px;padding:25px 5px;line-height:1.8}.empty-ranking svg{width:33px;height:33px;color:#c3cdb4}.ranking-footnote{border-top:1px solid var(--line);padding:12px 0;display:flex;align-items:center;gap:6px;font-size:7px;color:#97a28b}.did-you-know{background:#eaf0df;border:1px solid #dce6ce;border-radius:0;padding:23px;position:relative;overflow:hidden}.did-you-know>svg{position:absolute;right:13px;top:14px;width:54px;height:54px;color:#a6b98b;opacity:.55;stroke-width:1}.did-you-know .section-kicker{color:#7c9165;margin-bottom:19px}.did-you-know h3{font-family:Georgia,serif;font-size:24px;font-weight:400;max-width:180px;line-height:1.1;margin-bottom:13px}.did-you-know p{font-size:10px;color:#7d8e6e;line-height:1.9;max-width:210px}.fact-bottom{border-top:1px solid #d4dfc7;padding-top:12px;margin-top:18px;display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1.2px;color:#7f9565}.fact-bottom>span:last-child{font-size:18px}.how-it-works{display:grid;grid-template-columns:.85fr 1fr 1fr 1fr;gap:28px;max-width:1320px;margin:31px auto 0;padding:21px 5px 4px;border-top:1px solid var(--line)}.how-it-works h2{font-size:19px;font-weight:500;margin:0}.how-it-works .section-kicker{font-size:7px}.step{display:flex;gap:12px}.step>span{font-family:Georgia,serif;color:#b2bea2;font-size:24px;line-height:1}.step h3{font-size:11px;margin:0 0 6px;font-weight:600;letter-spacing:0}.step p{font-size:9px;color:#8a9780;line-height:1.8;margin:0}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 40px 24px;color:#99a48f;font-size:8px;border-top:1px solid var(--line);margin-top:10px}.site-footer>div{display:flex;gap:20px}.site-footer a:hover{text-decoration:underline}.footer-dot{padding:0 7px}
.modal{width:min(440px,calc(100% - 32px));padding:35px;border:1px solid var(--line);border-radius:0;color:var(--ink);box-shadow:0 30px 100px #1434283d}.modal::backdrop{background:#102e26a1;backdrop-filter:blur(5px)}.modal h2{font-size:29px;margin-bottom:15px}.modal p{font-size:12px;line-height:1.9;color:#7d8c72}.dialog-close{position:absolute;right:11px;top:11px}.dialog-close svg{width:17px;height:17px}.help-steps{padding-left:20px;margin:22px 0;font-size:13px;color:#708563}.help-steps li{padding:7px 0}.button-row{display:flex;gap:9px}.button-row .button{flex:1}.compact-modal{padding:30px}.compact-modal h2{font-size:24px}.result-modal{text-align:center;padding-top:30px}.result-icon{width:56px;height:56px;background:#eff4df;border:1px solid #dce7c6;border-radius:0;display:grid;place-items:center;margin:0 auto 20px;color:#829e50}.result-icon svg{width:28px;height:28px}.result-modal .section-kicker{color:#92a67a}.result-modal h2{font-family:Georgia,serif;font-weight:400;font-size:35px;margin-top:10px}.result-number{font-size:75px;line-height:1.1;letter-spacing:-5px;font-weight:600;color:#3d684a;margin:16px 0 0}.result-number small{font-size:25px;letter-spacing:-1px;padding-left:4px;font-weight:400}.result-caption{font-size:11px!important}.result-stats{display:flex;justify-content:center;gap:30px;margin:21px 0;color:#7f9271;font-size:12px}.result-stats>span{display:flex;gap:7px;align-items:center}.result-stats svg{width:17px;height:17px}.result-stats b{font-weight:500}.result-buttons{margin-top:22px}.result-modal details{background:#f5f7ed;text-align:left;border-radius:0;padding:12px;margin:20px 0}.result-modal summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:10px;font-weight:500}.result-modal summary svg{width:15px;height:15px}.result-modal details p{font-size:10px;margin:12px 0}.result-modal code{display:block;word-break:break-all;font-size:9px;color:#657f52;padding:8px;background:#e8eedc;border-radius:0}.prize-button{width:100%;background:#e8f1d5;margin-top:10px;color:#577c35}.modal .field-label{margin-top:17px}.toast{position:fixed;left:calc(50% + var(--sidebar)/2);transform:translateX(-50%);bottom:25px;background:var(--ink);color:#fff;padding:13px 21px;border-radius:0;font-size:12px;box-shadow:0 6px 30px #15372720;z-index:100;max-width:calc(100% - 40px)}
.page-heading{padding:15px 0 30px}.page-heading h1{font-size:40px;font-weight:500;letter-spacing:-1.5px;margin:12px 0}.page-heading>p{color:#84937a;font-size:13px}.document-card{max-width:800px;background:#fff;border:1px solid var(--line);border-radius:0;padding:35px}.document-card h2{font-size:20px;margin-top:30px;margin-bottom:12px}.document-card h2:first-child{margin-top:0}.document-card p,.document-card li{font-size:13px;color:#718164;line-height:1.95}.document-card a{text-decoration:underline}.notice{padding:13px 17px;border-radius:0;background:#f7f1df;border:1px solid #e9dcba;color:#937c48;font-size:11px;margin-bottom:23px;line-height:1.8}.success-notice{background:#edf4e1;border-color:#d4e3be;color:#66844d}.login-card{max-width:400px;margin:30px auto 80px;background:#fff;border:1px solid var(--line);border-radius:0;padding:35px}.login-card>svg{width:30px;height:30px;color:#7a9d55;margin-bottom:25px}.login-card h1{font-size:30px;font-weight:500;margin-bottom:12px}.login-card p{font-size:12px;color:#85967b}.login-card .field-label{margin-top:20px}.login-card .button{width:100%;margin-top:23px}.error-text{color:#ba6a47!important;font-size:11px}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.dashboard-header .button-row{align-items:center}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.admin-stat{background:#fff;padding:22px;border:1px solid var(--line);border-radius:0}.admin-stat span{display:block;color:#8c9d80;font-size:10px}.admin-stat strong{font-size:30px;font-weight:500}.table-card{background:#fff;border:1px solid var(--line);border-radius:0;overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:11px;text-align:left}.admin-table th{padding:15px 18px;font-size:9px;color:#8d9c83;font-weight:500;background:#f9fbf6;white-space:nowrap}.admin-table td{border-top:1px solid var(--line);padding:15px 18px;color:#5e7752;white-space:nowrap}.admin-table td small{display:block;color:#a1ac98;font-size:8px;margin-top:3px}.admin-table .button{min-height:28px;font-size:8px;padding:5px 9px}.admin-table .button-row{gap:5px}.admin-table .button-row form{display:inline}.danger-button{color:#b37155;border-color:#ebddd3;background:#fff9f5}.pagination{display:flex;justify-content:space-between;margin:18px 0;font-size:11px;color:#82936f}.data-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.data-output{font:12px/1.8 ui-monospace,monospace;background:#f5f8ef;padding:20px;white-space:pre-wrap;word-break:break-all;border-radius:0;margin-top:25px}.data-form .field-label{margin-top:10px}.data-form textarea{min-height:90px;resize:vertical}.legal-meta{font-size:10px;color:#9daa91;margin-top:25px}
@keyframes steam{0%{opacity:0;transform:translateY(0) scale(.8)}40%{opacity:.7}100%{opacity:0;transform:translateY(-18px) scale(1.1)}}@keyframes place{from{transform:translateY(-8px);opacity:.5}to{transform:translateY(0);opacity:1}}
@media(min-width:1550px){main{padding-top:45px}.arena-layout{grid-template-columns:minmax(0,1fr) 250px;min-height:460px}.arena{min-height:460px}.board-platform{width:302px}.hero{padding-bottom:38px}.mission-panel{padding-left:28px}.mission-panel h3{font-size:27px}.mission-copy{font-size:12px}.game-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:1250px){:root{--sidebar:80px}.sidebar{padding:30px 10px 20px}.brand{padding:0 0 43px;justify-content:center}.brand-name,.nav-caption,.nav-item>span,.energy-note,.admin-link{display:none}.nav-item{justify-content:center;padding:15px 12px}.nav-item svg{width:23px;height:23px}.sidebar-bottom{padding-bottom:10px}.topbar{padding:0 30px}main{padding:30px}.site-footer{padding-left:30px;padding-right:30px}.hero-stamp{margin-right:22px;width:140px;height:140px;padding:21px}.game-layout{grid-template-columns:minmax(0,1fr) 265px;gap:18px}.arena-layout{grid-template-columns:minmax(0,1fr) 200px;padding-right:22px}.mission-panel{padding-left:18px}.mission-panel h3{font-size:22px}.hero h1{font-size:49px}.board-platform{max-width:252px}.how-it-works{gap:18px}.leaderboard-card{padding:21px 18px 0}}
@media(max-width:1020px){.game-layout{grid-template-columns:minmax(0,1fr) 235px;gap:16px}.hero-stamp{width:120px;height:120px;gap:8px;margin-right:10px;padding:15px}.hero-stamp>svg{width:25px;height:25px}.hero-stamp>span{font-size:8px}.hero h1{font-size:43px}.hero p{max-width:400px;font-size:12px}.arena-layout{grid-template-columns:1fr;min-height:0;padding:0}.arena{min-height:380px}.board-platform{width:246px}.mission-panel{border-left:0;border-top:1px solid var(--line);padding:20px 23px;align-self:stretch}.mission-panel h3{font-size:20px;margin-bottom:7px}.mission-copy{margin-bottom:13px}.mission-panel .pill{margin-bottom:8px}.mission-panel #start-form{display:grid;grid-template-columns:1fr 1fr;gap:0 15px;align-items:center}.mission-panel .field-label{grid-column:1;margin:0 0 6px}.mission-panel #nickname{grid-column:1}.mission-panel .check-label{grid-column:1;margin:9px 0}.mission-panel .start-button{grid-column:2;grid-row:1/4;height:46px}.quiet-note{margin-top:3px;justify-content:flex-start}.mission-panel #playing-panel{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.mission-panel #playing-panel .pill{justify-self:start}.mission-panel #playing-panel h3{grid-column:1}.carrying-display{grid-column:2;grid-row:1/3;margin:0}.mission-panel #playing-panel .mission-copy{grid-column:1/-1;margin-top:9px}.mission-panel #playing-panel .secondary{grid-column:2;grid-row:4/6;align-self:end}.how-it-works{grid-template-columns:1fr 1fr}.how-it-works>div:first-child{grid-column:1/-1}.leaderboard-heading h2{font-size:21px}.keyboard-hint{gap:6px}.keycaps{display:none}.control-strip{padding:12px 20px}.right-column{gap:16px}}
@media(max-width:760px){:root{--sidebar:0px}.sidebar{position:relative;inset:auto;width:auto;height:67px;flex-direction:row;padding:0 20px;align-items:center;justify-content:space-between}.brand{padding:0;gap:7px}.brand-mark{width:27px}.brand-mark svg{width:28px;height:28px}.brand-name{display:block;font-size:25px}.brand-name small{display:none}.main-nav{flex-direction:row;gap:5px}.main-nav .nav-item{padding:9px;border-radius:0}.main-nav .nav-item svg{width:20px;height:20px}.sidebar-bottom{display:none}.workspace{margin:0}.topbar{height:50px;padding:0 20px}.topbar-title{font-size:10px;gap:7px}.tiny-logo{width:22px;height:22px}.tiny-logo svg{width:14px;height:14px}.preview-badge{display:none}.topbar-actions{gap:7px}.language-form select{font-size:10px}.language-form button{font-size:13px}main{padding:25px 19px 20px}.hero{padding:0 0 24px;gap:10px}.hero h1{font-size:43px;letter-spacing:-2px}.hero .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:13px}.hero p{font-size:11px;max-width:350px;line-height:1.8}.hero-stamp{display:none}.game-layout{grid-template-columns:1fr}.card-heading{padding:20px 20px 16px}.card-heading h2{font-size:26px}.hud{margin:0 20px;padding:16px 0}.hud strong{font-size:24px}.hud-stat{gap:7px}.stat-icon svg{width:20px;height:20px}.stat-label{font-size:8px}.arena-layout{display:flex;flex-direction:column}.arena{min-height:390px;order:1;padding-top:35px;padding-bottom:40px}.board-platform{width:260px}.mission-panel{order:0;border-top:0;border-bottom:1px solid var(--line);padding:20px}.mission-panel .mission-copy{font-size:11px;margin:0 0 14px}.mission-panel h3{font-size:24px}.mission-panel #start-form{grid-template-columns:1fr 1fr;column-gap:12px}.mission-panel .field-label{font-size:10px}.mission-panel .quiet-note{margin:4px 0 0;font-size:8px}.mission-panel .check-label{font-size:9px}.mission-panel .start-button{font-size:11px;height:46px}.mission-panel #playing-panel{grid-template-columns:1fr 1fr}.mission-panel #playing-panel h3{font-size:22px}.control-strip{padding:13px 20px}.keyboard-hint{font-size:9px;max-width:110px}.control-strip .text-button{font-size:8px}.dpad{gap:5px}.dpad button{width:36px;height:39px}.right-column{display:grid;grid-template-columns:1fr 1fr;gap:15px}.leaderboard-card{padding:19px 17px 0}.section-kicker{font-size:7px;letter-spacing:1.3px}.leaderboard-heading h2{font-size:21px}.trophy-mark{width:28px;height:28px}.trophy-mark svg{width:15px;height:15px}.leaderboard-list,.leaderboard-list .empty-ranking{min-height:150px}.did-you-know{padding:19px 17px}.did-you-know>svg{width:40px;height:40px}.did-you-know h3{font-size:25px;margin-top:25px}.did-you-know p{font-size:10px}.ranking-labels{font-size:6px}.ranking-footnote{font-size:6px}.how-it-works{grid-template-columns:1fr;gap:19px;margin-top:25px;padding-top:23px}.how-it-works>div:first-child{grid-column:auto}.how-it-works h2{font-size:24px}.step h3{font-size:12px}.step p{font-size:11px}.step>span{font-size:27px}.site-footer{padding:17px 19px 23px;flex-direction:column;align-items:flex-start;gap:11px;font-size:8px}.site-footer>div{gap:18px}.modal{padding:28px 23px}.modal h2{font-size:27px}.toast{left:50%;font-size:11px;bottom:17px;width:max-content}.document-card{padding:24px}.page-heading{padding:0 0 20px}.page-heading h1{font-size:34px}.dashboard-header{display:block}.dashboard-header .button-row{margin-bottom:25px;justify-content:flex-start}.admin-stats{grid-template-columns:1fr 1fr;gap:10px}.admin-stat{padding:16px}.admin-stat strong{font-size:27px}.login-card{margin-top:10px;padding:27px}.result-number{font-size:70px}.rank-avatar{display:none}.rank-name{max-width:80px}.leaderboard-list li{gap:6px}.rank-score{font-size:10px}}
@media(max-width:390px){main{padding:22px 13px}.topbar{padding:0 13px}.hero h1{font-size:39px}.right-column{grid-template-columns:1fr}.did-you-know h3{margin-top:10px;max-width:220px}.did-you-know>svg{width:65px;height:65px}.mission-panel #start-form{display:block}.mission-panel .start-button{margin-top:2px}.mission-panel .check-label{margin:12px 0}.mission-panel .field-label{margin-bottom:7px}.hud{margin:0 16px}.hud-stat{gap:5px}.hud strong{font-size:22px}.control-strip{padding:13px}.control-strip .text-button{display:none}.dpad button{width:39px;height:42px}.board-platform{width:244px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.board-platform{transform:none}}

/* Keep the board and touch controls together throughout a mobile round. */
@media(max-width:760px),(max-width:1024px) and (max-height:500px){
    input[type=text],input[type=email],input[type=password],textarea{font-size:16px}
    .keyboard-hint{display:none}
    .control-strip{flex-wrap:wrap;justify-content:center;gap:8px 16px}
    .dpad{gap:8px}
    .dpad button{width:52px;height:52px;font-size:25px;-webkit-touch-callout:none}
    .control-strip .text-button{display:inline-flex;min-height:44px;font-size:11px}
    body.game-active{overflow:hidden;overscroll-behavior:none}
    .game-card.is-playing{position:fixed;inset:0;z-index:30;width:100%;height:100vh;height:100dvh;margin:0;border:0;border-radius:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;background:var(--paper);overflow:hidden}
    .is-playing .card-heading{padding:8px 16px;min-height:48px}
    .is-playing .card-heading .section-kicker{display:none}
    .is-playing .card-heading h2{font-size:23px;margin:0}
    .is-playing .sound-button{min-height:44px;min-width:44px}
    .is-playing .hud{margin:0 16px;padding:7px 0}
    .is-playing .hud strong{font-size:23px}
    .is-playing .hud-stat{gap:5px}
    .is-playing .stat-label{font-size:8px}
    .is-playing .stat-icon svg{width:19px;height:19px}
    .is-playing .arena-layout{display:contents}
    .is-playing .arena{order:0;min-width:0;min-height:0;padding:12px;container-type:size}
    .is-playing .arena-coordinates{display:none}
    .is-playing .board-platform{width:min(100%,calc((100dvh - 290px)*.72),360px);max-width:none;padding:8px;border-bottom-width:5px;filter:drop-shadow(0 4px 5px #193e2818)}
    @supports(width:1cqh){.is-playing .board-platform{width:min(calc(100cqw - 24px),calc((100cqh - 24px)*.73),360px)}}
    .is-playing .mission-panel{order:0;padding:0 12px;border:0;min-width:0}
    .is-playing .mission-panel #playing-panel{display:flex;align-items:center;justify-content:space-between;gap:8px}
    .is-playing #playing-panel>.pill,.is-playing #playing-panel>h3,.is-playing #move-hint,.is-playing .progress-track,.is-playing .progress-label{display:none}
    .is-playing .carrying-display{margin:0;padding:8px;font-size:11px;min-height:44px;flex:1}
    .is-playing #restart-button{min-height:44px;padding:8px 10px;font-size:11px;flex-shrink:0}
    .is-playing .control-strip{padding:10px 12px 8px;border:0;gap:4px;display:flex;flex-direction:column}
    .is-playing .control-strip .text-button{padding:5px 12px}
    .is-playing .worker{width:clamp(14px,5cqw,21px);height:clamp(22px,8cqw,32px)}
    .modal{max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:1024px) and (max-height:500px) and (orientation:landscape){
    .game-card.is-playing{grid-template-columns:minmax(0,1fr) 230px;grid-template-rows:48px 58px minmax(0,1fr) auto}
    .is-playing .card-heading,.is-playing .hud{grid-column:1/-1}
    .is-playing .arena{grid-column:1;grid-row:3/5}
    .is-playing .mission-panel{grid-column:2;grid-row:3;align-self:center;padding:8px}
    .is-playing .mission-panel #playing-panel{flex-direction:column}
    .is-playing .carrying-display,.is-playing #restart-button{width:100%;justify-content:center}
    .is-playing .control-strip{grid-column:2;grid-row:4;padding:8px}
    .is-playing .dpad{gap:6px}
    .is-playing .dpad button{width:46px;height:48px}
}
/* Original aalborg hc systems branding and participant fields. */
.brand .aalborg-logo{display:block;width:160px;height:auto;max-width:100%}
.game-brand{display:block;background:var(--ink);width:152px;height:auto;padding:8px 10px;border-radius:0;margin:0 0 10px}
.mission-panel #start-form{display:block}
.participant-fields{display:grid;gap:12px;margin-bottom:12px}
.mission-panel .field-label{display:block;margin:10px 0 6px;font-size:11px}
.email-privacy{font-size:10px;line-height:1.65;color:#70816d;margin:8px 0 14px}
.email-privacy>span{display:block;margin-top:4px;color:#8c704d}
#player-email:disabled{background:#edf0e8;color:#7d8973;cursor:not-allowed}
.avatar-picker{border:0;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-width:0}
.avatar-picker legend{padding:0;margin-bottom:8px!important}
.avatar-option{position:relative;cursor:pointer;min-width:0}
.avatar-option input{position:absolute;opacity:0;width:1px;height:1px}
.avatar-option>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:68px;padding:8px 2px;border:1px solid #dce3d5;border-radius:0;font-size:10px;text-align:center;overflow-wrap:anywhere}
.avatar-option>span>span{font-size:25px;line-height:1.2}
.avatar-option input:checked+span{background:#e7f1d7;border-color:#699751;box-shadow:inset 0 0 0 1px #699751}
.avatar-option input:focus-visible+span{outline:3px solid #82b84d;outline-offset:3px}
.worker-avatar{display:block;font-size:29px;line-height:32px;position:absolute;left:50%;transform:translateX(-50%)}
.rank-avatar{font-size:19px;background:transparent!important}
.rank-company{font-size:9px!important;color:#667c59!important}
@media(min-width:1021px){.arena-layout{grid-template-columns:minmax(0,1fr) 280px}.mission-panel{padding-top:22px;padding-bottom:22px}}
@media(min-width:761px) and (max-width:1250px){.brand{padding-left:0;padding-right:0}.brand .aalborg-logo{width:60px}.brand{min-height:40px}}
@media(max-width:1020px){.participant-fields{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.brand .aalborg-logo{width:144px}.mission-panel .check-label{font-size:11px}.avatar-option>span{font-size:12px}.email-privacy{font-size:11px}.game-brand{width:145px}.rank-avatar{display:grid;flex-shrink:0}.rank-name{max-width:115px}}
@media(max-width:390px){.participant-fields{grid-template-columns:1fr}.brand .aalborg-logo{width:132px}}
@media(max-width:760px),(max-width:1024px) and (max-height:500px){
    .is-playing .card-heading>div{display:flex;align-items:center;gap:8px;min-width:0}
    .is-playing .game-brand{width:100px;height:auto;margin:0;padding:6px;flex-shrink:0}
    .is-playing .card-heading h2{font-size:18px;white-space:nowrap}
    .is-playing .sound-button{gap:4px;font-size:9px}
    .is-playing .worker-avatar{font-size:clamp(18px,7cqw,29px)}
}

.result-brand{margin:0 auto 18px}
/* One recognisable insulated lid across supplies, carrying and covered water. */
.cell.covered{background:#bec9cd url('thermal-lid.svg') center/100% 100% no-repeat;border:0;box-shadow:0 2px 2px #233e3630}
.cell.covered::before{content:none}
.stack-art{inset:8% 8% 20%;background:transparent url('thermal-lid.svg') center/100% 100% no-repeat;border:0;border-radius:0;transform:none;box-shadow:0 4px #f5d58e,0 5px #526970,0 8px #f5d58e,0 9px #526970}
.stack-art::after{content:none}
.worker-load{left:50%;top:-18px;width:32px;height:30px;transform:translateX(-50%);background:transparent url('thermal-lid.svg') center/contain no-repeat;border:0;box-shadow:none;border-radius:0;filter:drop-shadow(0 2px 1px #233e3640);z-index:2}
.lid-guide{display:flex;align-items:center;gap:12px;padding:12px;background:#f1f4f1;border:1px solid #dce4dd;border-radius:0;margin:16px 0 20px}
.lid-guide>img{width:60px;height:60px;flex-shrink:0}
.lid-guide strong{display:block;font-size:13px;line-height:1.3;letter-spacing:0;margin-bottom:5px}
.lid-guide span{display:block;font-size:10px;line-height:1.6;color:#70816d}
.carrying-lid{display:block;width:32px;height:32px;flex-shrink:0;filter:grayscale(.5);opacity:.65}
.carrying-display.loaded{border-style:solid;background:#eef3f3;border-color:#809a9b}
.carrying-display.loaded .carrying-lid{filter:none;opacity:1}
@media(max-width:760px),(max-width:1024px) and (max-height:500px){
    .is-playing .worker-load{width:clamp(20px,8cqw,32px);height:clamp(20px,8cqw,30px);top:-15px}
    .is-playing .carrying-display{padding:5px 8px;gap:6px}
    .is-playing .carrying-lid{width:28px;height:28px}
    .is-playing #carrying-label{font-size:10px;line-height:1.3;min-width:0}
}
