:root{--bg:#ecede7;--surface:#fbfbf8;--surface-2:#f1f2ec;--ink:#1b2620;--ink-soft:#4f5b53;--ink-faint:#7c8780;--line:#d4d8cf;--maple:#b23a1e;--maple-ink:#8a2c15;--maple-tint:#f5e1d8;--sign:#1e5e3b;--sign-tint:#dceae1;--amber:#9a6510;--amber-tint:#f5e8cd;--shield-i:#1f4e9c;--done:#7a857e;--panel:#1e5e3b;--panel-ink:#fff;--shadow:0 1px 2px #1b26200f, 0 6px 20px -8px #1b26202e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#131915;--surface:#1b221d;--surface-2:#222a24;--ink:#e7ece6;--ink-soft:#a7b2aa;--ink-faint:#76827a;--line:#2c352f;--maple:#ec7a55;--maple-ink:#f4ab8f;--maple-tint:#3a2119;--sign:#72c295;--sign-tint:#1a2e22;--amber:#e4b04f;--amber-tint:#33291a;--shield-i:#5b86d4;--done:#56615a;--panel:#1e5e3b;--panel-ink:#fff;--shadow:0 1px 2px #00000059, 0 10px 28px -10px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#131915;--surface:#1b221d;--surface-2:#222a24;--ink:#e7ece6;--ink-soft:#a7b2aa;--ink-faint:#76827a;--line:#2c352f;--maple:#ec7a55;--maple-ink:#f4ab8f;--maple-tint:#3a2119;--sign:#72c295;--sign-tint:#1a2e22;--amber:#e4b04f;--amber-tint:#33291a;--shield-i:#5b86d4;--done:#56615a;--panel:#1e5e3b;--panel-ink:#fff;--shadow:0 1px 2px #00000059, 0 10px 28px -10px #0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top,0px);margin:0;font:15px/1.4 Overpass,ui-sans-serif,system-ui,-apple-system,sans-serif}button{font:inherit}h1,h2,h3{text-wrap:balance}.sign-wrap{margin-bottom:14px;padding-top:14px;position:relative}.exit-tab{background:var(--panel);color:var(--panel-ink);letter-spacing:.08em;border:2px solid var(--panel-ink);box-shadow:0 0 0 2px var(--panel);border-bottom:none;border-radius:7px 7px 0 0;padding:4px 10px 6px;font-family:Overpass Mono,ui-monospace,monospace;font-size:11px;font-weight:600;position:absolute;top:0;left:18px}.sign{background:var(--panel);color:var(--panel-ink);box-shadow:var(--shadow);border-radius:14px;padding:5px}.sign-inner{border:2px solid var(--panel-ink);border-radius:10px;flex-direction:column;gap:6px;padding:16px 18px 15px;display:flex}.sign-shields{flex-wrap:wrap;gap:6px;display:flex}.sign h1{letter-spacing:-.01em;margin:4px 0 2px;font-size:clamp(30px,8vw,40px);font-weight:800;line-height:1.02}.sign-sub{opacity:.92;font-size:14px;font-weight:500}.phase{background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);border-radius:12px;align-items:center;gap:12px;margin-bottom:12px;padding:11px 14px;font-size:13.5px;line-height:1.4;display:flex}.phase b{color:var(--ink)}.phase-big{font-variant-numeric:tabular-nums;color:var(--maple);text-align:center;min-width:2ch;font-family:Overpass Mono,ui-monospace,monospace;font-size:26px;font-weight:600;line-height:1}.phase-big small{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-top:3px;font-size:9.5px;display:block}.clock-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin:0 2px 14px;display:flex}.clock{font-variant-numeric:tabular-nums;color:var(--ink-faint);white-space:nowrap;font-family:Overpass Mono,ui-monospace,monospace;font-size:12.5px}.clock b{color:var(--ink-soft);font-weight:600}.status-line{text-overflow:ellipsis;min-width:0;max-width:100%;overflow:hidden}.shield{letter-spacing:.02em;white-space:nowrap;border-radius:5px;align-items:center;padding:3px 6px 2px;font-size:10.5px;font-weight:800;line-height:1;display:inline-flex}.shield.i{background:var(--shield-i);color:#fff;border-top:3px solid #c8312b;border-radius:5px 5px 7px 7px}.shield.us{color:#111;background:#fff;border:1.5px solid #111}.shield.st{background:var(--surface);color:var(--ink);border:1.5px solid var(--ink-soft)}.sign .shield.st{color:#111;background:#fff;border-color:#fff}.day-tabs{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:14px;display:grid}@media (width<=420px){.day-tabs{grid-template-columns:repeat(2,1fr);row-gap:12px}}.day-tab{border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:9px 11px 8px;font-family:Overpass,sans-serif;display:flex;position:relative}.day-tab-day{letter-spacing:.08em;color:var(--ink-faint);text-transform:uppercase;font-family:Overpass Mono,ui-monospace,monospace;font-size:10px;font-weight:600}.day-tab-title{color:var(--ink);font-size:13px;font-weight:700;line-height:1.2}.day-tab.active{background:var(--sign-tint);border-color:var(--sign)}.day-tab.active .day-tab-day{color:var(--sign)}.today-pill{background:var(--maple);color:#fff;letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:2px 6px 1px;font-size:9.5px;font-weight:800;position:absolute;top:-8px;right:8px}.progress-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-bottom:14px;padding:13px 16px 11px}.progress-top{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px;display:flex}.progress-label{color:var(--ink-soft);font-size:13px;font-weight:500}.progress-count{font-variant-numeric:tabular-nums;color:var(--ink);font-family:Overpass Mono,ui-monospace,monospace;font-size:13px;font-weight:600}.bar-track{background:var(--surface-2);border-radius:99px;height:7px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, var(--sign), var(--amber), var(--maple));border-radius:99px;width:0%;height:100%;transition:width .4s}.sync{color:var(--ink-faint);align-items:center;gap:6px;margin-top:9px;font-size:11.5px;font-weight:600;display:flex}.sync-dot{background:var(--ink-faint);border-radius:50%;flex:none;width:7px;height:7px}.sync[data-state=synced] .sync-dot{background:var(--sign)}.sync[data-state=saving] .sync-dot,.sync[data-state=connecting] .sync-dot{background:var(--amber)}.sync[data-state=error] .sync-dot{background:var(--maple)}.pace{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.pace[hidden]{display:none}.pace-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pace-pill{background:var(--sign-tint);color:var(--sign);white-space:nowrap;border-radius:99px;padding:4px 10px 3px;font-size:12.5px;font-weight:800}.pace-pill.behind{background:var(--maple-tint);color:var(--maple-ink)}.pace-pill.ahead{background:var(--amber-tint);color:var(--amber)}.pace-next{color:var(--ink-soft);min-width:0;font-size:13px}.pace-next b{color:var(--ink)}.pace-risk{color:var(--ink-soft);border-left:3px solid var(--amber);padding:2px 0 2px 10px;font-size:13px;line-height:1.5}.pace-risk.hard{border-left-color:var(--maple)}.pace-risk b{color:var(--ink)}.sugg{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.sugg-btn{border:1px solid var(--maple);background:var(--surface);color:var(--maple-ink);cursor:pointer;border-radius:8px;padding:5px 10px 4px;font-family:Overpass,sans-serif;font-size:12px;font-weight:700}.sugg-btn:focus-visible{outline:2px solid var(--sign);outline-offset:2px}.pace-hint{color:var(--ink-faint);font-size:11.5px}.tb-main{display:block}.tb-was{color:var(--ink-faint);margin-top:2px;font-size:9.5px;font-weight:500;text-decoration:line-through;display:block}.time-badge.shifted .tb-main{color:var(--maple-ink)}.time-badge.shifted.early .tb-main{color:var(--sign)}.skip-btn{color:var(--ink-faint);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:7px;flex:none;margin-top:1px;padding:3px 8px 2px;font-family:Overpass,sans-serif;font-size:11.5px;font-weight:700}.skip-btn:focus-visible{outline:2px solid var(--sign);outline-offset:2px}.stop.skipped .card{opacity:.55;box-shadow:none;border-style:dashed}.skip-flag{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line);vertical-align:2px;border-radius:5px;margin-left:8px;padding:1px 5px;font-size:10px;font-weight:800}.stop.skipped .skip-btn{color:var(--ink);border-color:var(--ink-faint)}.risk-note{color:var(--maple-ink);background:var(--maple-tint);border-radius:8px;margin-top:9px;padding:7px 9px;font-size:12.5px;font-weight:600;line-height:1.45}.risk-note.soft{color:var(--amber);background:var(--amber-tint)}.risk-note[hidden]{display:none}.day-brief{color:var(--ink-soft);background:var(--amber-tint);border-radius:12px;align-items:flex-start;gap:10px;margin-bottom:24px;padding:11px 13px;font-size:13px;line-height:1.5;display:flex}.day-brief b{color:var(--ink);font-weight:700}.timeline{flex-direction:column;display:flex;position:relative}.stop{grid-template-columns:44px 20px 1fr;column-gap:8px;padding-bottom:22px;display:grid;position:relative}.stop:last-child{padding-bottom:0}.timeline{margin:0;padding:0;list-style:none}.rail{height:100%;position:relative}.rail:before{content:"";background:var(--line);width:2px;position:absolute;top:15px;bottom:-22px;left:50%;transform:translate(-50%)}.stop:last-child .rail:before{display:none}.time-badge{font-variant-numeric:tabular-nums;color:var(--ink-faint);text-align:center;padding-top:6px;font-family:Overpass Mono,ui-monospace,monospace;font-size:10.5px;font-weight:600;line-height:1.25}.dot{background:var(--surface);border:2px solid var(--ink-faint);z-index:1;border-radius:50%;width:11px;height:11px;position:absolute;top:4px;left:50%;transform:translate(-50%)}.stop.kind-drive .dot{border-radius:2px;width:10px;height:10px;transform:translate(-50%)rotate(45deg)}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;min-width:0;padding:14px 14px 13px}.stop.kind-drive .card{background:var(--surface-2);box-shadow:none}.stop.done .card{opacity:.58}.stop.done .title{text-decoration:line-through;-webkit-text-decoration-color:var(--ink-faint);text-decoration-color:var(--ink-faint);text-decoration-thickness:1.5px}.stop.now .dot{border-color:var(--maple);background:var(--maple);box-shadow:0 0 0 4px var(--maple-tint)}.stop.now .time-badge{color:var(--maple-ink)}.stop.now .card{border-color:var(--maple);box-shadow:var(--shadow), 0 0 0 1px var(--maple)}@media (prefers-reduced-motion:no-preference){.stop.now .dot{animation:2.2s ease-in-out infinite pulse}}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--maple-tint)}50%{box-shadow:0 0 0 7px #0000}}.card-top{align-items:flex-start;gap:10px;display:flex}.card-body{flex:1;min-width:0}.check{border:1.6px solid var(--ink-faint);background:var(--surface);cursor:pointer;color:#0000;border-radius:6px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:flex}.check svg{width:14px;height:14px}.stop.done .check{background:var(--done);border-color:var(--done);color:var(--surface)}.now-flag{letter-spacing:.08em;color:var(--maple);border:1px solid var(--maple);vertical-align:2px;border-radius:5px;margin-left:6px;padding:1px 5px;font-family:Overpass Mono,ui-monospace,monospace;font-size:9.5px;font-weight:600}.title{color:var(--ink);margin:0;font-size:16.5px;font-weight:700;line-height:1.25}.desc{color:var(--ink-soft);margin:5px 0 0;font-size:13.5px;line-height:1.5}.access-row{color:var(--sign);flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;font-size:12.5px;font-weight:700;display:flex}.access-row svg{flex:none;width:14px;height:14px}.poi-head{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:1px;font-family:Overpass Mono,ui-monospace,monospace;font-size:10px}.poi-list{background:var(--surface-2);border-radius:9px;flex-direction:column;gap:6px;margin-top:10px;padding:9px 10px;display:flex}.stop.kind-drive .poi-list{background:var(--surface)}.poi-item{color:var(--ink-soft);align-items:flex-start;gap:7px;font-size:12.5px;line-height:1.45;display:flex}.poi-star{width:12px;height:12px;color:var(--amber);flex:none;margin-top:2px}.poi-star svg{width:12px;height:12px;display:block}.poi-dot{background:var(--ink-faint);border-radius:50%;flex:none;width:5px;height:5px;margin-top:6px}.poi-name{color:var(--ink);font-weight:700}.tags{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.tag{letter-spacing:.02em;border-radius:6px;padding:3px 7px 2px;font-size:11px;font-weight:700}.tag.free{background:var(--sign-tint);color:var(--sign)}.tag.note{background:var(--maple-tint);color:var(--maple-ink)}.tag.info{background:var(--surface-2);color:var(--ink-soft)}.tag.book{background:var(--amber-tint);color:var(--amber)}.stop.kind-drive .tag.info{background:var(--surface)}.addr-row{color:var(--ink-faint);align-items:flex-start;gap:5px;margin-top:9px;font-size:12px;line-height:1.45;display:flex}.addr-row svg{flex:none;width:12px;height:12px;margin-top:2px}.more{border-top:1px dashed var(--line);margin-top:10px;padding-top:8px}.more summary{cursor:pointer;color:var(--sign);align-items:center;gap:5px;font-size:12.5px;font-weight:700;list-style:none;display:inline-flex}.more summary::-webkit-details-marker{display:none}.more summary svg{width:11px;height:11px;transition:transform .15s}.more[open] summary svg{transform:rotate(90deg)}.more summary:focus-visible{outline:2px solid var(--sign);outline-offset:2px;border-radius:4px}.more-body{color:var(--ink-soft);flex-direction:column;gap:9px;margin-top:9px;font-size:12.5px;line-height:1.5;display:flex}.more-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:2px;font-family:Overpass Mono,ui-monospace,monospace;font-size:10px;display:block}.more-tips{flex-direction:column;gap:3px;margin:0;padding-left:16px;display:flex}.more-src{flex-wrap:wrap;gap:3px 12px;display:flex}.more-src a{color:var(--sign);font-size:12px;font-weight:600;text-decoration:none}.more-src a:hover{text-decoration:underline}.nav-row{flex-wrap:wrap;gap:8px;margin-top:11px;display:flex}.option-label{color:var(--ink-faint);margin-top:10px;font-size:11.5px;font-weight:700}.nav-btn{border:1px solid var(--line);background:var(--surface-2);color:var(--ink);white-space:nowrap;border-radius:9px;align-items:center;gap:6px;padding:7px 11px 6px;font-family:Overpass,sans-serif;font-size:12.5px;font-weight:700;text-decoration:none;display:inline-flex}.nav-btn:active{transform:scale(.96)}.nav-btn.primary{background:var(--maple);border-color:var(--maple);color:#fff}.nav-btn svg{flex:none;width:13px;height:13px}.nav-btn:focus-visible,.check:focus-visible,.day-tab:focus-visible,.learn-more:focus-visible{outline:2px solid var(--sign);outline-offset:2px}.notes-heading{align-items:center;gap:10px;margin:32px 0 12px;display:flex}.notes-heading h2{color:var(--ink);margin:0;font-size:15px;font-weight:800}.notes-heading:after{content:"";background:var(--line);flex:1;height:1px}.notes-list{flex-direction:column;gap:10px;display:flex}.note-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:11px;padding:12px 14px;display:flex}.note-icon{background:var(--surface-2);width:30px;height:30px;color:var(--sign);border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.note-icon svg{width:16px;height:16px}.note-body{flex:1;min-width:0}.note-title{color:var(--ink);margin:0;font-size:14px;font-weight:700}.note-desc{color:var(--ink-soft);margin:2px 0 0;font-size:13px;line-height:1.5}ul.note-desc{flex-direction:column;gap:3px;padding-left:16px;display:flex}.note-desc ul{margin:4px 0 0;padding-left:16px}.learn-more{color:var(--sign);align-items:center;gap:4px;margin-top:8px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.learn-more svg{width:10px;height:10px}.note-links{flex-wrap:wrap;gap:0 14px;display:flex}.base-bar{z-index:5;padding:10px max(16px, env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));background:var(--surface);border-top:1px solid var(--line);justify-content:center;align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px -10px #00000040}.base-bar-text{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.base-bar-text b{color:var(--ink);font-weight:700}.base-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-right:6px;font-family:Overpass Mono,ui-monospace,monospace;font-size:10px}.layout{max-width:640px;padding-block:24px 110px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.side,.main{min-width:0}.day-tabs{grid-template-columns:repeat(4,1fr);gap:6px}.day-tab{color:inherit}@media (width<=440px){.day-tabs{grid-template-columns:repeat(2,1fr);row-gap:12px}}.day-tab-title{overflow-wrap:anywhere}.sync-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;display:flex}.sync-row .sync{min-width:0;margin-top:0}.link-btn{border:1px solid var(--line);color:var(--sign);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:4px 9px 3px;font-size:12px;font-weight:700;display:inline-flex}.link-btn svg{width:12px;height:12px}.link-btn:focus-visible,.home-link:focus-visible,.trip-link:focus-visible,.skip-btn:focus-visible{outline:2px solid var(--sign);outline-offset:2px}.pace-hint.strong{color:var(--ink-soft)}.base-card{display:none}.base-bar .nav-btn,.base-card .nav-btn{flex:none}.base-bar{padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px))}.home-link{display:none}.day-brief svg{width:16px;height:16px;color:var(--amber);flex:none;margin-top:2px}@media (width>=700px){.layout{max-width:720px}.stop{grid-template-columns:56px 22px 1fr}.time-badge{font-size:11.5px}}@media (width>=1000px){.layout{grid-template-columns:360px 1fr;align-items:start;gap:32px;max-width:1180px;padding-block:32px 48px;display:grid}.side{top:calc(16px + env(safe-area-inset-top,0px));scrollbar-width:thin;max-height:calc(100vh - 32px);padding-bottom:8px;position:sticky;overflow-y:auto}.day-tabs{grid-template-columns:repeat(2,1fr);row-gap:12px}.base-bar{display:none}.base-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}.home-link{color:var(--sign);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px;font-weight:700;display:inline-block}.notes-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.main{max-width:760px}}.sheet{border:1px solid var(--line);background:var(--surface);color:var(--ink);width:min(420px,100vw - 32px);box-shadow:var(--shadow);border-radius:16px;padding:20px}.sheet::backdrop{background:#0a100c73}.sheet h2{margin:0 0 6px;font-size:18px}.sheet p{color:var(--ink-soft);margin:0 0 14px;font-size:13.5px;line-height:1.5}.sheet label{color:var(--ink-soft);margin-bottom:4px;font-size:12px;font-weight:700;display:block}.sheet input{width:100%;font:inherit;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:10px;padding:10px 12px;font-size:16px}.sheet input:focus-visible{outline:2px solid var(--sign);outline-offset:1px}.sheet-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.ghost{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:9px;padding:7px 11px 6px;font-size:12.5px;font-weight:700}.sheet .nav-btn{cursor:pointer}.list-wrap{max-width:640px;padding-block:40px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.list-head h1{margin:0 0 4px;font-size:32px;font-weight:800}.list-head p{color:var(--ink-soft);margin:0 0 20px}.trip-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.trip-link{color:var(--panel-ink);background:var(--panel);box-shadow:var(--shadow);border:2px solid var(--panel);outline:2px solid var(--panel-ink);outline-offset:-6px;border-radius:14px;flex-direction:column;gap:3px;padding:16px 18px;text-decoration:none;display:flex}.trip-date{letter-spacing:.08em;opacity:.85;font-family:Overpass Mono,ui-monospace,monospace;font-size:11px}.trip-title{font-size:20px;font-weight:800}.trip-sum{opacity:.9;font-size:13px}@media (prefers-reduced-motion:reduce){.bar-fill{transition:none}.nav-btn:active{transform:none}}.card{position:relative}.card-top .skip-btn{margin:0;position:absolute;top:12px;right:12px}.card-top:has(.skip-btn) .title{padding-right:74px}
