:root{--ink: #f7efe4;--ink-dim: rgba(247, 239, 228, .66);--gold: #e8c582;--gold-deep: #b98b42;--glass: rgba(20, 15, 24, .52);--glass-strong: rgba(16, 12, 20, .78);--line: rgba(255, 235, 200, .16);--blue: #7cc4ff;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--serif: "Cormorant Garamond", "Didot", Georgia, serif;--sans: "Inter", -apple-system, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;width:100%;overflow:hidden;overscroll-behavior:none;background:#120d14;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}body{position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer}[hidden]{display:none!important}#scene{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;outline:none}#topbar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:12px;padding:calc(10px + var(--safe-t)) calc(14px + var(--safe-r)) 10px calc(16px + var(--safe-l));background:linear-gradient(to bottom,#0a070c9e,#0a070c00);pointer-events:none}#topbar>*{pointer-events:auto}.brand{font-family:var(--sans);font-weight:600;letter-spacing:.42em;font-size:13px;display:flex;align-items:center;gap:10px}.brand-mark{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff3d6,var(--gold) 45%,var(--gold-deep));box-shadow:0 0 14px #e8c58299}.clock{flex:1;text-align:center;font-size:12px;letter-spacing:.08em;color:var(--ink-dim);white-space:nowrap}.top-actions{display:flex;gap:8px}.chip{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:12px;letter-spacing:.06em;display:inline-flex;align-items:center;gap:8px}.chip.needs{border-color:#e8c58273}.chip .count{min-width:20px;height:20px;border-radius:10px;padding:0 6px;display:inline-grid;place-items:center;font-weight:600;font-size:11px;background:var(--gold);color:#24170a}.chip .count.zero{background:#ffffff29;color:var(--ink)}.sheet{position:fixed;z-index:30;top:calc(58px + var(--safe-t));right:calc(12px + var(--safe-r));width:min(340px,calc(100vw - 24px));background:var(--glass-strong);border:1px solid var(--line);border-radius:18px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:14px;box-shadow:0 20px 60px #00000073;animation:drop .22s ease-out}.sheet-title{margin:2px 4px 10px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}.sheet ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sheet li button{width:100%;text-align:left;padding:12px 14px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.07);display:grid;gap:3px}.sheet li button:hover{background:#ffffff17}.sheet li b{font-weight:500;font-size:14px}.sheet li small{color:var(--ink-dim);font-size:12px}.sheet .empty{color:var(--ink-dim);font-size:13px;padding:8px 4px}@keyframes drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}#labels{position:fixed;inset:0;pointer-events:none;z-index:10}.place-label{position:absolute;left:0;top:0;pointer-events:auto;transform:translate3d(-999px,-999px,0);border:0;background:none;padding:0;will-change:transform}.place-label .inner{display:flex;align-items:center;gap:8px;translate:-50% -100%;padding:7px 12px 7px 10px;border-radius:999px;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;transition:background .2s}.place-label:hover .inner{background:#1e161ebf}.place-label .ic{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold)}.place-label[data-theme=blue] .ic{background:var(--blue);box-shadow:0 0 10px var(--blue)}.place-label[data-theme=sky] .ic{background:#bfe3ff;box-shadow:0 0 10px #bfe3ff}.place-label .nm{font-size:11px;font-weight:600;letter-spacing:.22em}.place-label .sub{font-size:11px;color:var(--ink-dim);letter-spacing:.02em}.place-label .badge{font-size:10px;font-weight:600;padding:2px 7px;border-radius:99px;background:var(--gold);color:#24170a;animation:glow 1.6s ease-in-out infinite}.place-label.courier .inner{background:#e8c582eb;color:#24170a;border-color:transparent}.place-label.courier .nm{letter-spacing:.08em}@keyframes glow{50%{box-shadow:0 0 14px #e8c582e6}}body:not([data-mode=street]) #labels{opacity:0;pointer-events:none}body:not([data-mode=street]) #labels *{pointer-events:none}#labels{transition:opacity .35s}#minimap{position:fixed;z-index:15;left:calc(14px + var(--safe-l));bottom:calc(58px + var(--safe-b));width:96px;height:96px;border-radius:50%;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .35s}body:not([data-mode=street]) #minimap{opacity:0;pointer-events:none}body[data-mode=planet] #statusbar,body[data-mode=planet] #minimap,body[data-mode=globe] #statusbar,body[data-mode=update] #statusbar,body[data-mode=inside] #statusbar{opacity:0}#statusbar{transition:opacity .35s}#minimap svg{width:100%;height:100%;overflow:visible}.mm-ring{fill:none;stroke:#e8c58273;stroke-width:1;stroke-dasharray:1 3}.mm-inner{fill:#ffffff08;stroke:#ffffff14}.mm-north{fill:var(--gold)}.mm-n{fill:var(--ink-dim);font-size:8px;text-anchor:middle;font-family:var(--sans)}.mm-road{stroke:#ffffff38;stroke-width:3;stroke-linecap:round}.mm-place{cursor:pointer}.mm-place circle.dot{fill:var(--gold)}.mm-place[data-theme=blue] circle.dot{fill:var(--blue)}.mm-place[data-theme=sky] circle.dot{fill:#bfe3ff}.mm-place circle.hit{fill:transparent}.mm-place.alert circle.dot{animation:mmPulse 1.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes mmPulse{50%{transform:scale(1.7)}}.mm-cam{fill:#fff;opacity:.9}#statusbar{position:fixed;z-index:15;left:50%;transform:translate(-50%);bottom:calc(12px + var(--safe-b));max-width:calc(100vw - 24px);min-height:34px;display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:999px;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:12px;color:var(--ink-dim);white-space:nowrap}#statusText{overflow:hidden;text-overflow:ellipsis;transition:opacity .35s}#statusText.out{opacity:0}.pulse{flex:none;width:7px;height:7px;border-radius:50%;background:#7affc8;box-shadow:0 0 8px #7affc8;animation:glow 2s infinite}#statusbar.hot .pulse{background:var(--gold);box-shadow:0 0 10px var(--gold)}#statusbar.hot #statusText{color:var(--ink)}.overlay{position:fixed;inset:0;z-index:25;display:grid;place-items:center;padding:calc(64px + var(--safe-t)) 16px calc(24px + var(--safe-b));overflow-y:auto;touch-action:pan-y;-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(16px) saturate(1.15);backdrop-filter:blur(16px) saturate(1.15);background:radial-gradient(120% 90% at 50% 100%,#ffaa5a38,#0e090e9e);animation:fadeIn .45s ease-out}.overlay[data-theme=blue]{background:radial-gradient(120% 90% at 50% 100%,#5aaaff38,#060a12a8)}.overlay[data-theme=warm]{background:radial-gradient(120% 90% at 50% 100%,#ffbe7833,#0e0a0a9e)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.card{width:min(560px,100%);background:var(--glass-strong);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 30px 80px #00000080;animation:rise .5s cubic-bezier(.2,.8,.2,1)}@keyframes rise{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}.back{min-height:40px;padding:0 14px;border-radius:999px;background:#ffffff12;border:1px solid rgba(255,255,255,.1);font-size:13px;letter-spacing:.03em}.back:hover{background:#ffffff1f}.eyebrow{margin:18px 0 4px;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}.overlay[data-theme=blue] .eyebrow{color:var(--blue)}.card h2{margin:0 0 14px;font-family:var(--serif);font-weight:600;font-size:clamp(30px,7vw,40px);letter-spacing:.04em;line-height:1.05}.items{list-style:none;padding:0;margin:0;display:grid;gap:10px}.items li{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;padding:14px 16px;border-radius:14px;background:#ffffff0b;border:1px solid rgba(255,255,255,.07);animation:rise .5s backwards cubic-bezier(.2,.8,.2,1)}.items li b{font-weight:500;font-size:15px}.items li small{grid-column:1;color:var(--ink-dim);font-size:12px}.items .st{grid-row:1 / span 2;grid-column:2;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;border-radius:99px;background:#ffffff14;color:var(--ink-dim)}.items .st.new{background:var(--gold);color:#24170a}.items .st.done{background:#7affc829;color:#9effd6}.items .st.active{background:#7cc4ff29;color:#bfe3ff}.items li.action{cursor:pointer;border-color:#e8c58266}.upd-img{margin-top:14px;border-radius:16px;overflow:hidden;aspect-ratio:4 / 3;background:#0b0809}.upd-img img{width:100%;height:100%;object-fit:cover;display:block}.update-card .eyebrow{margin-top:16px}.upd-text{margin:0 0 18px;color:var(--ink-dim);font-size:15px;line-height:1.5}.choices{display:grid;gap:10px;grid-template-columns:1fr}@media (min-width: 640px){.choices{grid-template-columns:repeat(3,1fr)}}.choices button{min-height:48px;padding:10px 14px;border-radius:14px;font-size:14px;font-weight:500;background:#ffffff12;border:1px solid rgba(255,255,255,.12)}.choices button.primary{background:linear-gradient(180deg,#f3d595,#d4a65a);color:#24170a;border-color:transparent}.choices button:hover{filter:brightness(1.08)}#globeUI{position:fixed;inset:0;z-index:22;pointer-events:none}#globeUI>*{pointer-events:auto}.back.floating{position:absolute;top:calc(62px + var(--safe-t));left:calc(14px + var(--safe-l));background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.route-card{position:absolute;left:50%;transform:translate(-50%);bottom:calc(16px + var(--safe-b));width:min(440px,calc(100vw - 24px));padding:6px 20px 18px}.route-card h2{font-size:clamp(28px,7vw,36px);display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.route-card .arrow{color:var(--gold);font-family:var(--sans);font-size:.6em}.countdown{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}#countdown{font-size:28px;font-weight:600;letter-spacing:.02em;font-variant-numeric:tabular-nums}.countdown small{color:var(--ink-dim);font-size:12px}.hint{margin:10px 0 0;font-size:11px;color:var(--ink-dim);letter-spacing:.04em}#globeLabels{position:fixed;inset:0;pointer-events:none;z-index:21}.globe-label{position:absolute;left:0;top:0;translate:10px -50%;display:grid;padding:5px 9px;border-radius:8px;background:#0a0e18b3;border:1px solid rgba(242,205,140,.35);font-size:11px;line-height:1.25;transition:opacity .3s}.globe-label b{color:var(--gold);letter-spacing:.12em}.globe-label span{color:var(--ink-dim)}.globe-label.idea{border-style:dashed;border-color:#bfd6f266;background:#0a0e1880}.globe-label.idea b{color:#bfd6f2}#toast{position:fixed;z-index:40;left:50%;top:calc(64px + var(--safe-t));transform:translate(-50%);padding:10px 16px;border-radius:999px;font-size:13px;background:#e8c582f2;color:#24170a;font-weight:500;box-shadow:0 10px 30px #00000059;animation:drop .25s ease-out;max-width:calc(100vw - 32px);text-align:center}#fade{position:fixed;inset:0;z-index:35;background:#05040a;opacity:0;pointer-events:none;transition:opacity .45s ease}#loading{position:fixed;inset:0;z-index:50;display:grid;place-content:center;gap:18px;justify-items:center;background:radial-gradient(circle at 50% 60%,#3a2430,#0d0910 70%);transition:opacity .9s ease}#loading.done{opacity:0;pointer-events:none}.ld-mark{letter-spacing:.6em;font-weight:600;font-size:14px;margin-right:-.6em}.ld-bar{width:120px;height:2px;background:#ffffff1f;border-radius:2px;overflow:hidden}.ld-bar i{display:block;height:100%;width:40%;background:var(--gold);animation:ld 1.1s ease-in-out infinite}@keyframes ld{0%{transform:translate(-100%)}to{transform:translate(260%)}}@media (max-width: 480px){.clock{display:none}.brand{flex:1}.needs-label{display:none}.chip.needs:before{content:"⚑";font-size:13px;color:var(--gold)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.chip.world{border-color:#7cc4ff73}.world-ic{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#bff2ff,#3fa3e8 50%,#2f8a3e 51%,#1d5fa8 75%);box-shadow:0 0 10px #7cc4ffb3}body[data-mode=planet] .chip.world{background:#7cc4ff40}#planetUI{position:fixed;inset:0;z-index:22;pointer-events:none}#planetUI>*{pointer-events:auto}.planet-card{position:absolute;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));width:min(340px,calc(100vw - 32px));padding:4px 18px 16px}.planet-card h2{font-size:clamp(26px,5vw,32px);margin-bottom:10px}.pl-rows{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px}.pl-rows li{display:flex;gap:10px;align-items:center}.pl-rows .dot{flex:none;width:8px;height:8px;border-radius:50%}.dot.sun{background:#ffd27a;box-shadow:0 0 8px #ffd27a}.dot.need{background:var(--gold)}.dot.trip{background:#bfe3ff}.dot.feed{background:#7affc8}@media (max-width: 700px){.planet-card{left:50%;right:auto;transform:translate(-50%)}}#planetLabels{position:fixed;inset:0;pointer-events:none;z-index:21}.planet-label{position:absolute;left:0;top:0;translate:-50% -100%;display:grid;gap:1px;padding:6px 10px;border-radius:10px;text-align:left;background:#080e1eb8;border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:11px;line-height:1.3;white-space:nowrap;transition:opacity .3s}.planet-label:disabled{cursor:default}.planet-label b{font-size:12px;letter-spacing:.06em}.planet-label span{color:var(--ink-dim)}.planet-label .badge{position:absolute;top:-8px;right:-8px;font-style:normal;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;background:var(--gold);color:#24170a;font-size:10px;font-weight:600}.planet-label.trip{border-color:#f2cd8c80}.planet-label.trip b{color:var(--gold)}.planet-label.idea{border-style:dashed;background:#080e1e73}.planet-label.courier{background:#e8c582f2;border-color:transparent;color:#24170a;animation:glow 1.6s infinite}.planet-label.courier span{color:#24170abf}@media (max-width: 480px){.world-label{display:none}}.planet-label .upd{font-style:normal;font-weight:600;color:#24170a;background:var(--gold);border-radius:6px;padding:2px 6px;margin-top:3px}.planet-label.alert{border-color:#e8c582cc;box-shadow:0 0 18px #e8c58259}.country-label{position:absolute;left:0;top:0;translate:-50% -50%;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:#fffcf0eb;pointer-events:none;text-shadow:0 1px 2px rgba(0,20,40,.9),0 0 6px rgba(0,20,40,.6);opacity:0;transition:opacity .35s}.country-label.big{font-size:11px;letter-spacing:.18em}.country-label.on{opacity:1}.planet-label{z-index:2}
