/* The wildlife remains the main view; the feedback is readable across a room. */
#scene,#scene3d{position:absolute;inset:0;width:100%;height:100%}
#scene3d{opacity:0;transition:opacity .75s ease;pointer-events:none}
.graphics-ready #scene3d{opacity:1}
.graphics-ready #scene{opacity:0;pointer-events:none}
.scene-chrome{z-index:12}
.scene-chrome .brand{background:rgba(16,33,27,.78);color:#faf6e7;border:1px solid #e5e4c625;box-shadow:0 5px 30px #10221925;backdrop-filter:blur(18px)}
.scene-chrome .brand-light{color:#c1d3b0}
.scene-actions .icon-button{background:rgba(16,33,27,.75);color:#faf6e7;border-color:#e5e4c625;backdrop-filter:blur(18px)}
.scene-actions .icon-button:hover{background:#263f32}
.scene-actions .controls-toggle{background:#f2ecd9;color:#294b3d;border-color:#f2ecd9;box-shadow:0 5px 30px #10221925}
.scene-actions .quick-mic{border:1px solid #e5e4c640;background:rgba(16,33,27,.78);color:#faf6e7;backdrop-filter:blur(18px);height:42px;font-size:11px;box-shadow:0 5px 30px #10221925}
.mic-live-dot{height:7px;width:7px;border-radius:50%;background:#b5b5a6;box-shadow:0 0 0 3px #ffffff12}
.quick-mic.is-live .mic-live-dot{background:#a6ef8d;box-shadow:0 0 0 4px #a6ef8d1c}
.app-shell .habitat-top{top:85px;color:#f4f0d7;text-shadow:0 2px 8px #172c26}
.app-shell .habitat-top .location{background:#142a228c;padding:7px 10px;border-radius:5px;backdrop-filter:blur(8px)}
.app-shell .habitat-top .live-dot{background:#b0df90}
.app-shell .time-pill{background:#142a228c;color:#f4f0d7;border-color:#f4f0d71a;text-shadow:none}
.app-shell .scene-banner{top:128px;max-width:min(560px,calc(100% - 48px));background:#142a22d9;color:#f4efd9;border-color:#f4f0d721;box-shadow:0 10px 35px #10221925}
.app-shell .scene-banner strong{font-size:16px;line-height:1.5}
.app-shell .scene-banner div>span{font-size:12px;color:#c1c9b0;line-height:1.6}
.app-shell .scene-banner.disaster{background:#381f16ed;border-color:#f2a26988}
.app-shell .scene-banner.disaster strong{color:#ffd5ad}
.app-shell .habitat-bottom{bottom:220px;left:26px;right:26px}
.app-shell .habitat-pill{background:#142a22c4;color:#f7efd9;border-color:#f4f0d71a;font-size:12px;padding:8px 13px}
.app-shell #healthSummary{font-size:11px}
.danger-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;box-shadow:inset 0 0 150px 25px #e8912529,inset 0 0 0 5px #ebaa3b99;transition:opacity .5s,box-shadow .5s}
body[data-signal=danger] .danger-vignette,body[data-signal=impact] .danger-vignette{box-shadow:inset 0 0 180px 25px #b9302866,inset 0 0 0 7px #e8774bb3}
.graphics-loading{position:absolute;top:24px;left:50%;transform:translateX(-50%);display:flex;gap:9px;align-items:center;background:#10251de8;border:1px solid #faf1d733;border-radius:20px;padding:11px 18px;color:#f5efd8;z-index:11;font-size:12px;white-space:nowrap;box-shadow:0 8px 30px #10251d33}
.graphics-loading[hidden]{display:none}
.loading-spinner{height:12px;width:12px;border:2px solid #ecedca40;border-top-color:#dfbe7d;border-radius:50%;animation:loading-spin 1s linear infinite}
.graphics-fallback{top:80px}
.graphics-fallback .loading-spinner{display:none}
.pause-overlay,.ended-overlay{background:#0d211bbd;backdrop-filter:blur(7px);color:#fff4d8}
.pause-overlay>span,.ended-overlay p{color:#d2dac1}
.pause-overlay>.button,.ended-overlay>.button{background:#e1c68a;color:#243e30;border-color:#e1c68a}
.help-credits{font-size:11px!important;margin-top:20px}
.help-credits a{color:#557447}
@keyframes loading-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.scene-actions .quick-mic{font-size:10px;padding:10px}.graphics-loading{top:124px}.app-shell .habitat-bottom{bottom:215px}.app-shell .scene-banner strong{font-size:14px}.app-shell .scene-banner div>span{font-size:11px}}
@media(max-width:600px){.scene-chrome .brand{font-size:17px;padding:8px}.scene-chrome .brand-mark{width:26px;height:29px}.scene-actions{gap:5px}.scene-actions .quick-mic{width:34px;height:34px;padding:0}.quick-mic #quickMicText{display:none}.scene-actions .icon-button{width:29px;height:29px}.scene-actions .controls-toggle{height:34px;padding:8px;font-size:10px}.app-shell .habitat-top{top:68px;left:14px;right:14px}.app-shell .scene-banner{top:106px;left:14px;max-width:calc(100% - 28px);padding:9px 12px}.app-shell .scene-banner strong{font-size:13px}.app-shell .scene-banner div>span{font-size:10px}.app-shell .habitat-bottom{left:14px;right:14px;bottom:210px}.app-shell .habitat-pill{font-size:10px;padding:6px 8px}.app-shell #healthSummary{display:none}.app-shell #quickStats{margin-left:0}.graphics-loading{top:105px;font-size:10px;max-width:calc(100% - 30px);white-space:normal}.danger-vignette{box-shadow:inset 0 0 70px 10px #e8912529,inset 0 0 0 4px #ebaa3b99}}
@media(max-height:600px) and (min-width:700px){.scene-chrome{top:12px!important}.app-shell .habitat-top{top:67px}.app-shell .scene-banner{top:101px}.app-shell .habitat-bottom{bottom:180px}}
@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none}}
.wonder-banner{position:absolute;z-index:5;top:88px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;max-width:570px;padding:14px 20px;border:1px solid #efe4b870;border-radius:13px;background:linear-gradient(120deg,#19372ee8,#413855da);box-shadow:0 0 45px #dfd4ad24;color:#faf3d8;backdrop-filter:blur(14px)}
.wonder-banner[hidden]{display:none}.wonder-sigil{color:#eedda7;font-size:30px}.wonder-banner strong{display:block;font:650 17px 'Manrope',sans-serif;letter-spacing:-.4px}.wonder-banner div>span{display:block;font-size:11px;line-height:1.6;color:#d4d9bf;margin-top:5px}
.app-shell .location .ecology-hint{font-size:8px;letter-spacing:.6px;color:#d5d6b7;border-left:1px solid #f4f0d733;padding-left:8px;margin-left:3px}
.app-shell .ended-overlay{inset:auto 26px 225px auto;width:320px;max-width:calc(100% - 40px);height:auto;min-height:0;z-index:7;padding:20px;border:1px solid #cabb9160;border-radius:14px;background:#0e211be8;backdrop-filter:blur(9px);gap:9px}
.app-shell .ended-overlay .end-symbol{display:none}.app-shell .ended-overlay h2{font-size:22px}.app-shell .ended-overlay p{font-size:11px;line-height:1.6;margin:0}.app-shell .ended-overlay .button{font-size:10px;padding:9px 12px}
@media(max-width:750px){.app-shell .location .ecology-hint{display:none}.wonder-banner{left:16px;right:16px;max-width:none;transform:none;top:115px;padding:12px 15px}.wonder-banner strong{font-size:14px}.wonder-banner div>span{font-size:10px}.app-shell .ended-overlay{right:14px;bottom:215px;width:280px;padding:15px}}
.local-review{position:fixed;z-index:60;top:15px;left:50%;transform:translateX(-50%);display:flex;flex-wrap:wrap;gap:5px;align-items:center;width:450px;max-width:calc(100vw - 20px);padding:10px;background:#142d27ed;color:#f6edcf;border:1px solid #d7c49f99;border-radius:10px;font-size:10px;box-shadow:0 8px 30px #0003}.local-review strong{width:100%;font-size:8px;letter-spacing:1.4px}.local-review button{background:#d9d5bd;color:#19342b;border:0;border-radius:4px;padding:5px 7px;font-size:9px}
