:root{--bg:#f2f6fb;--surface:#fff;--ink:#0f1e3a;--muted:#5a6a84;--line:#d8e2ee;--soft:#e8eff8;--pass:#1b2f5b;--pass-ink:#fff;--pass-muted:#b6c6e3;--pass-line:#ffffff47;--brand:#1b2f5b;--brand-ink:#fff;--accent:#e3a13b;--paid:#1b7553;--paid-bg:#dcf2e7;--unpaid:#8f5406;--unpaid-bg:#fcedd3;--settled:#2a57a0;--settled-bg:#e0eafa;--danger:#b23a3a;--danger-bg:#fbe4e4;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0b1322;--surface:#121d31;--ink:#e6edf7;--muted:#95a4bd;--line:#24334e;--soft:#18253d;--pass:#16284d;--pass-ink:#f2f6fc;--pass-muted:#a3b5d8;--pass-line:#ffffff38;--brand:#8db0ee;--brand-ink:#0b1322;--accent:#f0b457;--paid:#62cda1;--paid-bg:#123226;--unpaid:#f0b457;--unpaid-bg:#36270d;--settled:#9abaf2;--settled-bg:#172848;--danger:#e88a8a;--danger-bg:#3a1a1e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:15px;line-height:1.5}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.15}h3{font-size:17px}p{margin:0}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.strong{font-weight:600}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:13px}.center{text-align:center}.err{color:var(--danger);font-size:14px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:11.5px;font-weight:600}.shell{max-width:1000px;padding-inline:max(16px, env(safe-area-inset-left));padding-block:calc(12px + env(safe-area-inset-top)) calc(96px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;margin:0 auto;display:flex}.stack{flex-direction:column;gap:14px;display:flex}.row-gap{align-items:center;gap:8px;display:flex}.row-gap.wrap{flex-wrap:wrap}.row-gap.end{justify-content:flex-end}.spacer{flex:1}.grow{flex:1;min-width:0}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;display:grid}.topbar{align-items:center;gap:10px;min-height:36px;display:flex}.brand{margin-right:auto;font-size:18px;font-weight:700}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.section-title{font-size:20px}.btn{border:1px solid var(--line);background:var(--surface);white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:8px 14px;font-weight:500;display:inline-flex}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.btn.danger{color:var(--danger);border-color:var(--danger)}.btn.danger.armed{background:var(--danger);color:var(--surface)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.sm{border-radius:8px;min-height:34px;padding:5px 10px;font-size:14px}.btn.block{width:100%}.btn.armed{border-color:var(--danger);color:var(--danger)}.input{background:var(--surface);border:1px solid var(--line);border-radius:8px;width:100%;min-width:0;padding:8px 10px;font-size:16px}.input:focus{border-color:var(--brand);outline:none}.input.num{text-align:right}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field label{color:var(--muted);font-size:13px;font-weight:600}.check{align-items:center;gap:8px;display:flex}.check input{width:18px;height:18px;accent-color:var(--brand)}.pass{background:var(--pass);color:var(--pass-ink);border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);display:grid;overflow:hidden}.pass .eyebrow{color:var(--pass-muted)}.pass-main{flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.pass h1{letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(26px,6vw,40px)}.pass-meta{flex-wrap:wrap;gap:6px 20px;display:flex}.pass-meta div{flex-direction:column;display:flex}.pass-meta b{font-family:var(--mono);font-size:14px;font-weight:500}.crew{flex-wrap:wrap;gap:6px;display:flex}.crew span{border:1px solid var(--pass-line);border-radius:999px;padding:2px 10px;font-size:13px}.pass-stub{border-left:2px dashed var(--pass-line);flex-direction:column;gap:12px;padding:20px 22px;display:flex}.kpis{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.kpi b{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:600;display:block}.kpi.hl b{color:var(--accent)}.meter{background:#ffffff24;border-radius:99px;height:8px;display:flex;overflow:hidden}.meter i{height:100%;display:block}.m-set{background:#9abaf2}.m-open{background:#62cda1}.meter-legend{color:var(--pass-muted);gap:14px;font-size:12.5px;display:flex}.meter-legend span:before{content:"";vertical-align:0;border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.l-set:before{background:#9abaf2}.l-open:before{background:#62cda1}.lede{color:var(--pass-muted)}header.pass:not(:has(.pass-main)){flex-direction:column;gap:8px;padding:22px;display:flex}header.pass:not(:has(.pass-main)) h1{font-size:34px}.sync-chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:7px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-flex}.sync-dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.sync-chip.good .sync-dot{background:var(--paid)}.sync-chip.busy .sync-dot{background:var(--settled);animation:1s ease-in-out infinite pulse}.sync-chip.warn{color:var(--unpaid);border-color:var(--unpaid)}.sync-chip.warn .sync-dot{background:var(--unpaid)}.tone-good{color:var(--paid)}.tone-warn{color:var(--unpaid)}@keyframes pulse{50%{opacity:.3}}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2.5px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent)}.count{font-family:var(--mono);background:var(--soft);color:var(--muted);border-radius:99px;margin-left:6px;padding:1px 7px;font-size:12px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip-btn{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:99px;padding:5px 12px;font-size:13.5px;font-weight:500}.chip-btn[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip-btn .n{font-family:var(--mono);opacity:.75;margin-left:5px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:16px 18px;display:flex}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}.empty{text-align:center;color:var(--muted);align-items:center;padding:32px 20px}.empty h3{color:var(--ink)}.warn{background:var(--unpaid-bg);color:var(--unpaid);border-radius:10px;padding:10px 14px;font-size:14px}.trip-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.trip-card{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;width:100%;padding:16px 18px;display:grid}.trip-name{overflow-wrap:anywhere;font-size:17px;font-weight:700}.trip-meta{color:var(--muted);grid-column:1;font-size:13.5px}.chev{color:var(--muted);grid-area:1/2/span 2;align-self:center;font-size:24px}.day{background:var(--soft);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;padding:9px 16px 7px;display:flex}.day-sum{font-family:var(--mono);color:var(--muted);font-size:13px}.exp{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;padding:12px 16px;display:grid}.exp.is-open{background:var(--soft)}.exp-main{all:unset;cursor:pointer;flex-direction:column;gap:3px;min-width:0;display:flex}.exp-main:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:4px}.exp-title{overflow-wrap:anywhere;font-weight:600}.exp-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:3px 8px;font-size:13px;display:flex}.tag{border:1px solid var(--line);border-radius:6px;padding:0 6px;font-size:12px;font-weight:500}.exp-amt{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-weight:600}.exp-pills{grid-column:1/-1;gap:6px;display:flex}.pill{border:1px solid #0000;border-radius:99px;min-width:84px;min-height:30px;padding:4px 12px;font-size:12.5px;font-weight:600}.pill.paid{background:var(--paid-bg);color:var(--paid)}.pill.unpaid{background:var(--unpaid-bg);color:var(--unpaid)}.pill.settled{background:var(--settled-bg);color:var(--settled)}.pill.open{color:var(--muted);border:1px dashed var(--line);background:0 0}.pill.partial{background:var(--surface);color:var(--settled);border:1px dashed var(--settled)}.settle-panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;grid-column:1/-1;gap:10px;padding:12px 14px;display:flex}.settle-people{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:8px;display:grid}.who-btn{text-align:left;border:1.5px dashed var(--line);background:var(--surface);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 12px;display:grid}.who-btn.on{border-style:solid;border-color:var(--settled);background:var(--settled-bg)}.who-name{overflow-wrap:anywhere;font-weight:600}.who-btn .num{color:var(--muted);font-size:13px}.who-state{color:var(--unpaid);grid-column:1/-1;font-size:12.5px;font-weight:600}.who-btn.on .who-state{color:var(--settled)}.transfers{flex-direction:column;gap:8px;display:flex}.xfer{background:var(--soft);border-radius:10px;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.who{overflow-wrap:anywhere;font-weight:600}.arrow{color:var(--muted);font-size:13px}.verdict{white-space:nowrap;border-radius:99px;padding:2px 10px;font-size:13px;font-weight:600}.verdict.pos{background:var(--paid-bg);color:var(--paid)}.verdict.neg{background:var(--danger-bg);color:var(--danger)}.verdict.zero{background:var(--soft);color:var(--muted)}.big{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.big.pos{color:var(--paid)}.big.neg{color:var(--danger)}.lines{flex-direction:column;gap:6px;font-size:14px;display:flex}.line{justify-content:space-between;align-items:center;gap:12px;display:flex}.line>span:first-child{color:var(--muted)}.line.sep{border-top:1px dashed var(--line);padding-top:8px}.adj{grid-template-columns:110px minmax(0,1fr);gap:6px;display:grid}.owed{border-top:1px dashed var(--line);flex-direction:column;gap:6px;padding-top:10px;display:flex}.owed-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;font-size:14px;display:grid}.owed-what{flex-direction:column;min-width:0;display:flex}.owed-what b{overflow-wrap:anywhere;font-weight:500}.cat-row{grid-template-columns:minmax(80px,130px) minmax(0,1fr) auto;align-items:center;gap:12px;font-size:14px;display:grid}.bar{background:var(--soft);border-radius:4px;height:12px;display:flex;overflow:hidden}.bar i{height:100%;display:block}.b-paid{background:var(--brand)}.b-unp{background:repeating-linear-gradient(135deg, var(--accent) 0 3px, transparent 3px 6px);border:1px solid var(--accent);border-left:0}.legend{color:var(--muted);gap:14px;font-size:12.5px;display:flex}.sw{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.sw.paid{background:var(--brand)}.sw.unpaid{background:var(--accent)}.cat-chips{flex-wrap:wrap;gap:6px;display:flex}.cat-chip{border:1px solid var(--line);border-radius:99px;align-items:center;gap:4px;padding:3px 4px 3px 12px;font-size:14px;display:inline-flex}.cat-chip button{color:var(--muted);background:0 0;border:0;border-radius:50%;width:26px;height:26px}.seg{border:1px solid var(--line);border-radius:10px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.seg-btn{background:var(--surface);color:var(--muted);border:0;padding:9px;font-weight:600}.seg-btn.paid[aria-checked=true]{background:var(--paid-bg);color:var(--paid)}.seg-btn.unpaid[aria-checked=true]{background:var(--unpaid-bg);color:var(--unpaid)}.split{border:1px solid var(--line);border-radius:10px;overflow:hidden}.split-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 60px 92px 58px;align-items:center;gap:8px;padding:8px 10px;display:grid}.split-row:last-child{border-bottom:0}.split-head{background:var(--soft);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.split-row .r{text-align:right;font-size:13px}.split-row .c{justify-content:center;display:flex}.split-row .c input{width:18px;height:18px;accent-color:var(--settled)}.seg.four{grid-template-columns:repeat(4,minmax(0,1fr))}.seg-btn.kind{white-space:nowrap;padding:9px 4px;font-size:13.5px}.seg-btn+.seg-btn{border-left:1px solid var(--line)}.seg-btn.kind[aria-checked=true]{background:var(--brand);color:var(--brand-ink)}.trip-box{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:10px;min-width:0;margin:0;padding:10px 14px 14px;display:flex}.trip-box legend{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-left:-6px;padding:0 6px;font-size:11.5px;font-weight:600}.opt{opacity:.8;font-weight:400}.input.code{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em}.field.duration{justify-content:flex-end}.field.duration b{font-size:17px}.err.sm{font-size:13px;line-height:1.35}.exp-when{font-family:var(--mono);font-size:12.5px}.tag.need{border-color:var(--accent);color:var(--unpaid);background:var(--unpaid-bg)}.itin-sum{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.nights{flex-wrap:wrap;gap:3px;display:flex}.nights i{background:var(--paid);border-radius:4px;width:14px;height:14px}.nights i.gap{background:var(--danger)}.gap-list{flex-wrap:wrap;gap:6px;display:flex}.gap-chip{all:unset;cursor:pointer;color:var(--danger);background:var(--danger-bg);border-radius:99px;padding:3px 10px;font-size:13px;font-weight:600}.gap-chip:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.need-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding:8px 0;display:flex}.need-row:first-of-type{border-top:0}.need-row .grow{flex-direction:column;flex:1;min-width:0;display:flex}.need-row b{overflow-wrap:anywhere;font-weight:600}.iday{scroll-margin-top:12px}.iday-head{background:var(--soft);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;padding:9px 16px 7px;display:flex}.iday-head .today{letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink);background:var(--brand);border-radius:99px;padding:1px 8px;font-size:11.5px;font-weight:700}.iday.is-today .iday-head{background:var(--settled-bg)}.iitem{all:unset;box-sizing:border-box;cursor:pointer;border-bottom:1px solid var(--line);grid-template-columns:46px 26px minmax(0,1fr);align-items:start;gap:2px 8px;width:100%;padding:10px 16px;display:grid}.iitem:hover{background:var(--soft)}.iitem:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.iitem .t{font-family:var(--mono);font-variant-numeric:tabular-nums;padding-top:1px;font-size:13.5px;font-weight:600}.iitem .ic{text-align:center;font-size:17px;line-height:1.3}.iitem .tx{flex-direction:column;min-width:0;display:flex}.iitem .tx b{overflow-wrap:anywhere;font-weight:600}.iitem .tx span{color:var(--muted);font-size:13px}.iitem.k-staying .tx b{color:var(--muted);font-weight:500}.iitem.k-staying,.iitem.k-checkout{padding-top:7px;padding-bottom:7px}.inobed{background:var(--danger-bg);color:var(--danger);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;display:flex}.iempty{color:var(--muted);border-bottom:1px solid var(--line);padding:10px 16px 10px 70px;font-size:13.5px}.panel>.iday:last-child>:last-child{border-bottom:0}.amt-row{grid-template-columns:minmax(0,1fr) 92px;gap:8px;display:grid}.input.amt{padding-top:8px;padding-bottom:8px;font-size:24px;font-weight:600}.input.cur{font-family:var(--mono);font-weight:600}.ops{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.op{border:1px solid var(--line);background:var(--surface);min-width:44px;height:34px;font-family:var(--mono);color:var(--muted);border-radius:8px;font-size:16px;font-weight:600}.op:active{background:var(--soft)}.amt-out{text-align:right;margin-left:auto;font-size:14px}.amt-out .num{color:var(--muted)}.amt-out b.num{color:var(--ink)}.rate-row{grid-template-columns:auto minmax(0,140px) auto;align-items:center;gap:8px;display:grid}.chips.sugg .chip-btn{color:var(--ink);font-weight:600}.chips.sugg .n{font-family:var(--font);color:var(--muted);font-weight:400}.split-sum{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;gap:8px;padding:6px 6px 6px 12px;display:flex}.split-sum-main{all:unset;cursor:pointer;flex-direction:column;flex:1;min-width:0;display:flex}.split-sum-main b{overflow-wrap:anywhere;font-weight:600}.split-sum-main:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}.everyone-back{padding:2px;font-size:14px}.everyone-back input{accent-color:var(--settled)}.split-edit{flex-direction:column;gap:10px;display:flex}.who-n{overflow-wrap:anywhere}.linkish{all:unset;cursor:pointer;color:var(--brand);font-size:14px;font-weight:600}.linkish:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.eyebrow.lbl{line-height:1.75}.exp-amt .orig{color:var(--muted);font-size:12px;font-weight:400;display:block}.hl-card{border-color:var(--accent)}.iday-tools{align-items:center;gap:8px;display:inline-flex}.day-add{all:unset;cursor:pointer;color:var(--brand);border-radius:6px;padding:2px 6px;font-size:12.5px;font-weight:600}.day-add:focus-visible{outline:2px solid var(--brand)}.input.rate-in{width:110px}.input.cur-in{width:74px}.fab{right:max(18px, env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:15;background:var(--brand);width:58px;height:58px;color:var(--brand-ink);border:0;border-radius:50%;place-items:center;font-size:30px;line-height:1;display:grid;position:fixed;box-shadow:0 8px 22px #080f1e47}.fab:active{transform:scale(.96)}html,body{overscroll-behavior-y:none}.ptr{top:calc(env(safe-area-inset-top) + 6px);z-index:30;background:var(--surface);color:var(--ink);border:1px solid var(--line);white-space:nowrap;pointer-events:none;border-radius:99px;align-items:center;gap:8px;padding:7px 14px 7px 10px;font-size:13.5px;font-weight:600;transition:opacity .15s;display:inline-flex;position:fixed;left:50%;box-shadow:0 6px 18px #080f1e29}.ptr:not(.pulling):not(.ready){transition:transform .25s,opacity .2s}.ptr-icon{background:var(--soft);width:22px;height:22px;color:var(--brand);border-radius:50%;place-items:center;font-size:14px;display:inline-grid}.ptr.ready .ptr-icon{background:var(--brand);color:var(--brand-ink)}.ptr.refreshing .ptr-icon{animation:.9s linear infinite ptr-spin}.ptr.done .ptr-icon{background:var(--paid-bg);color:var(--paid)}.ptr.done.warn .ptr-icon{background:var(--unpaid-bg);color:var(--unpaid);font-weight:800}@keyframes ptr-spin{to{transform:rotate(360deg)}}.backdrop{z-index:20;background:#080f1e73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);width:min(560px,100%);max-height:92vh;padding-bottom:env(safe-area-inset-bottom);border-radius:18px 18px 0 0;flex-direction:column;display:flex;overflow-y:auto}.sheet-head{background:var(--bg);z-index:1;justify-content:space-between;align-items:center;padding:16px 18px 10px;display:flex;position:sticky;top:0}.sheet-head h2{font-size:20px}.sheet-body{padding:4px 18px 22px}.sheet-foot{border-top:1px solid var(--line);padding:12px 18px}@media (width>=760px){.backdrop{justify-content:flex-end;align-items:stretch}.sheet{border-radius:0;width:480px;height:100%;max-height:none}}@media (width<=720px){.pass{grid-template-columns:1fr}.pass-stub{border-left:0;border-top:2px dashed var(--pass-line)}.pass-main,.pass-stub{padding:18px}}@media (width<=480px){.grid3{grid-template-columns:1fr 1fr}.grid3 .field:first-child{grid-column:1/-1}.cat-row{grid-template-columns:minmax(0,1fr) auto}.cat-row .bar{grid-area:2/1/auto/-1}.split-row{grid-template-columns:minmax(0,1fr) 50px 80px 46px;gap:6px}.seg-btn.kind{font-size:12.5px}.tabs .tab{padding:10px 11px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
