:root{color-scheme:dark;--bg: #05070f;--panel: rgba(12, 18, 32, .92);--panel-border: rgba(148, 163, 184, .22);--text: #edf2ff;--muted: #93a4c4;--accent: #ffd98a;--danger: #fda4af;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}#offline-banner,#empty-state,#toast{pointer-events:none}html,body,#app{width:100%;height:100%;margin:0}body{background:var(--bg);color:var(--text);overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#scene-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none}.labels{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.planet-label{pointer-events:auto;border:1px solid rgba(148,163,184,.3);border-radius:999px;background:#080d19b8;color:var(--text);padding:4px 9px;font-size:12px;line-height:1.2;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .2s ease,border-color .2s ease}.planet-label:hover,.planet-label:focus-visible{border-color:var(--accent)}.topbar{position:fixed;z-index:5;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:calc(14px + env(safe-area-inset-top)) 16px 12px;background:linear-gradient(180deg,rgba(5,7,15,.92),transparent);pointer-events:none}.brand{font-size:15px;letter-spacing:.22em;font-weight:700;color:var(--accent)}.context{display:flex;flex-direction:column;align-items:flex-end;gap:2px;max-width:60vw;color:var(--muted);font-size:11px;text-align:right}.location-label{max-width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:right;cursor:pointer;pointer-events:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-label:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.cache-label{color:#facc15}.banner{position:fixed;z-index:8;top:calc(62px + env(safe-area-inset-top));left:50%;transform:translate(-50%);padding:6px 12px;border-radius:999px;background:#7f1d1de0;color:#fecaca;font-size:11px;pointer-events:none}.empty-state{position:fixed;z-index:4;left:50%;top:48%;transform:translate(-50%,-50%);width:min(82vw,320px);color:var(--muted);text-align:center;font-size:13px;line-height:1.6;pointer-events:none}.prompt-button{position:fixed;z-index:7;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));transform:translate(-50%);width:68px;height:68px;border:1px solid rgba(255,217,138,.55);border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,217,138,.35),transparent 52%),#0c1220f0;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;box-shadow:0 0 26px #ffc46b29}.prompt-icon{color:var(--accent);font-size:18px}.prompt-label{font-size:11px}.toast{position:fixed;z-index:30;left:50%;bottom:calc(174px + env(safe-area-inset-bottom));transform:translate(-50%);max-width:84vw;padding:9px 14px;border:1px solid var(--panel-border);border-radius:12px;background:#0a101ef5;color:var(--text);font-size:12px;text-align:center;pointer-events:none}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000009e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sheet-panel{position:absolute;left:0;right:0;bottom:0;max-height:82vh;overflow-y:auto;padding:24px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;border-top:1px solid var(--panel-border);background:#0a1020;box-shadow:0 -18px 50px #00000059}.sheet-panel h2{margin:0 0 14px;font-size:18px}.sheet-panel.map-panel{max-height:92vh}.map-status{min-height:18px;margin:0 0 8px;font-size:12px}.map-container{width:100%;height:min(56vh,440px);margin:0 0 16px;border-radius:16px;overflow:hidden;background:#0b1220}.sheet-close{position:absolute;top:14px;right:16px;width:32px;height:32px;border:0;border-radius:50%;background:#94a3b81f;color:var(--text);font-size:20px}#prompt-input,#location-search{width:100%;padding:12px 13px;border:1px solid var(--panel-border);border-radius:12px;background:#0f172aeb;color:var(--text)}#prompt-input:focus,#location-search:focus{border-color:var(--accent)}#prompt-input:focus-visible,#location-search:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.prompt-counter{margin-top:6px;color:var(--muted);font-size:11px;text-align:right}.saved-prompts{margin-top:12px}.saved-prompts-title{margin:0 0 8px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.08em}.prompt-examples{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.prompt-example{border:1px solid var(--panel-border);border-radius:999px;background:transparent;color:var(--muted);padding:6px 10px;font-size:12px}.saved-prompt{border-color:var(--accent);color:var(--text)}.sheet-actions{display:flex;gap:10px}.sheet-actions .primary,.sheet-actions .secondary{flex:1;border-radius:12px;padding:12px 14px;border:1px solid transparent}#use-guess{display:block;width:100%;margin-bottom:12px;border-radius:12px;padding:12px 14px;border:1px solid transparent}.primary{background:var(--accent);color:#1a1204;font-weight:700}.secondary{border-color:var(--panel-border);background:transparent;color:var(--text)}.privacy-actions{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:18px}.link-button{display:block;margin:18px auto 0;border:0;background:transparent;color:var(--muted);font-size:11px;text-decoration:underline}.privacy-actions .link-button{display:inline;margin:0}.muted{color:var(--muted);font-size:12px;line-height:1.5}.location-status{margin-top:12px}.location-results{display:flex;flex-direction:column;gap:8px;margin-top:12px}.location-result{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--panel-border);border-radius:12px;background:transparent;color:var(--text);text-align:left}.location-result small{color:var(--muted)}#detail-content{display:flex;flex-direction:column;gap:12px}.detail-kicker,.detail-source{color:var(--muted);font-size:11px}.detail-title{margin:0;font-size:24px}.detail-summary{margin:0;color:var(--text);font-size:14px;line-height:1.5}.detail-meta{color:var(--muted);font-size:12px;line-height:1.6}.detail-body{display:flex;flex-direction:column;gap:10px;color:#dbe5ff;font-size:14px;line-height:1.75}.detail-body p{margin:0}.detail-link{display:inline-flex;justify-content:center;padding:11px 14px;border-radius:12px;background:var(--accent);color:#1a1204;font-weight:700;text-decoration:none}.detail-warning{padding:8px 10px;border-radius:10px;background:#991b1b40;color:#fecaca;font-size:11px;line-height:1.45}.detail-loading{color:var(--muted);font-size:13px}.fallback-list{position:fixed;z-index:6;inset:calc(76px + env(safe-area-inset-top)) 16px calc(96px + env(safe-area-inset-bottom));overflow-y:auto;display:flex;flex-direction:column;gap:10px}.fallback-item{width:100%;padding:13px 14px;border:1px solid var(--panel-border);border-radius:14px;background:var(--panel);color:var(--text);text-align:left;display:flex;flex-direction:column;gap:3px}.fallback-item small{color:var(--muted)}.fallback-empty{margin:24px auto;text-align:center}.fallback-refresh{align-self:center;margin-top:6px;padding:10px 18px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--accent)}.fallback-mode #scene-canvas,.fallback-mode #labels{display:none!important}.fallback-mode #fallback-list:not([hidden]){display:flex}@media(max-width:380px){.prompt-button{width:62px;height:62px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
