@font-face{font-family:Big Shoulders Display;src:url(/fonts/big_shoulders_display.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space_grotesk.ttf)format("truetype");font-weight:300 700;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/space_mono_regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/space_mono_bold.ttf)format("truetype");font-weight:700;font-display:swap}:root,.theme-night{--bg:#0a1220;--bg-deep:#070d18;--panel:#0c1424;--surface:#0f1a2e;--map:#0d1729;--line:#1a2740;--ring:#243652;--ring-hover:#3a5170;--chip:#23324a;--status:#1b2a44;--toast:#13203a;--hover:#13203a;--amber:#f0a23c;--amber-hover:#ffb55a;--amber-link:#ffc36b;--amber-ink:#f0a23c;--on-amber:#1b1000;--teal:#3ec6c1;--teal-ink:#3ec6c1;--teal-soft:#8fd9d5;--teal-card:#0b2a2c;--on-teal:#04201f;--red:#e5534b;--red-ink:#e5534b;--red-bg:#2a1416;--red-text:#f3b5b0;--text:#eaf0f7;--text-2:#c8d4e2;--text-3:#b8c7d9;--text-dim:#8fa5be;--text-mute:#6c8aa6;--text-off:#4e6580;--glass:#0c1424f0;--glass-label:#0a1220d1;--glow:#13213a;--edge:#ffffff0f;--hover-soft:#ffffff0a;--amber-tint:#f0a23c1f;--amber-tint-2:#f0a23c14;--amber-ring:#f0a23c80;--red-tint:#e5534b1a;--red-ring:#e5534b80;--teal-tint:#3ec6c112;--shadow:#000000f2;--scrim:#050910a6;--sk-1:#122038;--sk-2:#1a2a44;--ctrl-icon:invert(.85);--f-display:"Big Shoulders Display", "Arial Narrow", sans-serif;--f-text:"Space Grotesk", system-ui, sans-serif;--f-mono:"Space Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.theme-night{color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=day]{--bg:#eef2f7;--bg-deep:#e2e8f0;--panel:#fff;--surface:#edf1f6;--map:#e6ebf1;--line:#e3e8ef;--ring:#d3dbe6;--ring-hover:#b4c0d0;--chip:#e2e8f0;--status:#e2e8f0;--toast:#fff;--hover:#e2e8f0;--amber:#d07e14;--amber-hover:#de8e26;--amber-link:#6e3f04;--amber-ink:#8a4f06;--on-amber:#1b1000;--teal:#17827d;--teal-ink:#0f6662;--teal-soft:#0f6662;--teal-card:#dcf2f1;--on-teal:#fff;--red:#d3392f;--red-ink:#b3261e;--red-bg:#fbe9e7;--red-text:#b3261e;--text:#132238;--text-2:#2a3b52;--text-3:#3a4c64;--text-dim:#4b5d75;--text-mute:#536479;--text-off:#5c6c81;--glass:#fffffff2;--glass-label:#ffffffe6;--glow:#fff;--edge:#13223814;--hover-soft:#1322380a;--amber-tint:#d07e1424;--amber-tint-2:#d07e1414;--amber-ring:#d07e148c;--red-tint:#d3392f14;--red-ring:#d3392f80;--teal-tint:#17827d14;--shadow:#13223847;--scrim:#13223866;--sk-1:#e2e8f0;--sk-2:#f4f7fa;--ctrl-icon:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--f-text);-webkit-font-smoothing:antialiased}#app{height:100%}a{color:var(--amber-ink);text-decoration:none}a:hover{color:var(--amber-link)}button{font:inherit}:focus-visible{outline:none;box-shadow:0 0 0 2px var(--text), 0 0 0 5px var(--amber)!important}.h{font-family:var(--f-display);letter-spacing:.005em;font-variant-numeric:tabular-nums;text-transform:uppercase;font-weight:900}.m{font-family:var(--f-mono);letter-spacing:.04em;color:var(--text-mute);text-transform:uppercase;font-size:11px}.num{font-variant-numeric:tabular-nums}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{flex-direction:column;height:100%;display:flex;overflow:hidden}.page>main{flex:auto;min-height:0;display:flex;position:relative}.bar{background:var(--panel);height:64px;box-shadow:0 1px 0 var(--line);z-index:3;flex:none;align-items:center;gap:8px;padding:0 16px 0 20px;display:flex;position:relative}.bar.glass{background:var(--glass)}.brand{height:48px;color:var(--text);align-items:center;gap:10px;padding-right:14px;display:flex}.brand img{display:block}.badge-planer{font-family:var(--f-mono);letter-spacing:.04em;color:var(--teal-ink);box-shadow:0 0 0 1px var(--teal) inset;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:700}.nav{gap:4px;display:flex}.nl{height:48px;font:600 14px/1 var(--f-text);color:var(--text-dim);border-radius:14px;align-items:center;gap:6px;padding:0 16px;display:flex}.nl:hover{color:var(--text);background:var(--surface)}.nl.on{color:var(--amber-ink);background:var(--amber-tint)}.nl.soon{color:var(--text-off);cursor:not-allowed}.nl.soon:hover{color:var(--text-off);background:0 0}.nl .m{color:var(--text-off);font-size:9px}.grow{flex-grow:1}.icb{all:unset;cursor:pointer;box-sizing:border-box;min-width:48px;height:48px;color:var(--text-3);font:600 13px/1 var(--f-text);border-radius:14px;justify-content:center;align-items:center;gap:6px;padding:0 12px;display:flex}.icb:hover{background:var(--surface);color:var(--text)}.avatar{background:var(--chip);width:34px;height:34px;font:700 14px/1 var(--f-text);color:var(--text);text-transform:uppercase;border-radius:17px;justify-content:center;align-items:center;display:flex}.pro-chip{font-family:var(--f-mono);letter-spacing:.04em;color:var(--on-amber);background:var(--amber);border-radius:6px;padding:4px 6px;font-size:10px;font-weight:700}.foot{background:var(--bg-deep);z-index:3;flex:none;align-items:center;gap:20px;height:32px;padding:0 20px;display:flex;position:relative}.foot.tall{height:72px}.foot a.m{color:var(--text-mute)}.foot a.m:hover{color:var(--text)}.stores{align-items:center;gap:12px;display:flex}.stores a{align-items:center;height:48px;display:flex}.stores img{display:block}.btn,.ghost{all:unset;cursor:pointer;box-sizing:border-box;height:52px;font:700 15px/1 var(--f-text);white-space:nowrap;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:0 22px;display:inline-flex}.btn{background:var(--amber);color:var(--on-amber)}.btn:hover{background:var(--amber-hover);color:var(--on-amber)}.ghost{background:var(--surface);box-shadow:0 0 0 1px var(--ring) inset;color:var(--text);padding:0 18px;font-weight:600}.ghost:hover{box-shadow:0 0 0 1px var(--ring-hover) inset;color:var(--text)}.btn[disabled],.ghost[disabled],.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.btn .h{font-size:22px;font-weight:800}.btn-off{all:unset;white-space:nowrap;background:var(--surface);height:48px;box-shadow:0 0 0 1px var(--ring) inset;font:600 14px/1 var(--f-text);color:var(--text-off);cursor:not-allowed;border-radius:16px;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.link-btn{all:unset;cursor:pointer;height:44px;font:600 14px/44px var(--f-text);color:var(--text-3)}.link-btn:hover{color:var(--text)}.pill{font:700 10px/1 var(--f-mono);letter-spacing:.06em;white-space:nowrap;text-transform:uppercase;border-radius:999px;padding:5px 8px}.pill.teal{color:var(--teal-ink);box-shadow:0 0 0 1px var(--teal) inset}.pill.amber{color:var(--on-amber);background:var(--amber)}.status-bar{background:var(--status);border-radius:14px;align-items:center;gap:10px;min-height:48px;padding:0 14px;display:flex}.status-bar .txt{font:600 13px/1.3 var(--f-text);flex-grow:1}.dot{border-radius:4px;flex:none;width:8px;height:8px}.alert{background:var(--red-bg);box-shadow:0 0 0 1px var(--red) inset;border-radius:22px;flex-direction:column;gap:12px;padding:24px 20px;display:flex}.alert p{font:500 14px/1.5 var(--f-text);color:var(--red-text);margin:0}.sk{background:linear-gradient(90deg, var(--sk-1), var(--sk-2), var(--sk-1));background-size:200% 100%;border-radius:10px;animation:1.4s ease-in-out infinite sk}@keyframes sk{0%{background-position:100% 0}to{background-position:-100% 0}}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sk,.spin{animation:none}}.enter{animation:.32s cubic-bezier(.2,.9,.3,1.15) both enter}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.enter{animation:none}}.map-wrap{background:var(--map);flex-grow:1;position:relative;overflow:hidden}.map-wrap .maplibregl-map{position:absolute;inset:0}.map-card{background:var(--glass);box-shadow:0 0 0 1px var(--ring) inset;z-index:2;border-radius:16px;flex-direction:column;gap:4px;padding:12px 16px;display:flex;position:absolute;top:20px;left:20px}.maplibregl-ctrl-attrib{background:var(--glass-label)!important;font:10px var(--f-mono)!important;color:var(--text-dim)!important}.maplibregl-ctrl-attrib a{color:var(--text-dim)!important}.maplibregl-ctrl-group{overflow:hidden;background:var(--panel)!important;box-shadow:0 0 0 1px var(--ring) inset!important;border-radius:14px!important}.maplibregl-ctrl-group button{width:48px!important;height:48px!important}.maplibregl-ctrl-group button+button{border-top:1px solid var(--line)!important}.maplibregl-ctrl-icon{filter:var(--ctrl-icon)}.entry-copy{flex-direction:column;gap:28px;width:860px;max-width:100%;padding:0 80px;display:flex;position:relative}.entry-demo{background:var(--glass);width:300px;box-shadow:0 0 0 1px var(--ring) inset;border-radius:20px;flex-direction:column;gap:8px;padding:16px 18px;display:flex;position:absolute;top:70px;right:60px}.tile{background:var(--glass);box-shadow:0 0 0 1px var(--ring) inset;border-radius:24px;flex-direction:column;flex:1 1 0;gap:12px;padding:24px;display:flex}.tile .btn{align-self:flex-start}.tile-text{font:500 15px/1.5 var(--f-text);color:var(--text-2);flex-grow:1}.draw{stroke-dasharray:1400;stroke-dashoffset:1400px;animation:1.6s cubic-bezier(.4,0,.2,1) .2s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.draw{stroke-dashoffset:0;animation:none}}@media (max-width:1180px){.entry-demo{display:none}.entry-copy{padding:0 40px}}.login-card{background:var(--panel);width:460px;max-width:calc(100% - 32px);box-shadow:0 0 0 1px var(--ring) inset, 0 40px 90px -30px var(--shadow);border-radius:28px;flex-direction:column;gap:16px;padding:32px;display:flex;position:relative}.login-card .btn,.login-card .ghost{width:100%}.g-mark{background:var(--text);width:24px;height:24px;color:var(--bg);font:800 14px/1 var(--f-text);border-radius:12px;justify-content:center;align-items:center;display:flex}.rule{background:var(--ring);flex-grow:1;height:1px}.field{background:var(--surface);height:52px;box-shadow:0 0 0 1px var(--ring) inset;font:500 16px/1 var(--f-text);color:var(--text);border-radius:14px;align-items:center;gap:10px;width:100%;padding:0 16px;display:flex}.field:focus-within{box-shadow:0 0 0 2px var(--amber) inset}.field.err{box-shadow:0 0 0 1px var(--red) inset}.field input{all:unset;font:inherit;color:inherit;flex-grow:1}.field input::placeholder{color:var(--text-mute)}.field input:focus-visible,.field textarea:focus-visible{box-shadow:none!important}.digits{gap:8px;display:flex;position:relative}.digit{background:var(--surface);width:42px;height:56px;box-shadow:0 0 0 1px var(--ring) inset;font:800 28px/1 var(--f-display);font-variant-numeric:tabular-nums;border-radius:12px;justify-content:center;align-items:center;display:flex}.digits:focus-within .digit.cur{box-shadow:0 0 0 2px var(--amber) inset}.digit.bad{box-shadow:0 0 0 1px var(--red) inset}.digits-input{opacity:0;cursor:text;width:100%;font-size:16px;position:absolute;inset:0}.digits:focus-within{outline:none}.soft-alert{background:var(--red-tint);box-shadow:0 0 0 1px var(--red-ring) inset;font:500 14px/1.45 var(--f-text);color:var(--red-text);border-radius:14px;gap:10px;padding:12px 14px;display:flex}.hard-alert{background:var(--red-bg);box-shadow:0 0 0 1px var(--red) inset;border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.note{font:500 13px/1.5 var(--f-text);color:var(--text-dim)}.link-btn[disabled]{opacity:.4;cursor:not-allowed}.nopro{background:radial-gradient(ellipse at 80% 40%, var(--glow) 0%, var(--bg) 60%);flex-grow:1;justify-content:center;align-items:center;gap:48px;padding:0 80px;display:flex;overflow:auto}.nopro .lead{font:500 17px/1.55 var(--f-text);color:var(--text-2);margin:0}.side-card{background:var(--panel);border-radius:28px;flex-direction:column;flex:none;width:440px;padding:24px 28px;display:flex}.ben{border-top:1px solid var(--line);grid-template-columns:44px 1fr;align-items:start;gap:14px;padding:14px 0;display:grid}.ic{background:var(--amber-tint);width:44px;height:44px;color:var(--amber-ink);border-radius:14px;justify-content:center;align-items:center;display:flex}.step{border-top:1px solid var(--line);grid-template-columns:44px 1fr;align-items:center;gap:14px;min-height:64px;padding:8px 0;display:grid}.no{width:40px;height:40px;box-shadow:0 0 0 2px var(--teal) inset;color:var(--teal-ink);font:800 20px/1 var(--f-display);border-radius:20px;justify-content:center;align-items:center;display:flex}@media (max-width:1180px){.nopro{gap:28px;padding:0 32px}.nopro h1{font-size:64px!important}.side-card{width:380px}}.panel{background:var(--panel);width:420px;box-shadow:1px 0 0 var(--line);z-index:2;flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.panel-head{align-items:flex-start;gap:10px;padding:16px 20px 10px;display:flex}.panel-scroll{scrollbar-width:thin;scrollbar-color:var(--ring) transparent;flex-direction:column;flex-grow:1;gap:16px;min-height:0;padding:8px 16px 20px;display:flex;overflow-y:auto}.panel-scroll>*{flex-shrink:0}.group{flex-direction:column;gap:8px;display:flex}.list{background:var(--surface);box-shadow:0 0 0 1px var(--edge) inset;border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.sep{background:var(--line);height:1px;margin:0 14px 0 78px}.row{all:unset;cursor:pointer;box-sizing:border-box;min-height:72px;color:var(--text);grid-template-columns:52px 1fr 20px;align-items:center;gap:12px;padding:8px 14px;transition:background .15s;display:grid}.row:hover{background:var(--hover)}.row.hl{background:var(--surface);box-shadow:0 0 0 1px var(--amber) inset}.row-text{flex-direction:column;gap:4px;min-width:0;display:flex}.row-text .m{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.thumb{border-radius:14px;width:52px;height:52px;display:block;overflow:hidden}.thumb.year{background:var(--bg);justify-content:center;align-items:center;display:flex}.name{font:600 16px/1.2 var(--f-text)}.name.dim{color:var(--text-2)}.tag{font-family:var(--f-mono);letter-spacing:.05em;color:var(--teal-ink);box-shadow:0 0 0 1px var(--teal) inset;vertical-align:2px;white-space:nowrap;text-transform:uppercase;border-radius:999px;margin-left:6px;padding:3px 7px;font-size:10px;font-weight:700}.hero-next .tag{margin-left:0}.hero{all:unset;cursor:pointer;box-sizing:border-box;background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--ring) inset;border-radius:22px;flex-direction:column;transition:box-shadow .2s,transform .2s cubic-bezier(.2,.9,.3,1.2);display:flex;overflow:hidden}.hero.on{box-shadow:0 0 0 2px var(--amber) inset}.hero:hover{transform:translateY(-1px)}.hero-cover{flex-direction:column;justify-content:flex-end;height:120px;display:flex;position:relative}.hero-pill{background:var(--amber);border-radius:999px;padding:6px 10px;font-weight:700;color:var(--on-amber)!important}.hero-title{justify-content:space-between;align-items:flex-end;gap:10px;padding:0 16px 12px;display:flex;position:relative}.hero-next{grid-template-columns:1fr auto;align-items:center;gap:8px 12px;padding:12px 16px 14px;display:grid}.hero-next>span:last-child:empty{display:none}.empty-card{box-shadow:0 0 0 1px var(--ring) inset;border-radius:22px;flex-direction:column;gap:12px;padding:24px 20px;display:flex}.empty-card .btn,.alert .btn{align-self:flex-start}@media (max-width:1023.98px){.panel{width:320px}.panel-head .h{font-size:36px!important}}.nl-ic,.nav-spacer{display:none}.icb.ring{box-shadow:0 0 0 2px var(--amber) inset}.panel-top{align-items:center;gap:8px;min-height:52px;padding:8px 16px 0;display:flex}.back{height:44px;font:600 14px/1 var(--f-text);color:var(--text-3);align-self:flex-start;align-items:center;gap:4px;display:inline-flex}.back:hover{color:var(--text)}.panel-bottom{box-shadow:0 -1px 0 var(--line);flex-direction:column;gap:8px;padding:12px 16px 16px;display:flex}.ghost.sm,.btn.sm{gap:8px;height:48px;padding:0 14px;font-size:14px}.ghost[disabled]:hover{box-shadow:0 0 0 1px var(--ring) inset}.trip-cover{border-radius:22px;flex-direction:column;flex-shrink:0;justify-content:flex-end;height:140px;display:flex;position:relative;overflow:hidden}.crew-pill{background:var(--teal);border-radius:999px;padding:6px 10px;font-weight:700;color:var(--on-teal)!important}.stage{all:unset;cursor:pointer;box-sizing:border-box;min-height:60px;color:var(--text);border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:6px 14px;transition:background .15s,box-shadow .15s;display:grid}.stage:hover{background:var(--hover)}.stage.today{background:var(--amber-tint-2)}.stage.on{box-shadow:0 0 0 1px var(--amber) inset;background:var(--hover)}.stage-name{font:600 15px/1.2 var(--f-text);align-items:center;gap:6px;min-width:0;display:flex}.ellipsis{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.badge{font:700 9px/1 var(--f-mono);letter-spacing:.06em;color:var(--teal-ink);box-shadow:0 0 0 1px var(--teal) inset;border-radius:6px;flex:none;padding:4px 6px}.empty-day{min-height:56px;box-shadow:0 0 0 1px var(--ring) inset;color:var(--text);cursor:default;border-radius:14px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:6px 14px;display:grid}.crew-card{background:var(--teal-card);box-shadow:0 0 0 1px var(--teal) inset;border-radius:18px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.crew-card svg{flex:none;margin-top:1px}.legend{background:var(--glass);box-shadow:0 0 0 1px var(--ring) inset;z-index:2;border-radius:16px;flex-direction:column;gap:6px;padding:12px 14px;display:flex;position:absolute;top:16px;right:16px}.lg{font:500 13px/1 var(--f-text);align-items:center;gap:8px;display:flex}.sw{border-radius:3px;width:24px;height:5px}.map-empty{background:var(--glass);width:380px;max-width:calc(100% - 32px);box-shadow:0 0 0 1px var(--ring) inset;text-align:center;z-index:2;border-radius:20px;flex-direction:column;gap:8px;padding:20px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-day{font:700 11px/1 var(--f-mono);letter-spacing:.04em;color:var(--amber-ink);background:var(--glass-label);white-space:nowrap;pointer-events:none;text-transform:uppercase;border-radius:6px;padding:4px 6px;transition:opacity .2s}.map-day.done{color:var(--teal-ink)}.map-day.dim{opacity:.35}.map-day.focus{box-shadow:0 0 0 1px var(--amber)}.map-lodge{width:26px;height:26px;transition:opacity .2s;display:block}.map-lodge.dim{opacity:.4}.popover{background:var(--panel);box-shadow:0 0 0 1px var(--ring) inset, 0 30px 70px -20px var(--shadow);z-index:20;border-radius:20px;flex-direction:column;gap:10px;padding:18px;display:flex;position:absolute}.popover.menu{gap:2px;min-width:220px;max-height:360px;padding:6px;overflow-y:auto}.menu-item{all:unset;cursor:pointer;box-sizing:border-box;min-height:44px;font:500 14px/1.2 var(--f-text);color:var(--text-2);border-radius:12px;align-items:center;padding:0 12px;display:flex}.menu-item:hover{background:var(--surface);color:var(--text)}.menu-item.on{color:var(--amber-ink);background:var(--amber-tint)}.toast-host{z-index:50;pointer-events:none;position:fixed;bottom:52px;left:50%;transform:translate(-50%)}.toast{background:var(--toast);box-shadow:0 0 0 1px var(--ring) inset, 0 20px 50px -20px var(--shadow);font:600 14px/1.3 var(--f-text);color:var(--text);white-space:nowrap;border-radius:16px;padding:14px 18px}.toast:before{content:"";background:var(--teal);vertical-align:1px;border-radius:4px;width:8px;height:8px;margin-right:10px;display:inline-block}.sheet{background:var(--panel);width:380px;box-shadow:0 0 0 1px var(--ring) inset, 0 30px 70px -20px var(--shadow);z-index:20;border-radius:24px;flex-direction:column;padding:20px 20px 16px;display:flex;position:absolute;top:56px;right:0}.ln{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:56px;padding:6px 4px;display:grid}.ln-text{flex-direction:column;gap:3px;min-width:0;display:flex}.ln-title{font:600 15px/1.2 var(--f-text)}.pro-pill{background:var(--amber);border-radius:999px;padding:5px 8px;font-weight:700;color:var(--on-amber)!important}.pro-link{align-items:center;height:48px;font-weight:700;display:flex;color:var(--amber-ink)!important}.select{align-items:center;display:flex;position:relative}.select select{appearance:none;background:var(--surface);color:var(--text-3);box-shadow:0 0 0 1px var(--ring) inset;height:40px;font:500 14px/1 var(--f-text);cursor:pointer;border:0;border-radius:12px;max-width:190px;padding:0 30px 0 12px}.select select:hover{box-shadow:0 0 0 1px var(--ring-hover) inset}.select:after{content:"▾";pointer-events:none;color:var(--text-dim);font-size:12px;position:absolute;right:12px}.select option{background:var(--panel);color:var(--text)}.delete-link{min-height:44px;font:600 13px/1.4 var(--f-text);color:var(--text-dim);align-items:center;display:flex}.delete-link:hover{color:var(--text)}.scrim{background:var(--scrim);z-index:40;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--panel);width:460px;max-width:calc(100% - 32px);box-shadow:0 0 0 1px var(--ring) inset, 0 30px 70px -20px var(--shadow);border-radius:24px;flex-direction:column;gap:14px;padding:28px;display:flex}.filters{flex-wrap:wrap;gap:8px;padding:6px 20px 8px;display:flex}.flt{all:unset;cursor:pointer;box-sizing:border-box;background:var(--surface);height:44px;box-shadow:0 0 0 1px var(--ring) inset;font:600 14px/1 var(--f-text);color:var(--text-dim);border-radius:12px;flex:none;align-items:center;gap:6px;padding:0 14px;transition:border-radius .2s,background .2s;display:flex}.flt:hover{color:var(--text)}.flt.on{background:var(--teal);color:var(--on-teal);box-shadow:none;border-radius:16px}.dist{font:700 10px/1.5 var(--f-mono);letter-spacing:.05em;color:var(--text-mute);text-align:right;text-transform:uppercase;max-width:90px}.row.hl.teal{box-shadow:0 0 0 1px var(--teal) inset;background:var(--hover)}.link-btn.mono{font:700 11px/40px var(--f-mono);letter-spacing:.04em;text-transform:uppercase;height:40px}.link-btn.teal{color:var(--teal-ink)}.seg{background:var(--surface);border-radius:14px;flex-wrap:wrap;gap:2px;padding:3px;display:flex}.sg{all:unset;cursor:pointer;box-sizing:border-box;height:40px;font:600 13px/1 var(--f-text);color:var(--text-3);white-space:nowrap;border-radius:12px;align-items:center;padding:0 12px;transition:background .2s,color .2s;display:flex}.sg:hover{color:var(--text)}.sg.on{background:var(--amber);color:var(--on-amber)}.anc{grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:44px;padding:4px 0;display:grid}.anc .num{width:26px;height:26px;box-shadow:0 0 0 2px var(--text-dim) inset;font:700 11px/1 var(--f-mono);color:var(--text-2);border-radius:13px;justify-content:center;align-items:center;display:flex}.anc .num.night{background:var(--amber);color:var(--on-amber);box-shadow:none}.anc .num.spur{box-shadow:0 0 0 2px var(--amber) inset;color:var(--amber-ink)}.stat{flex-direction:column;gap:3px;display:flex}.stat .h{white-space:nowrap}.legend{width:max-content}.pill.pro-dark{background:var(--on-amber);color:var(--amber)}@media (max-width:1023.98px){.bar{gap:4px;height:60px;padding:0 8px 0 14px}.brand img{width:113px;height:28px}.brand{gap:8px;padding-right:8px}.badge-planer{padding:3px 6px;font-size:9px}.nav-spacer{display:block}.nav-after{display:none}.nl{justify-content:center;width:48px;padding:0}.nl-ic{display:flex}.nl-lbl{display:none!important}.sheet{width:340px}.trip-cover .h,.panel h1.h{font-size:34px!important}.legend{display:none}.filters{padding:6px 14px 8px}.flt{height:40px;padding:0 10px;font-size:13px}.stat .h{font-size:24px!important}.panel-bottom .btn{white-space:normal;padding:0 12px}.panel-bottom .btn .h{font-size:17px}}.sk-head{flex-direction:column;gap:6px;padding:16px 20px 12px;display:flex}.sk-scroll{gap:6px;padding:0 16px 12px}.sk-label{flex-direction:column;gap:6px;padding:0 4px 6px;display:flex}.field.sk-field{height:48px;padding:0 14px;font-size:14px}.ps{position:relative}.ps-list{background:var(--toast);box-shadow:0 0 0 1px var(--edge) inset, 0 22px 50px -16px var(--shadow);z-index:6;border-radius:16px;flex-direction:column;max-height:320px;padding:6px;display:flex;position:absolute;top:52px;left:0;right:0;overflow-y:auto}.ps-item{all:unset;cursor:pointer;box-sizing:border-box;border-radius:12px;flex-direction:column;gap:3px;min-width:0;min-height:48px;padding:8px 12px;display:flex}.ps-item.on{background:var(--amber-tint)}.ps-name{font:600 14px/1.2 var(--f-text);color:var(--text)}.ps-note{text-transform:none;padding:10px 12px;line-height:1.5}.sk-list-head{justify-content:space-between;align-items:center;min-height:32px;padding:6px 6px 2px;display:flex}.sk-list{flex-direction:column;gap:6px;display:flex}.sk-stop{border-radius:14px;flex-direction:column;gap:6px;transition:box-shadow .15s,background .15s;display:flex}.sk-stop.sel{background:var(--surface);box-shadow:0 0 0 1px var(--amber) inset}.sk-stop.over{box-shadow:0 -2px 0 var(--amber)}.sk-row{cursor:pointer;border-radius:14px;grid-template-columns:20px 30px 1fr 48px;align-items:center;gap:8px;min-height:56px;padding:0 4px 0 6px;display:grid}.sk-stop:not(.sel) .sk-row:hover{background:var(--surface)}.sk-handle{height:48px;color:var(--text-off);cursor:grab;justify-content:center;align-items:center;display:flex}.sk-num{width:28px;height:28px;font:700 12px/1 var(--f-mono);border-radius:14px;justify-content:center;align-items:center;display:flex}.sk-x{all:unset;cursor:pointer;width:48px;height:48px;color:var(--text-mute);border-radius:12px;justify-content:center;align-items:center;display:flex}.sk-x:hover{color:var(--red-ink);background:var(--red-tint)}.sk-sel{flex-direction:column;gap:6px;padding:0 6px 8px 64px;display:flex}.seg.sk-seg{background:var(--bg);box-shadow:0 0 0 1px var(--ring) inset;flex-wrap:nowrap;gap:4px;padding:4px}.sk-seg .sg{height:48px;color:var(--text-dim);flex-direction:column;flex:1 1 0;justify-content:center;gap:3px;padding:0 2px;font-size:11px;transition:border-radius .18s cubic-bezier(.2,.9,.3,1.4),background .2s}.sk-seg .sg.on{color:var(--on-amber);border-radius:16px}.sk-name{all:unset;box-sizing:border-box;background:var(--bg);height:40px;box-shadow:0 0 0 1px var(--ring) inset;font:500 14px/1 var(--f-text);color:var(--text);border-radius:12px;padding:0 12px}.sk-name:focus{box-shadow:0 0 0 2px var(--amber) inset}.sk-err{margin:0 6px 8px 64px;padding:10px 12px;font-size:13px}.sk-dots{background:var(--surface);border-radius:16px;align-items:center;padding:4px;display:flex}.sk-dot-wrap{display:flex}.sk-dot{all:unset;cursor:pointer;border-radius:24px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.sk-dot>span{width:30px;height:30px;font:700 12px/1 var(--f-mono);box-shadow:0 0 0 2px var(--text) inset;color:var(--text);border-radius:15px;justify-content:center;align-items:center;display:flex}.sk-dot.start>i{background:var(--text-dim);width:8px;height:8px;box-shadow:0 0 0 11px var(--bg), 0 0 0 13px var(--text-dim);border-radius:4px}.sk-dot.end>span{background:var(--amber);color:var(--on-amber);box-shadow:none}.sk-dot.sel{box-shadow:0 0 0 2px var(--amber) inset}.sk-dot.sel>span{background:var(--amber);color:var(--on-amber);box-shadow:none}.sk-dot.fail>span{box-shadow:0 0 0 2px var(--red) inset;color:var(--red-ink);background:var(--bg)}.sk-dash{background:var(--amber);opacity:.6;flex:1 1 0;min-width:4px;height:2px}.sk-card{box-shadow:0 0 0 1px var(--amber) inset;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.sk-card .sk-seg .sg{height:40px}.sk-done{background:var(--teal-card);box-shadow:0 0 0 1px var(--teal) inset;border-radius:18px;flex-direction:column;gap:8px;min-width:0;margin-top:8px;padding:14px 16px;display:flex}.sk-bottom{box-shadow:0 -1px 0 var(--line);background:var(--panel);flex-direction:column;gap:10px;padding:12px 20px 16px;display:flex;position:relative}.sk-bottom .btn{width:100%}.sk-modes{background:var(--surface);box-shadow:0 0 0 1px var(--edge) inset;border-radius:15px;gap:4px;padding:3px;display:flex}.mode{all:unset;cursor:pointer;box-sizing:border-box;height:40px;font:600 13px/1 var(--f-text);color:var(--text-3);border-radius:12px;justify-content:center;align-items:center;padding:0 14px;transition:border-radius .18s cubic-bezier(.2,.9,.3,1.4),background .2s;display:flex}.mode.on{background:var(--amber);color:var(--on-amber);border-radius:20px}.chip{all:unset;cursor:pointer;box-sizing:border-box;height:48px;box-shadow:0 0 0 1px var(--ring) inset;font:600 13px/1 var(--f-text);color:var(--text);border-radius:24px;align-items:center;gap:6px;padding:0 14px;display:flex}.chip.open{box-shadow:0 0 0 2px var(--amber) inset}.cnt{background:var(--amber);min-width:18px;height:18px;color:var(--on-amber);font:700 10px/18px var(--f-mono);text-align:center;border-radius:9px}.sk-pop-scrim{z-index:4;position:fixed;inset:0}.pop{background:var(--toast);width:300px;box-shadow:0 0 0 1px var(--edge) inset, 0 22px 50px -16px var(--shadow);z-index:5;border-radius:22px;flex-direction:column;gap:2px;padding:10px 8px;animation:.24s cubic-bezier(.2,.9,.3,1.15) both enter;display:flex;position:absolute;bottom:58px;right:0}.pop:after{content:"";background:var(--toast);border-radius:3px;width:18px;height:18px;position:absolute;bottom:-9px;right:40px;transform:rotate(45deg)}.opt{all:unset;cursor:pointer;box-sizing:border-box;min-height:52px;color:var(--text);border-radius:14px;align-items:center;gap:12px;padding:0 6px 0 14px;display:flex}.opt:hover{background:var(--hover-soft)}.swt{background:var(--ring);border-radius:14px;flex:none;width:48px;height:28px;transition:background .2s;position:relative}.swt:after{content:"";background:var(--text-dim);border-radius:10px;width:20px;height:20px;transition:left .22s cubic-bezier(.2,.9,.3,1.3),background .2s;position:absolute;top:4px;left:4px}.swt.on{background:var(--amber)}.swt.on:after{background:var(--on-amber);left:24px}.sk-save{background:var(--surface);height:52px;box-shadow:0 0 0 1px var(--ring) inset;font:600 14px/1 var(--f-text);color:var(--text-off);cursor:not-allowed;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:0 16px;display:flex}.blink{animation:1.1s ease-in-out infinite blink}@keyframes blink{50%{opacity:.45}}.map-tip{background:var(--toast);box-shadow:0 0 0 1px var(--edge) inset, 0 12px 30px -12px var(--shadow);pointer-events:none;z-index:3;white-space:nowrap;border-radius:12px;padding:8px 12px;position:absolute;top:0;left:0}.map-tip>span:first-child{font:600 13px/1.3 var(--f-text);color:var(--text);display:block}.map-hint{pointer-events:none;z-index:2;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.map-bubble{background:var(--toast);box-shadow:0 0 0 1px var(--edge) inset;font:600 14px/1.3 var(--f-text);border-radius:12px;padding:10px 14px}.busy-pill{background:var(--toast);height:52px;box-shadow:0 0 0 1px var(--edge) inset, 0 16px 40px -14px var(--shadow);z-index:3;white-space:nowrap;border-radius:26px;align-items:center;gap:12px;padding:0 8px 0 16px;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)}.map-offline{z-index:3;gap:12px;min-height:52px;padding:0 16px;position:absolute;top:16px;left:16px;right:80px}.map-alert{background:var(--red-bg);max-width:320px;box-shadow:0 0 0 1px var(--red) inset;z-index:3;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex;position:absolute}.mk{cursor:grab;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.mk.mk-shape{cursor:pointer;width:18px;height:18px}.mk.mk-shape:hover svg circle{stroke:var(--amber)}.mk svg{display:block}.mk-label{font:600 13px/1 var(--f-text);color:var(--text-3);white-space:nowrap;pointer-events:none;text-shadow:0 0 4px var(--bg), 0 0 2px var(--bg);position:absolute;top:50%;left:40px;transform:translateY(-50%)}.mk-fail{pointer-events:none;width:26px;height:26px;display:block}.fit-btn{color:var(--text);justify-content:center;align-items:center;display:flex!important}@media (max-width:1023.98px){.sk-head{padding:10px 14px}.sk-scroll{padding:0 12px 12px}.sk-bottom{gap:8px;padding:10px 14px 14px}.sk-sel{padding-left:8px}.sk-err{margin-left:8px}.mode{padding:0 10px;font-size:12px}.sk-save{height:48px;padding:0 12px;font-size:13px}.map-offline{right:70px}.pop{width:280px}}.sk-save>span,.sk-bottom .link-btn{white-space:nowrap}.sk-bottom .m.grow{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (max-width:1023.98px){.sk-save{gap:6px;font-size:12px}.sk-save .m{font-size:9px}}.pl-head{flex-direction:column;gap:8px;padding:10px 20px 12px;display:flex}.pl-head .back{text-overflow:ellipsis;white-space:nowrap;max-width:220px;display:inline-flex;overflow:hidden}.field.pl-name{height:52px}.field.pl-name input{font:800 24px/1 var(--f-display);letter-spacing:.01em;min-width:0}.field.pl-name input::placeholder{color:var(--text-off)}.pl-start{grid-template-columns:20px 30px 1fr 48px;align-items:center;gap:8px;min-height:52px;padding:0 4px 0 6px;display:grid}.pl-start:before{content:""}.pl-start-num{background:var(--bg);box-shadow:0 0 0 2px var(--text-dim) inset}.pl-start-num>i{background:var(--text-dim);border-radius:4px;width:8px;height:8px}.pl-lock{width:48px;height:48px;color:var(--text-off);justify-content:center;align-items:center;display:flex}.pl-row{gap:8px;display:flex}.pl-row>.btn{flex:auto;width:auto;min-width:0}.pl-row>.ghost{flex:none}.pl-card{border-radius:18px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.pl-card.teal{background:var(--teal-card);box-shadow:0 0 0 1px var(--teal) inset}.pl-card.red{background:var(--red-bg);box-shadow:0 0 0 1px var(--red) inset}.pl-pill{background:var(--toast);height:52px;box-shadow:0 0 0 1px var(--edge) inset, 0 16px 40px -14px var(--shadow);font:600 14px/1 var(--f-text);white-space:nowrap;z-index:3;border-radius:26px;align-items:center;gap:12px;padding:0 20px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.empty-day.on{cursor:pointer;transition:background .15s,box-shadow .15s}.empty-day.on:hover{background:var(--surface);box-shadow:0 0 0 1px var(--amber) inset}button.sk-save{all:unset;box-sizing:border-box;background:var(--surface);height:52px;box-shadow:0 0 0 1px var(--ring) inset;font:600 14px/1 var(--f-text);color:var(--text-off);cursor:not-allowed;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:0 16px;display:flex}button.sk-save.on{color:var(--text);cursor:pointer}button.sk-save.on:hover{box-shadow:0 0 0 1px var(--amber) inset}.st-modal{width:520px;max-height:calc(100vh - 80px)}.st-list{flex-direction:column;gap:6px;min-height:0;display:flex;overflow-y:auto}.st-days{flex-direction:column;gap:6px;max-height:360px;padding:2px;display:flex;overflow-y:auto}.st-row{all:unset;cursor:pointer;box-sizing:border-box;min-height:56px;box-shadow:0 0 0 1px var(--ring) inset;color:var(--text);border-radius:14px;align-items:center;gap:12px;padding:6px 12px;display:flex}.st-row:hover{background:var(--surface)}.st-row.on{background:var(--surface);box-shadow:0 0 0 2px var(--amber) inset}.st-row[disabled]{opacity:.45;cursor:not-allowed}@media (max-width:1023.98px){.pl-head{padding:8px 14px 10px}.field.pl-name{height:48px}.field.pl-name input{font-size:20px}.pl-pill{bottom:20px}button.sk-save{gap:6px;height:48px;padding:0 12px;font-size:12px}}.phone-bar{background:var(--teal-card);box-shadow:0 0 0 1px var(--teal) inset;border-radius:16px;flex:none;align-items:flex-start;gap:12px;margin:0 16px 10px;padding:12px 14px;display:flex}.phone-bar.red{background:var(--red-bg);box-shadow:0 0 0 1px var(--red) inset}.phone-bar>svg{flex:none;margin-top:2px}.phone-bar .txt{flex-direction:column;gap:4px;min-width:0;display:flex}.phone-bar .ttl{font-size:18px;line-height:1}.phone-bar .sub{font:500 13px/1.45 var(--f-text);color:var(--teal-soft)}.phone-bar.red .sub{color:var(--red-text)}.phone-bar .cut{font:500 12px/1.45 var(--f-text);color:var(--text-3)}.phone-badge{font:700 9px/1 var(--f-mono);letter-spacing:.06em;color:var(--teal-ink);box-shadow:0 0 0 1px var(--teal) inset;white-space:nowrap;text-transform:uppercase;border-radius:6px;flex:none;padding:4px 6px}.sk-stop.phone{background:var(--teal-tint)}.sk-stop.phone.sel{box-shadow:0 0 0 1px var(--teal) inset}.sk-dot.phone>span,.sk-dot.phone.end>span{background:var(--bg);box-shadow:0 0 0 2px var(--teal) inset;color:var(--teal-ink)}.phone-bubble{background:var(--hover);box-shadow:0 0 0 1px var(--edge) inset, 0 22px 50px -16px var(--shadow);border-radius:18px;flex-direction:column;gap:10px;margin:6px 0 0 36px;padding:14px 16px;display:flex;position:relative}.phone-bubble:before{content:"";background:var(--hover);border-radius:3px;width:16px;height:16px;position:absolute;top:-8px;left:30px;transform:rotate(45deg)}.phone-bubble .btn,.phone-bubble .ghost{height:48px}.map-phone{background:var(--hover);box-shadow:0 0 0 1px var(--edge) inset;border-radius:12px;flex-direction:column;gap:2px;max-width:360px;padding:8px 12px;display:flex;position:absolute;bottom:40px;left:16px}@media (max-width:1023px){.phone-bar{margin:0 12px 8px;padding:10px 12px}.phone-bubble{margin-left:0}.phone-bubble:before{left:18px}}.toast.has-action{pointer-events:auto;align-items:center;gap:4px;padding:6px 6px 6px 18px;display:flex}.toast-action{all:unset;cursor:pointer;height:40px;font:700 14px/40px var(--f-text);color:var(--amber-ink);border-radius:12px;margin-left:10px;padding:0 14px}.toast-action:hover{background:var(--amber-tint)}.map-undo{background:var(--panel);box-shadow:0 0 0 1px var(--ring) inset, 0 12px 30px -14px var(--shadow);z-index:3;border-radius:14px;display:flex;position:absolute;top:16px;left:16px;overflow:hidden}.map-undo button{all:unset;cursor:pointer;box-sizing:border-box;height:48px;font:600 13px/1 var(--f-text);color:var(--text-2);align-items:center;gap:6px;padding:0 14px;display:flex}.map-undo button+button{border-left:1px solid var(--line)}.map-undo button:hover:not(:disabled){background:var(--surface);color:var(--text)}.map-undo button:disabled{cursor:default;color:var(--text-off)}.pl-days{scrollbar-width:thin;gap:6px;margin:0 -2px;padding:2px;display:flex;overflow-x:auto}.pl-day{all:unset;cursor:pointer;box-sizing:border-box;min-width:48px;height:40px;font:900 17px/1 var(--f-display);letter-spacing:.02em;color:var(--text-off);box-shadow:0 0 0 1px var(--line) inset;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:4px;padding:0 10px;display:inline-flex}.pl-day.planned{color:var(--amber-ink);box-shadow:0 0 0 1px var(--ring) inset}.pl-day.done{color:var(--teal-ink)}.pl-day:hover{background:var(--surface)}.pl-day.cur{background:var(--amber);color:var(--on-amber);box-shadow:none;cursor:default}.pl-day .dot-empty{opacity:.6;background:currentColor;border-radius:3px;width:5px;height:5px}.stage-row{grid-template-columns:1fr auto;align-items:center;gap:2px;display:grid}.stage-edit{all:unset;cursor:pointer;box-sizing:border-box;width:44px;height:44px;color:var(--text-mute);border-radius:12px;justify-content:center;align-items:center;display:flex}.stage-edit:hover{color:var(--amber-ink);background:var(--amber-tint)}.sk-move{gap:6px;display:flex}.sk-move .chip{height:36px;padding:0 12px;font-size:13px}.sk-move .chip:disabled{opacity:.4;cursor:default}.spur-card{background:var(--toast);max-width:min(640px,100% - 32px);box-shadow:0 0 0 1px var(--amber) inset, 0 16px 40px -14px var(--shadow);z-index:4;border-radius:18px;align-items:center;gap:12px;padding:8px 8px 8px 18px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.spur-card .btn.sm{white-space:nowrap;height:40px;padding:0 16px}.modal-card.plan-idea{border-radius:26px;width:520px;max-height:calc(100vh - 48px);padding:26px}.modal-card.gate{box-shadow:0 0 0 2px var(--amber) inset, 0 30px 70px -20px var(--shadow)}.plan-idea-body{flex-direction:column;gap:12px;min-height:0;margin:0 -6px;padding:2px 6px;display:flex;overflow-y:auto}.pi-field{flex-direction:column;gap:6px;display:flex}.nt-hint{font:500 13px/1.5 var(--f-text);color:var(--text-dim)}.field.nt-note{align-items:stretch;height:auto;padding:10px 14px}.field textarea{all:unset;font:inherit;color:inherit;white-space:pre-wrap;overflow-wrap:anywhere;flex-grow:1;min-height:60px}.field textarea::placeholder{color:var(--text-mute)}.opt.pi-opt{background:var(--surface);min-height:56px;box-shadow:0 0 0 1px var(--ring) inset}.pi-days{background:var(--surface);border-radius:14px;flex-direction:column;gap:2px;max-height:168px;padding:8px 12px;display:flex;overflow-y:auto}.pi-day{grid-template-columns:30px 92px 1fr auto;align-items:center;gap:8px;min-height:28px;display:grid}.pi-day-name{font:500 13px/1.25 var(--f-text);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
