/* 导航沿用原站白底、橙色品牌与登录胶囊，场景控件保留像素风。 */
:root{--bar:64px}.topbar{height:var(--bar);padding:0 30px;background:rgba(255,255,255,.96);border:0;box-shadow:0 1px 15px #0000000f;gap:16px}.topbar .brand{gap:8px;color:#ff6b00;font-size:20px}.topbar .brand img{height:34px;width:auto}.topbar .brand strong{font-size:20px;letter-spacing:0}.topbar .brand .platform-icon{font-size:21px}.topbar .preview-label{font-size:9px;border:0;padding:0;color:#aa8661;letter-spacing:1px}.topbar nav{gap:3px;font-size:15px;font-weight:400}.topbar nav a{padding:10px 16px;border-radius:10px;color:#6b5b4e}.topbar nav a.active,.topbar nav a:hover{background:#fff5e6;color:#ff6b00}.topbar nav .login{padding:8px 20px;border:0;border-radius:24px;background:#ff8c00;color:white;box-shadow:none;font-weight:600}.topbar .menu-button{background:none;border:0;color:#ff6b00;font-size:24px;padding:8px}
.map-tools{position:absolute;right:26px;bottom:78px;z-index:7;display:grid;justify-items:end;gap:10px}.zoom-tools{display:flex;align-items:center;border:2px solid #795533;background:#fff2d0;box-shadow:3px 3px #67462f66}.zoom-tools button{background:none;min-width:44px;min-height:44px;font-size:21px}.zoom-tools button+button{border-left:1px solid #c9b184}.zoom-tools #zoomReset{font:12px Consolas,monospace;min-width:60px}.map-tools .pixel-button{gap:8px}.is-opening .map-tools{visibility:hidden}
.edge-hints{position:absolute;inset:0;pointer-events:none;z-index:5}.edge-hint{position:absolute;width:44px;height:44px;transform:translate(-50%,-50%);border:2px solid #765133;background:#fff2d0e8;box-shadow:2px 2px #6a472e66;color:#6a472e;display:flex;gap:3px;align-items:center;justify-content:center;pointer-events:auto}.edge-hint .direction{display:inline-block;font-size:23px;line-height:1}.edge-hint .question{font-size:16px;font-weight:700}.edge-hint:hover{background:#ffdda1}.is-opening .edge-hints{visibility:hidden}
.bubble-department-icon{font-size:23px;width:30px;min-height:32px;display:grid;place-items:center;color:var(--dept-color,#a87544)}.world-bubble.is-discovered.kind-department{gap:7px}.world-bubble.kind-department .bubble-name{min-width:12px}
.loading{z-index:30;width:auto;padding:30px 32px 24px;display:flex;flex-direction:column;align-items:center;color:#644731;background:#a7b77df5}.loading:before{content:'';position:absolute;width:min(400px,calc(100% - 32px));height:330px;background:#fff1cf;border:3px solid #80603b;box-shadow:inset 0 0 0 4px #fff8df,5px 5px #5e472866}.loading>*{position:relative}.loading strong{font-size:20px;letter-spacing:2px;margin:15px 0 9px}.loading .eyebrow{margin-top:14px}.loading p{font-size:12px;line-height:1.8;text-align:center;min-height:44px;max-width:310px}.pixel-progress{width:min(310px,100%);height:24px;margin:16px 0 10px;border:3px solid #765133;padding:3px;background:#ead9af;box-shadow:inset 2px 2px #bc9b6b,2px 2px #fff7df}.pixel-progress>span{display:block;width:var(--load-progress,0%);height:100%;background:repeating-linear-gradient(90deg,#d99c46 0 10px,#e7b765 10px 12px);transition:width .12s steps(3,end);box-shadow:inset 0 2px #f2cc81}.loading b{font:12px Consolas,monospace;color:#946d3f}.loading .pixel-button{margin-top:15px}.loading.is-error .pixel-progress>span{background:#b77453}
@media(max-width:1120px){.topbar{padding:0 20px;gap:10px}.topbar .preview-label{display:none}.topbar nav a{padding:10px 11px}.topbar .brand strong{font-size:18px}.topbar nav{font-size:13px}}
@media(max-width:768px){:root{--bar:60px}.topbar{padding:0 16px;justify-content:space-between}.topbar .brand{font-size:18px}.topbar .brand img{height:30px}.topbar .brand strong{font-size:18px}.topbar .menu-button{display:block}.topbar nav{display:none;position:absolute;left:0;right:0;top:60px;z-index:40;background:white;box-shadow:0 6px 12px #0002;padding:12px 16px;flex-direction:column;align-items:stretch;gap:5px}.topbar nav.is-open{display:flex}.topbar nav a{padding:12px 16px}.map-tools{right:14px;bottom:72px;gap:7px}.map-tools .pixel-button{font-size:10px;padding:8px;min-height:42px}.zoom-tools button{min-height:42px;min-width:39px}.zoom-tools #zoomReset{min-width:50px}.world-actions{gap:5px}.world-actions .pixel-button{font-size:10px;padding:8px}.touch-interact{right:14px;bottom:183px}.edge-hint{background:#fff2d0f5}.loading{padding:24px}}
@media(max-height:520px){.map-tools{right:14px;bottom:61px;display:flex;align-items:center}.map-tools .pixel-button{font-size:10px;padding:6px;min-height:38px}.zoom-tools button{min-height:36px;min-width:35px}.touch-interact{bottom:110px}.world-actions{bottom:61px}.map-corner{top:16px}}
@media(prefers-reduced-motion:reduce){.pixel-progress>span{transition:none}}
.loading p{color:#896946}.loading-fruit{background:transparent url('assets/loading-orange-20261104.png') center/45px 45px no-repeat!important;border:0!important;border-radius:0;box-shadow:none!important;width:45px;height:45px;image-rendering:pixelated;animation:loadFruitBreath .65s steps(2,end) infinite alternate}.loading-fruit:before,.loading-fruit:after{display:none}@keyframes loadFruitBreath{to{transform:translateY(-3px)}}
@media(max-width:768px){.touch-interact{transform:translateY(-58px)}}
@media(max-width:360px){.world-actions{width:150px;flex-wrap:wrap}.joystick{bottom:35px}}
@media(max-height:520px) and (max-width:1000px){:root{--bar:48px}.topbar{padding:0 16px}.topbar .brand img{height:28px}.topbar .brand strong{font-size:17px}.topbar .preview-label{display:none}.topbar .menu-button{display:block}.topbar nav{display:none;position:absolute;left:0;right:0;top:48px;z-index:40;max-height:calc(100dvh - 48px);overflow:auto;background:white;padding:10px 16px;flex-direction:column;align-items:stretch}.topbar nav.is-open{display:flex}.topbar nav a{padding:10px 16px}.touch-interact{transform:translateY(-40px)}}
@media(prefers-reduced-motion:reduce){.loading-fruit{animation:none}}
.topbar .preview-label{display:block;font-size:8px;white-space:nowrap}
@media(max-width:768px){.topbar{gap:8px}.topbar .preview-label{font-size:7px;letter-spacing:.3px;margin-left:auto}}
@media(max-height:520px) and (max-width:1000px){.touch-controls{display:flex;position:absolute;left:20px;right:20px;bottom:70px;align-items:flex-end;justify-content:space-between;pointer-events:none}.joystick{position:relative;width:82px;height:82px;touch-action:none;pointer-events:auto;border-radius:50%;border:2px solid #fff2c790;background:#64473135;box-shadow:inset 0 0 0 9px #fff1cf15}.joystick>span{position:absolute;left:17px;top:17px;width:44px;height:44px;border:2px solid #d2b480;background:#f5e4b7;border-radius:50%}.joystick i{position:absolute;left:34px;top:28px;font-style:normal;color:#8b6b43}.touch-interact{pointer-events:auto;width:53px;height:53px;margin-bottom:20px;border-radius:50%;border:2px solid #87603d;box-shadow:0 4px 0 #6c4b2e;background:#f6e4b5;font-weight:800;color:#71502f}.topbar .preview-label{display:block}}
