:root{--brand-h:46px;--rail-w:214px;--bg:#e4eef9;--surface:#ffffff;--surface-2:#eef3fb;--surface-3:#d8e6f6;--border:#d5e2f1;--border-strong:#b7cfe9;--text:#17222e;--muted:#55708a;--nav-label:#33506e;--accent:#2b82d4;--accent-dark:#1f6cb5;--accent-soft:rgba(43,130,212,0.12);--accent-text:#ffffff;--danger:#e0484d;--danger-soft:rgba(224,72,77,0.09);--ok:#12a077;--radius:18px;--fs-body:17px;--fs-small:15px;--fs-label:14px;--fs-h1:21px;--radius-sm:12px;--shadow:0 2px 12px rgba(29,43,48,0.07);--shadow-lg:0 6px 22px rgba(29,43,48,0.12)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;font-size:var(--fs-body);line-height:1.5}button,input,select,textarea{font:inherit;font-size:var(--fs-body)}.wrap{max-width:680px;margin:0 auto;padding:16px 16px calc(96px + env(safe-area-inset-bottom))}.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}.brand-bar{position:fixed;top:0;left:0;right:0;height:var(--brand-h);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;background:var(--surface);border-bottom:1px solid var(--border);z-index:30;transition:transform .22s ease}html.brand-hidden .brand-bar{transform:translateY(-100%)}.brand-name{font-size:.95rem;font-weight:800;letter-spacing:.08em;color:var(--accent-dark);text-decoration:none;white-space:nowrap}.brand-user{display:flex;align-items:center;gap:9px;min-width:0;color:inherit;text-decoration:none}.brand-user-name{font-size:.9rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:42vw}.brand-chip{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.02em}body.has-brand{padding-top:var(--brand-h)}body.has-brand header.app{top:var(--brand-h);transition:top .22s ease}html.brand-hidden body.has-brand header.app{top:0}header.app{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}header.app h1{font-size:var(--fs-h1);margin:0;font-weight:700;letter-spacing:-.01em}header.app .muted{font-size:var(--fs-small)}header.app a{color:var(--accent-dark);text-decoration:none;font-size:16px;font-weight:600}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:14px}.card.tinted{background:var(--surface-2);border-color:var(--border);box-shadow:none}label{display:block;font-size:var(--fs-label);font-weight:600;color:var(--muted);margin-bottom:6px;letter-spacing:.01em}.card>.details-head:first-child>label,.card>.panel-head:first-child>label,.card>label:first-child{color:var(--text);font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.card>.details-head:first-child>label,.card>.panel-head:first-child>label{margin-bottom:0}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;padding:14px 15px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);margin-bottom:12px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder,textarea::placeholder{color:#9db3cc}button{cursor:pointer;border:none;border-radius:999px;padding:16px 22px;background:var(--accent);color:var(--accent-text);font-weight:700;letter-spacing:.02em;width:100%;box-shadow:0 2px 8px rgba(43,130,212,.26);transition:background .15s,transform .05s}button:hover:not(:disabled){background:var(--accent-dark)}button:active:not(:disabled){transform:translateY(1px)}button.secondary{background:var(--surface);color:var(--accent-dark);border:1.5px solid var(--border-strong);box-shadow:none}button.secondary:hover:not(:disabled){background:var(--surface-2)}button:disabled{opacity:.5;cursor:default;box-shadow:none}button.secondary.danger{color:var(--danger);border-color:rgba(224,72,77,.35)}button.danger:not(.secondary){background:#c2383d;color:#fff;border-color:transparent;box-shadow:0 2px 8px rgba(194,56,61,.32)}button.danger:not(.secondary):hover:not(:disabled){background:#a82f34}.danger-zone{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.danger-zone .muted,a.btn.tiny,button.tiny{font-size:var(--fs-label)}a.btn.tiny,button.tiny{width:auto;padding:9px 15px;font-weight:600;box-shadow:none}.capture-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;min-height:210px;border:2px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:20px;font-weight:700;box-shadow:none;letter-spacing:0}.capture-btn:hover:not(:disabled){background:#e6eefb;border-color:var(--accent)}.capture-btn .icon{font-size:48px;line-height:1}.capture-btn .muted{font-weight:500}.muted{color:var(--muted);font-size:var(--fs-small)}.row{display:flex;gap:10px;align-items:flex-end}.row>*{flex:1 1;min-width:0}@media (max-width:480px){.row.dates{flex-direction:column;align-items:stretch;gap:0}.row.dates>*{width:100%}.row.dates .date-field{max-width:none}}.mini.thumb{width:100%;height:auto;max-height:260px;border-radius:var(--radius-sm);margin-bottom:12px;cursor:zoom-in}.mini.thumb img{height:auto;max-height:258px;object-fit:contain}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:999px;font-size:var(--fs-label);font-weight:600;background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.pill.ok{color:var(--accent-dark);background:var(--accent-soft);border-color:rgba(43,130,212,.35)}.pill.fail{border-color:rgba(224,72,77,.3)}.error,.pill.fail{color:var(--danger);background:var(--danger-soft)}.error{border:1px solid rgba(224,72,77,.3);border-radius:var(--radius-sm);padding:12px 15px;font-size:var(--fs-small);margin-bottom:12px}.spin{display:inline-block;width:14px;height:14px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(1turn)}}ul.list{list-style:none;margin:0;padding:0}ul.list li{padding:14px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:10px}ul.list li:last-child{border-bottom:none}a.plain{color:var(--accent-dark);text-decoration:none;font-weight:600}.brand{text-align:center;padding:34px 16px 10px}.brand h1{font-size:30px;font-weight:800;letter-spacing:.06em;margin:14px 0 8px;text-transform:uppercase}.brand p{color:var(--muted);font-size:16px;line-height:1.55;margin:0 auto;max-width:320px}.brand-mark{width:104px;height:104px;margin:0 auto;display:block}.tabs{display:flex;gap:26px;padding:0 4px 14px}.tabs a{font-size:18px;font-weight:700;color:var(--muted);text-decoration:none;padding-bottom:6px;border-bottom:3px solid transparent}.tabs a.on{color:var(--text);border-bottom-color:var(--accent)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(6,1fr);align-items:center;background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -2px 14px rgba(29,43,48,.08);padding:8px 4px calc(8px + env(safe-area-inset-bottom));z-index:40}.bottom-nav a,.bottom-nav button{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;color:var(--nav-label);font-size:12px;font-weight:600;text-align:center;line-height:1.2;white-space:nowrap}.bottom-nav.with-team{grid-template-columns:repeat(7,1fr)}@media (max-width:380px){.bottom-nav a,.bottom-nav button{font-size:11px}.bottom-nav{padding:8px 2px calc(8px + env(safe-area-inset-bottom))}}.bottom-nav .ico{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface-2)}.bottom-nav .ico,.bottom-nav .on{color:var(--accent-dark)}.bottom-nav .on .ico{background:var(--accent-soft)}.bottom-nav .fab .ico{width:52px;height:52px;margin-top:-22px;background:var(--accent);color:var(--accent-text);box-shadow:0 4px 12px rgba(43,130,212,.42);border:3px solid var(--surface)}.bottom-nav .fab{color:var(--accent-dark)}.wrap.wide{max-width:1180px}table.tbl{width:100%;border-collapse:collapse}table.tbl td,table.tbl th{padding:10px 8px;font-size:16px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}table.tbl th{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}table.tbl .num{text-align:right}table.tbl tr.total td{border-top:2px solid var(--border-strong);border-bottom:none;font-weight:800}table.expenses input,table.expenses select{margin-bottom:0;padding:9px 10px;font-size:16px;background:var(--surface-2);border-color:var(--border)}table.expenses input.num{text-align:right}table.expenses tr.unreviewed td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.mini{width:44px;height:44px;flex:0 0 auto;padding:0;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);box-shadow:none;cursor:zoom-in;overflow:hidden;display:flex;align-items:center;justify-content:center}.mini img{width:100%;height:100%;object-fit:cover;display:block}.pdf-mark{width:56%;max-width:120px;height:auto;color:var(--border-strong);display:block}.mini:not(.thumb) .pdf-mark{width:62%}.mini.is-pdf:focus-visible .pdf-mark,.mini.is-pdf:hover .pdf-mark{color:var(--accent)}.mini.is-pdf.thumb{display:flex;align-items:center;justify-content:center;min-height:132px}.actions{display:flex;gap:5px;flex-wrap:wrap}.lightbox{position:fixed;inset:0;background:rgba(14,32,36,.82);display:flex;align-items:center;justify-content:center;padding:24px;z-index:50;cursor:zoom-out}.lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-sm)}@media (max-width:720px){table.expenses{display:block;overflow-x:auto;white-space:nowrap}}.warn-box{border:1px solid rgba(224,72,77,.32);background:var(--danger-soft);border-radius:var(--radius);padding:14px 16px;margin-bottom:14px}.warn-box strong{display:block;color:var(--danger);margin-bottom:6px}.warn-box p{margin:0 0 10px;font-size:var(--fs-small);color:var(--muted);line-height:1.5}.ok-box{border:1px solid rgba(18,160,119,.3);background:rgba(18,160,119,.08);color:var(--ok);border-radius:var(--radius);padding:14px 16px;margin-bottom:14px;font-weight:600}.title-row{display:flex;align-items:center;gap:8px;min-width:0}.title-row h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{width:34px;height:34px;flex:0 0 auto;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-2);color:var(--accent-dark);border:1px solid var(--border);box-shadow:none}.icon-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-dark)}.name-edit{display:flex;align-items:center;gap:6px}.name-edit input{margin-bottom:0;padding:9px 12px;font-size:17px;font-weight:700;min-width:0;flex:1 1}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini.placeholder{background:var(--surface-2);border:1px dashed var(--border-strong);cursor:default}.lightbox-pdf{display:flex;flex-direction:column;width:100%;height:100%;max-width:900px;gap:10px;cursor:default}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.lightbox-bar a{color:#fff;font-weight:700}.lightbox-bar button{width:auto;flex:0 0 auto}.lightbox-pdf iframe,.lightbox-pdf object{flex:1 1;min-height:0;width:100%;border:0;border-radius:var(--radius-sm);background:#fff}.row-link{flex:1 1;min-width:0;color:inherit;text-decoration:none}.row-link:hover .ellipsis:first-child{color:var(--accent)}.member-chips{gap:6px}.member-checks,.member-chips{display:flex;flex-wrap:wrap;margin-top:8px}.member-checks{gap:8px}.member-checks label{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--rule,#d5e2f1);border-radius:8px;cursor:pointer;margin:0;font-weight:600}.member-checks label:has(input:checked){border-color:var(--accent);background:var(--tint,#f2f7fd)}.member-checks input{width:auto;margin:0;flex:0 0 auto}.subpanel{border:1px solid var(--rule,#d5e2f1);border-radius:10px;padding:12px 14px 14px;margin-top:16px;background:var(--tint,#f2f7fd)}.subpanel>:first-child{margin-top:0}.subpanel>:last-child{margin-bottom:0}.not-claimed{display:inline-block;margin-top:2px;font-size:12px;font-weight:700;color:#8c1d2b;letter-spacing:.01em}.confirm-wrap{z-index:60;cursor:default}.confirm-card{background:var(--surface);border-radius:14px;padding:22px 22px 20px;width:100%;max-width:420px;box-shadow:0 18px 50px rgba(14,32,36,.35)}.confirm-title{font-size:17px;font-weight:800;color:var(--text)}.confirm-body{margin:10px 0 0;color:var(--muted);line-height:1.45}.report-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.generated-inline{display:flex;flex-direction:column;gap:6px;min-width:0}.generated-item{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.generated-item>.muted{font-size:13px}.blockers{margin-top:12px;padding:10px 12px;border:1px solid var(--danger);border-left-width:3px;border-radius:6px;background:var(--danger-soft)}.blockers-head{margin:0 0 6px;font-weight:700;font-size:13px}.blockers table.tbl td{padding:4px 8px 4px 0;border:0;font-size:13px}.move-panel{margin-top:8px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2)}.move-panel>label{display:block;margin-bottom:4px}.move-panel select{margin-bottom:8px}.move-list li{display:flex;align-items:center;gap:10px}.container-block+.container-block{margin-top:26px;padding-top:20px;border-top:2px solid var(--border-strong)}.container-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.container-name{font-size:20px;font-weight:700;letter-spacing:-.01em;min-width:0}.container-person{font-size:var(--fs-small);font-weight:600}.container-total{font-size:19px;font-weight:700;white-space:nowrap}.container-sub{font-size:13px;margin-bottom:10px}.doc-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0 0 14px;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.doc-row.na{background:transparent;border-style:dashed;padding-top:7px;padding-bottom:7px}.doc-name{flex:0 0 150px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.doc-state{flex:0 1 210px;min-width:130px;font-size:13px}.doc-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto;flex-wrap:wrap;margin-right:auto}.recon table.tbl td{border-bottom:0;padding-top:4px;padding-bottom:4px}.recon table.tbl+table.tbl{margin-top:30px}.recon table.tbl .recon-head td{border-top:0;padding-top:2px;padding-bottom:7px;font-weight:800;font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border-strong)}.recon table.tbl .recon-l1>td:first-child{padding-left:18px;font-weight:600}.recon table.tbl .recon-l2>td:first-child{padding-left:46px;font-weight:400}.recon table.tbl .recon-l2>td{font-size:15px}.recon-trip-link{color:var(--accent);font-weight:500}.recon-trip-link:focus-visible,.recon-trip-link:hover{text-decoration:underline}.recon-open{margin-left:10px;font-size:12px;font-weight:600;color:var(--muted);text-decoration:none;text-transform:uppercase;letter-spacing:.04em}.recon-open:hover{color:var(--accent);text-decoration:underline}.recon table.tbl .recon-l3>td:first-child{padding-left:74px}.recon table.tbl .recon-l3>td{font-size:14px;padding-top:2px;padding-bottom:2px}.recon-row{cursor:pointer}.recon-row:hover>td{background:var(--surface-2)}.recon-toggle{width:auto;padding:0;margin:0;background:none;border:0;box-shadow:none;color:inherit;font:inherit;font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.recon-toggle .caret{transition:transform .12s ease}.recon-row.is-open .recon-toggle .caret{transform:rotate(90deg)}.recon table.tbl .recon-total>td{border-top:2px solid var(--border-strong);border-bottom:0;padding-top:8px;font-weight:800;color:var(--text)}.recon table.tbl .recon-net>td{border-top:1px solid var(--border)}.claim-line{display:flex;justify-content:space-between;gap:12px;padding:2px 0}.grand-total.claimed{border-top:1px solid var(--border);color:var(--accent-dark)}.claim-hint{margin:-8px 0 14px}.mded-tag{margin-left:8px}.name-row{display:flex;align-items:stretch;gap:8px}.name-row input{flex:1 1;min-width:0}.name-row-switch{flex:0 0 auto;align-self:center;margin-bottom:14px;white-space:nowrap}@media (max-width:480px){.row.dates.narrow{flex-direction:row;gap:8px}.row.dates.narrow .date-field,.row.dates.narrow input[type=date]{max-width:none;width:100%;padding-left:8px;padding-right:4px;font-size:15px}}.status-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:2px 0 14px}body.trip-editing header.app{position:static}body.trip-editing .bottom-nav{display:none}body.trip-editing header.app{padding-bottom:calc(28px + env(safe-area-inset-bottom))}body.trip-editing .wrap{display:none}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 14px}.switch-label{margin:0;font-size:var(--fs-label);font-weight:600;color:var(--muted)}.switch{flex:0 0 auto;width:50px;height:29px;padding:0;border:0;border-radius:999px;background:var(--border-strong);box-shadow:none;cursor:pointer;transition:background .15s}.switch.on{background:var(--accent)}.switch-knob{display:block;width:23px;height:23px;margin-left:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(23,34,46,.3);transition:transform .15s}.switch.on .switch-knob{transform:translateX(21px)}.location-row{display:flex;gap:8px;align-items:stretch}.location-row input{flex:1 1;min-width:0}.location-row .location-state{flex:0 0 auto;width:86px;min-width:0}.perdiem-fields{margin-top:4px}.perdiem-note{margin:6px 0 0;font-size:var(--fs-label)}.perdiem-options{display:flex;flex-direction:column;gap:6px;margin-top:8px}button.perdiem-option{width:100%;text-align:left;white-space:normal;line-height:1.35}.perdiem-days li{padding-top:7px;padding-bottom:7px}.perdiem-days .perdiem-rate-note{border-bottom:0;padding-top:4px}.perdiem-days .perdiem-rate-note .muted{font-size:var(--fs-label)}.locality-picker{margin-top:8px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.locality-picker .perdiem-options{max-height:260px;overflow-y:auto}.gmap-preview{margin-top:4px}.gmap-preview .gmap-total td{font-weight:800;border-top:2px solid var(--text)}.warn-box{margin-top:10px;padding:10px 12px;border-radius:var(--radius-sm);background:rgba(224,72,77,.08);border:1px solid rgba(224,72,77,.3);font-size:var(--fs-small)}.warn-box>div+div{margin-top:4px}.download-btn{display:inline-flex;align-items:center;justify-content:center;flex:1 1;padding:16px 22px;border-radius:999px;background:var(--accent);color:var(--accent-text);font-weight:700;letter-spacing:.02em;text-align:center;text-decoration:none;box-shadow:0 2px 8px rgba(43,130,212,.26)}.download-btn:hover{background:var(--accent-dark)}.person-list li{align-items:flex-start;flex-wrap:wrap;gap:8px}.person-name{font-weight:700}.person-purpose{white-space:normal;margin-top:2px}.person-actions{display:flex;gap:6px;flex:0 0 auto}.person-form{width:100%;padding:12px;margin-bottom:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.person-form .row{margin-top:4px}li.person-editing{padding:0;border:0}.team-personnel{margin-top:6px;padding-top:10px;border-top:1px dashed var(--border-strong)}.team-personnel-head{font-size:var(--fs-label);margin-bottom:4px}.person-owner{flex:0 0 auto;font-size:var(--fs-label);align-self:flex-start}.label-row{display:flex;align-items:center;gap:7px;position:relative;margin-bottom:6px}.label-row label{margin-bottom:0}.help-bubble{position:absolute;top:100%;left:0;z-index:25;width:min(340px,calc(100vw - 48px));margin-top:2px;padding:11px 30px 11px 13px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-size:var(--fs-small);font-weight:400;line-height:1.45;color:var(--text);text-transform:none;letter-spacing:normal}.help-bubble.flip{left:auto;right:0}.help-close{position:absolute;top:4px;right:6px;width:22px;height:22px;padding:0;border:0;background:none;color:var(--muted);font-size:17px;line-height:1;cursor:pointer}.back-link{display:inline-block;margin-bottom:12px;font-weight:700;color:var(--accent);text-decoration:none}.period-row{display:flex;gap:10px}.period-row select{flex:1 1;margin-bottom:0}button.team-pick{width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--border);font:inherit;color:inherit;cursor:pointer}.team-grand{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:2px solid var(--text);font-size:1.15rem;font-weight:800}.team-grand>span:last-child{text-align:right}.team-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:1.45rem;font-weight:800;padding:2px 0}.team-total .muted{font-size:.9rem;font-weight:600}.cat-block{margin-bottom:10px}.cat-main{display:flex;justify-content:space-between;gap:12px;font-weight:800;padding:6px 0 2px;border-bottom:2px solid var(--border-strong)}.cat-head-name{display:inline-flex;align-items:center;gap:8px;min-width:0}.cat-icon{flex:0 0 auto;color:var(--accent)}.cat-sub{padding:3px 0 3px 14px}.cat-sub,.details-head{display:flex;justify-content:space-between;gap:12px}.details-head{align-items:center;margin-bottom:8px}.details-head button{width:auto;flex:0 0 auto}ul.list li.unreviewed-row{box-shadow:inset 3px 0 0 var(--accent);padding-left:10px}a.icon-btn{text-decoration:none}.cat-group{margin-bottom:18px}.cat-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0 6px;border-bottom:2px solid var(--border-strong);font-weight:700;font-size:17px}.cat-head>span:last-child{text-align:right;white-space:nowrap}.grand-total{display:flex;justify-content:space-between;gap:10px;padding:12px 0 4px;margin-top:6px;font-weight:800;font-size:19px}.trip-row{display:flex;align-items:center;gap:12px;padding:14px 12px;margin:0 -12px;border-radius:var(--radius-sm);text-decoration:none;color:inherit;border-bottom:1px solid var(--border)}.trip-row:last-child{border-bottom:none}.trip-row:hover{background:var(--surface-2)}.trip-row-name{font-weight:700;font-size:17px;display:flex;align-items:center;gap:8px;min-width:0}.trip-row-name>.ellipsis{min-width:0;flex:0 1 auto}.trip-row-name>.tag{flex:0 0 auto}.trip-row-total{text-align:right;font-weight:700;white-space:nowrap;flex:0 0 auto}.tag{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-dark);background:none;padding:0;border:none}.tag.muted-tag{color:var(--muted)}.tag.ok-tag{color:var(--ok)}button.linklike{width:auto;padding:0;background:none;box-shadow:none;border:none;color:var(--accent-dark);font-weight:600;font-size:var(--fs-small);text-decoration:underline}button.linklike:hover:not(:disabled){background:none;color:var(--text)}.cost-footer{margin:0 0 8px;padding:10px 14px;font-size:var(--fs-small);color:var(--muted);text-align:center;background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius-sm)}.cost-footer strong{color:var(--text)}.sheet-backdrop{position:fixed;inset:0;background:rgba(14,26,40,.5);display:flex;align-items:flex-end;justify-content:center;z-index:60}.sheet{width:min(560px,100%);background:var(--surface);border-radius:var(--radius) var(--radius) 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;box-shadow:0 -6px 26px rgba(29,43,48,.2)}.nav-error{position:fixed;left:12px;right:12px;bottom:calc(86px + env(safe-area-inset-bottom));background:var(--danger-soft);border:1px solid rgba(224,72,77,.4);color:var(--danger);border-radius:var(--radius-sm);padding:12px 15px;font-size:var(--fs-small);text-align:center;z-index:50;cursor:pointer}.bottom-nav .fab .spin.light{border-color:#fff rgba(255,255,255,.45) rgba(255,255,255,.45)}.trip-dates{font-size:var(--fs-small)}.filter-bar{margin-bottom:14px}.filter-chips{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{width:auto;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border-strong);color:var(--muted);font-size:var(--fs-label);font-weight:600;box-shadow:none;letter-spacing:0}.filter-chip:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.filter-chip[aria-checked=true],.filter-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.filter-chip .count{font-size:12px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted)}.filter-chip[aria-checked=true] .count,.filter-chip[aria-pressed=true] .count{background:rgba(255,255,255,.24);color:var(--accent-text)}.date-field{max-width:220px}.date-field::-webkit-calendar-picker-indicator{margin-left:auto;padding:4px;cursor:pointer;opacity:.75;transform:scale(1.25)}.date-field::-webkit-calendar-picker-indicator:hover{opacity:1}input.derived{background:var(--surface-2);color:var(--muted);cursor:default}.pdf-viewer{position:fixed;inset:0;z-index:70;background:var(--bg);display:flex;flex-direction:column}.pdf-bar{display:flex;align-items:center;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--border);font-weight:600}.pdf-frame{flex:1 1;width:100%;border:0;background:#fff}.tiny-link{display:inline-flex;align-items:center;padding:9px 15px;border-radius:999px;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--accent-dark);font-size:var(--fs-label);font-weight:600;text-decoration:none}.tiny-link:hover{background:var(--surface-2)}.receipts-layout{display:block}.trip-panel{display:none}@media (min-width:900px){.receipts-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:14px;gap:14px;align-items:start}.trip-panel{display:block;position:-webkit-sticky;position:sticky;top:88px}}@media (min-width:1024px){body{padding-left:var(--rail-w)}.bottom-nav{top:var(--brand-h);bottom:0;right:auto;width:var(--rail-w);display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:16px 12px;border-top:0;border-right:1px solid var(--border);box-shadow:none}.bottom-nav a,.bottom-nav button{flex-direction:row;justify-content:flex-start;gap:12px;padding:11px 12px;border-radius:var(--radius-sm);font-size:15px;text-align:left}.bottom-nav a:hover{background:var(--surface-2)}.bottom-nav .on{background:var(--accent-soft)}.bottom-nav .fab{order:-1;margin-bottom:10px;background:var(--accent);color:var(--accent-text);box-shadow:0 3px 10px rgba(43,130,212,.35)}.bottom-nav .fab .ico,.bottom-nav .on .ico{width:auto;height:auto;margin-top:0;background:none;border:0;box-shadow:none;color:inherit}.wrap{padding-bottom:32px}html.brand-hidden .brand-bar{transform:none}html.brand-hidden body.has-brand header.app{top:var(--brand-h)}}@media (min-width:900px){ul.list li[draggable=true]{cursor:-webkit-grab;cursor:grab}}ul.list li.dragging{opacity:.45}.trip-drop{display:flex;align-items:center;gap:10px;padding:12px;margin-bottom:8px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);transition:border-color .12s,background .12s,transform .12s}.trip-drop:last-child{margin-bottom:0}.trip-drop.over{border-color:var(--accent);border-style:solid;background:var(--accent-soft);transform:scale(1.02)}a.trip-drop{color:inherit;text-decoration:none;cursor:pointer}a.trip-drop:hover{border-color:var(--accent);background:var(--accent-soft)}.trip-drop.unfiled-drop{background:var(--surface);border-color:var(--border);margin-bottom:14px}.trip-drop.unfiled-drop.over{border-color:var(--danger);background:var(--danger-soft)}.nonreimb-note{font-size:11px;color:#8a6d3b;white-space:nowrap}.struck{text-decoration:line-through;color:#8296ab;font-size:12px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head .label-row,.panel-head .label-row label{margin-bottom:0}.panel-caret{flex:0 0 auto;width:auto;background:none;border:0;padding:8px 4px 8px 12px;margin:0;line-height:0;cursor:pointer;color:var(--muted)}.panel-caret .caret{display:block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid;transition:transform .14s ease}.panel-caret[aria-expanded=true] .caret{transform:rotate(180deg)}.linkish{background:none;border:0;padding:0;margin:0;width:auto;box-shadow:none;font:inherit;font-weight:500;font-size:13px;color:var(--accent,#1f6cb5);text-decoration:underline;cursor:pointer}.perdiem-set{margin-left:10px;white-space:nowrap}.mie-block{padding:8px 0 4px}.mie-compare{display:flex;justify-content:space-between;gap:12px;padding:7px 0 3px;margin-top:4px;border-top:1px solid var(--border,#d5e2f1);font-size:14px}.perdiem-day-n{font-weight:600}.mie-over{color:#8a4b2b;margin-left:6px}.mie-under{color:#2d6a4a;margin-left:6px}.warn-inline{margin:4px 0 8px;padding:8px 10px;border-radius:6px;background:#fdf3f3;border:1px solid #e7b9b9;color:#8d2525;font-size:13px}.modal-backdrop{position:fixed;inset:0;background:rgba(23,34,46,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:60}.modal{background:var(--card,#fff);border-radius:10px;padding:18px;width:100%;max-width:460px;max-height:calc(100vh - 32px);overflow-y:auto}.modal-title{margin:0 0 8px;font-size:17px}.modal-note{margin:0 0 12px;font-size:13px}.perdiem-leg+.perdiem-leg{margin-top:14px;padding-top:14px;border-top:1px solid var(--border,#d5e2f1)}.perdiem-leg-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:6px;font-size:14px}.recipient-list{margin:0;padding-left:18px;font-size:13px}.recipient-list li{padding:1px 0}.unclaimed-list li{opacity:.72}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.leg-edit{border:1px solid var(--border);border-radius:10px;padding:12px 14px 14px;margin-top:12px;background:var(--surface-2)}.leg-edit>:first-child{margin-top:0}.location-field{position:relative}.suggestions{position:absolute;z-index:20;left:0;right:0;margin:2px 0 0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 10px 28px rgba(14,32,36,.16);max-height:260px;overflow-y:auto}.suggestions li+li{border-top:1px solid var(--border)}.suggestions button{width:100%;text-align:left;background:none;border:0;color:var(--text);font-size:15px;padding:9px 10px;border-radius:7px;cursor:pointer}.suggestions button:focus-visible,.suggestions button:hover{background:var(--accent-soft)}.itinerary-leg+.itinerary-leg{margin-top:12px;padding-top:12px;border-top:1px solid var(--border,#d5e2f1)}.itinerary-leg-head{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin-bottom:4px}.gmap-terms{margin:8px 0 4px;padding-left:12px;border-left:2px solid var(--border,#d5e2f1)}.gmap-rate{border:0;padding:0;margin:6px 0 0}.gmap-rate legend{padding:0;font-size:13px;margin-bottom:4px}.gmap-rate-options{display:flex;gap:16px}.gmap-rate-option{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:15px}.gmap-rate-option input{width:auto;margin:0}.report-block+.report-block{margin-top:16px;padding-top:16px;border-top:1px solid var(--border,#d5e2f1)}.gmap-rate-note{font-size:11px}.crop,.lightbox-image{display:flex;flex-direction:column;width:100%;height:100%;max-width:900px;gap:10px;cursor:default}.crop-bar,.lightbox-image>.lightbox-bar{position:relative;z-index:2;flex:0 0 auto}.crop-frame,.lightbox-image>img{flex:1 1;min-height:0;align-self:center;max-width:100%;object-fit:contain}.crop-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#fff;font-size:13px}.crop-bar .muted{color:#c7d5e4}.crop-bar button{width:auto;flex:0 0 auto}.crop-frame{position:relative;line-height:0;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:crosshair;display:inline-flex}.crop-frame img{display:block;max-width:100%;max-height:100%;object-fit:contain;pointer-events:none}.crop-box{position:absolute;border:2px solid #fff;box-shadow:0 0 0 9999px rgba(10,18,28,.55)}.receipt-gallery{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.receipt-gallery figure{margin:0;display:flex;flex-direction:column;gap:4px;max-width:100%}.receipt-gallery figcaption{font-size:12px}.add-receipt{display:inline-block;margin-top:12px;cursor:pointer}a.btn-like{display:inline-flex;align-items:center;justify-content:center;flex:1 1;cursor:pointer;border-radius:999px;padding:16px 22px;background:var(--surface);color:var(--accent-dark);border:1.5px solid var(--border-strong);font-weight:700;letter-spacing:.02em;text-align:center;text-decoration:none;transition:background .15s}a.btn-like:hover{background:var(--surface-2)}.add-receipt .btn-like{display:inline-block;padding:6px 12px;border:1px solid var(--rule,#d5e2f1);border-radius:8px;font-size:13px}.add-receipt input:disabled+.btn-like{opacity:.6}.fx-box{border-left:3px solid var(--rule,#d5e2f1);padding-left:12px;margin:14px 0}.ccy{font-size:.75em;margin-left:3px;opacity:.7;font-weight:500}.paste-sheet{gap:10px}.paste-title{margin:0 0 4px;font-size:17px}.paste-target{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:140px;padding:20px;border:2px dashed var(--rule,#d5e2f1);border-radius:10px;text-align:center}.paste-target .muted{font-size:13px}.paste-preview{display:block;max-width:100%;max-height:46vh;object-fit:contain;border:1px solid var(--rule,#d5e2f1);border-radius:8px;background:#fff}.paste-hint{margin:0;font-size:12px;text-align:center}.paste-note{margin:0}.paste-sheet:focus{outline:none}.gmap-pick-line{margin-top:14px}.gmap-pick-line h4{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#55708a);border-bottom:1px solid var(--rule,#d5e2f1);padding-bottom:3px}.gmap-pick-row{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer}.gmap-pick-row.single{cursor:default;padding-left:24px}.gmap-pick-row input{width:auto;margin:0;flex:0 0 auto}.gmap-pick-row .num{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kind-choice{display:flex;gap:10px;margin-bottom:14px}.kind-choice label{flex:1 1;display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid var(--rule,#d5e2f1);border-radius:8px;cursor:pointer;margin:0}.kind-choice label:has(input:checked){border-color:var(--accent);background:var(--tint,#f2f7fd)}.kind-choice input{width:auto;margin:2px 0 0;flex:0 0 auto}.kind-choice span{display:flex;flex-direction:column;gap:2px;min-width:0}.kind-choice .muted{font-size:12px}.sheet-dest{margin:0 0 .35rem;font-size:.85rem;color:var(--muted);text-align:center}.sheet-dest strong{color:var(--text)}.summary{display:flex;flex-direction:column}.grp+.grp{margin-top:18px}.main-head{margin:0 0 10px;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-dark)}.cat-block+.cat-block>.main-head,.grp+.grp>.main-head{margin-top:16px}.grp-head{display:flex;align-items:center;gap:8px;padding-bottom:6px;border-bottom:2px solid var(--border-strong)}.grp-label{flex:1 1;min-width:0}.grp-label,.grp-total{font-weight:700}.chip.rate{font-size:12px;font-weight:600;color:var(--accent-dark);background:var(--accent-soft);border-radius:999px;padding:3px 10px;white-space:nowrap}.grp-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);color:inherit;text-decoration:none}.grp-row:last-child{border-bottom:0}.exp-row .exp-main{display:flex;flex-direction:column;flex:1 1;min-width:0}.exp-vendor{font-weight:600}.exp-row:hover .exp-vendor{color:var(--accent)}.day-row .day-name{font-weight:600;flex:0 0 auto}.day-row .day-meta{flex:1 1;min-width:0}.actuals-row .delta{color:var(--accent-dark)}.grand-row{border-top:0;border-bottom:0;margin-top:10px;padding-top:10px}.grand-label{font-weight:700}.grand-row .grand-total{font-weight:700;font-size:1.05rem}.rule{border:0;border-top:1px solid var(--border);margin:18px 0 14px}.prepared{margin-top:4px}.recipients{margin:0 0 12px;padding-left:22px;font-size:.92rem}.recipients li{padding:1px 0}.actions.two-up{display:flex;gap:10px;flex-wrap:nowrap}.actions.two-up button{flex:1 1}a.btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;border-radius:999px;padding:10px 18px;background:var(--accent);color:var(--accent-text);font-weight:700;font-size:var(--fs-body);letter-spacing:.02em;text-decoration:none;white-space:nowrap}a.btn.secondary{background:var(--surface);color:var(--accent-dark);border:1.5px solid var(--border-strong)}a.btn:hover{background:var(--accent-dark)}a.btn.secondary:hover{background:var(--surface-2)}.list .actions a.btn,.list .actions button{width:auto;padding:10px 18px}.grand-label{display:flex;align-items:center;gap:8px;flex:1 1;min-width:0}.grand-label:after{content:none}.ok-box .actions a.btn,.ok-box .actions button{width:auto;padding:9px 16px;font-size:var(--fs-small)}.ok-box .actions{gap:8px}.crop-hint{margin:8px 0 0;text-align:center;font-size:var(--fs-small)}