:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden;background:#c8c4bc}#app{position:relative}#viewport{display:block;width:100%;height:100%;cursor:grab}#viewport:active{cursor:grabbing}.hud{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;pointer-events:none}.hud h1{margin:0;font-size:15px;font-weight:600;letter-spacing:.02em;color:#1c1c1c;text-shadow:0 1px 0 rgb(255 255 255 / 45%)}.hud-actions{display:flex;gap:8px;pointer-events:auto}.hud button,.hud select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:8px;background:#161616c7;color:#f3f3f3;font:inherit;font-size:13px;padding:8px 12px;cursor:pointer}.hud button:hover,.hud select:hover{background:#161616e5}.hud select{padding-right:28px;background-image:linear-gradient(45deg,transparent 50%,#f3f3f3 50%),linear-gradient(135deg,#f3f3f3 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:min(420px,calc(100% - 32px));padding:14px 18px;border-radius:10px;background:#121212e0;color:#f4f4f4;font-size:14px;line-height:1.45;text-align:center}.status.error{background:#5a1616eb}.dock{position:absolute;left:0;right:0;bottom:0;z-index:10;display:flex;flex-direction:column;align-items:stretch;pointer-events:none}.dock-panes{display:flex;flex-direction:column;align-items:flex-start;pointer-events:none}.dock-pane{pointer-events:auto;margin:0 12px 8px;width:min(300px,calc(100% - 24px));max-height:min(42vh,440px);overflow:auto;padding:12px 14px;border-radius:12px 12px 4px 4px;background:#161616e0;color:#f3f3f3;font-size:12px;box-shadow:0 8px 24px #00000047}.dock-tabs{display:flex;align-items:stretch;gap:0;pointer-events:auto;background:#161616e5;border-top:1px solid rgb(255 255 255 / 10%);padding:0 4px;padding-bottom:env(safe-area-inset-bottom,0px)}.dock-tabs [role=tab]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#b8b4ac;font:inherit;font-size:13px;font-weight:600;letter-spacing:.02em;padding:12px 18px;min-height:44px;cursor:pointer;border-bottom:2px solid transparent}.dock-tabs [role=tab]:hover{color:#f3f3f3;background:#ffffff14}.dock-tabs [role=tab][aria-selected=true]{color:#f3f3f3;border-bottom-color:#e8c36a;background:#ffffff1a}.sun-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.sun-block,.sun-row label{display:flex;flex-direction:column;gap:4px;margin:8px 0 0}.dock-pane input[type=number],.dock-pane input[type=date],.dock-pane input[type=time]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:6px;background:#ffffff1f;color:inherit;font:inherit;padding:6px 8px}.dock-pane input[type=range]{width:100%;accent-color:#e8c36a}.sun-day-slider{gap:2px}.sun-day-slider input[type=range]{margin:2px 0 0;height:22px}.sun-day-ticks{display:flex;justify-content:space-between;color:#b8b4ac;font-size:10px;letter-spacing:.02em}.sun-readout{margin:10px 0 0;line-height:1.4;color:#d8d4cc}.sun-check{display:flex;align-items:center;gap:8px;margin:10px 0 0;cursor:pointer}.sun-check input{accent-color:#e8c36a}.sun-actions{display:flex;gap:6px;margin-top:10px}.sun-actions button{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:8px;background:#ffffff1f;color:inherit;font:inherit;padding:7px 8px;cursor:pointer}.sun-actions button:hover,.sun-actions button[aria-pressed=true]{background:#ffffff38}.layers-list{display:flex;flex-direction:column}.layers-list .sun-check{margin:8px 0 0;min-width:0}.layers-list .sun-check span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layers-list .sun-check:first-child{margin-top:0}.dock [hidden]{display:none!important}.compass{position:absolute;top:60px;right:16px;width:64px;height:64px;padding:4px;border-radius:50%;background:#161616c7;box-shadow:0 2px 10px #00000047;pointer-events:none;z-index:20}.compass svg{display:block;width:100%;height:100%;overflow:visible}.compass-needle{fill:#e05a3a;stroke:#00000073;stroke-width:.5}.compass-label{font:700 10px Inter,Segoe UI,system-ui,sans-serif;text-anchor:middle;dominant-baseline:middle;fill:#f3f3f3}.compass-label-n{fill:#ffb08a}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}#back{align-self:center;color:#fff;background:#222;border-radius:.5rem;padding:.55rem .7rem;text-underline-offset:.2em;font-size:.85rem}
