:root{--bg:#f6f7f3;--surface:#fff;--ink:#243a34;--muted:#7a8580;--line:#e5e9e2;--green:#2c594b;--green-light:#e8f0e9;--gold:#b2874f;--negative:#a86b4b;--shadow:0 6px 24px #283b3010;--radius:16px;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:var(--green);text-decoration:none}button:disabled{cursor:not-allowed;opacity:.5}button{border:0;background:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #d2b981;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:34px;line-height:1.25;letter-spacing:-1.2px;margin-bottom:10px}h1,h2{font-weight:600}h2{font-size:20px;line-height:1.3;letter-spacing:-.45px;margin-bottom:9px}h3{font-size:17px;line-height:1.35;letter-spacing:-.25px;margin-bottom:8px}p{line-height:1.65;margin-bottom:14px}p,small{color:var(--muted)}small{font-size:12px;line-height:1.5}b,strong{font-weight:600}svg{flex-shrink:0}input,select,textarea{border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:11px 12px;min-width:0}select{cursor:pointer;padding-right:25px}textarea{resize:vertical;min-height:85px}input::placeholder,textarea::placeholder{color:#9aa39d}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px}input[type=file]{border:0;padding:5px 0;font-size:12px;width:100%}details{border-top:1px solid var(--line);padding:17px 0;margin-top:12px}summary{cursor:pointer;color:var(--ink);font-size:13px;line-height:1.5}details p,details ul{font-size:13px;line-height:1.7;margin-top:12px}details ul{padding-left:22px;color:var(--muted)}details li{margin-bottom:9px}.primary,.secondary,.small-button,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:9px;font-weight:550;font-size:13px;min-height:42px;padding:10px 16px;transition:background .16s,transform .16s}.primary{background:var(--green);color:#fff}.primary:hover{background:#1e4639;transform:translateY(-1px)}.secondary,.small-button{background:var(--surface);border:1px solid var(--line)}.secondary:hover,.small-button:hover{background:var(--green-light)}.text-button{padding:6px 0;color:var(--green);min-height:34px}.small-button{font-size:12px;min-height:33px;padding:7px 10px}.small-button.primary{background:var(--green);color:#fff}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;flex-shrink:0}.icon-button:hover{background:var(--green-light)}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grow{flex:1 1;min-width:0}.grow small{display:block;margin-top:5px}.muted{color:var(--muted);font-size:12px;line-height:1.7}.positive{color:var(--green)}.danger,.negative{color:var(--negative)}.center{text-align:center}.wide{width:100%}.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.5px;margin-bottom:12px;color:var(--muted)}.badge{display:inline-flex;font-size:10px;line-height:1.2;letter-spacing:.35px;font-weight:600;border-radius:6px;padding:6px 9px;background:var(--bg);text-transform:capitalize;white-space:nowrap}.badge.green{background:#e7f0e7;color:#3a624d}.badge.amber{background:#f8edd8;color:#916c35}.badge.paper{background:#fcf9ebed;color:#3d4c3e}.avatar{height:37px;width:37px;display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:50%;color:#46564c;font-size:14px;font-weight:600}.avatar.small{height:29px;width:29px;font-size:11px}.avatars{display:flex;padding-left:0}.avatars .avatar{margin-left:-6px;border:2px solid var(--surface)}.avatars .avatar:first-child{margin-left:0}.online-dot{display:inline-block;width:6px;height:6px;background:#75a47c;border-radius:50%;margin-right:7px;flex-shrink:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:244px;position:fixed;left:0;top:0;bottom:0;display:flex;flex-direction:column;padding:34px 22px 20px;background:var(--surface);border-right:1px solid var(--line);z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:19px;letter-spacing:-.5px;padding:0;text-align:left;white-space:nowrap}.brand img{height:38px;width:38px;border-radius:11px}.brand span{font-weight:400}.brand b{font-weight:650}.nav-caption{font-size:9px;font-weight:600;letter-spacing:1.1px;color:#9aa49d;margin:43px 12px 15px;white-space:nowrap}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav button{display:flex;align-items:center;gap:12px;padding:12px 13px;text-align:left;color:#76817b;font-size:12px;border-radius:9px;white-space:nowrap;min-height:44px}.sidebar nav button:hover{background:var(--bg);color:var(--green)}.sidebar nav button.selected{background:var(--green-light);color:var(--green);font-weight:650}.nav-count{font-size:10px;background:#dae6d9;border-radius:5px;padding:3px 6px;margin-left:auto}.sidebar-divider{margin:28px 12px 0;border-top:1px solid var(--line)}.sidebar-divider+.nav-caption{margin-top:24px}.sidebar-bottom{margin-top:auto;padding-top:30px}.sidebar-note{background:var(--bg);padding:15px;border-radius:11px;margin-bottom:24px}.sidebar-note,.sidebar-note b{font-size:11px}.sidebar-note p{font-size:11px;margin:8px 0 0;line-height:1.6}.sidebar-note button{gap:6px;font-size:11px;color:var(--green);margin-top:12px;padding:0}.profile,.sidebar-note button{display:flex;align-items:center}.profile{gap:10px;padding:14px 0 0;border-top:1px solid var(--line);position:relative}.profile b{font-size:12px}.profile small{display:block;font-size:10px}.profile select{position:absolute;opacity:0;inset:0;width:100%;cursor:pointer}.profile:has(select):after{content:"⌄";margin-left:auto}.workspace{margin-left:244px;width:calc(100% - 244px)}.topbar{height:78px;padding:0 44px;border-bottom:1px solid var(--line);justify-content:space-between;background:var(--surface)}.breadcrumb,.topbar{display:flex;align-items:center}.breadcrumb{gap:13px;font-size:11px;color:#909a94;min-width:0}.breadcrumb b{font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right{gap:18px}.private-pill,.topbar-right{display:flex;align-items:center}.private-pill{gap:6px;font-size:10px;color:var(--muted)}.main-content{max-width:1510px;margin:0 auto;padding:38px 44px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:29px}.page-heading p:last-child{font-size:13px;margin:0}.page-heading .eyebrow{margin-bottom:12px}.page-heading h1{font-size:29px}.page-heading>.primary{flex-shrink:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2{margin-bottom:6px}.section-heading p{font-size:12px;margin:0}.section-space{margin-top:32px}.count{font-size:11px;vertical-align:middle;display:inline-block;background:#e9ece4;padding:4px 7px;border-radius:6px;margin-left:7px;color:var(--muted)}.panel{background:var(--surface);padding:25px;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.panel>p{font-size:12px}.panel>.section-heading{margin-bottom:20px}.two-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:23px;align-items:start}.overview-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:23px}.welcome-card{background:#e8ebdd;position:relative;border-radius:16px;overflow:hidden;min-height:258px;isolation:isolate;padding:31px}.welcome-card>div{position:relative;z-index:2;max-width:63%}.welcome-card .scene{position:absolute;inset:0;height:100%;width:100%;z-index:-1;opacity:.9}.welcome-card:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#e6ebdb,#e6ebdbef 40%,#e6ebdb00 80%);z-index:0}.welcome-card h2{font-family:Georgia,Times New Roman,serif;font-size:38px;line-height:1.1;letter-spacing:-1px;font-weight:400;margin:15px 0 12px;color:#314e41}.welcome-card .badge{font-size:8px;letter-spacing:1.05px;padding:5px 7px;background:#ffffff6b}.welcome-card p{font-size:11px;color:#6d7c68;line-height:1.8;margin-bottom:14px}.welcome-card button{display:flex;align-items:center;gap:16px;padding:0;font-size:11px;font-weight:600;color:#365842}.balance-highlight{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:25px 26px}.balance-highlight .eyebrow{margin:0;font-size:9px;letter-spacing:1px}.balance-highlight select{font-size:10px;padding:5px 9px;border:0;background:var(--bg)}.balance-highlight h2{font-size:34px;letter-spacing:-1.4px;font-weight:500;margin:18px 0 5px;color:var(--green)}.balance-highlight h2.negative{color:var(--negative)}.balance-highlight>p{font-size:11px;margin-bottom:24px}.balance-split{display:flex;gap:25px;padding-bottom:21px;border-bottom:1px solid var(--line);margin-bottom:17px}.balance-split>div{flex:1 1}.balance-split>div+div{border-left:1px solid var(--line);padding-left:20px}.balance-split span{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.balance-split b{font-size:17px;display:block;margin-top:8px;font-weight:500}.balance-highlight>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;font-size:11px;font-weight:600}.trip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:20px}.trip-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-align:left;padding:0;transition:transform .2s,box-shadow .2s;width:100%}.trip-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.trip-image{height:143px;position:relative;overflow:hidden}.scene{display:block;width:100%;height:100%;object-fit:cover}.trip-image .badge{position:absolute;left:17px;top:16px;font-size:9px}.trip-card-body{padding:19px 20px 18px}.location{display:flex;align-items:center;gap:5px;font-size:10px;margin-bottom:8px}.trip-card h3{font-size:17px;margin:0 0 7px}.trip-card p{font-size:10px;margin-bottom:21px}.trip-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.trip-card-bottom>span:last-child{text-align:right}.trip-card-bottom b{font-size:13px;font-weight:550}.trip-card-bottom small{display:block;font-size:9px;margin-top:3px}.expense-list{display:flex;flex-direction:column}.expense-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}.expense-row:last-child{border-bottom:0}.expense-row:hover .expense-desc b{color:var(--gold)}.expense-symbol{background:var(--bg);color:#7d8e77;border-radius:10px;width:39px;height:39px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.expense-desc{flex:1 1;min-width:0}.expense-desc b{display:block;font-size:12px;line-height:1.4}.expense-desc small{display:block;font-size:10px;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-date{color:var(--muted);font-size:10px;white-space:nowrap;margin:0 12px}.expense-money{text-align:right;flex-shrink:0}.expense-money b{display:block;font-size:12px;font-weight:550}.expense-money b small{display:inline;font-size:8px}.expense-money>small{display:block;font-size:9px;margin-top:5px}.expense-row>svg{color:#a2aaa3}.two-columns .expense-date,.two-columns .expense-row>svg{display:none}.voided{opacity:.5}.voided .expense-desc b{text-decoration:line-through}.pending-mini{display:flex;align-items:center;gap:12px;padding:16px 0}.pending-mini b{font-size:12px}.pending-mini small{font-size:10px}.pending-mini+.text-button{margin-top:10px}.pair-row{display:flex;align-items:center;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}.pair-row:last-child{border-bottom:0}.pair-row b{font-size:13px}.pair-row strong{font-size:15px;white-space:nowrap}.pair-row small{font-size:11px}.pair-row .small-button{margin-left:5px}.settled{text-align:center;padding:35px 20px}.settled svg{margin:0 auto 14px;color:var(--green)}.settled b,.settled svg{display:block}.settled p{font-size:12px;margin-top:8px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.metric{border-radius:14px;background:var(--surface);padding:23px;border:1px solid var(--line)}.metric .section-heading{font-size:12px;color:var(--muted)}.metric svg{width:19px;height:19px;color:#9aa990}.metric h2{font-size:32px;font-weight:500;letter-spacing:-1px;margin:17px 0 6px}.metric small{font-size:10px}.payment-card{padding:20px 0;border-bottom:1px solid var(--line)}.payment-card:last-child{border-bottom:0}.payment-card b,.payment-card strong{font-size:12px}.payment-card p{font-size:11px;margin:9px 0 12px}.payment-card small{font-size:10px}.payment-actions{margin-top:14px}.trace-row{display:flex;align-items:center;gap:8px;padding:9px 0;width:100%;text-align:left;font-size:12px}.trace-row span{flex:1 1}.filter-row{display:flex;align-items:center;gap:15px;margin-bottom:24px}.filter-row .search{flex:1 1}.search{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:0 12px;color:var(--muted);max-width:400px}.search input{background:none;border:0;padding:12px 0;font-size:12px;outline-offset:0;width:100%}.empty{text-align:center;padding:42px 20px;color:var(--muted)}.empty>svg{color:#9aaa97;margin-bottom:16px}.empty h3{color:var(--ink);font-size:16px}.empty p{font-size:12px;max-width:320px;margin:10px auto 18px}.trip-grid>.empty{grid-column:1/-1}.back-link{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);padding:0;margin-bottom:20px}.trip-detail-hero{position:relative;height:260px;overflow:hidden;border-radius:16px;background:#9bac9a}.trip-detail-hero:after,.trip-detail-hero>.scene{position:absolute;inset:0}.trip-detail-hero:after{content:"";background:linear-gradient(90deg,#203b38c9,#203b3810)}.trip-detail-overlay{position:absolute;bottom:30px;left:32px;z-index:1;color:white;max-width:75%}.trip-detail-overlay h1{font-size:37px;margin:14px 0 5px;text-shadow:0 2px 10px #16382b30}.trip-detail-overlay p{color:#f0f1e3c9;margin:0 0 18px;font-size:12px}.trip-detail-overlay>div{display:flex;gap:20px;font-size:11px;flex-wrap:wrap}.trip-detail-overlay>div span{display:flex;gap:7px;align-items:center}.edit-trip{position:absolute;right:22px;top:22px;z-index:1;font-size:11px;min-height:34px}.detail-summary{display:flex;gap:30px;justify-content:space-between;align-items:center;margin:24px 0}.detail-summary p{font-size:12px;max-width:60%;margin:0}.tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:27px}.tabs button{padding:14px 0;font-size:12px;color:var(--muted);border-bottom:2px solid transparent;text-transform:capitalize}.tabs button.active{border-color:var(--green);color:var(--green);font-weight:600}.timeline{max-width:1000px}.timeline-day{font-size:14px;letter-spacing:0;margin:30px 0 19px}.timeline-line{display:flex;gap:22px;align-items:flex-start;position:relative;padding-bottom:18px}.event-time{width:52px;text-align:right;padding-top:23px;flex-shrink:0}.event-time b{font-size:13px;display:block}.event-time small{font-size:10px;display:block;margin-top:5px}.timeline-dot{position:relative;background:#96ae91;width:9px;height:9px;border:2px solid var(--bg);outline:1px solid #b3c4ac;border-radius:50%;margin-top:28px;flex-shrink:0}.timeline-dot:after{content:"";width:1px;background:var(--line);height:130px;position:absolute;left:2px;top:12px}.event-card{position:relative;flex:1 1;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:24px}.event-card h3{margin-top:12px}.event-card p{font-size:12px}.event-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:10px}.event-meta a,.event-meta span{display:flex;gap:5px;align-items:center}.category-chart>div{margin-top:26px}.category-chart .section-heading{font-size:12px;margin-bottom:11px}.category-chart .section-heading span{display:flex;align-items:center;gap:9px}.bar-track{height:7px;background:var(--bg);overflow:hidden}.bar,.bar-track{border-radius:5px}.bar{height:100%;min-width:2px}.c0{background:#5b7c62}.c1{background:#9cae8b}.c2{background:#c5ab7c}.c3{background:#b5c5c7}.over{background:#bd8863}.legend-dot{width:8px;height:8px;border-radius:3px;display:inline-block}.budget-row{padding:23px 0;border-bottom:1px solid var(--line)}.budget-row .section-heading{font-size:12px;margin-bottom:13px}.budget-row small{display:block;font-size:10px;margin-top:8px}.import-upload{display:flex;align-items:center;gap:24px;margin-bottom:25px}.import-upload>svg{color:var(--green)}.import-upload h3{font-size:15px;margin-bottom:5px}.import-upload p{font-size:11px;margin:0 0 6px}.import-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:25px}.import-list h2{font-size:18px;margin-top:13px}.import-list .section-heading{align-items:start}.import-list .section-heading p{font-size:10px;word-break:break-word}.import-numbers{display:flex;gap:16px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.import-numbers b{font-size:13px;color:var(--ink);margin-right:3px}.import-list .actions{margin-top:15px}.import-list .actions button{font-size:10px}.import-preview{margin-bottom:20px}.category-row{display:flex;align-items:center;gap:12px;padding:7px 0;font-size:12px}.category-dot{width:8px;height:8px;background:#adc09c;border-radius:3px}.category-dot.retired{background:#c5c6c1}.reset-box{padding-top:24px;margin-top:22px;border-top:1px solid var(--line)}.reset-box h3{font-size:15px}.audit-row,.reset-box p{font-size:12px}.audit-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:16px 0}.audit-row:last-child{border-bottom:0}.audit-dot{width:7px;height:7px;border:2px solid #a4b495;border-radius:50%}.audit-row small,.audit-row time{font-size:10px;color:var(--muted)}.alert{display:flex;gap:12px;align-items:flex-start;background:#f3efdf;border:1px solid #e8e0c6;color:#8d783f;border-radius:10px;padding:15px 17px;line-height:1.6;font-size:12px;margin-bottom:24px}.alert>svg{margin-top:1px}.alert.error{background:#f9ece4;border-color:#ebd3c4;color:#a25f46}.alert button{margin-left:auto;color:inherit;padding:0}.alert p{color:inherit;margin:8px 0 0;font-size:11px}.archive-alert{background:#eff1e8;border-color:#dce3d3;color:#6c795c}.toast{position:fixed;bottom:26px;left:calc(50% + 100px);transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:#254e43;color:#fff;padding:15px 23px;border-radius:11px;box-shadow:0 7px 30px #1e392938;z-index:100;font-size:12px;max-width:90vw;animation:toast-in .2s ease-out}@keyframes toast-in{0%{opacity:0;bottom:18px}to{opacity:1;bottom:26px}}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);color:#a0a89f;font-size:9px;padding:23px 0;margin-top:45px}footer>span:first-child{font-weight:600;letter-spacing:.2px}footer>span:last-child{display:flex;align-items:center}.mobile-menu,.sidebar-scrim{display:none}dialog{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:17px;box-shadow:0 24px 100px #122a3440;width:590px;max-width:calc(100vw - 30px);max-height:90vh;padding:0}dialog::backdrop{background:#172a2869;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:26px 29px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:3}.dialog-head .eyebrow{font-size:9px;margin-bottom:7px}.dialog-head h2{font-size:23px;margin:0}.dialog-form{padding:25px 29px}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;margin-bottom:19px}.field>span{font-size:11px;font-weight:600}.field small{font-size:10px}.field input,.field select,.field textarea{width:100%;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.amount-input{display:flex;gap:14px;align-items:center}.amount-input .field:first-child{flex:1 1}.amount-input input{font-size:27px;font-weight:500;letter-spacing:-.5px;padding:13px 15px}.amount-input select{padding:19px 12px}.participant-picker{display:flex;gap:8px;flex-wrap:wrap;padding-top:4px}.participant-picker button{display:flex;align-items:center;gap:7px;padding:6px 10px 6px 6px;border:1px solid var(--line);border-radius:30px;font-size:11px;background:var(--surface)}.participant-picker button.chosen{border-color:#9ebc9d;background:var(--green-light)}.split-preview{border:1px solid var(--line);background:var(--bg);border-radius:11px;padding:7px 16px;margin:4px 0 24px}.split-preview>div{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.split-preview>div>span{flex:1 1}.split-preview label{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:10px}.split-preview input{max-width:76px;padding:7px;font-size:12px;text-align:right}.split-preview b{min-width:70px;text-align:right}.split-preview p{font-size:11px;gap:6px;margin:12px 0 7px}.checkbox,.split-preview p{display:flex;align-items:center}.checkbox{gap:9px;font-size:12px;margin-bottom:22px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:22px;margin-top:8px;border-top:1px solid var(--line)}.dialog-footer>.danger{margin-right:auto}.dialog-form details p{font-size:12px}.payment-direction{display:flex;align-items:center;justify-content:center;gap:30px;margin:8px 0 20px}.payment-direction .avatar{height:50px;width:50px;font-size:21px}.payment-direction>svg{color:#9bab9c}.source-table{max-height:330px;overflow:auto;margin-top:15px;font-size:11px;border:1px solid var(--line)}.source-table table{border-collapse:collapse;width:100%}.source-table td,.source-table th{padding:9px;text-align:left;vertical-align:top;max-width:270px;overflow-wrap:anywhere;border-bottom:1px solid var(--line)}.source-table th{position:sticky;top:0;background:var(--bg)}.staged-row{padding:15px;border:1px solid var(--line);border-radius:9px;margin-bottom:10px}.staged-row b,.staged-row small{display:block;font-size:12px}.staged-row p{font-size:11px;margin:8px 0 0}.boot{min-height:100vh;display:flex;justify-content:center;align-items:center;flex-direction:column}.boot h2{margin-top:25px}.login{display:grid;grid-template-columns:1.15fr 1fr;min-height:100vh;background:var(--surface)}.login-art{position:relative;overflow:hidden;background:#aec1ab}.login-art>.scene{position:absolute;bottom:0;height:68%;width:100%;opacity:.9}.login-art>div{position:relative;z-index:1;padding:55px 70px}.login-art .brand{margin-bottom:120px}.login-art h1{font-family:Georgia,serif;font-size:76px;line-height:1.05;font-weight:400;letter-spacing:-3px;color:#274c3e}.login-art p{font-size:17px;color:#476653;line-height:1.8}.login-form{padding:90px 65px;max-width:600px;margin:auto;width:100%}.login-form h2{font-size:30px;letter-spacing:-1px}.login-form>p{font-size:13px;margin-bottom:35px}.local-label{font-size:11px;display:flex;align-items:center;gap:7px;color:#7b8e74;margin-bottom:18px}.account-list{display:flex;flex-direction:column;gap:11px;margin-bottom:27px}.account-list button{border:1px solid var(--line);padding:14px 16px;border-radius:12px;display:flex;align-items:center;gap:13px;text-align:left;transition:background .2s}.account-list button:hover{background:var(--green-light)}.account-list button>span:nth-child(2){flex:1 1}.account-list b{font-size:13px}.account-list small{display:block;font-size:10px;margin-top:4px}.account-list svg{color:#879b80}[data-theme=dark]{--bg:#182822;--surface:#20342c;--ink:#e0e7db;--muted:#93a698;--line:#33483b;--green:#91b69a;--green-light:#304d3b;--negative:#d5a082;--gold:#c8b783;color-scheme:dark}[data-theme=dark] .primary{background:#527b5e;color:#f5f7ed}[data-theme=dark] .badge.green{background:#3d5941;color:#c4daba}[data-theme=dark] .badge.amber{background:#655a36;color:#ead19b}[data-theme=dark] .count{background:#3d5040}[data-theme=dark] .alert{background:#484b32;border-color:#585c3d;color:#d2cba6}[data-theme=dark] .alert.error{background:#583d30;color:#e7b291}[data-theme=dark] .login-art{background:#aec1ab}[data-theme=dark] .login-art .brand{color:#264235}@media (min-width:1500px){.welcome-card{min-height:285px}.welcome-card h2{font-size:43px}.trip-image{height:175px}.trip-card h3{font-size:19px}.page-heading h1{font-size:33px}}@media (max-width:1200px){.sidebar{width:213px;padding-left:17px;padding-right:17px}.workspace{margin-left:213px;width:calc(100% - 213px)}.topbar{padding:0 28px}.main-content{padding:29px 28px 0}.page-heading h1{font-size:25px}.trip-grid{gap:17px}.overview-layout{gap:17px;grid-template-columns:1.5fr 1fr}.welcome-card{padding:25px}.welcome-card>div{max-width:75%}.welcome-card h2{font-size:34px}.balance-highlight{padding:23px 20px}.balance-highlight h2{font-size:30px}.two-columns{gap:17px;grid-template-columns:1fr 1fr}.panel{padding:21px}.trip-card-body{padding:17px}.trip-card h3{font-size:15px}.import-list{grid-template-columns:1fr}.pair-row{gap:8px;flex-wrap:wrap}.pair-row .small-button{margin-left:auto}.expense-money b{font-size:11px}.two-columns .expense-desc small{max-width:170px}.expense-date{display:none}.nav-caption{font-size:8px}.stats-grid{gap:17px}.metric{padding:20px}.metric h2{font-size:27px}}@media (max-width:980px){.trip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-layout{grid-template-columns:1fr}.balance-highlight{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.balance-highlight>.section-heading{grid-column:1/-1}.balance-highlight h2{margin-top:12px}.balance-highlight>p{grid-column:1;grid-row:3;margin-bottom:0}.balance-split{grid-column:2;grid-row:2/4;margin:13px 0;padding:0;border:0;gap:13px}.balance-split>div+div{padding-left:13px}.balance-highlight>button{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.welcome-card>div{max-width:65%}.welcome-card:after{background:linear-gradient(90deg,#e6ebdb,#e6ebdbd9 40%,#e6ebdb00 80%)}.two-columns{grid-template-columns:1fr}.page-heading{align-items:flex-start}.page-heading>.primary{font-size:11px}.page-heading h1{font-size:24px}.private-pill{display:none}.stats-grid{gap:10px}.metric h2{font-size:23px}.metric .section-heading{font-size:11px}.metric svg{width:15px}.login-art>div{padding:45px}.login-art .brand{margin-bottom:100px}.login-art h1{font-size:58px}.login-form{padding:55px 40px}.login-form h2{font-size:25px}.detail-summary{align-items:flex-start}.detail-summary p{max-width:55%}.trip-detail-overlay h1{font-size:28px}.trip-detail-overlay{max-width:80%}.detail-summary .actions{flex-direction:column;align-items:stretch}.trip-detail-overlay>div{gap:10px}.trip-detail-hero{height:235px}.panel>.section-heading:has(.search){flex-wrap:wrap}.metric{padding:17px}.stats-grid small{font-size:9px}.topbar-right{gap:10px}}@media (max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:250px;padding:27px 22px}.sidebar.mobile-open{transform:translateX(0);box-shadow:10px 0 30px #16342630}.sidebar-scrim{display:block;position:fixed;inset:0;background:#18332c66;z-index:15}.workspace{margin-left:0;width:100%}.topbar{height:64px;padding:0 20px;gap:12px}.mobile-menu{display:flex}.breadcrumb{flex:1 1;font-size:10px;gap:7px}.topbar-right .avatar{display:none}.main-content{padding:26px 20px 0}.page-heading{gap:15px;margin-bottom:24px;flex-wrap:wrap}.page-heading h1{font-size:26px;max-width:430px}.page-heading p:last-child{font-size:12px}.page-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.page-heading>.primary{font-size:12px}.welcome-card{min-height:238px}.welcome-card>div{max-width:75%}.welcome-card h2{font-size:34px}.welcome-card p{font-size:10px}.welcome-card .badge{font-size:7px}.trip-image{height:138px}.trip-card p{font-size:9px;min-height:25px}.trip-card-bottom .avatar{width:24px;height:24px;font-size:9px}.trip-card-bottom b{font-size:12px}.trip-card-bottom small{font-size:8px}.trip-card h3{font-size:16px;min-height:42px}.trip-card-body{padding:16px}.trip-card-bottom{gap:3px}.two-columns{gap:20px}.section-space{margin-top:29px}.section-heading h2{font-size:18px}.section-heading p{font-size:11px}.panel{padding:21px}.stats-grid{grid-template-columns:1fr}.metric{padding:18px 20px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.metric h2{grid-column:2;grid-row:1/3;margin:0;align-self:center;text-align:right;font-size:28px}.metric>.section-heading{justify-content:flex-start;gap:10px;flex-direction:row-reverse;justify-self:start}.metric>small{font-size:10px}.metric svg{width:16px;height:16px}.toast{left:50%;width:max-content;bottom:18px}.filter-row{flex-wrap:wrap;gap:10px}.filter-row .search{min-width:200px;max-width:none}.filter-row select{font-size:12px}.import-upload{gap:14px;flex-wrap:wrap;padding:20px}.import-upload .grow{min-width:200px}.import-upload>.primary{margin-left:40px}.import-list .actions{gap:8px}.timeline-line{gap:13px}.event-card{padding:18px}.event-time{width:40px;font-size:11px}.timeline-dot{margin-top:25px}.event-meta{gap:9px;font-size:9px}.event-card h3{font-size:16px}.timeline-day{font-size:13px}.event-time b{font-size:11px}.event-time small{font-size:9px}.trip-detail-overlay{left:23px;bottom:24px}.trip-detail-overlay h1{font-size:28px}.trip-detail-overlay p{font-size:10px}.trip-detail-overlay>div{font-size:9px;gap:10px}.trip-detail-hero{height:260px}.edit-trip{right:15px;top:15px;font-size:10px;padding:7px 10px}.tabs{gap:24px;overflow-x:auto;white-space:nowrap}.tabs button{font-size:11px}.detail-summary{gap:20px}.detail-summary p{font-size:11px}.detail-summary .primary,.detail-summary .secondary{font-size:11px;padding:9px 12px}.expense-desc small,.two-columns .expense-desc small{max-width:220px}.audit-row time{max-width:80px;text-align:right;font-size:9px}.audit-row .grow small{font-size:9px}footer{font-size:8px;gap:10px;flex-wrap:wrap;margin-top:35px}footer>span:nth-child(2){display:none}.alert{font-size:11px;padding:13px;gap:9px}.login{display:block}.login-art{height:280px}.login-art>.scene{height:100%;width:100%}.login-art>div{padding:24px 30px}.login-art .brand{margin-bottom:28px;font-size:17px}.login-art .brand img{width:31px;height:31px}.login-art h1{font-size:48px;letter-spacing:-1.5px;line-height:1}.login-art p{display:none}.login-form{padding:36px 28px;max-width:480px}.login-form h2{font-size:26px}.login-form>p{font-size:12px;margin-bottom:25px}.login-form .eyebrow{font-size:9px;margin-bottom:10px}.account-list button{padding:12px 14px}.account-list{gap:9px}.dialog-head{padding:23px 21px 18px}.dialog-head h2{font-size:21px}.dialog-form{padding:22px 21px}.dialog-footer{position:sticky;bottom:-22px;background:var(--surface);margin-left:-21px;margin-right:-21px;padding:17px 21px;margin-bottom:-22px;z-index:2}.form-grid{gap:0 13px}.field{margin-bottom:16px}.source-table td,.source-table th{font-size:10px;padding:6px}.panel>.section-heading .actions .primary,.panel>.section-heading .actions .secondary{font-size:11px}.event-card .section-heading{align-items:start}.category-chart .section-heading{font-size:11px}}@media (max-width:420px){.main-content{padding-left:16px;padding-right:16px}.trip-grid{grid-template-columns:1fr}.trip-image{height:160px}.trip-card h3{min-height:0;font-size:18px}.trip-card p{min-height:0;font-size:10px}.trip-card-bottom .avatar{width:29px;height:29px;font-size:11px}.trip-card-body{padding:20px}.balance-highlight{padding:21px 18px;gap:0 14px}.balance-highlight h2{font-size:27px}.balance-highlight>p{font-size:10px}.balance-split{gap:10px}.balance-split b{font-size:15px}.balance-split span{font-size:8px}.balance-split svg{width:12px}.balance-split>div+div{padding-left:11px}.page-heading h1{font-size:25px}.expense-desc small,.two-columns .expense-desc small{max-width:165px}.expense-row{gap:10px}.expense-symbol{width:33px;height:33px}.expense-money b{font-size:11px}.expense-money>small{font-size:8px}.section-heading:has(>.actions){flex-wrap:wrap}.tabs{gap:22px}.import-upload>.primary{margin-left:0}.trip-detail-overlay>div{flex-direction:column}.form-grid{grid-template-columns:1fr 1fr}.participant-picker button{font-size:10px;padding-right:8px}.dialog-head h2{font-size:19px}.split-preview{padding-left:12px;padding-right:12px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.balance-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.balance-side{border-top:4px solid var(--green,#35634e)}.balance-side.send{border-top-color:#b17c4c}.balance-side .pair-row{flex-wrap:wrap;gap:12px}.balance-side .pair-row .small-button{margin-left:auto}.balance-side .section-heading p{margin-bottom:0}.tax-toggle{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--surface-soft,#f1f1e9);border:1px solid var(--line,#deded5);border-radius:12px}.checkbox-label input,.supply-row input,.tax-toggle input{width:18px;height:18px;accent-color:#38604b;flex-shrink:0}.tax-toggle small{display:block;font-weight:400;color:var(--muted);margin-top:5px}.tax-options{padding:12px 0}.checkbox-label{display:flex;align-items:center;gap:10px}.tax-summary{display:flex;flex-wrap:wrap;gap:18px;background:var(--surface-soft,#eef1e7);padding:14px;border-radius:12px}.meal-editor{padding:20px;border:1px solid var(--line,#ddd);border-radius:16px;margin:20px 0;background:var(--surface-soft,#f7f6ef)}.meal-editor>.actions,.meal-editor>.field{margin-top:18px}.ingredient-editor{display:flex;gap:10px;align-items:center;margin:12px 0}.ingredient-fields{display:grid;grid-template-columns:minmax(120px,2fr) minmax(70px,.7fr) minmax(70px,1fr) minmax(100px,1fr);gap:12px;flex:1 1;min-width:0}.ingredient-fields input,.ingredient-fields select{min-width:0;width:100%}.meal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:20px}.meal-card{border:1px solid var(--line,#ddd);border-radius:16px;padding:20px}.meal-card h3{margin:8px 0}.meal-card ul{padding-left:20px;color:var(--muted)}.meal-card .actions{margin-top:18px}.supply-group{margin-top:28px}.supply-row{justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line,#ddd)}.supply-row,.supply-row>label{display:flex;align-items:center}.supply-row>label{gap:14px;flex:1 1;cursor:pointer}.supply-row small{display:block;color:var(--muted);margin-top:4px}.supply-row.is-checked b{text-decoration:line-through;opacity:.6}.supply-row details{max-width:50%;font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:630px}.calendar-weekday{padding:12px 8px;color:var(--muted);font-size:12px}.calendar-cell{min-height:110px;padding:8px;border-top:1px solid var(--line,#ddd);border-right:1px solid var(--line,#ddd)}.calendar-cell.outside{opacity:.5}.calendar-cell.today time{background:var(--green,#35634e);color:white;padding:4px 7px;border-radius:50%}.calendar-cell time{font-size:12px}.calendar-cell button{display:block;text-align:left;width:100%;background:#dce7d8;color:#284738;border-radius:6px;border:0;padding:7px;margin-top:7px;font-size:11px;line-height:1.3;overflow-wrap:anywhere}.calendar-cell button small{display:block;font-size:9px;margin-top:4px}.calendar-scroll{overflow-x:auto}.calendar-jump{margin-top:20px;max-width:500px}.undated-trips{display:flex;flex-wrap:wrap;gap:10px}.undated-trips button{display:block;text-align:left;max-width:100%;white-space:normal}.undated-trips small{display:block;font-weight:400;color:var(--muted);margin-top:5px}.calendar-controls{flex-wrap:wrap;gap:12px}.calendar-controls .actions{flex-wrap:wrap}.planning-panel .section-heading{gap:14px;flex-wrap:wrap}[data-theme=dark] .meal-editor,[data-theme=dark] .tax-summary,[data-theme=dark] .tax-toggle{background:#28382e}[data-theme=dark] .calendar-cell,[data-theme=dark] .meal-card,[data-theme=dark] .supply-row{border-color:#3b4a41}@media (max-width:1050px){.balance-sides{grid-template-columns:1fr}}@media (max-width:640px){.ingredient-fields{grid-template-columns:1fr 1fr}.ingredient-editor{align-items:flex-end}.meal-editor{padding:14px}.supply-row{flex-wrap:wrap}.supply-row details{max-width:100%;width:100%;padding-left:32px}.balance-side .section-heading{align-items:flex-start}.tabs{overflow-x:auto}.filter-row{flex-wrap:wrap}.calendar-controls .actions{width:100%}.meal-grid{grid-template-columns:1fr}}.payment-history{max-height:680px;overflow-y:auto;overscroll-behavior:contain}.person-admin-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(140px,.7fr) minmax(180px,1.4fr) auto;gap:14px;align-items:end;padding:20px 0;border-bottom:1px solid var(--line,#ddd)}.person-admin-row input,.person-admin-row select{width:100%;min-width:0}.person-message{grid-column:1/-1;margin:0}@media (max-width:850px){.person-admin-row{grid-template-columns:1fr 1fr}.person-admin-row button{justify-self:start}}@media (max-width:480px){.person-admin-row{grid-template-columns:1fr}}.pair-entry{border-bottom:1px solid var(--line);padding-bottom:14px;min-width:0}.pair-entry>.small-button{margin:0 0 0 46px}.pair-details>summary{cursor:pointer;list-style:none;border:0;flex-wrap:wrap}.pair-details>summary::-webkit-details-marker{display:none}.ledger-breakdown>summary:hover,.pair-details>summary:hover{background:var(--bg)}.drill-hint{display:flex;align-items:center;gap:3px;color:var(--green);font-size:12px}.pair-details[open]>summary .drill-hint svg{transform:rotate(180deg)}.balance-trace{padding:4px 0 16px;font-size:13px;min-width:0}.balance-trace>p,.verification-legend{color:var(--muted);line-height:1.6}.ledger-breakdown{border:1px solid var(--line);border-radius:10px;padding:12px;margin:10px 0;background:var(--surface)}.ledger-breakdown>summary{cursor:pointer;padding:5px 0;overflow-wrap:anywhere}.ledger-breakdown>summary strong{float:right;margin-left:10px}.text-link{color:var(--green);text-align:left;text-decoration:underline;text-underline-offset:3px;padding:5px 0;overflow-wrap:anywhere}.verification-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:12px 0;border-bottom:1px solid var(--line);text-align:left;font-size:13px;line-height:1.5}.verification-row>span:first-child{min-width:0;overflow-wrap:anywhere}.verification-row>b:last-child,.verification-row>strong{flex-shrink:0;text-align:right}.verification-row small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:3px}button.verification-row:hover{background:var(--bg)}.verification-subtotal{color:var(--muted)}.verification-total{font-weight:600;border-top:1px solid var(--line);border-bottom:0}.expense-view-toggle{margin:12px 0 18px}.expense-table-scroll{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:10px}.expense-verification-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;font-size:13px}.expense-verification-table caption{text-align:left;padding:14px;font-weight:600}.expense-verification-table td,.expense-verification-table th{padding:12px 14px;border-top:1px solid var(--line);border-right:1px solid var(--line);min-width:145px;vertical-align:top}.expense-verification-table thead th{background:var(--bg);font-weight:600}.expense-verification-table tbody th{position:sticky;left:0;z-index:1;background:var(--surface);min-width:190px;max-width:240px;box-shadow:2px 0 4px #00000009}.expense-verification-table small{display:block;color:var(--muted);font-weight:400;font-size:11px;margin-top:5px}.expense-verification-table .voided{opacity:.6}.status-cell{text-align:left;padding:0;width:100%}.item-status{display:flex;flex-direction:column;gap:4px;font-size:12px}.item-status>span{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.item-status.paid>b{color:var(--green)}.item-status.partial>b{color:var(--negative)}.unassigned-payments{margin-top:20px;line-height:1.6}.unassigned-payments summary{cursor:pointer;font-weight:600;margin-bottom:12px}.expense-evidence h3{margin:22px 0 8px}.expense-evidence .item-status{text-align:right}.payment-allocation{border-bottom:1px solid var(--line);padding:10px 0}@media (max-width:640px){.pair-details .pair-row{gap:8px}.pair-details .pair-row .avatar{display:none}.pair-entry>.small-button{margin-left:0}.balance-trace .verification-row{flex-wrap:wrap;gap:4px}.ledger-breakdown{padding:9px}.expense-verification-table tbody th{min-width:130px;max-width:140px}.expense-verification-table td,.expense-verification-table th{padding:10px;min-width:125px}}