
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:ui-rounded,"Avenir Next",system-ui,sans-serif;color:#544438;background:#e9e4d8;background-image:radial-gradient(#d7d3c6 1.5px,transparent 1.5px);background-size:22px 22px;display:flex;justify-content:center;align-items:center;overscroll-behavior:none}
button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,input:focus-visible{outline:3px solid #da9860;outline-offset:4px}
#app{width:min(100%,500px);height:100%;max-height:960px;display:flex;flex-direction:column;background:#f8f0e3;box-shadow:0 0 0 1px #fff8,0 14px 70px #72634826;position:relative;overflow:hidden}
header{height:94px;flex:none;padding:19px 22px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;z-index:2}.brand{line-height:.94;transform:rotate(-3deg)}.brand small{font-size:12px;letter-spacing:3px;font-weight:850;display:block;color:#9e745b;margin-bottom:4px}.brand h1{font-size:33px;letter-spacing:-1.5px;margin:0;font-weight:900}.brand h1 span{color:#db936f}.tools{display:flex;gap:7px}.iconBtn{width:42px;height:42px;border:1.5px solid #ddceba;border-radius:14px;background:#fffaf1;color:#77604c;display:grid;place-items:center;box-shadow:0 3px 0 #e9dcc9}.iconBtn:active{transform:translateY(2px);box-shadow:none}.iconBtn svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}.iconBtn.on{background:#dcead6;border-color:#a2bb97;color:#4f7550}
#playfield{flex:1;min-height:0;position:relative}canvas{width:100%;height:100%;display:block;touch-action:none;outline:none}footer{height:66px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:4px 24px 18px;gap:12px}.status{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:750;color:#7b7b62}.statusDot{width:8px;height:8px;border-radius:50%;background:#86a981;box-shadow:0 0 0 5px #86a9811b}body[data-flight="true"] .statusDot{background:#d7a16f;box-shadow:0 0 0 5px #d7a16f1b}.counter{font-size:11px;font-weight:750;color:#a18975;display:flex;gap:8px;align-items:center}.counter strong{font-size:19px;color:#665445}.counter svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}
.sheet{position:absolute;z-index:10;inset:0;background:#55433252;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:22px}.sheet[hidden]{display:none}.panel{background:#fff9ec;border:2px solid #e5d6bd;border-radius:28px;padding:26px;width:100%;max-width:350px;box-shadow:0 14px 40px #58453428}.panel h2{font-size:25px;letter-spacing:-.8px;margin:0}.panel p{font-size:13px;color:#947c65;line-height:1.55;margin:8px 0 22px}.panelHead{display:flex;justify-content:space-between;align-items:center;gap:10px}.panelHead .iconBtn{width:34px;height:34px;border-radius:11px}.slider{display:grid;grid-template-columns:1fr 50px;gap:6px;font-size:12px;margin-top:18px;font-weight:750}.slider output{text-align:right;color:#789471}.slider input{grid-column:1/-1;width:100%;accent-color:#729c79;height:22px}.smallBtn{width:100%;border:1px solid #dacdb8;color:#7c6b55;background:transparent;padding:10px;border-radius:12px;margin-top:18px;font-size:12px;font-weight:700}.mainBtn{border:0;background:#779e7c;color:#fffdf2;border-radius:17px;min-height:56px;min-width:112px;box-shadow:0 5px 0 #527c5b;display:flex;align-items:center;justify-content:center;gap:12px;font-size:15px;font-weight:800;padding:12px 24px}.mainBtn svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.mainBtn:active{transform:translateY(3px);box-shadow:0 2px 0 #527c5b}#win .panel{text-align:center;display:flex;align-items:center;flex-direction:column}#win h2{font-size:34px}#win .trophy{font-size:39px;color:#c7a367;margin-bottom:10px}#win p{margin-bottom:20px}#win strong{color:#6d8e66}#win .mainBtn{width:100%}.caption{font-size:10px;font-weight:750;letter-spacing:2px;color:#b0a08c;margin-top:20px}
@media(max-height:650px){header{height:70px;padding:10px 18px 6px}.brand small{font-size:10px}.brand h1{font-size:27px}.iconBtn{width:36px;height:36px;border-radius:12px}footer{height:46px;padding:0 20px 9px}.panel{padding:18px}.panel p{margin:6px 0 10px}.slider{margin-top:9px}.sheet{padding:12px}.panel{max-height:95%;overflow:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.roomBar{height:38px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 22px 5px;gap:8px}.roomBar button{display:flex;gap:9px;align-items:center;border:0;background:transparent;color:#77604c;padding:8px 0;min-height:36px;font-size:11px;font-weight:750}.roomBar #roomNumber{color:#a68b71;font-size:10px;letter-spacing:.5px}.starCount{color:#c29b50;font-size:18px;letter-spacing:2px;white-space:nowrap}.roomChoice{width:100%;display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:12px;min-height:57px;text-align:left;background:#f5eedf;border:1px solid #e6dac5;border-radius:13px;color:#766048;padding:10px 14px;margin:8px 0;font-size:13px;font-weight:700}.roomChoice[aria-current="true"]{background:#e2ecd9;border-color:#aabd9c}.roomChoice span:first-child{color:#9b876c;font-size:18px}.roomChoice span:last-child{color:#b59453;font-size:16px;letter-spacing:2px}#win .trophy{font-size:31px;letter-spacing:5px}#win .smallBtn{border:0;margin-top:17px}#next{width:100%}@media(max-width:350px){.roomBar{padding:0 17px 5px}.roomBar button{gap:5px;font-size:10px}.starCount{font-size:16px;letter-spacing:0}.tools{gap:5px}header{padding-left:17px;padding-right:17px}}
[hidden]{display:none!important}.srOnly{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}header{height:66px;padding:14px 22px 6px}.roomBar{height:32px;justify-content:center;padding-bottom:4px}.roomBar button{min-height:32px}.counter strong{font-size:29px;line-height:1}.counter{gap:8px}#mainMenu{position:absolute;inset:0;z-index:5;padding:78px 28px 32px;display:grid;grid-template-rows:auto minmax(120px,1fr) auto;justify-items:center;pointer-events:none}#mainMenu button{pointer-events:auto}.menuTools{position:absolute;top:22px;right:22px;display:flex;gap:8px}.menuBrand{text-align:center;transform:rotate(-3deg)}.menuBrand small{font-weight:900;font-size:17px;letter-spacing:6px;color:#a67558;padding-left:6px}.menuBrand h1{font-size:90px;line-height:.97;letter-spacing:-6px;margin:2px 0 13px;font-weight:900}.menuBrand h1 span{color:#e7a27d}.menuBrand p{font-size:13px;color:#9c8770;margin:0;transform:rotate(3deg)}#menuHero{width:100%;min-height:0}.menuActions{width:min(100%,272px);text-align:center}#menuPlay{width:100%;min-height:64px;font-size:20px;gap:17px}#menuPlay svg{width:30px;height:30px}#menuRooms{display:flex;align-items:center;justify-content:center;gap:11px;min-height:49px;margin-top:15px;background:#fff9ed;font-size:14px}#menuRooms svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6}.menuMeta{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:24px;font-size:12px;font-weight:650;color:#a4927b}.menuMeta i{width:3px;height:3px;background:#cbbda7;border-radius:50%}body[data-screen="menu"] #playfield{position:absolute;inset:0}body[data-screen="menu"] #game{cursor:default}@media(max-height:650px){#mainMenu{padding:66px 24px 22px}.menuBrand small{font-size:14px;letter-spacing:5px}.menuBrand h1{font-size:70px;margin-bottom:8px}.menuBrand p{font-size:11px}.menuTools{top:14px;right:18px}.menuMeta{margin-top:15px}#menuPlay{min-height:54px}#menuRooms{min-height:42px;margin-top:12px}.menuActions{max-width:235px}header{height:58px;padding:10px 18px 5px}.roomBar{height:30px}header .iconBtn{width:38px;height:38px}}@media(max-width:350px){header{padding-left:17px;padding-right:17px}.tools{gap:5px}.menuBrand h1{font-size:74px}}

/* anul.space navigation; all controls remain in their existing layout. */
.hub-back{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 10px;border:1.5px solid #ddceba;border-radius:12px;background:#fffaf1;color:#77604c;font-family:inherit;font-size:12px;font-weight:750;line-height:1;text-decoration:none;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;pointer-events:auto}
.hub-back:hover{background:#eee5d6;color:#544438}.hub-back:focus-visible{outline:3px solid #da9860;outline-offset:3px}
.site-menu-back{position:absolute;top:22px;left:22px;min-height:42px}
.site-game-nav{display:flex;align-items:center;gap:7px;flex:none}.site-header-back{padding-inline:8px;min-height:38px;font-size:11px}
@media(max-height:650px){.site-menu-back{top:14px;left:18px;min-height:36px}}
@media(max-width:380px){#gameHeader{padding-inline:12px;gap:5px}#gameHeader .iconBtn{width:32px;height:36px;border-radius:11px}#gameHeader .iconBtn svg{width:17px;height:17px}#gameHeader .tools{gap:4px}#gameHeader .starCount{font-size:16px;letter-spacing:0}.site-game-nav{gap:5px}.site-header-back{min-height:36px;padding-inline:7px}}
