.expense-space{--exp-line:rgba(222,222,205,.15);--exp-soft:rgba(33,47,44,.78)}
.exp-toolbar,.exp-intro,.exp-detail-toolbar,.exp-selection,.exp-panel-head,.exp-pagination{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.exp-toolbar{margin:28px 0 22px}.exp-toolbar h2,.exp-intro h2{font:400 2.1rem 'Instrument Serif',serif;margin:8px 0}.exp-toolbar .eyebrow{font-size:.68rem}.exp-toolbar a,.exp-back{font-size:.8rem}
.exp-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--exp-line);margin-bottom:24px;padding-bottom:8px}.exp-tabs button{white-space:nowrap;border:0;padding:10px 14px;background:transparent;color:var(--muted,#b1bab0);font-size:.82rem}.exp-tabs [aria-current=page]{background:rgba(215,155,111,.14);color:#e5b78e;border-radius:7px}
.exp-button{background:transparent;border:1px solid var(--exp-line);border-radius:7px;padding:8px 12px;color:inherit;font:inherit;font-size:.8rem;cursor:pointer}.exp-button:hover{background:rgba(233,221,196,.07)}.exp-intro{padding:10px 0 26px;align-items:start}.exp-intro p{max-width:720px}.expense-space p,.expense-space small{line-height:1.55}.exp-intro p,.exp-method,.exp-footer{color:var(--muted,#a9b4ac)}
.exp-filter-panel{border:1px solid var(--exp-line);padding:16px;border-radius:12px;background:rgba(24,38,35,.55);margin-bottom:18px}.exp-filter-panel summary{cursor:pointer;font-size:.82rem}.exp-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.exp-filters label,.exp-form-grid label{min-width:0}.exp-filters label,.exp-queue-tools label{font-size:.74rem}.exp-filters input,.exp-filters select,.exp-queue-tools input{width:100%;box-sizing:border-box}.exp-filters .hub-check input,.exp-queue-tools .hub-check input{width:auto}.exp-method{font-size:.78rem;max-width:980px}
.exp-currency{margin:25px 0}.exp-currency-heading{display:flex;align-items:center;gap:14px;margin-bottom:12px}.exp-currency-heading>span{font-size:.72rem;letter-spacing:.12em;border:1px solid var(--exp-line);border-radius:30px;padding:5px 10px}.exp-currency-heading small{font-size:.72rem;color:var(--muted,#a9b4ac)}.exp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.exp-stat{border:1px solid var(--exp-line);background:var(--exp-soft);padding:22px 18px;border-radius:12px;display:flex;flex-direction:column;gap:10px;min-width:0}.exp-stat>span{font-size:.72rem;color:#bac2b8}.exp-stat>strong{font-size:clamp(1.2rem,1.8vw,1.8rem);font-weight:400;letter-spacing:-.04em}.exp-stat small{font-size:.68rem;color:#a5b2a8}.exp-feature{background:linear-gradient(125deg,rgba(132,105,73,.26),rgba(37,54,43,.9));border-color:rgba(213,175,124,.32)}
.exp-grid,.exp-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.exp-panel{margin:20px 0;padding:24px;background:rgba(23,37,33,.62);border:1px solid var(--exp-line);border-radius:12px;min-width:0}.exp-grid>.exp-panel{margin:0}.exp-panel-head{margin-bottom:16px}.exp-panel-head h3{font-size:1.13rem;font-weight:400;margin:0}.exp-rank-list>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--exp-line);padding:14px 0;gap:14px}.exp-rank-list>div>div{display:flex;gap:16px;text-align:right;flex-wrap:wrap}.exp-rank-list strong{font-size:.88rem;font-weight:500}.exp-rank-list small{display:block;font-size:.66rem;color:#a7b1a9;margin-top:5px}.exp-rank-list a{font-size:.83rem}
.exp-months+.exp-months{margin-top:26px}.exp-month{display:grid;grid-template-columns:65px minmax(40px,1fr) minmax(90px,auto);align-items:center;gap:14px;margin:14px 0;font-size:.72rem}.exp-month>div{height:7px;background:rgba(213,208,178,.05);border-radius:6px;overflow:hidden}.exp-month i{display:block;height:100%;background:#b3ba9b;border-radius:6px}.exp-month i.exp-refund{background:#d09d81}.exp-month strong{font-weight:400;text-align:right}
.exp-table-wrap{overflow-x:auto}.exp-table{width:100%;border-collapse:collapse;font-size:.8rem;text-align:left}.exp-table th{color:#a9b5a9;text-transform:uppercase;letter-spacing:.09em;font-size:.61rem;font-weight:500;padding:14px 12px;border-bottom:1px solid var(--exp-line);white-space:nowrap}.exp-table td{padding:16px 12px;border-bottom:1px solid var(--exp-line);vertical-align:top}.exp-table td:first-child{min-width:170px}.exp-table small{display:block;font-size:.66rem;color:#a9b4aa;margin-top:7px;max-width:260px}.exp-table .exp-button{border:0;padding:0;text-align:left;line-height:1.5;font-size:.83rem}.exp-table td:nth-last-child(-n+4){font-variant-numeric:tabular-nums}.exp-table .hub-badge{display:block;width:fit-content;margin-top:6px;font-size:.6rem}.exp-pagination{font-size:.72rem;margin-top:20px;color:#a6b2a8}.exp-pagination>div{display:flex;gap:8px}
.exp-queue-tools{display:flex;gap:20px;align-items:end;margin:20px 0;flex-wrap:wrap}.exp-selection{background:rgba(155,173,139,.1);border:1px solid var(--exp-line);border-radius:9px;padding:16px;margin:20px 0;font-size:.85rem}.exp-selection>div{display:flex;gap:8px;flex-wrap:wrap}.exp-group-grid{margin-top:22px}.exp-group-card{border:1px solid var(--exp-line);border-radius:14px;padding:26px;background:linear-gradient(130deg,rgba(40,56,45,.76),rgba(34,41,32,.8));min-width:0}.exp-group-card h3{margin:18px 0 10px}.exp-group-card h3 button{font:400 1.8rem 'Instrument Serif',serif;border:0;padding:0}.exp-group-card>p:not(.eyebrow){font-size:.82rem;color:#adb7ab}.exp-avatar-row{display:flex;align-items:center;margin:22px 0 18px}.exp-avatar-row>span{width:32px;height:32px;display:grid;place-items:center;background:#4f6150;border:2px solid #263a2c;margin-right:-5px;border-radius:50%;font-size:.65rem}.exp-avatar-row>small{margin-left:15px;font-size:.72rem;color:#b4beb0}.exp-group-cost{display:flex;gap:22px;flex-wrap:wrap;margin:20px 0}.exp-group-cost>span{font-size:1.22rem}.exp-group-cost small{display:block;font-size:.67rem;color:#acb6a7;margin-top:5px}.exp-member-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.exp-member-chips a{border:1px solid var(--exp-line);padding:7px 12px;border-radius:30px;font-size:.76rem}
.exp-empty{padding:50px 24px;text-align:center;border:1px dashed var(--exp-line);border-radius:12px;margin:24px 0}.exp-empty>span{font-size:2rem;color:#bcb38c}.exp-empty h3{font:400 1.8rem 'Instrument Serif',serif}.exp-empty p{max-width:550px;margin:14px auto 22px;color:#aebaaf;font-size:.86rem}.exp-footer{font-size:.7rem;margin-top:35px}.exp-detail-toolbar{margin-bottom:26px}.exp-detail-toolbar>div{display:flex;gap:8px}.exp-large-amount{font:400 2.4rem 'Instrument Serif',serif}.exp-large-amount a{display:block;font:400 .76rem 'DM Sans',sans-serif;margin-top:12px}.exp-note{white-space:pre-wrap}.exp-share-cards{display:grid;gap:18px}.exp-share-card{padding:24px;border:1px solid var(--exp-line);border-radius:12px;background:var(--exp-soft)}.exp-share-card h3{font-size:1rem;font-weight:400;margin:0 0 12px}.exp-share-card>strong{font-size:1.7rem;font-weight:400}.exp-share-card>p{font-size:.82rem;color:#b5beb3}.exp-payments>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--exp-line);padding:14px 0;margin-top:15px;font-size:.82rem}.exp-payments small{display:block;font-size:.7rem;color:#adb7aa;margin-top:5px}.exp-warning,.exp-confirm{padding:14px;background:rgba(207,158,99,.1);border-left:2px solid #c1a078;color:#d8c7aa;font-size:.82rem}.exp-attention>div{padding:10px 0;display:flex;gap:15px;align-items:center;font-size:.78rem}.exp-attention span{color:#bdb29a}
.expense-space .hub-dialog{max-width:880px;width:calc(100% - 32px)}.exp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.exp-form-end{display:flex;justify-content:flex-end;margin:24px 0 0}.exp-participants,.exp-members{border:1px solid var(--exp-line);border-radius:10px;padding:14px;margin:20px 0;max-height:350px;overflow-y:auto}.exp-participants legend,.exp-members legend{font-size:.8rem;padding:0 7px}.exp-members p{font-size:.8rem}.exp-participant{display:grid;grid-template-columns:minmax(130px,1.2fr) minmax(90px,.6fr) minmax(160px,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--exp-line)}.exp-participant [hidden]{display:none!important}.exp-participant label{font-size:.7rem}.exp-participant>.hub-check{font-size:.85rem}.exp-participant input:not([type=checkbox]),.exp-participant select{min-width:0;width:100%;box-sizing:border-box}.exp-participant .hint{font-size:.72rem}.exp-preview{margin-top:24px;border:1px solid rgba(188,174,129,.25);background:rgba(191,183,129,.05);border-radius:10px;padding:18px}.exp-preview h3{font-size:.95rem;margin:0 0 18px}.exp-preview-list{max-height:350px;overflow-y:auto}.exp-preview article+article{border-top:1px solid var(--exp-line);padding-top:18px;margin-top:18px}.exp-preview article>strong{display:block;font-size:.82rem}.exp-preview article>small{display:block;color:#a6b4a6;font-size:.7rem;margin:6px 0 12px}.exp-preview article>div{display:flex;justify-content:space-between;gap:15px;font-size:.78rem;padding:6px 0}.exp-history article{border-left:1px solid var(--exp-line);padding:0 0 24px 22px;margin:20px 0}.exp-history time{font-size:.67rem;color:#a3b1a2;display:block;margin-bottom:9px}.exp-history strong{font-size:.88rem;font-weight:500}.exp-history p,.exp-history details{font-size:.78rem}.exp-history dl{display:grid;grid-template-columns:1fr 2fr;gap:8px;margin:14px 0}.exp-history dd{margin:0;overflow-wrap:anywhere}.exp-history dt{color:#acb7aa;text-transform:capitalize}
@media(max-width:1100px){.exp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.exp-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.exp-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.exp-grid,.exp-group-grid,.exp-form-grid{grid-template-columns:1fr}.exp-stat{padding:18px 14px}.exp-panel{padding:18px 12px}.exp-participant{grid-template-columns:1fr 1fr}.exp-participant>.hub-check{grid-column:1/-1}.exp-toolbar .hub-actions{width:100%;flex-wrap:wrap}.exp-table td{padding:13px 9px}.exp-intro h2{font-size:1.8rem}.exp-large-amount{font-size:2rem}.exp-attention>div{align-items:start;flex-direction:column;gap:5px}.exp-detail-toolbar>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.expense-space *{scroll-behavior:auto}}
