.planner{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--paper);overflow:hidden}.topbar{height:64px;box-sizing:border-box;padding:0 20px;gap:14px;min-width:0;background:rgba(245,240,230,.92);border-bottom:1px solid var(--line)}.brand,.topbar{flex:none;display:flex;align-items:center}.brand{gap:8px;text-decoration:none;min-height:44px}.brand-dot{width:26px;height:26px;border-radius:999px;background:var(--ember);box-shadow:inset 0 -9px 0 var(--forest)}.brand-word{font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.5px}.brand-word .out{color:var(--forest)}.brand-word .est{color:var(--ember)}.topbar-sep{width:1px;height:24px;background:var(--line)}.trip-name{min-height:44px;padding:0 12px;border-radius:10px;border:0;background:transparent;color:var(--ink);font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.3px;text-transform:uppercase;display:flex;align-items:center;gap:8px;max-width:40vw;min-width:110px;flex:0 1 auto}.trip-name.is-new{color:#6b655b}.trip-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-name-input{height:44px;box-sizing:border-box;padding:0 12px;border-radius:10px;border:1.5px solid var(--forest);background:#fff;color:var(--ink);font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.3px;text-transform:uppercase;width:min(360px,40vw)}.topbar-space{flex:1 1}.topbar-nav{display:flex;align-items:center;gap:4px}.topbar-nav a{padding:0 10px;color:var(--ink);font-weight:700}.pill-primary,.topbar-nav a{min-height:44px;display:flex;align-items:center;font-size:14px;text-decoration:none}.pill-primary{flex:none;padding:0 16px;border-radius:999px;background:var(--ember);color:var(--ember-ink)!important;font-weight:800}.stage{flex:1 1;min-height:0;position:relative;overflow:hidden;background:#eef0e8;--timeline-h:190px}.map-missing,.map-root{position:absolute;inset:0}.map-missing{display:grid;place-items:center;font-size:16px;color:var(--muted)}.stage .mapboxgl-ctrl-bottom-left,.stage .mapboxgl-ctrl-bottom-right{margin-bottom:calc(var(--timeline-h) + 16px)}.stage.has-draw-panel .mapboxgl-ctrl-bottom-right,.stage.has-start-panel .mapboxgl-ctrl-bottom-right{margin-right:376px}.rail{position:absolute;left:16px;top:16px;z-index:3;display:flex;flex-direction:column;gap:4px;padding:6px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 20px 40px -24px rgba(31,28,23,.4)}.rail button{width:44px;height:44px;border-radius:12px;border:0;background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:center}.rail button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.rail button:disabled{color:#b8b0a1}.rail button:not(:disabled):not([aria-pressed=true]):hover{background:var(--sand)}.rail hr{height:1px;margin:2px 6px;border:0;background:var(--line);width:auto}.layers-menu{position:absolute;left:76px;top:16px;z-index:4;min-width:200px;padding:12px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.4);display:flex;flex-direction:column;gap:8px}.layers-menu .label{margin:0}.layers-menu .options{display:grid;grid-template-columns:1fr 1fr;gap:6px}.layers-menu button{min-height:44px;padding:0 12px;border-radius:10px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font-size:13px;font-weight:800}.layers-menu button[aria-pressed=true]{background:var(--ember);border-color:var(--ember);color:var(--ember-ink)}.label{font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.start-panel{position:absolute;right:16px;top:16px;z-index:3;width:360px;max-height:calc(100% - 32px - var(--timeline-h) - 16px);overflow:auto;box-sizing:border-box;padding:22px 20px 18px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.4);display:flex;flex-direction:column;gap:16px}.start-panel h1{margin:0;font-family:var(--font-display);font-size:40px;line-height:38px;font-weight:800;letter-spacing:-.6px;text-transform:uppercase;color:var(--forest)}.start-panel p{margin:6px 0 0;font-size:14px;line-height:21px;color:var(--muted)}.search{display:flex;align-items:center;gap:10px;height:50px;box-sizing:border-box;padding:0 14px;border-radius:12px;background:#fff;border:1.5px solid var(--forest)}.search input{flex:1 1;min-width:0;height:44px;border:0;background:transparent;color:var(--ink);font-family:var(--font-body);font-size:15px;font-weight:700;outline:none}.search:focus-within{outline:2px solid var(--ink);outline-offset:2px}.search-note{margin:-8px 0 0;font-size:13px;line-height:18px;color:var(--muted)}.start-options{display:flex;flex-direction:column;border-radius:12px;border:1.5px solid var(--line);overflow:hidden}.start-option{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 12px;border:0;background:#fff;color:var(--ink);text-align:left;font-size:14px;font-weight:800}.start-option:hover{background:var(--soft)}.start-option .chip{flex:none;width:36px;height:36px;border-radius:10px;background:#e6eff7;color:#2f7ec1;display:flex;align-items:center;justify-content:center}.timeline{position:absolute;left:16px;right:16px;bottom:16px;z-index:3;box-sizing:border-box;padding:14px 18px 12px;border-radius:18px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.45);display:flex;flex-direction:column;gap:10px}.stage.has-start-panel .timeline{right:392px}.timeline.is-collapsed{padding-top:10px;padding-bottom:10px}.timeline-head{display:flex;align-items:center;gap:14px;min-height:32px}.timeline-title{margin:0;font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:-.2px;text-transform:uppercase;color:var(--forest)}.timeline-stats{font-size:13px;font-weight:700;color:var(--muted)}.timeline-stats[aria-busy=true]{opacity:.55}.timeline-toggle{margin-left:auto;width:44px;height:44px;border-radius:999px;border:0;background:var(--sand);color:var(--ink);display:flex;align-items:center;justify-content:center}.timeline-body{position:relative;flex:1 1;min-height:0}.timeline-empty{flex:1 1;border-radius:12px;background:repeating-linear-gradient(90deg,var(--soft) 0,var(--soft) calc(16.66% - 1px),#efe9dd calc(16.66% - 1px),#efe9dd 16.66%);justify-content:center;padding:8px}.hint-pill,.timeline-empty{display:flex;align-items:center}.hint-pill{gap:12px;min-height:48px;padding:0 18px 0 8px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:14px;font-weight:700}.hint-pill .dot{flex:none;width:32px;height:32px;border-radius:999px;background:var(--ember);color:var(--ember-ink);display:flex;align-items:center;justify-content:center}.hint-pill.no-dot{padding-left:18px}.profile{position:absolute;inset:0;border-radius:8px;touch-action:none}.profile:focus-visible{outline-offset:-2px}.profile svg{position:absolute;inset:0;width:100%;height:100%;display:block}.profile-readout{position:absolute;top:4px;z-index:1;transform:translateX(-50%);padding:3px 8px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:12px;font-weight:800;white-space:nowrap;pointer-events:none}.profile-note{inset:0;justify-content:center;text-align:center;padding:0 24px;border-radius:12px;background:var(--soft);border:1.5px dashed var(--line);color:var(--muted)}.profile-note,.toast{position:absolute;display:flex;align-items:center;font-size:14px;font-weight:700}.toast{left:50%;transform:translateX(-50%);bottom:calc(var(--timeline-h) + 32px);z-index:5;max-width:min(640px,calc(100% - 32px));gap:12px;padding:8px 8px 8px 18px;border-radius:16px;background:var(--ink);color:var(--paper);box-shadow:0 20px 40px -20px rgba(31,28,23,.6);line-height:20px}.toast button{flex:none;min-height:44px;padding:0 18px;border-radius:999px;border:0;background:var(--ember);color:var(--ember-ink);font-size:14px;font-weight:800}.pin{width:44px;height:44px;padding:0;border:0;background:transparent;display:flex;align-items:center;justify-content:center;cursor:grab}.pin:active{cursor:grabbing}.pin .disc{width:30px;height:30px;box-sizing:border-box;border-radius:999px;border:3px solid #fff;background:var(--forest);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;box-shadow:0 6px 14px -6px rgba(31,28,23,.55)}.pin.is-finish .disc{background:var(--ink)}.pin:focus-visible{outline:none}.pin:focus-visible .disc{outline:3px solid var(--ink);outline-offset:3px}.pin svg{display:block}@media (max-width:900px){.topbar{padding:0 16px;gap:14px}.topbar-nav{display:none}.start-panel{width:calc(100% - 32px)}.stage.has-start-panel .timeline{right:16px}.stage.has-start-panel .mapboxgl-ctrl-bottom-right{margin-right:0}}.trip-chip-wrap{position:relative}.trip-chip{min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:13px;font-weight:800;display:flex;align-items:center;gap:8px;white-space:nowrap}.trip-chip[aria-expanded=true]{border-color:var(--ink)}.trip-popover{position:absolute;left:0;top:calc(100% + 8px);z-index:30;width:360px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:16px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.45);gap:14px}.trip-field,.trip-popover{display:flex;flex-direction:column}.trip-field{gap:6px}.trip-popover input[type=date],.trip-popover input[type=time]{min-height:44px;box-sizing:border-box;padding:0 12px;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:15px;font-weight:700}.trip-days{list-style:none;margin:0;display:flex;flex-direction:column;gap:8px;border-top:1.5px solid var(--line);padding:12px 0 0}.trip-days li{display:flex;align-items:center;gap:10px}.trip-day-text{flex:1 1;min-width:0;display:flex;flex-direction:column}.trip-day-name{font-size:14px;font-weight:800}.trip-day-sun{font-size:12px;font-weight:700;color:var(--muted)}.trip-days input[type=time]{width:112px;flex:none}.trip-reset,.trip-reset-gap{flex:none;width:56px}.trip-reset{min-height:44px;border:0;border-radius:10px;background:var(--sand);color:var(--ink);font-size:12px;font-weight:800}.trip-note{margin:0;font-size:12px;line-height:17px;color:var(--muted)}.trip-done{min-height:44px;border-radius:999px;border:0;background:var(--ember);color:var(--ember-ink);font-size:14px;font-weight:800}.timeline-hint{margin-left:auto;font-size:12px;font-weight:700;color:var(--muted)}.daylight-toggle{min-height:44px;padding:0 2px;border:0;background:transparent;display:flex;align-items:center}.daylight-toggle span{height:32px;padding:0 12px;border-radius:999px;background:var(--sand);color:var(--ink);font-size:12px;font-weight:800;display:flex;align-items:center}.daylight-toggle[aria-pressed=true] span{background:var(--ink);color:var(--paper)}.daylight-toggle:focus-visible{outline-offset:-2px}.timeline-hint+.daylight-toggle+.timeline-toggle{margin-left:0}.timeline-grid{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:8px}.clock-axis,.day-heads{display:grid;flex:none}.day-head{min-width:0;padding:0 10px;display:flex;align-items:baseline;gap:8px;border-left:1.5px solid var(--line);white-space:nowrap;overflow:hidden}.day-head:first-child{padding-left:0;border-left:0}.day-dot{flex:none;width:8px;height:8px;border-radius:999px;align-self:center}.day-name{flex:none;font-size:14px;font-weight:800}.day-stats{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:700;color:var(--muted)}.day-stats[aria-busy=true]{opacity:.55}.chart{position:relative;flex:1 1;min-height:0}.profile-note-inline{position:absolute;left:50%;top:12px;transform:translateX(-50%);max-width:80%;padding:5px 12px;border-radius:999px;background:var(--soft);border:1.5px dashed var(--line);font-size:12px;font-weight:700;color:var(--muted);text-align:center;pointer-events:none}.camp-handle{position:absolute;top:-11px;width:44px;height:44px;transform:translateX(-50%);cursor:ew-resize;touch-action:none;z-index:3;outline:none}.camp-handle,.camp-handle .disc{display:flex;align-items:center;justify-content:center}.camp-handle .disc{width:34px;height:34px;box-sizing:border-box;border-radius:999px;border:3px solid #fff;background:var(--camp);color:#fff;box-shadow:0 6px 14px -6px rgba(31,28,23,.5)}.camp-handle:focus-visible .disc{outline:3px solid var(--ink);outline-offset:3px}.camp-handle:active .disc{box-shadow:0 10px 20px -6px rgba(31,28,23,.6)}.sunset-chip{position:absolute;top:8px;z-index:2;display:flex;align-items:center;gap:8px;padding:6px 8px 6px 10px;border-radius:10px;background:var(--ink);color:var(--paper);white-space:nowrap}.sunset-chip span{font-size:12px;font-weight:800}.sunset-chip button{height:44px;margin:-8px -4px -8px 0;padding:0 2px;border:0;background:transparent;display:flex;align-items:center}.sunset-chip button span{height:28px;padding:0 10px;border-radius:999px;background:var(--ember);color:var(--ember-ink);font-size:12px;font-weight:800;display:flex;align-items:center}.axis-day{position:relative;height:16px;font-size:11px;font-weight:700;color:var(--muted)}.axis-day .tick{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}.axis-day .tick-start{transform:none;margin-left:6px}.axis-day .tick-end{transform:translateX(-100%);margin-left:-6px;color:var(--ink)}.clock-axis>.axis-day:first-child .tick-start,.clock-axis>.axis-day:last-child .tick-end{margin-left:0}.place-search{display:flex;flex-direction:column;gap:8px}.search{position:relative}.search-spinner{flex:none;width:16px;height:16px;box-sizing:border-box;border-radius:999px;border:2.5px solid var(--line);border-top-color:var(--forest);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.search-results{border-radius:12px;border:1.5px solid var(--line);background:#fff;overflow:hidden}.search-results ul{list-style:none;margin:0;padding:0}.search-results li{min-height:52px;box-sizing:border-box;padding:8px 14px;display:flex;flex-direction:column;justify-content:center;gap:1px;cursor:pointer;border-bottom:1px solid var(--line)}.search-results li:last-child{border-bottom:0}.search-results li.is-active,.search-results li:hover{background:var(--sand)}.search-results .opt-title{font-size:14px;font-weight:800;color:var(--ink)}.search-results .opt-sub{font-size:12px;font-weight:700;color:var(--muted)}.search-empty{padding:12px 14px;font-size:13px!important;line-height:18px!important}.search-attribution,.search-empty{margin:0!important;color:var(--muted)}.search-attribution{padding:8px 14px;border-top:1px solid var(--line);background:var(--soft);font-size:11px!important;line-height:16px!important;font-weight:700}.search-attribution a{color:var(--muted)}.rail .rail-camp{color:var(--camp)}.rail .rail-camp[aria-pressed=true]{background:var(--camp);color:#fff}.tool-hint{position:absolute;left:50%;top:16px;transform:translateX(-50%);z-index:4;box-shadow:0 20px 40px -20px rgba(31,28,23,.6)}.map-root[data-camp-tool=true],.map-root[data-camp-tool=true] .mapboxgl-canvas-container{cursor:crosshair}.map-menu{position:absolute;z-index:6;min-width:190px;padding:6px;border-radius:14px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 20px 40px -20px rgba(31,28,23,.5);display:flex;flex-direction:column}.map-menu button{min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-size:14px;font-weight:800;display:flex;align-items:center;gap:10px;text-align:left}.map-menu button:focus-visible,.map-menu button:hover{background:var(--sand)}.pin.camp .disc{width:32px;height:32px;background:var(--camp)}.toast-plain{padding-right:18px}.inspector>*{flex:none}.inspector{position:absolute;right:16px;top:16px;z-index:4;width:340px;max-height:calc(100% - 32px - var(--timeline-h) - 16px);overflow:auto;box-sizing:border-box;padding:16px 18px 18px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.4);display:flex;flex-direction:column;gap:12px;outline:none}.inspector[hidden]{display:none}.inspector.is-pinned{border-color:var(--ink)}.inspector-top{display:flex;align-items:center;gap:8px}.inspector-eyebrow{flex:1 1;font-size:11px;font-weight:800;letter-spacing:1.2px;color:var(--muted)}.inspector-pin{height:22px;padding:0 8px;background:var(--ink);color:var(--paper);font-size:11px;font-weight:800;display:inline-flex}.inspector-close,.inspector-pin{border-radius:999px;align-items:center}.inspector-close{position:relative;width:32px;height:32px;border:0;background:var(--paper);color:var(--muted);display:flex;justify-content:center}.inspector-close:after{content:"";position:absolute;inset:-6px}.inspector-head{display:flex;flex-direction:column;gap:2px}.inspector-eta{font-family:var(--font-display);font-size:40px;line-height:40px;font-weight:800;letter-spacing:-.6px;color:var(--forest)}.inspector-sub{font-size:14px;font-weight:700;color:var(--muted)}.preview3d{position:relative;flex:none;height:104px;border-radius:12px;overflow:hidden;background:#2f4a2c}.preview3d-map{position:absolute;inset:0}.preview3d-chip{position:absolute;left:10px;bottom:10px;height:24px;padding:0 8px;border-radius:999px;background:rgba(31,28,23,.72);color:var(--paper);font-size:11px;font-weight:800;display:inline-flex;align-items:center;pointer-events:none}.cells{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex:none}.cell{position:relative;padding:8px 10px;border-radius:10px;background:#fbf8f2;border:1.5px solid var(--line);display:flex;flex-direction:column;gap:1px;min-width:0}.cell.is-wide{grid-column:1/-1}.cell-value{font-size:15px;font-weight:800;padding-right:18px;overflow-wrap:anywhere;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cell-label{font-size:11px;font-weight:700;color:var(--muted)}.cell-info{position:absolute;top:2px;right:2px;width:24px;height:24px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center}.cell-info:after{content:"";position:absolute;inset:-10px}.cell-info[aria-expanded=true]{background:var(--sand);color:var(--ink)}.cells-note{grid-column:1/-1;font-weight:700;color:var(--muted)}.cell-how,.cells-note{margin:0;font-size:12px;line-height:17px}.cell-how{padding:10px 12px;border-radius:10px;background:var(--soft);border:1.5px dashed var(--line);font-weight:600;color:var(--ink)}.inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:sticky;bottom:-18px;margin:0 -18px -18px;padding:10px 18px 18px;background:var(--card);border-top:1.5px solid var(--line);flex:none}.inspector-actions button{min-height:44px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:6px}.inspector-actions .action-camp{border-color:var(--camp);color:var(--forest)}.inspector button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.profile-pin{pointer-events:none}@media (max-width:900px){.inspector{width:calc(100% - 32px)}}.rail .rail-draw[aria-pressed=true]{background:var(--ember);color:var(--ember-ink)}.draw-hint{display:flex;align-items:center;gap:12px;height:48px;padding:0 6px 0 16px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:14px;font-weight:700;white-space:nowrap}.draw-hint .dot{flex:none;width:10px;height:10px;border-radius:999px;background:var(--ember)}.draw-hint button{position:relative;height:36px;padding:0 16px;border-radius:999px;border:0;background:var(--paper);color:var(--ink);font-size:13px;font-weight:800}.draw-hint button:after{content:"";position:absolute;inset:-4px}.draw-hint .keycap{color:var(--muted);font-weight:700}.map-root[data-draw=true],.map-root[data-draw=true] .mapboxgl-canvas-container{cursor:crosshair;touch-action:none}.map-root[data-draw=true] .pin{pointer-events:none}.draw-live{width:100%;height:100%}.draw-label,.draw-live{position:absolute;left:0;top:0;z-index:2;pointer-events:none}.draw-label{height:30px;padding:0 10px;border-radius:999px;background:var(--ink);color:var(--paper);font-size:13px;font-weight:800;display:inline-flex;align-items:center;white-space:nowrap;will-change:transform}.draw-label[hidden]{display:none}.draw-panel{position:absolute;right:16px;top:16px;z-index:3;width:340px;max-height:calc(100% - 32px - var(--timeline-h) - 16px);overflow:auto;box-sizing:border-box;padding:18px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.4);display:flex;flex-direction:column;gap:14px}.draw-panel>*{flex:none}.draw-panel-head{display:flex;flex-direction:column;gap:6px}.draw-panel h2{margin:0;font-family:var(--font-display);font-size:32px;line-height:32px;font-weight:800;letter-spacing:-.5px;text-transform:uppercase;color:var(--forest)}.draw-panel p{margin:0;font-size:14px;line-height:21px;color:var(--muted)}.draw-legend{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:12px;background:var(--soft);border:1.5px solid var(--line)}.draw-legend>div{display:flex;align-items:center;gap:10px}.draw-legend .name{font-size:13px;font-weight:800}.draw-legend .note{font-size:12px;font-weight:600;color:var(--muted)}.draw-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.draw-stats>div{padding:8px 10px;border-radius:10px;border:1.5px solid var(--line);display:flex;flex-direction:column;gap:1px}.draw-stats .value{font-size:15px;font-weight:800}.draw-stats .cap{font-size:11px;font-weight:700;color:var(--muted)}.draw-tips{flex-direction:column;gap:8px;line-height:19px;font-weight:600}.draw-osm,.draw-tips{display:flex;font-size:13px}.draw-osm{min-height:44px}.draw-osm,.drawn-pill{align-items:center;font-weight:800}.drawn-pill{position:absolute;bottom:8px;transform:translateX(-50%);z-index:2;height:24px;padding:0 10px;border-radius:999px;background:var(--ember);color:var(--ember-ink);font-size:11px;display:inline-flex;white-space:nowrap;pointer-events:none}@media (max-width:900px){.draw-panel{width:calc(100% - 32px)}}.start-option+.start-option{border-top:1.5px solid var(--line)}.pill-outline{flex:none;min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);font-size:14px;font-weight:800}.pill-outline:disabled{color:#b8b0a1}.pill-outline:not(:disabled):hover{background:var(--sand)}.pill-primary-btn{flex:none;min-height:44px;padding:0 18px;border-radius:999px;border:0;background:var(--ember);color:var(--ember-ink);font-size:14px;font-weight:800}.pill-primary-btn:disabled{opacity:.55}.saved-chip-pill{padding:0 18px;border-radius:999px;background:#e4ede6;color:var(--forest);display:flex;align-items:center;gap:8px}.saved-chip-pill,.topbar-link-btn{flex:none;min-height:44px;border:0;font-size:14px;font-weight:800}.topbar-link-btn{padding:0 10px;border-radius:999px;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.avatar-wrap{position:relative;flex:none}.avatar-button{width:44px;height:44px;border-radius:999px;border:0;background:transparent;padding:0}.avatar,.avatar-button{display:flex;align-items:center;justify-content:center}.avatar{width:36px;height:36px;border-radius:999px;background:var(--forest);color:#fff;font-size:14px;font-weight:800}.avatar-menu{position:absolute;right:0;top:50px;z-index:20;min-width:240px;padding:8px;border-radius:14px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 20px 40px -20px rgba(31,28,23,.5);gap:4px}.avatar-menu,.avatar-menu-who{display:flex;flex-direction:column}.avatar-menu-who{margin:0;padding:6px 8px;gap:2px;font-size:14px;font-weight:800;overflow-wrap:anywhere}.avatar-menu-mail,.avatar-menu-note{font-size:12px;font-weight:600;color:var(--muted)}.avatar-menu-note{margin:0;padding:0 8px 6px;line-height:17px}.avatar-menu button{min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-size:14px;font-weight:800;text-align:left}.avatar-menu button:focus-visible,.avatar-menu button:hover{background:var(--sand)}.dialog-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:rgba(31,28,23,.45)}.dialog{width:min(400px,100%);box-sizing:border-box;padding:18px 22px 20px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.6);display:flex;flex-direction:column;gap:12px}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog h2{margin:0;font-family:var(--font-display);font-size:30px;line-height:30px;font-weight:800;letter-spacing:-.5px;text-transform:uppercase;color:var(--forest)}.dialog-lead{margin:0;font-size:14px;line-height:21px;color:var(--muted)}.provider-buttons{display:flex;flex-direction:column;gap:10px;margin-top:4px}.provider{min-height:48px;box-sizing:border-box;padding:0 16px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:500;font-family:Roboto,var(--font-body)}.provider.apple{background:#000;border:1px solid #000;color:#fff;font-family:-apple-system,"SF Pro Text",var(--font-body);font-weight:600}.provider.google{background:#fff;border:1px solid #747775;color:#1f1f1f}.provider:disabled{opacity:.6}.provider:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.dialog-error{line-height:18px;color:var(--very-steep)}.dialog-error,.dialog-keep{margin:0;font-size:13px;font-weight:700}.dialog-keep{display:flex;align-items:center;gap:6px;color:var(--forest)}.dialog-legal{margin:0;font-size:12px;line-height:17px;color:var(--muted)}.saved-panel{position:absolute;right:16px;top:16px;z-index:4;width:340px;max-height:calc(100% - 32px - var(--timeline-h) - 16px);overflow:auto;box-sizing:border-box;padding:16px 18px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 30px 60px -30px rgba(31,28,23,.4);display:flex;flex-direction:column;gap:12px;outline:none}.saved-title{margin:0;font-family:var(--font-display);font-size:30px;line-height:30px;font-weight:800;letter-spacing:-.5px;text-transform:uppercase;color:var(--forest)}.saved-qr{display:flex;align-items:center;gap:14px;padding:12px;border-radius:12px;background:var(--soft);border:1.5px solid var(--line)}.saved-qr .qr{flex:none;border-radius:8px;background:#fff}.saved-qr-text{display:flex;flex-direction:column;gap:6px}.saved-qr-head{font-size:14px;font-weight:800}.saved-qr-sub{font-size:12px;line-height:17px;font-weight:600;color:var(--muted)}.saved-rows{display:flex;flex-direction:column;border-radius:12px;border:1.5px solid var(--line);overflow:hidden}.saved-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 12px;border:0;background:#fff;color:var(--ink);text-align:left;text-decoration:none;font-family:inherit}.saved-row+.saved-row{border-top:1.5px solid var(--line)}.saved-row:hover{background:var(--soft)}.saved-chip{flex:none;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.saved-row-text{flex:1 1;display:flex;flex-direction:column;gap:2px;min-width:0}.saved-row-head{font-size:14px;font-weight:800}.saved-row-sub{font-size:12px;line-height:16px;font-weight:600;color:var(--muted)}.saved-row-go{color:#6b655b;font-weight:800}.qr{display:block}.stage.has-draw-panel .mapboxgl-ctrl-bottom-right,.stage.has-inspector .mapboxgl-ctrl-bottom-right,.stage.has-saved-panel .mapboxgl-ctrl-bottom-right,.stage.has-start-panel .mapboxgl-ctrl-bottom-right{margin-right:376px}.pill-fly{display:flex;align-items:center;gap:8px}.lang-wrap{position:relative;flex:none}.lang-button{min-height:44px;padding:0 12px;border-radius:999px;border:1.5px solid transparent;background:transparent;color:var(--ink);font-size:13px;font-weight:800;display:flex;align-items:center;gap:6px}.lang-button:hover,.lang-button[aria-expanded=true]{background:var(--sand)}.lang-menu{position:absolute;right:0;top:50px;z-index:20;min-width:180px;padding:8px;border-radius:14px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 20px 40px -20px rgba(31,28,23,.5);display:flex;flex-direction:column;gap:2px}.lang-menu button{min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-size:15px;font-weight:800;text-align:start;display:flex;align-items:center;justify-content:space-between;gap:12px}.lang-menu button:focus-visible,.lang-menu button:hover{background:var(--sand)}.get-outest{text-decoration:none}.get-outest:hover{color:var(--ember-ink)!important;filter:brightness(.96)}.day-fly{position:relative;flex:none;align-self:center;height:28px;min-width:28px;margin:0 0 0 auto;padding:0 7px;border:0;background:transparent;color:var(--forest);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:10px}.day-fly:after{content:"";position:absolute;inset:-8px}.day-fly:hover:not(:disabled){background:var(--sand)}.day-fly:disabled{color:#8a8478}.day-fly:focus-visible{outline-offset:-2px}.fly-player{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(var(--timeline-h) + 32px);z-index:6;width:min(560px,calc(100% - 32px));box-sizing:border-box;padding:12px 14px 12px 16px;border-radius:16px;background:var(--card);border:1.5px solid var(--ink);box-shadow:0 30px 60px -24px rgba(31,28,23,.6);display:flex;flex-direction:column;gap:8px;outline:none}.fly-head{display:flex;align-items:center;gap:12px}.fly-title{flex:1 1;min-width:0;font-family:var(--font-display);font-size:17px;font-weight:800;letter-spacing:-.2px;text-transform:uppercase;color:var(--forest)}.fly-close{flex:none}.fly-note{margin:0;font-size:13px;line-height:18px;font-weight:600;color:var(--muted)}.fly-controls{display:flex;align-items:center;gap:12px}.fly-play{width:48px;height:48px;border-radius:999px;border:0;background:var(--ember);color:var(--ember-ink);align-items:center;justify-content:center}.fly-play,.fly-speeds{flex:none;display:flex}.fly-speeds{gap:4px;padding:3px;border-radius:999px;background:var(--sand)}.fly-speeds button{min-width:44px;height:44px;padding:0 10px;border-radius:999px;border:0;background:transparent;color:var(--ink);font-size:14px;font-weight:800}.fly-speeds button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.fly-scrub{flex:1 1;min-width:80px;height:44px;margin:0;accent-color:var(--forest);cursor:pointer}.fly-readout{font-size:12px;font-weight:700;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fly-player button:focus-visible,.fly-scrub:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.stage.is-flying .map-menu,.stage.is-flying .rail{opacity:.55}.keys-sheet{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;gap:14px}.keys-sheet h2{font-size:26px;line-height:28px}.keys-group{display:flex;flex-direction:column;gap:6px}.keys-group h3{margin:0}.keys-group dl{margin:0;display:flex;flex-direction:column;border-radius:12px;border:1.5px solid var(--line);overflow:hidden}.keys-row{display:flex;align-items:center;gap:14px;min-height:44px;padding:6px 12px;background:#fff}.keys-row+.keys-row{border-top:1.5px solid var(--line)}.keys-row dt{flex:none;width:188px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.keys-row dd{margin:0;font-size:14px;line-height:19px;font-weight:700}.keys-alt{display:inline-flex;align-items:center;gap:4px}.keys-or{color:var(--muted);font-weight:700;padding:0 2px}kbd{min-width:24px;height:26px;box-sizing:border-box;padding:0 7px;border-radius:7px;border:solid var(--line);border-width:1.5px 1.5px 3px;background:var(--soft);color:var(--ink);font-family:var(--font-body);font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}[dir=rtl] .avatar-menu button,[dir=rtl] .map-menu button,[dir=rtl] .saved-row,[dir=rtl] .start-option,[dir=rtl] .topbar-nav a{text-align:start}[dir=rtl] .rail{left:auto;right:16px}[dir=rtl] .layers-menu{left:auto;right:76px}[dir=rtl] .draw-panel,[dir=rtl] .inspector,[dir=rtl] .saved-panel,[dir=rtl] .start-panel{right:auto;left:16px}[dir=rtl] .stage.has-start-panel .timeline{right:16px;left:392px}[dir=rtl] .stage.has-draw-panel .mapboxgl-ctrl-bottom-right,[dir=rtl] .stage.has-inspector .mapboxgl-ctrl-bottom-right,[dir=rtl] .stage.has-saved-panel .mapboxgl-ctrl-bottom-right,[dir=rtl] .stage.has-start-panel .mapboxgl-ctrl-bottom-right{margin-right:0}[dir=rtl] .stage .mapboxgl-ctrl-bottom-left{margin-bottom:calc(var(--timeline-h) + 16px)}[dir=rtl] .avatar-menu,[dir=rtl] .lang-menu{right:auto;left:0}[dir=rtl] .trip-popover{left:auto;right:0}[dir=rtl] .inspector-actions{direction:rtl}[dir=rtl] .search input{text-align:start}[dir=rtl] .saved-row-go{transform:scaleX(-1)}@media (max-width:900px){[dir=rtl] .stage.has-start-panel .timeline{left:16px}}.mapboxgl-ctrl-group button{width:44px;height:44px}.mapboxgl-ctrl-group button:focus-visible{outline:3px solid var(--ink);outline-offset:-3px;border-radius:8px}.sheet-grabber,.sheet-scrim{display:none}.phone-topbar{position:absolute;left:0;right:0;top:0;z-index:12;height:auto;box-sizing:border-box;padding:calc(env(safe-area-inset-top, 0px) + 8px) calc(14px + env(safe-area-inset-right, 0px)) 0 calc(14px + env(safe-area-inset-left, 0px));gap:8px;background:transparent;border:0;pointer-events:none}.phone-topbar>*{pointer-events:auto}.phone-round{flex:none;width:44px;height:44px;padding:0;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px -14px rgba(31,28,23,.5)}.phone-round[aria-expanded=true]{border-color:var(--ink)}.phone-round .brand-dot{width:22px;height:22px;box-shadow:inset 0 -8px 0 var(--forest)}.phone-topbar .trip-chip-wrap{flex:1 1;min-width:0}.trip-chip-phone{width:100%;min-width:0;height:44px;padding:0 14px;border-radius:999px;flex-direction:column;align-items:flex-start;justify-content:center;gap:0;text-align:start;box-shadow:0 10px 24px -14px rgba(31,28,23,.5)}.trip-chip-name{max-width:100%;font-family:var(--font-display);font-size:14px;line-height:17px;font-weight:800;letter-spacing:-.1px;text-transform:uppercase;color:var(--forest);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trip-chip-name.is-new,.trip-chip-sub{color:var(--muted)}.trip-chip-sub{max-width:100%;font-size:11px;line-height:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phone-topbar .trip-popover{position:fixed;left:calc(14px + env(safe-area-inset-left, 0px));right:calc(14px + env(safe-area-inset-right, 0px));top:calc(env(safe-area-inset-top, 0px) + 60px);width:auto;max-width:none;max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 76px);overflow:auto;z-index:30}.trip-name-field{min-height:44px;box-sizing:border-box;padding:0 12px;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:16px;font-weight:700}.phone-menu-wrap{position:relative;flex:none}.phone-menu{position:absolute;left:0;top:52px;z-index:31;width:min(300px,calc(100vw - 28px));box-sizing:border-box;padding:8px;border-radius:16px;background:var(--card);border:1.5px solid var(--line);box-shadow:0 24px 48px -20px rgba(31,28,23,.55);display:flex;flex-direction:column;gap:2px}.phone-menu a,.phone-menu button{min-height:48px;box-sizing:border-box;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-size:15px;font-weight:800;text-align:start;text-decoration:none;display:flex;align-items:center;gap:10px}.phone-menu a:focus-visible,.phone-menu a:hover,.phone-menu button:focus-visible,.phone-menu button:hover:not(:disabled){background:var(--sand)}.phone-menu button:disabled{color:#8a8478}.phone-menu .phone-menu-primary{margin-top:4px;justify-content:center;background:var(--ember);color:var(--ember-ink);border-radius:999px}.phone-menu .phone-menu-primary:hover{background:var(--ember);filter:brightness(.96)}.phone-menu-langs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:0 0 6px}.phone-menu-langs button{justify-content:center;border:1.5px solid var(--line);font-size:14px}.phone-menu-langs button[aria-checked=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.phone-menu-who{margin:4px 0 0;padding:6px 12px;display:flex;flex-direction:column;gap:2px;font-size:14px;font-weight:800;overflow-wrap:anywhere}[dir=rtl] .phone-menu{left:auto;right:0}.phone-sheet{position:absolute;left:0;right:0;bottom:0;z-index:3;height:280px;box-sizing:border-box;display:flex;flex-direction:column;border-radius:24px 24px 0 0;background:var(--card);box-shadow:0 -20px 40px -24px rgba(31,28,23,.45);transition:height .24s cubic-bezier(.2,.8,.2,1)}.phone-sheet.is-dragging{transition:none}.phone-sheet[hidden]{display:none}.stage.has-inspector .phone-sheet,.stage:has(.saved-panel.is-phone) .phone-sheet{opacity:0;pointer-events:none}.sheet-drag{flex:none;height:28px;cursor:grab}.sheet-drag,.sheet-handle{display:flex;justify-content:center;touch-action:none}.sheet-handle{width:100%;height:100%;padding:0;border:0;border-radius:24px 24px 0 0;background:transparent;align-items:center}.sheet-handle span{width:40px;height:5px;border-radius:999px;background:#d9d0bd}.sheet-handle:focus-visible{outline:3px solid var(--ink);outline-offset:-3px}.sheet-body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;padding:0 16px calc(14px + env(safe-area-inset-bottom, 0px));display:flex;flex-direction:column;gap:8px}.phone-sheet[data-snap=peek] .sheet-body{overflow-y:hidden}.phone-tools{position:sticky;top:0;z-index:2;flex:none;display:flex;gap:6px;padding-bottom:2px;background:var(--card)}.phone-tools button{flex:1 1;min-width:0;min-height:44px;padding:0 4px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:12px;line-height:14px;font-weight:800;text-align:center;display:flex;align-items:center;justify-content:center}.phone-tools button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.phone-tools .tool-draw[aria-pressed=true]{background:var(--ember);border-color:var(--ember);color:var(--ember-ink)}.phone-tools .tool-camp{color:var(--forest)}.phone-tools .tool-camp[aria-pressed=true]{background:var(--camp);border-color:var(--camp);color:#fff}.phone-tools .tool-undo{flex:none;width:44px}.phone-tools button:disabled{color:#b8b0a1}.phone-tools button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.timeline.is-sheet{position:static;flex:1 1;min-height:0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;gap:8px}.sheet-title{flex:none;display:flex;align-items:baseline;gap:8px;min-width:0}.sheet-title .timeline-title{flex:none;font-size:15px}.sheet-title .timeline-stats{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.sheet-chips{flex:none;display:flex;align-items:center;gap:8px;min-height:44px}.day-chips{flex:1 1;min-width:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.day-chips::-webkit-scrollbar{display:none}.day-chip{flex:none;height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:800;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.day-chip .day-dot{align-self:auto;width:7px;height:7px}.phone-save{flex:none;min-height:44px;padding:0 16px;font-size:13px;white-space:nowrap}.timeline.is-sheet .timeline-grid{flex:1 1;min-height:84px}.phone-sheet:not([data-snap=peek]) .timeline.is-sheet .timeline-grid{flex:none;height:170px}.timeline.is-sheet .timeline-body,.timeline.is-sheet .timeline-empty{min-height:80px}.timeline.is-sheet .sunset-chip{top:2px;padding:3px 8px;max-width:calc(100% - 8px);overflow:hidden;text-overflow:ellipsis}.timeline.is-sheet .sunset-chip button{display:none}.sheet-more{flex:none;display:flex;flex-direction:column;gap:10px;padding-top:6px}.sheet-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sheet-more h3{margin:4px 0 0}.day-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.day-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--line)}.day-card .day-dot{align-self:flex-start;margin-top:6px}.day-card-text{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.day-card .day-stats{overflow:visible;white-space:normal}.day-card-warn{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:12px;font-weight:700;color:#8a3a12}.day-card-warn button{padding:0 14px;border-radius:999px;border:0;background:var(--ember);color:var(--ember-ink)}.day-card-fly,.day-card-warn button{min-height:44px;font-size:12px;font-weight:800}.day-card-fly{flex:none;padding:0 12px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--forest);display:flex;align-items:center;gap:6px}.day-card-fly:disabled{color:#8a8478}.sheet-more button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.phone-sheet .draw-panel{position:static;width:auto;max-height:none;padding:0;border:0;box-shadow:none}.stage.is-phone{--timeline-h:var(--sheet-h,280px)}.stage.is-phone:not(.has-sheet){--timeline-h:min(56dvh,460px)}.phone-aim{top:calc((env(safe-area-inset-top, 0px) + 60px + 100% - var(--sheet-h, 280px)) / 2);z-index:2;width:40px;height:40px;margin:-20px 0 0 -20px;box-sizing:border-box;border:2px dashed var(--ink);box-shadow:0 0 0 2px rgba(255,255,255,.85);pointer-events:none}.phone-aim,.phone-aim:after{position:absolute;left:50%;border-radius:999px}.phone-aim:after{content:"";top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;background:var(--ember)}.phone-float{position:absolute;left:50%;bottom:calc(var(--sheet-h, 280px) + 20px);transform:translateX(-50%);z-index:3;height:48px;padding:0 20px;border-radius:999px;border:0;background:var(--ink);color:var(--paper);font-size:14px;white-space:nowrap;gap:8px;box-shadow:0 16px 30px -16px rgba(0,0,0,.6)}.phone-float,.phone-float span{font-weight:800;display:flex;align-items:center}.phone-float span{width:20px;height:20px;border-radius:999px}.phone-float span,.phone-float.phone-done{background:var(--ember);color:var(--ember-ink);justify-content:center}.phone-float.phone-done{min-width:120px}.phone-float:focus-visible{outline:3px solid var(--ink);outline-offset:3px}@media (max-width:640px){.start-panel{left:0;right:0;top:auto;bottom:0;width:auto;max-height:min(56dvh,460px);padding:18px 16px calc(16px + env(safe-area-inset-bottom, 0px));border:0;border-radius:24px 24px 0 0;gap:12px}.start-panel h1{font-size:30px;line-height:30px}.stage .mapboxgl-ctrl-bottom-right,.stage.has-draw-panel .mapboxgl-ctrl-bottom-right,.stage.has-inspector .mapboxgl-ctrl-bottom-right,.stage.has-saved-panel .mapboxgl-ctrl-bottom-right,.stage.has-start-panel .mapboxgl-ctrl-bottom-right{margin-right:0}.stage.is-phone .mapboxgl-ctrl-bottom-left,.stage.is-phone .mapboxgl-ctrl-bottom-right{margin-bottom:calc(var(--timeline-h) + 12px)}.stage.is-phone.has-inspector .mapboxgl-ctrl-bottom-left,.stage.is-phone.has-inspector .mapboxgl-ctrl-bottom-right,.stage.is-phone.has-saved-panel .mapboxgl-ctrl-bottom-left,.stage.is-phone.has-saved-panel .mapboxgl-ctrl-bottom-right{display:none}.inspector{left:0;right:0;top:auto;bottom:0;width:auto;max-height:calc(100% - 76px);padding:0 16px calc(14px + env(safe-area-inset-bottom, 0px));border:0;border-radius:24px 24px 0 0;display:grid;grid-template-columns:minmax(0,1fr) 120px;column-gap:12px;row-gap:10px;align-content:start;box-shadow:0 -20px 40px -24px rgba(31,28,23,.45)}.inspector[hidden]{display:none}.inspector.is-pinned{border:0}.inspector>*{grid-column:1/-1}.inspector>.sheet-grabber{grid-row:1}.inspector>.inspector-top{grid-row:2}.inspector>.inspector-head{grid-column:1;grid-row:3;align-self:end}.inspector>.preview3d{grid-column:2;grid-row:3;height:72px}.inspector-eta{font-size:34px;line-height:34px}.inspector-close{width:44px;height:44px;background:var(--paper)}.inspector-close:after{inset:0}.inspector-actions{bottom:calc(-14px - env(safe-area-inset-bottom, 0px));margin:0 -16px calc(-14px - env(safe-area-inset-bottom, 0px));padding:10px 16px calc(14px + env(safe-area-inset-bottom, 0px))}.inspector-actions button{min-height:48px;font-size:14px}.preview3d-chip{height:20px;left:6px;bottom:6px;font-size:10px}.sheet-grabber{display:flex;justify-content:center;align-items:center;height:28px;margin:0 -16px;touch-action:none;cursor:grab}.sheet-grabber span{width:40px;height:5px;border-radius:999px;background:#d9d0bd}.sheet-scrim{display:block;position:absolute;inset:0;z-index:3;background:rgba(31,28,23,.25)}.saved-panel.is-phone{left:0;right:0;top:auto;bottom:0;width:auto;max-height:min(600px,calc(100% - 60px));padding:0 16px calc(14px + env(safe-area-inset-bottom, 0px));border:0;border-radius:24px 24px 0 0;gap:14px;z-index:5}.saved-panel.is-phone>*{flex:none}.saved-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.2px;color:var(--forest)}.open-app{min-height:56px;border-radius:999px;background:var(--ember);color:var(--ember-ink);font-size:16px;font-weight:800;text-decoration:none;display:flex;align-items:center;justify-content:center}.open-app:hover{color:var(--ember-ink);filter:brightness(.96)}.open-app:focus-visible,.saved-back:focus-visible,.saved-row:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.saved-note{margin:0;font-size:13px;line-height:19px;font-weight:600;color:var(--muted)}.saved-back{min-height:48px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font-size:14px;font-weight:800}.dialog-backdrop{place-items:end stretch;padding:0}.dialog,.dialog.keys-sheet{width:100%;max-height:92dvh;overflow:auto;padding:18px 16px calc(20px + env(safe-area-inset-bottom, 0px));border-width:0;border-radius:24px 24px 0 0}.keys-row dt{width:120px}.stage.is-phone .tool-hint{top:calc(env(safe-area-inset-top, 0px) + 62px);width:calc(100% - 28px);max-width:362px;box-sizing:border-box}.stage.is-phone .draw-hint,.stage.is-phone .hint-pill{height:auto;min-height:48px;padding:8px 16px;border-radius:24px;white-space:normal;line-height:19px}.stage.is-phone .layers-menu{left:auto;right:calc(14px + env(safe-area-inset-right, 0px));top:calc(env(safe-area-inset-top, 0px) + 62px);z-index:13}[dir=rtl] .stage.is-phone .layers-menu{right:auto;left:calc(14px + env(safe-area-inset-left, 0px))}.toast{bottom:calc(var(--timeline-h) + 80px);max-width:calc(100% - 24px);flex-wrap:wrap;gap:6px 10px;padding:8px 8px 8px 14px}.stage.is-phone.is-flying .toast{bottom:calc(220px + env(safe-area-inset-bottom, 0px))}.fly-player{left:12px;right:12px;width:auto;transform:none;bottom:calc(12px + env(safe-area-inset-bottom, 0px));padding:12px 14px}.fly-controls{flex-wrap:wrap;row-gap:4px}.fly-scrub{order:5;flex:1 1 100%}.fly-readout{margin-inline-start:auto}}[dir=rtl] .stage.is-phone .day-chips,[dir=rtl] .stage.is-phone .phone-tools{direction:rtl}@media (max-width:640px){.stage.is-phone .mapboxgl-ctrl-logo{height:24px}.stage.is-phone.sheet-open .mapboxgl-ctrl-bottom-left,.stage.is-phone.sheet-open .mapboxgl-ctrl-bottom-right{display:none}.planner a,.planner button{-webkit-tap-highlight-color:transparent}}.phone-topbar.is-tablet{position:relative;z-index:12;padding:0 20px;height:64px;background:rgba(245,240,230,.92);border-bottom:1px solid var(--line);pointer-events:auto}.phone-topbar.is-tablet .trip-chip-wrap{flex:0 1 auto;max-width:420px}