:root{--bg:#0b0f17;--panel:#0e131ddb;--panel-solid:#121826;--border:#a0b4dc24;--text:#e6ebf5;--muted:#8f9bb3;--accent:#4da3ff;--accent-soft:#4da3ff29;--danger:#ff6b7f;--sun:#ffc94d;--radius:10px;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--topbar-h:calc(48px + var(--safe-t));--timeline-h:calc(116px + var(--safe-b));--sidebar-w:340px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:13px/1.45 var(--font);overflow:hidden}button,input,select{font:inherit;color:inherit}button{border:1px solid var(--border);cursor:pointer;background:#ffffff0f;border-radius:7px;padding:5px 10px;transition:background .12s,border-color .12s}button:hover{background:#ffffff1f}button:disabled{opacity:.6;cursor:progress}button.active{background:var(--accent-soft);border-color:var(--accent);color:#cfe5ff}button.primary{background:var(--accent);border-color:var(--accent);color:#05101f;font-weight:600}button.primary:hover{background:#6fb5ff}button.icon{min-width:30px;padding:3px 9px}button.icon.small{min-width:0;padding:0 6px}button.link{color:#9fcbff;background:0 0;border:none;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}button.link:hover{color:#fff}ul.list{gap:5px;margin:4px 0 10px;padding:0;font-size:12.5px;list-style:none;display:grid}ul.list button.link{text-align:left}h4.small{color:var(--muted,#9aa7bd);margin:8px 0 2px;font-size:12px;font-weight:600}input,select{border:1px solid var(--border);background:#00000059;border-radius:7px;min-width:0;padding:4px 8px}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input.narrow{width:80px}a{color:#9fcbff}.app{position:fixed;inset:0}.scene{top:0;left:0;right:0;bottom:var(--timeline-h);position:absolute}.scene .cesium-viewer,.scene .cesium-widget,.scene canvas{width:100%;height:100%}.scene .cesium-credit-logoContainer{display:none!important}.scene .cesium-viewer .cesium-viewer-bottom{left:calc(8px + var(--safe-l))!important;bottom:62px!important;right:auto!important}.scene .cesium-widget-credits{opacity:.75;font-size:10px}.mode-viewfinder .scene canvas{cursor:grab}.mode-viewfinder .scene canvas:active{cursor:grabbing}.scene-error{background:var(--panel);border-radius:var(--radius);border:1px solid var(--danger);padding:16px 20px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.scene-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.scene-overlay>:is(.peaks,.waters,.map-waters,.map-rivers,.map-places,.map-viewpoints,.map-peaks){opacity:var(--reveal,1)}.scene-overlay .ruler-bg{fill:#05091073}.scene-overlay .tick{stroke:#ffffffb3;stroke-width:1px}.scene-overlay .tick-label{fill:#ffffffd9;text-anchor:middle;font-size:11px}.scene-overlay .tick-label.cardinal{fill:#ffd890;font-weight:700}.scene-overlay .ruler-center{fill:var(--accent)}.scene-overlay .peak .leader{stroke:#ffffff8c;stroke-width:1px}.scene-overlay .peak .summit{fill:#fff}.scene-overlay .peak-label{fill:#fff;paint-order:stroke;stroke:#000000bf;stroke-width:3px;font-size:11.5px}.scene-overlay .peak.selected .peak-label{fill:#ffd27a;font-weight:600}.scene-overlay .peak.selected .leader{stroke:#ffd27a}.scene-overlay .hit{fill:#0000;pointer-events:all;cursor:pointer}.scene-overlay .target circle,.scene-overlay .target line{fill:none;stroke:#ff5c7a;stroke-width:2px}.scene-overlay .target-label{fill:#ff8fa3;paint-order:stroke;stroke:#000000b3;stroke-width:3px;font-size:12px}.scene-overlay .frame-mask{fill:#00000052}.scene-overlay .frame-border{fill:none;stroke:#ffffffd9;stroke-width:1.2px}.scene-overlay .frame-label{fill:#ffffffd9;font-size:11px}.scene-overlay .crosshair{stroke:#fff9;stroke-width:1px}.map-controls{right:calc(12px + var(--safe-r));bottom:calc(var(--timeline-h) + 40px);z-index:6;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute}.map-controls>button,.map-control-group{background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px}.map-controls button{place-items:center;width:38px;height:38px;padding:0;font-size:18px;display:grid}.map-control-group{flex-direction:column;display:flex;overflow:hidden}.map-control-group button{background:0 0;border:none;border-radius:0}.map-control-group button+button{border-top:1px solid var(--border)}.map-control-group.tracking-control{position:relative;overflow:visible}.tracking-control select{background:var(--panel);border:1px solid var(--border);color:inherit;border-radius:8px;padding:4px 6px;font-size:12px;position:absolute;top:4px;right:44px}.map-controls .compass{border-radius:50%;width:52px;height:52px}.map-controls .compass svg{width:40px;height:40px;transition:transform .1s linear}.viewfinder-controls{bottom:calc(var(--timeline-h) + 70px)}.map-help{text-align:right;max-width:260px;color:var(--muted);background:var(--panel);border-radius:8px;padding:4px 8px;font-size:11px}.scene-overlay .map-peak-icon{fill:#fff;stroke:#0009;stroke-width:1px}.scene-overlay .map-peak-label{fill:#fff;paint-order:stroke;stroke:#000c;stroke-width:3px;font-size:11.5px}.scene-overlay .map-peak.selected .map-peak-label{fill:#ffd27a;font-weight:600}.scene-overlay .viewpoint-eye{fill:#fff;stroke:#000000b3;stroke-width:1px;pointer-events:none}.scene-overlay .viewpoint-pupil{fill:#2a6fdb;pointer-events:none}.scene-overlay .viewpoint-ray{stroke:#fff;stroke-width:1.5px;stroke-linecap:round;paint-order:stroke;pointer-events:none}.scene-overlay .viewpoint-label{fill:#dfeaff;paint-order:stroke;stroke:#000c;stroke-width:3px;pointer-events:none;font-size:11px}.scene-overlay .place-label{fill:#fff6e0;text-anchor:middle;paint-order:stroke;stroke:#000c;stroke-width:3px;pointer-events:none;font-size:12px}.scene-overlay .place-label.city{font-size:15px;font-weight:600}.scene-overlay .place-label.town{font-size:13.5px;font-weight:600}.scene-overlay .place-label.hamlet{fill:#e6dcc6;font-size:11px}.scene-overlay .place-dot{fill:#fff6e0;stroke:#000000b3;stroke-width:1px;pointer-events:none}.scene-overlay .river-label{fill:#8fc4f5;letter-spacing:.06em;text-anchor:middle;paint-order:stroke;stroke:#001432bf;stroke-width:3px;pointer-events:none;font-size:11px;font-style:italic}.scene-overlay .water-label{fill:#a9d4ff;text-anchor:middle;paint-order:stroke;stroke:#001432cc;stroke-width:3px;pointer-events:none;font-size:11.5px;font-style:italic}.scene-overlay .map-peak .hit{fill:#0000;pointer-events:all;cursor:pointer}.map-controls .look-around{background:var(--accent);color:#05101f;gap:6px;width:auto;padding:0 12px;font-size:13px;font-weight:600;display:flex}.quickbar button:disabled{opacity:.35;cursor:not-allowed}.quickbar button.dormant span:first-child{opacity:.55}.quickbar-hint{color:var(--muted);max-width:120px;padding:0 8px;font-size:10px;line-height:1.2}.map-controls .place-figure{cursor:grab;touch-action:none;background:#ffcf4a;border-color:#ffcf4a;border-radius:50%;width:52px;height:52px}.map-controls .place-figure:active{cursor:grabbing}.map-controls .place-figure svg,.place-ghost svg{fill:#1b1405;width:30px;height:30px}.place-ghost{z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex;position:fixed;transform:translate(-50%,-100%)}.place-ghost svg{background:#ffcf4a;border-radius:50%;width:42px;height:42px;padding:6px;box-shadow:0 4px 14px #00000080}.place-ghost span{background:#000000b3;border-radius:6px;padding:1px 6px;font-size:11px}.place-hint{background:var(--panel);border:1px solid var(--border);text-align:right;border-radius:8px;max-width:160px;padding:4px 8px;font-size:11px}.ground-controls{bottom:calc(var(--timeline-h) + 70px)}.ground-panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;max-width:280px;padding:10px 12px;display:flex}.ground-panel h4{margin:0;font-size:13px}.ground-panel .keys{color:var(--muted);grid-template-columns:auto 1fr;gap:3px 10px;font-size:11.5px;display:grid}.ground-panel kbd{font:11px var(--font);border:1px solid var(--border);color:var(--text);white-space:nowrap;background:#ffffff1a;border-radius:4px;padding:0 4px}.map-controls .ground-panel button{width:auto;height:auto;padding:5px 10px;font-size:12.5px}.ground-actions{flex-direction:column;align-items:stretch;gap:4px;display:flex}.map-controls .ground-actions button{width:auto;height:auto;padding:5px 8px;font-size:12px}.map-controls .ground-actions button.active{background:var(--accent-soft)}.help-modal{width:min(980px,100vw - 32px)}.help-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px 24px;margin-top:8px;display:grid}.help-grid h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:4px 0 6px;font-size:13px}.help-keys{flex-direction:column;gap:4px;display:flex}.help-row{grid-template-columns:150px 1fr;align-items:baseline;gap:10px;font-size:12.5px;display:grid}.help-key{flex-wrap:wrap;gap:3px;display:flex}kbd{font:11px var(--font);border:1px solid var(--border);color:var(--text);white-space:nowrap;background:#ffffff1a;border-bottom-width:2px;border-radius:4px;padding:0 5px}.topbar{height:var(--topbar-h);padding:var(--safe-t) max(12px, var(--safe-r)) 0 max(12px, var(--safe-l));border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:linear-gradient(#080b12eb,#080b12b3);align-items:center;gap:16px;display:flex;position:absolute;top:0;left:0;right:0}.brand{letter-spacing:.02em;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.status{color:var(--muted);white-space:nowrap;align-items:center;gap:14px;min-width:0;margin-left:auto;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(270deg,#0000 0,#000 14px);mask-image:linear-gradient(270deg,#0000 0,#000 14px)}.topbar-links{white-space:nowrap;flex:none;align-items:center;gap:14px;display:flex}.phase{color:var(--text);background:#ffffff14;border-radius:999px;padding:2px 8px}.phase-golden{background:#e6a03c4d}.phase-blue{background:#3c64c866}.phase-day{background:#5096dc4d}.segmented{border:1px solid var(--border);border-radius:8px;flex:none;display:inline-flex;overflow:hidden}.segmented button{background:0 0;border:none;border-radius:0;padding:5px 14px}.segmented button.active{background:var(--accent-soft);color:#cfe5ff}.sidebar{top:calc(var(--topbar-h) + 8px);left:8px;bottom:calc(var(--timeline-h) + 68px);width:var(--sidebar-w);z-index:5;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;overflow-y:auto}.section{border-bottom:1px solid var(--border)}.section-head{text-transform:uppercase;letter-spacing:.08em;width:100%;color:var(--muted);background:0 0;border:none;border-radius:0;align-items:center;gap:8px;padding:10px 14px;font-size:11px;font-weight:600;display:flex}.section-head .chevron{margin-left:auto;transition:transform .15s}.section:not(.open) .chevron{transform:rotate(-90deg)}.section-body{flex-direction:column;gap:8px;padding:0 14px 14px;display:flex}.row{justify-content:space-between;align-items:center;gap:10px;display:flex}.row-label{color:var(--muted)}.row-value{text-align:right}.row-value select{max-width:200px}.button-row{flex-wrap:wrap;gap:6px;display:flex}a.button{color:inherit;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;align-items:center;padding:6px 12px;text-decoration:none;display:inline-flex}a.button:hover{background:#ffffff24}.muted{color:var(--muted)}.small{font-size:11.5px}.error{color:var(--danger);margin:0}p{margin:0}.search{gap:6px;display:flex}.search input{flex:1}.results,.saved,.alignments,.credits{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.results button,.alignments button{text-align:left;flex-direction:column;gap:1px;width:100%;display:flex}.results .muted{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.alignments{max-height:320px;overflow-y:auto}.alignments .when strong{margin-left:4px}.saved li{justify-content:space-between;align-items:center;display:flex}.location-current{background:#ffffff0a;border-radius:8px;flex-direction:column;padding:8px 10px;display:flex}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{padding:2px 8px;font-size:12px}.toggles{grid-template-columns:1fr 1fr;gap:6px 10px;display:grid}.toggle{cursor:pointer;align-items:center;gap:6px;display:flex}.alignment-form{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:10px;display:flex}.day-table{border-collapse:collapse;width:100%}.day-table th{text-align:right;color:var(--muted);font-size:11px;font-weight:500}.day-table td{padding:2px 0}.day-table td+td{text-align:right}input[type=range]{width:170px;accent-color:var(--accent);padding:0}.range-labels{justify-content:space-between;align-items:center;margin-top:-4px;display:flex}.cards{top:calc(var(--topbar-h) + 8px);z-index:6;flex-direction:column;gap:8px;width:300px;display:flex;position:absolute;right:8px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:6px;padding:14px;display:flex;position:relative}.card h3{margin:0 24px 4px 0;font-size:15px}.card .close{position:absolute;top:8px;right:8px}.tool-hint,.cloud-legend{top:calc(var(--topbar-h) + 8px);z-index:6;flex-direction:column;align-items:center;gap:4px;max-width:calc(100% - 32px);padding:6px 10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.cloud-legend .chip.active.cloud-low{border-color:#ff965a}.cloud-legend .chip.active.cloud-mid{border-color:#78e18c}.cloud-legend .chip.active.cloud-high{border-color:#82b4ff}.loading-hint{top:calc(var(--topbar-h) + 12px);background:var(--panel);border:1px solid var(--accent);z-index:7;border-color:var(--border);top:auto;left:50%;bottom:calc(var(--timeline-h) + 16px);border-radius:999px;gap:12px;padding:6px 16px;display:flex;position:absolute;transform:translate(-50%)}.quickbar{left:50%;bottom:calc(var(--timeline-h) + 8px);z-index:9;background:var(--panel);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:2px;max-width:calc(100vw - 16px);padding:4px;display:flex;position:absolute;overflow-x:auto;transform:translate(-50%)}.quickbar button{min-width:54px;color:var(--muted);background:0 0;border:none;flex-direction:column;align-items:center;gap:1px;padding:4px 8px;display:flex}.quickbar button span:first-child{font-size:16px;line-height:1.1}.quickbar button.active{color:#cfe5ff;background:var(--accent-soft)}.quickbar-label{white-space:nowrap;font-size:10px}.quickbar-sep{background:var(--border);align-self:stretch;width:1px;margin:2px 4px}.mode-map .map-controls{bottom:calc(var(--timeline-h) + 70px)}.timeline{height:var(--timeline-h);z-index:10;border-top:1px solid var(--border);padding:8px max(12px, var(--safe-r)) calc(8px + var(--safe-b)) max(12px, var(--safe-l));background:#080b12eb;flex-direction:column;gap:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.timeline-controls{flex-wrap:nowrap;align-items:center;gap:6px;display:flex}.timeline-date{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:8px;overflow:hidden}.timeline-controls>input,.timeline-controls>select,.timeline-controls>button{flex:none}.timeline-track{cursor:ew-resize;touch-action:none;border-radius:6px;flex:1;min-height:28px;position:relative;overflow:hidden}.timeline-track canvas{width:100%;height:100%;display:block}.timeline-cursor{pointer-events:none;background:#fff;width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px)}.timeline-cursor span{background:#0009;border-radius:4px;padding:0 4px;font-size:11px;font-weight:600;position:absolute;top:2px;left:5px}.timeline-legend{color:var(--muted);gap:14px;font-size:11px;display:flex}.swatch{vertical-align:middle;width:14px;height:3px;margin-right:5px;display:inline-block}.swatch.sun{background:#fc5}.swatch.moon{background:#d7e1f5}.swatch.golden{background:#c98a3c;height:8px}.swatch.blue{background:#2c4f9a;height:8px}.timeline-legend .dot{background:#fc5;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.modal-backdrop{z-index:50;background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--panel-solid);width:min(640px,100vw - 32px);max-height:80vh;overflow-y:auto}.modal h2{margin:0 0 4px;font-size:18px}.modal h3{margin-top:10px}.credits li{border-bottom:1px solid var(--border);padding:3px 0}.scene canvas{touch-action:none}.narrow-only,.compact-only,.cramped-only{display:none}.sidebar-footer{border-top:1px solid var(--border);gap:16px;padding:10px 14px;display:none}@media (width<=760px){.narrow-only{display:flex}.wide-only,.brand>span{display:none}.topbar{gap:8px;padding:0 8px}.segmented button{padding:5px 9px;font-size:13px}.sidebar{z-index:9}:root{--sidebar-w:calc(100vw - 16px);--timeline-h:128px}.quickbar{flex-wrap:nowrap;max-width:calc(100vw - 16px);overflow-x:auto}.quickbar-label,.map-help,.ground-panel .keys,.place-hint{display:none}.ground-panel{max-width:46vw}.status>span{display:none}.status{gap:8px;font-size:12px}.timeline-controls{flex-wrap:wrap}.timeline-legend{display:none}.cards{width:calc(100vw - 16px);top:auto;bottom:calc(var(--timeline-h) + 8px)}}.temperature{position:relative}.temperature-popover{right:12px;top:calc(var(--topbar-h) + 6px);z-index:30;white-space:normal;width:360px;color:var(--text);padding:10px;position:fixed}.temperature-chart{cursor:crosshair;background:#ffffff08;border-radius:6px;width:100%;height:auto;margin:6px 0;display:block}.temperature-chart .chart-grid{stroke:#ffffff14}.temperature-chart .chart-tick{fill:var(--muted,#9aa7bd);font-size:9px}.temperature-chart .chart-temp{fill:none;stroke:#ffb347;stroke-width:2px}.temperature-chart .chart-rh{fill:none;stroke:#6fb6ff;stroke-width:1.5px}.temperature-chart .forecast{stroke-dasharray:4 3}.temperature-chart .chart-cursor{stroke:#ffd27a;stroke-width:1px}.legend-temp{color:#ffb347}.legend-rh{color:#6fb6ff}@media (width<=760px){.status>span.temperature{display:inline}.temperature-popover{width:auto;left:8px;right:8px;top:calc(var(--topbar-h) + 4px);position:fixed}}.cloud-chart{background:#1e3c7859;border-radius:6px;width:100%;height:auto;margin:4px 0 6px}.cloud-chart .chart-label{fill:var(--muted,#9aa7bd);font-size:8px}.cloud-chart .chart-tick{fill:var(--muted,#9aa7bd);font-size:7px}.cloud-chart .chart-cursor{stroke:#ffd27a;stroke-width:1px}.event-month h4{text-transform:capitalize;margin:6px 0 2px}ul.list.events{gap:6px;margin:0}.event{background:#ffffff08;border-left:2px solid #0000;border-radius:8px;flex-direction:column;gap:1px;padding:6px 8px;display:flex}.event.visible{border-left-color:var(--accent)}.event-head{align-items:center;gap:6px;display:flex}.event-actions{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.badge{background:var(--accent-soft);color:#cfe5ff;border-radius:999px;margin-left:auto;padding:0 6px;font-size:10px}.scene-overlay .eyepiece-mask{fill:#000000f0}.scene-overlay .eyepiece-label{text-anchor:middle}details.equipment summary{cursor:pointer;color:var(--muted);margin-bottom:6px;font-size:12px}details.equipment[open]{flex-direction:column;gap:6px;display:flex}.equipment-form{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.equipment-form label{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.equipment-form input{width:140px}.export-menu{display:inline-block;position:relative}.export-popover{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:4px;min-width:230px;padding:8px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.export-popover button{text-align:left}ul.plans li.plan{align-items:flex-start;gap:6px;display:flex}.plan-open{text-align:left;flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.plan-open .muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.plan-actions{align-items:center;gap:8px;padding-top:2px;display:flex}.card.notice{border-color:#ff8caa80}.card.notice p{line-height:1.45}@media (width<=1100px){.roomy-only,.timeline-date-text{display:none}.sidebar-footer.cramped-only{display:flex}.brand>span{display:none}.topbar{gap:10px}}@media (width<=760px),(height<=520px){.compact-only{display:inline-flex}.wide-only,.day-step,.timeline-date-text{display:none}.style-toggle{font-size:15px}}@media (width<=760px){:root{--timeline-h:calc(136px + var(--safe-b))}.zone-name{display:none}.sidebar{z-index:11}.timeline-controls{row-gap:6px}.timeline-date{margin-left:0;font-size:12px}}@media (height<=520px) and (width>=561px){:root{--topbar-h:calc(40px + var(--safe-t));--timeline-h:calc(48px + var(--safe-b));--sidebar-w:min(380px, 62vw)}.brand>span{display:none}.topbar{gap:8px}.segmented button{padding:4px 9px;font-size:13px}.status{gap:10px;font-size:12px}.status>span:not(.temperature):not(.phase),.roomy-only{display:none}.sidebar-footer.cramped-only{display:flex}.timeline{padding-top:6px;padding-bottom:calc(6px + var(--safe-b));flex-direction:row;align-items:center;gap:8px}.timeline-controls{flex:none;gap:4px}.timeline-controls select,.timeline-controls input[type=date]{max-width:118px}.timeline-track{flex:1;height:34px;min-height:0}.timeline-legend,.timeline-date{display:none}.quickbar{bottom:calc(var(--timeline-h) + 6px);max-width:calc(100vw - 24px - var(--safe-l) - var(--safe-r));padding:2px}.quickbar-label{display:none}.quickbar button{min-width:38px;padding:6px}.map-controls,.mode-map .map-controls,.viewfinder-controls,.ground-controls{top:calc(var(--topbar-h) + 8px);bottom:calc(var(--timeline-h) + 52px);flex-wrap:wrap-reverse;place-content:flex-start flex-end;gap:6px}.map-help,.ground-panel .keys,.place-hint{display:none}.sidebar{top:calc(var(--topbar-h) + 6px);bottom:calc(var(--timeline-h) + 6px);z-index:11}.cards{bottom:calc(var(--timeline-h) + 8px);max-height:calc(100vh - var(--topbar-h) - var(--timeline-h) - 24px);top:auto;overflow-y:auto}}.sheet-handle{display:none}@media (width<=760px) and (height>=521px){.sidebar{z-index:12;width:auto;height:58vh;padding-bottom:var(--safe-b);border-bottom:none;border-radius:16px 16px 0 0;transition:height .2s;inset:auto 0 0;box-shadow:0 -8px 30px #00000073}.sidebar.sheet-full{height:calc(100% - var(--topbar-h) - 6px)}.sheet-handle{z-index:2;background:var(--panel-solid);cursor:grab;touch-action:none;place-items:center;height:26px;margin-bottom:2px;display:grid;position:sticky;top:0}.sheet-handle span{background:#ffffff59;border-radius:3px;width:44px;height:5px}}.touch-walk{left:calc(16px + var(--safe-l));bottom:calc(var(--timeline-h) + 84px);z-index:8;align-items:flex-end;gap:10px;display:flex;position:absolute}.touch-stick{touch-action:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0f1973;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:120px;height:120px;display:grid}.touch-knob{pointer-events:none;background:#e6f0ffbf;border-radius:50%;width:50px;height:50px;box-shadow:0 2px 8px #0006}.touch-walk-buttons{flex-direction:column;gap:6px;display:flex}.touch-walk-buttons button{background:var(--panel);touch-action:none;min-width:64px;min-height:40px}@media (height<=520px){.touch-walk{bottom:calc(var(--timeline-h) + 50px)}.touch-stick{width:100px;height:100px}.touch-knob{width:42px;height:42px}}@media (pointer:coarse){button.icon{min-width:40px;min-height:40px}.timeline-controls{row-gap:6px}.map-controls button{width:44px;height:44px}.map-controls .compass{width:54px;height:54px}.quickbar button{min-height:44px}.timeline-controls button,.timeline-controls select,.timeline-controls input{min-height:38px}.chip,.segmented button{min-height:34px}.map-controls .ground-actions button{min-height:40px;padding:6px 12px}.toggle input[type=checkbox]{width:20px;height:20px}.sidebar .section-head{min-height:44px}}@media (pointer:coarse) and (width<=760px){:root{--timeline-h:calc(148px + var(--safe-b))}}.ground-panel .keys.touch-keys{display:grid!important}.map-controls .gps-button{color:#cfe5ff}.map-controls .gps-button.active{background:var(--accent);border-color:var(--accent);color:#05101f}.map-controls .gps-button.failed{border-color:var(--danger)}.map-controls .ar-button{font-size:20px}.map-controls .ar-button.active{background:var(--accent);border-color:var(--accent)}.ar-panel{left:50%;top:calc(var(--topbar-h) + 40px);z-index:7;flex-direction:column;gap:6px;max-width:min(320px,100vw - 90px);padding:8px 10px;display:flex;position:absolute;transform:translate(-50%)}.ar-actions{gap:6px;display:flex}.ar-actions button{flex:1;min-height:40px}.crash-notice{z-index:40;left:50%;top:calc(var(--topbar-h) + 10px);border-color:var(--sun);width:min(440px,100vw - 24px);padding:12px 14px;position:absolute;transform:translate(-50%)}.crash-notice p{margin:6px 0 8px}:root{--minimap-h:190px}.minimap-box{left:calc(8px + var(--safe-l));bottom:calc(var(--timeline-h) + 86px);z-index:6;width:var(--sidebar-w);height:var(--minimap-h);position:absolute}.app.minimap-shown .sidebar{bottom:calc(var(--timeline-h) + 94px + var(--minimap-h))}.minimap{border-radius:var(--radius);background:#1a2330;border:1px solid #ffffff4d;width:100%;height:100%;padding:0;position:absolute;inset:0;overflow:hidden;box-shadow:0 2px 12px #00000080}.minimap:hover{background:#1a2330;border-color:#ffffff8c}.minimap-tiles{position:absolute;inset:0}.minimap-tiles img{pointer-events:none;filter:brightness(.85);max-width:none;position:absolute}.minimap svg{width:100%;height:100%;position:absolute;inset:0}.minimap-cone{fill:#ffd27847;stroke:#ffd278d9;stroke-width:1.2px}.minimap-ray{stroke-width:1.6px;stroke-dasharray:4 3}.minimap-ray.sun{stroke:#ffc94d}.minimap-ray.moon{stroke:#dfe7f5}.minimap-ray.below{opacity:.35}.minimap-me{fill:#4da3ff;stroke:#fff;stroke-width:1.5px}.minimap-target{fill:none;stroke:#ff6b9a;stroke-width:2px}.minimap-north{fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#000000b3;stroke-width:3px;font-size:11px;font-weight:700}.minimap-scale{fill:#fff;text-anchor:end;paint-order:stroke;stroke:#000000b3;stroke-width:3px;font-size:10.5px}@media (width<=760px),(height<=520px){:root{--minimap-h:104px}.minimap-box{top:calc(var(--topbar-h) + 38px);width:150px;bottom:auto}.app.minimap-shown .sidebar{bottom:calc(var(--timeline-h) + 6px)}.minimap-place{font-size:10px}}.minimap-lens{fill:#78d2ff4d;stroke:#78d2ff;stroke-width:1.4px}.minimap-expand{background:#080b12b3;border-radius:7px;place-items:center;width:30px;height:30px;padding:0;font-size:15px;display:grid;position:absolute;top:6px;right:6px}.minimap-place{max-width:calc(100% - 70px);color:var(--text);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:#080b12bf;border-radius:999px;padding:2px 8px;font-size:11.5px;position:absolute;bottom:6px;left:6px;overflow:hidden}.mappicker-backdrop{z-index:45;padding:max(12px, var(--safe-t)) max(12px, var(--safe-r)) max(12px, var(--safe-b)) max(12px, var(--safe-l));background:#00000080;place-items:center;display:grid;position:fixed;inset:0}.mappicker{flex-direction:column;width:min(1100px,100%);height:min(760px,100%);padding:0;display:flex;overflow:hidden}.mappicker-map{touch-action:none;cursor:grab;background:#1a2330;flex:1;position:relative;overflow:hidden}.mappicker-map:active{cursor:grabbing}.mappicker-map img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;position:absolute}.mappicker-overlay{pointer-events:none;position:absolute;top:0;left:0}.mappicker-pin{fill:#ff6b9a;stroke:#fff;stroke-width:1.5px}.mappicker-label{fill:#fff6e0;text-anchor:middle;paint-order:stroke;stroke:#000000d9;stroke-width:3px;font-size:12px}.mappicker-label.city{font-size:15px;font-weight:700}.mappicker-label.town{font-size:13.5px;font-weight:600}.mappicker-label.hamlet{fill:#e8e2d2;font-size:11px}.mappicker-zoom{flex-direction:column;gap:6px;display:flex;position:absolute;top:10px;right:10px}.mappicker-zoom button{background:var(--panel);width:40px;height:40px;padding:0;font-size:18px}.mappicker-bar{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}@media (width>=761px) and (height>=521px){.app.minimap-shown .touch-walk{left:calc(var(--sidebar-w) + 24px + var(--safe-l))}}.mappicker-marker path,.mappicker-marker rect{stroke:#000000bf;stroke-width:1px}.mappicker-marker.peak path{fill:#fff6e0}.mappicker-marker.viewpoint .eye{fill:#fff}.mappicker-marker.viewpoint .pupil{fill:#2a6fdb}.mappicker-marker.viewpoint .ray{stroke:#fff;stroke-width:1.5px}.mappicker-marker.spot rect{fill:#ff9f43}.mappicker-marker.spot .lens{fill:#3a2410}.mappicker-marker-label{fill:#fff;paint-order:stroke;stroke:#000000d9;stroke-width:3px;font-size:11.5px}.mappicker-marker.spot .mappicker-marker-label{fill:#ffd2a0}.mappicker-layers{position:absolute;top:10px;left:10px}.mappicker-layers .chip{background:#080b12bf}.mappicker-hint{background:#080b12bf;border-radius:999px;padding:4px 10px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.guide-modal{width:min(860px,100vw - 24px);max-height:calc(100vh - 32px)}.guide-views{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:10px 0;display:grid}.guide-view{border:1px solid var(--border);border-radius:var(--radius);background:#ffffff08;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.guide-view h3{margin:0;font-size:15px}.guide-view p{margin:0}.guide-view ul{color:var(--muted);flex:1;gap:3px;margin:0;padding-left:18px;font-size:12.5px;display:grid}.guide-view button{align-self:flex-start}.guide-subtitle{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:12px 0 6px;font-size:13px}.guide-functions{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:6px 18px;margin-bottom:8px;font-size:12.5px;display:grid}.field-row{align-items:center;gap:8px;margin:6px 0;display:flex}.field-row input{width:72px}.country-code{border:1px solid var(--border);color:var(--muted);vertical-align:1px;border-radius:4px;margin-left:6px;padding:0 5px;font-size:10.5px;font-weight:600}.coordinates-row{align-items:center;gap:6px;display:inline-flex}.coordinates-row .icon.small{padding:0 4px;line-height:1.2}.search{position:relative}.results.suggestions{z-index:20;background:var(--panel-solid,var(--panel));border:1px solid var(--border);border-radius:8px;margin-top:2px;position:absolute;top:100%;left:0;right:0;box-shadow:0 6px 20px #00000059}.results li.active button{background:#7faaff2e}.settings-search{padding:8px 12px 4px;position:relative}.settings-search input{width:100%}.settings-search.closed{justify-content:flex-end;padding:4px 12px 0;display:flex}.results.settings-results{z-index:30;background:var(--panel-solid);border:1px solid var(--border);border-radius:8px;max-height:60vh;position:absolute;top:100%;left:12px;right:12px;overflow-y:auto;box-shadow:0 6px 20px #0006}.settings-results .toggle{padding:6px 10px}.setting-flash{border-radius:6px;animation:1.8s ease-out setting-flash}@keyframes setting-flash{0%,30%{background:#ffd27a59}to{background:0 0}}@media (pointer:coarse){.viewfinder-controls .touch-hidden{display:none}}.button-like{border:1px solid var(--border);background:var(--panel);cursor:pointer;border-radius:8px;align-items:center;padding:6px 12px;font-size:13px;display:inline-flex}.button-like:hover{border-color:var(--accent)}.load-line{top:var(--topbar-h);z-index:5;pointer-events:none;opacity:0;height:2px;transition:opacity .6s;position:absolute;left:0;right:0}.load-line.active{opacity:.55}.load-line>div{background:var(--accent);height:100%;transition:width .4s ease-out}.precache-note{opacity:.75;font-size:11px}.cloud-legend.contrail-legend{top:auto;bottom:calc(var(--timeline-h) + 72px)}.contrail-key{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.contrail-key i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}
