:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;color:#f4f0e2;background:#101d23;color-scheme:dark;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 5% 10%,#294548,transparent 55%),#101d23}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #eacb8a;outline-offset:3px}button:disabled{opacity:.4;cursor:default}a{color:inherit}.shell{max-width:1040px;margin:auto;padding:20px 22px 30px}.nav{display:flex;justify-content:space-between;gap:12px;margin-bottom:22px;align-items:center}.brand{text-decoration:none;letter-spacing:.22em;font-size:11px;color:#e0c286;font-weight:900}.navlink{font-size:11px;color:#abc0b3;text-decoration:none}.layout{display:grid;grid-template-columns:1fr 470px;gap:64px;align-items:center}.kicker{color:#d7b77a;font-size:11px;letter-spacing:.17em;font-weight:800}.intro h1{font-size:58px;letter-spacing:-.06em;line-height:1.1;margin:18px 0}.intro h1 span{color:#e6c68b}.intro p{font-size:14px;color:#adc4ba;line-height:1.85}.tips{display:grid;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid #425c52;color:#adc4b6;font-size:12px}.tips b{color:#e2e7d9}.game{border:1px solid #506a61;border-radius:18px;background:#1b3037;overflow:hidden;box-shadow:0 24px 70px #0006}.gamebar{padding:10px 12px;display:flex;justify-content:space-between;gap:8px;align-items:center;border-bottom:1px solid #40594f}.gamebar strong{font-size:12px;color:#e6c68a}.mini{padding:7px 9px;border:1px solid #4c685b;border-radius:8px;background:#2a444a;color:#d9e6d2;font-size:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:9px 10px}.stat{background:#12272d;border:1px solid #36554a;border-radius:9px;padding:7px 10px}.stat small{font-size:9px;color:#9ab6a3;display:block}.stat b{display:block;font-size:19px;color:#e9ce91;margin-top:3px;font-variant-numeric:tabular-nums}.stage{position:relative;height:min(60svh,570px);min-height:370px;background:#183039}.stage canvas{display:block;width:100%;height:100%;touch-action:none}.notice{padding:10px 13px;font-size:11px;line-height:1.6;color:#c6d7c5;background:#142b31;min-height:38px}.controls{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:10px;touch-action:none}.control{height:45px;border:1px solid #5d7568;border-radius:10px;background:linear-gradient(#3b5656,#2b424b);color:#e7ebde;font-size:14px;font-weight:800;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:0 3px #0c1f27}.control.down,.control:active{transform:translateY(2px);box-shadow:none;background:#556b5c}.control.gold{background:linear-gradient(#edcf91,#cdaa6d);color:#20312c;border-color:#d8c089}.control.wide{grid-column:span 2}.under{font-size:9px;color:#91ad9d;text-align:center;padding:0 10px 10px;line-height:1.6}.overlay{position:absolute;inset:0;padding:20px;background:#10252dea;backdrop-filter:blur(5px);display:flex;align-items:safe center;justify-content:center;overflow-y:auto;z-index:5}.modal{max-width:360px;width:100%;margin:auto;text-align:center}.badge{border:1px solid #9c8557;color:#e1c38a;border-radius:30px;display:inline-block;padding:6px 10px;font-size:10px;letter-spacing:.12em}.modal h2{font-size:29px;letter-spacing:-.04em;margin:14px 0 12px}.modal p{font-size:12px;line-height:1.8;color:#b9cebc}.primary,.secondary{width:100%;border:0;border-radius:10px;min-height:43px;font-size:13px;font-weight:850;padding:12px}.primary{background:#e7c484;color:#21332d;box-shadow:0 3px #8d744b}.secondary{margin-top:10px;border:1px solid #4c6b5b;background:#2b454a;color:#dce6d4}.levels{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin:16px 0}.level{height:30px;border:1px solid #557263;border-radius:7px;background:#274048;color:#b8cebb;position:relative;padding:0;font-size:11px}.level.active{background:#d4b77b;color:#20332c;border-color:#f0d99e}.level.done:after{content:'★';position:absolute;top:-7px;right:0;font-size:9px;color:#efcf82}.stars{color:#ebca82;font-size:37px;letter-spacing:5px;margin:14px 0}.hidden{display:none!important}.footer{font-size:10px;text-align:center;color:#879f91;line-height:1.8;margin-top:15px}.toolbar{display:flex;gap:7px;padding:10px;flex-wrap:wrap}.toolbar button{flex:1}.bag-board{width:100%;display:grid;gap:3px;padding:8px;background:#182b31;border:9px solid #5b6462;border-radius:21px;position:relative;touch-action:none;box-shadow:inset 0 0 20px #0008}.cell{aspect-ratio:1;border:1px solid #81998822;border-radius:5px;background:#10252c;position:relative;display:flex;align-items:center;justify-content:center;user-select:none;touch-action:none}.cell.blocked{background:repeating-linear-gradient(45deg,#596a65 0 6px,#455b55 6px 12px);border-color:#6e8278}.cell.filled{border-color:#ffffff25;box-shadow:inset 0 2px #ffffff2b,inset 0 -3px #0002;color:#203132;font-weight:900;font-size:11px}.cell.ghost{background:#b9e0bb55;border:2px solid #b7dfb5}.cell.invalid{background:#d8958544;border-color:#df9e8a}.cargo-wrap{padding:14px 20px;background:linear-gradient(#344e52,#1e363e)}.cargo-label{font-size:10px;color:#c9d8c7;display:flex;justify-content:space-between;margin-bottom:9px}.tray{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:10px;max-height:240px;overflow:auto}.bag{border:1px solid #49695a;border-radius:10px;background:#20393f;color:#d4e2ce;touch-action:none;padding:6px 3px;min-width:0}.bag.selected{border-color:#edce8c;background:#455447}.bag.placed{opacity:.3}.bag svg{display:block;width:100%;height:43px;pointer-events:none}.bag small{display:block;font-size:9px;margin-top:4px}.float-bag{position:fixed;z-index:30;pointer-events:none;opacity:.85;width:105px;filter:drop-shadow(0 8px 8px #0006)}.float-bag svg{width:100%}@media(max-width:800px){.shell{padding:9px 9px 18px}.nav{max-width:470px;margin:0 auto 9px}.brand{font-size:10px}.layout{display:block}.intro{display:none}.game{max-width:470px;margin:auto;border-radius:15px}.stage{height:min(57svh,570px)}.footer{margin-top:10px}.controls{gap:7px;padding:9px}.control{height:42px}.stat b{font-size:17px}.cargo-wrap{padding:12px 16px}.tray{max-height:220px}}@media(max-height:700px) and (max-width:800px){.stage{height:49svh;min-height:300px}.modal h2{font-size:24px}.modal p{font-size:11px}.overlay{padding:14px}.control{height:38px}.stats{padding:7px}.stat{padding:5px 8px}.bag svg{height:35px}.tray{max-height:175px}}

.chapters{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin:12px 0 8px}.chapter{border:1px solid #526d60;background:#203940;color:#bad0c0;border-radius:7px;padding:6px 8px;font:inherit;font-size:10px}.chapter.active{background:#d4b77b;color:#20332c;border-color:#efd89d}.gamebar strong{line-height:1.5}.bag small{font-size:8px}
