:root{--deep: #0e2a33;--deep-2: #16404c;--primary: #0e7c7b;--primary-ink: #0b6463;--primary-soft: #dff2ef;--mist: #e2f1f3;--mist-2: #c7e4e8;--sand: #fff1cf;--sand-2: #f8dfa0;--citrus: #f5b841;--citrus-soft: #fff4d6;--ground: #f4f8f7;--white: #ffffff;--sea: #1f6177;--lilac: #ece9f7;--lilac-ink: #4f4685;--ink: #0e2a33;--muted: #4b6470;--line: #d7e3e1;--line-strong: #bdd1ce;--success: #1e6b4a;--success-soft: #dcf0e5;--danger: #b42318;--danger-soft: #fde8e6;--cat-flight: #315f84;--cat-stay: #b45309;--cat-transport: #5a4683;--cat-activity: #8a5a00;--cat-food: #8a4b2a;--cat-other: #4a5a6e;--font: "Inter", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-display: "Space Grotesk", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--radius-s: 10px;--radius: 16px;--radius-l: 24px;--shadow: 0 1px 2px rgba(14, 42, 51, .06), 0 6px 18px rgba(14, 42, 51, .07);--shadow-lift: 0 2px 4px rgba(14, 42, 51, .08), 0 14px 32px rgba(14, 42, 51, .12);--focus: 0 0 0 3px var(--white), 0 0 0 6px var(--sea);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--nav-h: 68px;--top-h: 60px;--content: 1080px;font-size:16px}html.larger-text{font-size:18px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--ground)}body{margin:0;min-height:100vh;background:var(--ground);color:var(--ink);font-family:var(--font);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--sea);text-underline-offset:3px}h1,h2,h3,h4{font-family:var(--font-display);color:var(--deep);margin:0;line-height:1.15;letter-spacing:-.01em}h1{font-size:clamp(1.75rem,1.4rem + 1.6vw,2.5rem);font-weight:800}h2{font-size:1.35rem;font-weight:750}h3{font-size:1.08rem;font-weight:700}p{margin:0}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--deep);color:var(--white);padding:10px 14px;border-radius:10px}.skip-link:focus{top:12px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation:none!important;transition:none!important}.label{font-size:.72rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.label--primary{color:var(--primary-ink)}.label--sea{color:var(--sea)}.muted{color:var(--muted)}.small{font-size:.875rem}.tiny{font-size:.78rem}.strong{font-weight:700}.mono{font-family:var(--mono);letter-spacing:.02em}.nowrap{white-space:nowrap}.center{text-align:center}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;height:var(--top-h);display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-4);background:#f4f8f7eb;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--deep);min-height:44px}.brand__mark{width:34px;height:34px;flex:none}.brand__mark--large{width:56px;height:56px}.brand__word{font-family:var(--font-display);font-weight:700;font-size:1.2rem;letter-spacing:-.02em;color:var(--deep)}.topbar__spacer{flex:1}.topnav{display:none;gap:4px}.topnav a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;text-decoration:none;color:var(--deep);font-weight:650;font-size:.95rem}.topnav a:hover{background:var(--sand)}.topnav a[aria-current=page]{background:var(--deep);color:var(--white)}.main{flex:1;width:100%;max-width:var(--content);margin:0 auto;padding:var(--space-5) var(--space-4) calc(var(--nav-h) + 40px)}.main--narrow{max-width:560px}.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--deep);box-shadow:0 -6px 20px #0e2a332e}.bottomnav a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;text-decoration:none;color:#b8ccd2;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.bottomnav a svg{width:22px;height:22px}.bottomnav a[aria-current=page]{color:var(--white)}.bottomnav a[aria-current=page]:before{content:"";position:absolute;top:0;left:22%;right:22%;height:4px;border-radius:0 0 4px 4px;background:var(--citrus)}.bottomnav a:focus-visible{box-shadow:inset 0 0 0 3px var(--citrus);border-radius:0}.trip-layout{display:block}.trip-rail{display:none}.trip-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);min-width:0}.trip-head__name{min-width:0}.trip-head__name h1{font-size:1.5rem;overflow-wrap:anywhere}.back-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--sea);font-weight:650;text-decoration:none}@media(min-width:900px){.topnav{display:flex}.bottomnav{display:none}.main{padding-bottom:var(--space-10)}.trip-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--space-8);align-items:start}.trip-rail{display:flex;flex-direction:column;gap:4px;position:sticky;top:calc(var(--top-h) + 20px)}.trip-rail a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 14px;border-radius:14px;text-decoration:none;color:var(--deep);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;position:relative}.trip-rail a svg{width:22px;height:22px;color:var(--sea)}.trip-rail a:hover{background:var(--sand)}.trip-rail a[aria-current=page]{background:var(--deep);color:var(--white)}.trip-rail a[aria-current=page] svg{color:var(--citrus)}.trip-rail__label{padding:0 14px 8px}.trip-rail__divider{height:1px;background:var(--line);margin:10px 14px}.trip-rail .rail-secondary{text-transform:none;letter-spacing:0;font-weight:600;font-size:.92rem;min-height:40px;color:var(--muted)}}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack-s{display:flex;flex-direction:column;gap:var(--space-2)}.stack-l{display:flex;flex-direction:column;gap:var(--space-8)}.row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.row--between{justify-content:space-between}.row--nowrap{flex-wrap:nowrap}.grow{flex:1;min-width:0}.grid-2,.grid-3{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media(min-width:640px){.grid-2,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:980px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.section-head{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.page-head{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-5)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:999px;border:2px solid transparent;font-weight:750;font-size:.98rem;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .12s ease,background-color .15s ease,box-shadow .15s ease}.btn svg{width:20px;height:20px;flex:none}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--primary);color:var(--white);box-shadow:0 4px 12px #0e7c7b47}.btn--primary:hover{background:#0a6766}.btn--deep{background:var(--deep);color:var(--white)}.btn--deep:hover{background:var(--deep-2)}.btn--secondary{background:var(--white);color:var(--deep);border-color:var(--line-strong)}.btn--secondary:hover{border-color:var(--deep)}.btn--ghost{background:transparent;color:var(--sea);padding:0 12px}.btn--ghost:hover{background:var(--mist)}.btn--danger{background:var(--white);color:var(--danger);border-color:#f0b8b1}.btn--danger:hover{background:var(--danger-soft)}.btn--small{min-height:44px;padding:0 14px;font-size:.9rem}.btn--block{width:100%}.btn--icon{width:44px;min-height:44px;padding:0;border-radius:50%}.btn-row{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5);min-width:0}.card--mist{background:var(--mist);border-color:var(--mist-2);box-shadow:none}.card--sand{background:var(--sand);border-color:var(--sand-2);box-shadow:none}.card--lilac{background:var(--lilac);border-color:#e1d5f1;box-shadow:none}.card--deep{background:var(--deep);color:var(--white);border-color:var(--deep)}.card--deep h2,.card--deep h3{color:var(--white)}.card--deep .label{color:#b8ccd2}.card--flat{box-shadow:none}.card--link{display:block;text-decoration:none;color:inherit;transition:transform .15s ease,box-shadow .15s ease}.card--link:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.ticket{--notch: 13px;--stub: 34%;position:relative;display:grid;grid-template-columns:minmax(0,1fr);background:var(--white);border-radius:var(--radius-l);overflow:hidden;text-decoration:none;color:inherit;isolation:isolate;-webkit-mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--stub)),transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% calc(100% - var(--stub)),transparent 98%,#000) right / 51% 100% no-repeat;mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--stub)),transparent 98%,#000) left / 51% 100% no-repeat,radial-gradient(circle var(--notch) at 100% calc(100% - var(--stub)),transparent 98%,#000) right / 51% 100% no-repeat}.ticket-shadow{filter:drop-shadow(0 1px 1px rgba(14,42,51,.08)) drop-shadow(0 8px 16px rgba(14,42,51,.1));transition:transform .15s ease;min-width:0}.ticket-shadow:hover:has(a.ticket){transform:translateY(-2px)}a.ticket:focus-visible{outline:3px solid var(--sea);outline-offset:-3px;box-shadow:none}.ticket__band{height:8px;background:var(--accent, var(--primary))}.ticket__main{padding:var(--space-5) var(--space-5) var(--space-4);display:flex;gap:var(--space-4);align-items:flex-start;min-width:0}.ticket__perf{height:0;border-top:2px dashed var(--line-strong);margin:0 var(--space-5)}.ticket__stub{padding:var(--space-4) var(--space-5) var(--space-5);background:var(--ground);display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-6);align-items:center}.ticket__field{display:flex;flex-direction:column;gap:2px;min-width:0}.ticket__value{font-weight:750;color:var(--deep);overflow-wrap:anywhere}.ticket--compact{--stub: 38%}.route{display:flex;align-items:center;gap:10px;color:var(--deep)}.route__code{font-family:var(--font-display);font-size:1.9rem;font-weight:850;letter-spacing:.04em;line-height:1}.route__line{flex:1;min-width:40px;max-width:150px;height:22px}.tag{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr);background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;text-decoration:none;color:inherit}a.tag{transition:transform .15s ease,box-shadow .15s ease}a.tag:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}.tag__edge{background:var(--accent, var(--sea))}.tag__body{padding:var(--space-4) var(--space-4) var(--space-4) var(--space-4);display:grid;gap:var(--space-2);min-width:0}.tag__top{display:flex;align-items:center;gap:var(--space-3);min-width:0}.tag__icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 14%,white);color:var(--accent);flex:none}.tag__icon svg{width:22px;height:22px}.tag__title{font-weight:750;color:var(--deep);overflow-wrap:anywhere}.tag__meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:var(--muted);font-size:.875rem}.tag__seam{border-top:2px dashed var(--line);margin:4px 0 2px}.cat-flight{--accent: var(--cat-flight)}.cat-stay{--accent: var(--cat-stay)}.cat-transport{--accent: var(--cat-transport)}.cat-activity{--accent: var(--cat-activity)}.cat-food{--accent: var(--cat-food)}.cat-other{--accent: var(--cat-other)}.hero{position:relative;overflow:hidden;border-radius:var(--radius-l);padding:var(--space-6) var(--space-5);background:var(--mist);border:1px solid var(--mist-2);min-width:0}.hero__art{position:absolute;top:0;right:0;width:min(46%,360px);height:58%;pointer-events:none;z-index:0;opacity:.9}@media(max-width:599px){.hero__art{width:42%;height:40%;opacity:.7}}.hero--wide-art .hero__art{width:min(70%,520px)}.hero__content{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-3)}.hero--sand{background:var(--sand);border-color:var(--sand-2)}.hero--deep{background:var(--deep);border-color:var(--deep);color:var(--white)}.hero--deep h1,.hero--deep h2{color:var(--white)}.hero--deep .label{color:#b8ccd2}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:750;letter-spacing:.04em;background:var(--mist);color:var(--sea);white-space:nowrap}.pill--danger{background:var(--danger-soft);color:var(--danger)}.pill--citrus{background:var(--citrus-soft);color:#7a5508}.pill--deep{background:var(--deep);color:var(--white)}.pill--green{background:var(--success-soft);color:var(--success)}.pill--lilac{background:var(--lilac);color:var(--lilac-ink)}.pill--outline{background:transparent;border:1px solid var(--line-strong);color:var(--muted)}.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.stage{display:flex;flex-direction:column;gap:6px;font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.stage__bar{height:6px;border-radius:6px;background:var(--line)}.stage--done .stage__bar{background:var(--sea)}.stage--current .stage__bar{background:var(--primary)}.stage--current{color:var(--primary-ink)}.stage--done{color:var(--sea)}.avatars{display:flex;align-items:center}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;color:var(--deep);background:var(--sand);border:2px solid var(--white);flex:none}.avatars .avatar+.avatar{margin-left:-10px}.avatar--1{background:var(--mist)}.avatar--2{background:var(--citrus-soft)}.avatar--3{background:var(--lilac)}.avatar--4{background:var(--primary-soft)}.avatar--5{background:#dcf0e5}.avatar--6{background:var(--mist-2)}.avatar--7{background:var(--sand-2)}.avatar--more{background:var(--deep);color:var(--white)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field__label{font-weight:700;color:var(--deep);font-size:.92rem}.field__hint{font-size:.82rem;color:var(--muted)}.field__error{font-size:.85rem;color:var(--danger);font-weight:650}.input,.select,.textarea{width:100%;min-height:48px;padding:10px 14px;border-radius:12px;border:1.5px solid var(--line-strong);background:var(--white);color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}.textarea{min-height:110px;resize:vertical}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--sea);box-shadow:0 0 0 3px #315f8438}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.input--code{text-transform:uppercase;font-family:var(--mono);letter-spacing:.08em}.input--code::placeholder{text-transform:none;font-family:var(--font);letter-spacing:0}.input-group{display:flex;align-items:stretch}.input-group .input{border-radius:12px 0 0 12px}.input-group .select{width:auto;border-radius:0 12px 12px 0;border-left:0;min-width:92px}.field--uncertain .input,.field--uncertain .select{border-color:var(--citrus);background:var(--citrus-soft)}.field--missing .input,.field--missing .select{border-color:var(--danger);border-style:dashed}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0}.form-grid{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media(min-width:560px){.form-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:1 / -1}}.check{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.check input{width:22px;height:22px;accent-color:var(--primary);flex:none}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:999px;border:1.5px solid var(--line-strong);background:var(--white);cursor:pointer;font-weight:650;color:var(--deep)}.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--deep);border-color:var(--deep);color:var(--white)}.chip:hover{border-color:var(--deep)}.segmented{display:inline-flex;padding:4px;border-radius:999px;background:var(--white);border:1px solid var(--line-strong);gap:2px;max-width:100%;overflow-x:auto}.segmented button{min-height:40px;padding:0 14px;border:0;background:transparent;border-radius:999px;font-weight:700;cursor:pointer;color:var(--deep);white-space:nowrap}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--deep);color:var(--white)}.sheet-backdrop{position:fixed;inset:0;z-index:60;background:#0e2a3373;display:flex;align-items:flex-end;justify-content:center;animation:fade .15s ease}.sheet{width:100%;max-width:640px;max-height:92vh;overflow-y:auto;background:var(--ground);border-radius:var(--radius-l) var(--radius-l) 0 0;padding:var(--space-5) var(--space-5) calc(var(--space-6) + env(safe-area-inset-bottom));box-shadow:var(--shadow-lift);animation:rise .2s ease}.sheet__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}@media(min-width:700px){.sheet-backdrop{align-items:center;padding:var(--space-6)}.sheet{border-radius:var(--radius-l)}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(24px);opacity:0}}.notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--radius);background:var(--mist);color:var(--deep);border:1px solid var(--mist-2)}.notice svg{width:22px;height:22px;flex:none;margin-top:1px;color:var(--sea)}.notice--warn{background:var(--citrus-soft);border-color:#f2d999}.notice--warn svg{color:#8a5d05}.notice--error{background:var(--danger-soft);border-color:#f4c7c1}.notice--error svg{color:var(--danger)}.notice--success{background:var(--success-soft);border-color:#bfdccb}.notice--success svg{color:var(--success)}.offline-bar{position:sticky;top:var(--top-h);z-index:25;background:var(--citrus);color:var(--deep);text-align:center;font-weight:700;font-size:.875rem;padding:6px 12px}.toasts{position:fixed;left:50%;transform:translate(-50%);bottom:calc(var(--nav-h) + 16px + env(safe-area-inset-bottom));z-index:80;display:flex;flex-direction:column;gap:8px;width:min(92vw,420px)}@media(min-width:900px){.toasts{bottom:24px}}.toast{background:var(--deep);color:var(--white);padding:12px 16px;border-radius:14px;box-shadow:var(--shadow-lift);font-weight:650;animation:rise .2s ease}.toast--error{background:var(--danger)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);border:2px dashed var(--line-strong);border-radius:var(--radius-l);background:#ffffff80}.empty__art{width:180px;height:90px}.skeleton{border-radius:12px;background:linear-gradient(90deg,#e4eeec,#f2f7f6,#e4eeec);background-size:200% 100%;animation:shimmer 1.3s infinite linear}@keyframes shimmer{to{background-position:-200% 0}}.list{display:flex;flex-direction:column}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:12px 0;border-bottom:1px solid var(--line);min-height:56px}.list-item:last-child{border-bottom:0}a.list-item{text-decoration:none;color:inherit}a.list-item:hover .list-item__title{text-decoration:underline}.list-item__title{font-weight:700;color:var(--deep)}.chev{width:20px;height:20px;color:var(--muted);flex:none}.action{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--radius);background:var(--white);border:1px solid var(--line);text-decoration:none;color:inherit;min-height:64px}.action:hover{border-color:var(--deep)}.action__dot{width:12px;height:12px;border-radius:50%;background:var(--primary);flex:none;box-shadow:0 0 0 4px var(--primary-soft)}.action--info .action__dot{background:var(--sea);box-shadow:0 0 0 4px var(--mist)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}@media(min-width:760px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}.tile{display:flex;flex-direction:column;gap:6px;padding:var(--space-4);border-radius:var(--radius);text-decoration:none;color:var(--deep);min-height:116px;border:1px solid transparent;transition:transform .15s ease}.tile:hover{transform:translateY(-2px)}.tile svg{width:26px;height:26px}.tile__name{font-weight:800;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;margin-top:auto}.tile__stat{font-size:.875rem;color:var(--muted)}.tile--mist{background:var(--mist);border-color:var(--mist-2)}.tile--sand{background:var(--sand);border-color:var(--sand-2)}.tile--lilac{background:var(--lilac);border-color:#e1d5f1}.tile--citrus{background:var(--citrus-soft);border-color:#f2d999}.dest{position:relative;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-l);background:var(--white);border:1.5px solid var(--line);box-shadow:var(--shadow);overflow:hidden;min-width:0}.dest--mine-vote{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft),var(--shadow)}.dest--locked{background:var(--deep);border-color:var(--deep);color:var(--white)}.dest--locked h3{color:var(--white)}.dest--locked .muted{color:#b8ccd2}.votebar{height:8px;border-radius:8px;background:var(--line);overflow:hidden}.votebar span{display:block;height:100%;background:var(--primary);border-radius:8px}.dest--locked .votebar{background:#fff3}.dest--locked .votebar span{background:var(--citrus)}.dateopt{display:grid;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius);background:var(--white);border:1px solid var(--line)}.dateopt--best{border-color:var(--sea);box-shadow:0 0 0 3px var(--mist)}.dateopt__answers{display:flex;flex-wrap:wrap;gap:6px}.answer-yes{background:var(--success-soft);color:var(--success)}.answer-maybe{background:var(--citrus-soft);color:#6b4a00}.answer-no{background:var(--danger-soft);color:var(--danger)}.answer-missing{background:transparent;border:1px dashed var(--line-strong);color:var(--muted)}.respond{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.respond button{min-height:44px;border-radius:12px;border:1.5px solid var(--line-strong);background:var(--white);font-weight:700;cursor:pointer;color:var(--deep)}.respond button[aria-pressed=true].r-yes{background:var(--success);border-color:var(--success);color:var(--white)}.respond button[aria-pressed=true].r-maybe{background:var(--citrus);border-color:var(--citrus);color:var(--deep)}.respond button[aria-pressed=true].r-no{background:var(--danger);border-color:var(--danger);color:var(--white)}.day{position:relative;padding-left:0}.day__head{position:sticky;top:var(--top-h);z-index:5;display:flex;align-items:baseline;gap:10px;padding:10px 0;background:var(--ground)}.day__num{font-family:var(--font-display);font-weight:850;font-size:1.6rem;color:var(--primary-ink);line-height:1}.day__title{font-weight:800;color:var(--deep)}.timeline{position:relative;display:flex;flex-direction:column;gap:var(--space-3);padding-left:34px}.timeline:before{content:"";position:absolute;left:13px;top:8px;bottom:8px;width:0;border-left:3px dotted var(--sea);opacity:.55}.stop{position:relative}.stop__marker{position:absolute;left:-34px;top:14px;width:28px;height:28px;border-radius:50%;background:var(--white);border:3px solid var(--accent, var(--sea));display:grid;place-items:center;color:var(--accent, var(--sea))}.stop__marker svg{width:14px;height:14px}.stop__card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;display:grid;gap:6px;box-shadow:var(--shadow);min-width:0}.stop__card--personal{background:var(--lilac);border-color:#e1d5f1;box-shadow:none}.stop__time{font-family:var(--font-display);font-weight:850;color:var(--deep);font-size:1.05rem}.stop__title{font-weight:750;color:var(--deep);overflow-wrap:anywhere}.free-time{color:var(--muted);font-style:italic;font-size:.9rem;padding:4px 0 4px 2px}.money-big{font-family:var(--font-display);font-weight:850;font-size:clamp(1.7rem,1.4rem + 1.2vw,2.3rem);color:var(--deep);line-height:1.1}.money-pos{color:var(--success);font-weight:750}.money-neg{color:var(--danger);font-weight:750}.meter{height:12px;border-radius:12px;background:#0e2a331a;overflow:hidden;display:flex}.meter__paid{background:var(--deep)}.meter__est{background:repeating-linear-gradient(45deg,var(--citrus) 0 6px,#f6d48f 6px 12px)}.meter--over .meter__paid{background:var(--danger)}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.82rem;color:var(--muted)}.legend i{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:6px;vertical-align:-1px}.ledger-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 0;border-bottom:1px solid var(--line);align-items:start}.ledger-row:last-child{border-bottom:0}.balance-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.balance-row:last-child{border-bottom:0}.transfer{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--sand);border-radius:14px;flex-wrap:wrap}.dropzone{border:2px dashed var(--line-strong);border-radius:var(--radius);padding:var(--space-5);text-align:center;background:var(--white)}.dropzone--active{border-color:var(--sea);background:var(--mist)}.conf{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.conf--found{color:var(--success)}.conf--guess{color:#7a5508}.conf--missing{color:var(--danger)}.auth{min-height:100vh;display:grid;grid-template-columns:1fr}.auth__art{position:relative;overflow:hidden;background:var(--deep);color:var(--white);padding:var(--space-8) var(--space-6);min-height:240px;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-3)}.auth__art h1{color:var(--white);font-size:clamp(2rem,1.6rem + 2vw,3rem)}.auth__art .tagline{color:var(--citrus);font-weight:750;letter-spacing:.04em}.auth__panel{padding:var(--space-8) var(--space-5);display:flex;justify-content:center}.auth__form{width:100%;max-width:420px;display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:900px){.auth{grid-template-columns:1.05fr 1fr}.auth__art{min-height:100vh;padding:var(--space-10)}.auth__panel{align-items:center}}.steps{display:flex;gap:6px}.steps span{flex:1;height:6px;border-radius:6px;background:var(--line)}.steps span.on{background:var(--primary)}@media print{.topbar,.bottomnav,.trip-rail,.no-print,.toasts,.offline-bar{display:none!important}body,html{background:#fff}.main{padding:0;max-width:none}.trip-layout{display:block}.stop__card,.card{box-shadow:none;break-inside:avoid}.day__head{position:static}.print-only{display:block!important}}.print-only{display:none}.divider{height:1px;background:var(--line)}.link-btn{background:none;border:0;padding:0;color:var(--sea);font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:44px}details.disclosure>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;font-weight:750;color:var(--deep)}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary:after{content:"+";font-size:1.4rem;color:var(--sea)}details.disclosure[open]>summary:after{content:"\2013"}.kv{display:grid;grid-template-columns:minmax(110px,auto) minmax(0,1fr);gap:8px 16px}.kv dt{color:var(--muted);font-size:.875rem}.kv dd{margin:0;font-weight:650;color:var(--deep);overflow-wrap:anywhere}.hide-sm{display:none}@media(min-width:600px){.hide-sm{display:inline}}.smart-options{display:grid;grid-template-columns:1fr;gap:var(--space-3);text-align:left}@media(min-width:560px){.smart-options{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}}.smart-option{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--white);color:var(--deep);cursor:pointer;text-align:left;font:inherit}.smart-option:hover,.smart-option:focus-within{border-color:var(--primary)}.smart-option svg{width:26px;height:26px;color:var(--primary);flex:none}.smart-option>span{display:flex;flex-direction:column;gap:2px}.add-panel{display:flex;flex-direction:column;gap:var(--space-4)}.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}@media(min-width:760px){.method-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.method{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:104px;padding:14px;border-radius:var(--radius);border:1.5px solid var(--line-strong);background:var(--white);color:var(--deep);cursor:pointer;text-align:left;font:inherit}.method:hover,.method:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.method svg{width:26px;height:26px;color:var(--primary)}.method strong{font-size:.98rem}.method--primary{background:var(--primary);border-color:var(--primary);color:var(--white)}.method--primary svg{color:var(--citrus)}.method--primary .tiny{color:#d9f0ee}
