.tower-shell{color:#f4f3db;background:#b9b9bc}.tower-shade{pointer-events:none;background:linear-gradient(#152f4266,#0000 26% 68%,#152f4266);position:absolute;inset:0}.tower-header{z-index:3;justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;top:18px;left:22px;right:22px}.tower-header a,.tower-header button{background:#17353cdd;border:1px solid #c1d8c650;border-radius:6px;padding:9px 13px;font-size:14px}.tower-header>span{text-align:center;letter-spacing:.12em;text-shadow:0 2px 8px #123;font-size:16px}.tower-header small{letter-spacing:.06em;margin-top:5px;font-size:12px;display:block}.tower-intro{background:#16353de8;border-left:3px solid #eac28c;border-radius:10px;max-width:460px;padding:30px;position:absolute;top:23%;left:6%}.tower-intro>span{letter-spacing:.1em;color:#e9c993;font-size:12px}.tower-intro h1{margin:18px 0;font-size:clamp(36px,4.6vw,62px);line-height:1.04}.tower-intro p{color:#d8e6d3;margin-bottom:23px;font-size:17px;line-height:1.6}.tower-status{text-align:center;background:#17353ce8;border-radius:8px;padding:10px 15px;position:absolute;top:90px;right:22px}.tower-status strong{font:600 29px ui-monospace,monospace;display:block}.tower-status span{margin-top:4px;font-size:14px;display:block}.tower-status .urgent{color:#ffb294}.tower-task{background:#17353ced;border:1px solid #ccdec44a;border-radius:8px;width:min(600px,100% - 210px);padding:10px 15px;position:absolute;top:88px;left:22px}.tower-task>span{color:#e9cc98;font-size:12px}.tower-task h2{margin:5px 0;font-size:21px;line-height:1.4}.tower-task p{color:#d0e0c7;margin:5px 0 0;font-size:14px}.tower-key{z-index:3;text-align:center;pointer-events:none;background:#17353ce8;border:1px solid #bbd5be40;border-radius:7px;width:max-content;max-width:calc(100% - 24px);padding:8px 12px;font-size:14px;line-height:1.5;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.tower-controls{z-index:4;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;bottom:75px;left:20px;right:20px}.tower-controls button{touch-action:none;background:#23494fe8;border:1px solid #bbd5be80;border-radius:7px;min-height:44px;padding:10px 13px;font-size:14px}.tower-touch{gap:6px;display:none}.tower-message{pointer-events:none;background:#17353cea;border-left:2px solid #e9cc98;border-radius:0 6px 6px 0;width:min(440px,100% - 44px);padding:10px 14px;font-size:15px;line-height:1.5;position:absolute;bottom:136px;left:22px}.tower-inventory{background:#17353cea;border-radius:7px;align-items:center;gap:8px;padding:10px 14px;font-size:15px;display:flex;position:absolute;bottom:136px;right:22px}.tower-inventory button{color:#d8edb4;border-left:1px solid #c8dabb60;padding-left:10px;font-size:14px}@media (pointer:coarse){.tower-touch{display:flex}.tower-message,.tower-inventory{bottom:180px}}@media (max-width:650px){.tower-header{gap:8px;top:12px;left:12px;right:12px}.tower-header>span{font-size:12px}.tower-header small{font-size:10px}.tower-header a,.tower-header button{padding:8px;font-size:12px}.tower-task{width:calc(100% - 140px);padding:9px;top:78px;left:12px}.tower-task h2{font-size:17px}.tower-status{padding:9px;top:78px;right:12px}.tower-status strong{font-size:24px}.tower-status span{font-size:12px}.tower-key{bottom:12px}.tower-controls{bottom:98px;left:12px;right:12px}.tower-message{width:calc(100% - 24px);bottom:195px;left:12px}.tower-inventory{bottom:150px;right:12px}.tower-intro{padding:23px;top:19%;left:15px;right:15px}.tower-intro h1{font-size:40px}}.tower-layout{flex-direction:column;display:flex;overflow:hidden}.tower-viewport{flex:auto;min-height:0;position:relative;overflow:hidden}.tower-layout .tower-header{background:#16343d;flex:none;gap:14px;min-height:60px;padding:9px 18px;position:relative;inset:auto}.tower-layout .tower-header>span{text-align:left;margin-right:auto;font-size:13px}.tower-layout .tower-header small{font-size:11px}.tower-layout .tower-status{white-space:nowrap;background:0 0;align-items:center;gap:12px;padding:0;display:flex;position:relative;inset:auto}.tower-layout .tower-status strong{font-size:23px}.tower-layout .tower-status span{margin:0;font-size:13px}.tower-dock{background:#16343d;border-top:1px solid #c7dbb84a;flex:none;max-height:36%;padding:9px 18px;position:relative;overflow:auto}.tower-layout .tower-task{background:0 0;border:0;width:auto;padding:0;position:relative;inset:auto}.tower-layout .tower-task h2{margin:3px 0;font-size:19px}.tower-layout .tower-task p{margin:3px 0}.tower-layout .tower-inventory{background:0 0;margin:2px 0;padding:4px 0;display:inline-flex;position:relative;inset:auto}.tower-layout .tower-message{width:auto;margin:4px 0;padding:5px 10px;font-size:14px;position:relative;inset:auto}.tower-dock-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;display:flex}.tower-layout .tower-controls{display:contents;position:relative;inset:auto}.tower-layout .tower-controls button{min-height:38px;padding:7px 12px}.tower-layout .tower-key{background:0 0;border:0;width:auto;max-width:none;padding:4px 0;font-size:13px;position:relative;inset:auto;transform:none}.tower-layout .tower-intro{max-height:85%;top:10%;overflow:auto}.tower-layout .tower-intro h1{font-size:clamp(32px,4vw,54px)}.tower-intro .tower-legend{color:#f1ca93;font-size:14px;line-height:1.4}@media (max-width:800px){.tower-layout .tower-header{gap:8px;min-height:50px;padding:8px 10px}.tower-layout .tower-header>span{display:none}.tower-layout .tower-header>button{margin-right:auto}.tower-layout .tower-status strong{font-size:21px}.tower-layout .tower-status{gap:6px}.tower-dock{padding:8px 12px}.tower-layout .tower-task h2{font-size:17px}.tower-layout .tower-key{font-size:12px}.tower-layout .tower-touch{flex-wrap:wrap}}.tower-layout .tower-brief{animation:5.5s both tower-brief}@keyframes tower-brief{0%{opacity:0;transform:translateY(5px)}5%,86%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0)}}.tower-layout .tower-action.is-quiet{display:none}.tower-layout .tower-help{color:#d5e5cf;background:#23494f;border:1px solid #bbd5be50;border-radius:5px;padding:5px 8px;font-size:12px}.tower-layout .tower-inventory{font-size:13px}.tower-layout .tower-task{padding-bottom:4px}.tower-layout .tower-task h2{font-size:18px}@media (pointer:coarse){.tower-layout .tower-action.is-quiet{display:inline-flex}.tower-layout .tower-action{animation:none}}@media (prefers-reduced-motion:reduce){.tower-layout .tower-brief{animation:none}}.tower-layout[data-paused=true] .tower-brief{animation-play-state:paused}.tower-layout .tower-task .tower-task-hint{color:#c8d8c4;margin:4px 0;font-size:13px}
