:root{--ink:#203b36;--muted:#778079;--teal:#235c4c;--teal-dark:#173d34;--lime:#e6edcb;--cream:#f6f5f0;--line:#e5e8df;--white:#fff;--red:#9d463a;--shadow:0 12px 36px #203b3605;--radius:16px;font-family:"Segoe UI",Inter,Arial,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button,a,input,select,textarea,summary{outline-offset:4px}:focus-visible{outline:3px solid #7caa81}[hidden]{display:none!important}a{color:var(--teal);text-underline-offset:3px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,3.2vw,46px);font-weight:550;letter-spacing:-1.8px;line-height:1.12;margin-bottom:12px}h2{font-size:19px;font-weight:600;letter-spacing:-.4px;margin:0}h3{font-size:15px;font-weight:600;margin:20px 0 10px}p{line-height:1.65}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px;border:2px solid var(--teal)}.skip-link:focus{top:10px}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#193c35;color:#f6f8ee;padding:35px 22px 24px;display:flex;flex-direction:column}.brand{color:#fff;text-decoration:none;font-size:26px;font-weight:650;letter-spacing:-1.2px;display:flex;align-items:center;gap:10px}.brand-dot{color:#bbd295;margin-left:-8px}.brand-symbol{font-size:25px;border:1.5px solid #bfd0b6;border-radius:11px;width:34px;height:37px;display:inline-flex;justify-content:center;align-items:center;position:relative;font-weight:500;color:#d8e5c4}.brand-symbol span{font-size:18px;position:absolute;left:18px;top:10px;background:#193c35;line-height:16px}.workspace-label{font-size:10px;letter-spacing:1.6px;color:#8faa9a;margin:56px 12px 14px}.main-nav{display:flex;flex-direction:column;gap:8px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;border:0;border-radius:9px;background:none;color:#b8c9bd;padding:13px 14px;text-align:left;font-size:14px;font-weight:500}.nav-item.active{color:#e9f1dc;background:#315449}.nav-item:hover{background:#2d5146}.nav-icon{width:20px;font-size:22px;line-height:20px}.nav-arrow{margin-left:auto;color:#c9dab0}.sidebar-note{margin:auto 10px;position:relative;padding:45px 0 60px;overflow:hidden}.note-line{display:block;width:28px;height:2px;background:#91ad77;margin-bottom:23px}.sidebar-note p{font-size:20px;line-height:1.6;letter-spacing:-.4px;color:#c4d4bd}.note-decoration{position:absolute;font-size:128px;font-weight:200;right:-3px;bottom:3px;opacity:.08;transform:rotate(-15deg)}.sidebar-bottom{font-size:10px;color:#c0ceba;border-top:1px solid #37564a;padding-top:20px;letter-spacing:.1px}.connection-dot{display:inline-block;width:6px;height:6px;background:#a9c78a;border-radius:50%;margin-right:7px;vertical-align:middle}.sidebar-bottom small{display:block;color:#789b87;font-size:10px;margin-top:7px}.main-shell{min-width:0}.topbar{height:80px;background:#fafaf6;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px}.breadcrumb{display:flex;align-items:center;gap:17px;font-size:12px}.breadcrumb>span:nth-child(2){color:#c5cbc0}.breadcrumb strong{font-weight:500}.topbar-actions{display:flex;align-items:center;gap:24px}.local-pill{font-size:9px;letter-spacing:1px;color:#667562;background:#edf1e5;border:1px solid #e2e8d8;border-radius:20px;padding:5px 10px}.local-pill .connection-dot{width:5px;height:5px;margin-right:4px;background:#89a373}.account-button{border:0;background:none;display:flex;align-items:center;gap:9px;font-size:12px}.avatar{background:#e8eddf;border:1px solid #dce3d3;width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:15px}main{max-width:1620px;margin:0 auto;padding:41px 44px 16px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:26px}.page-heading p{color:var(--muted);margin-bottom:0;font-size:13px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.8px;color:#84917a;margin-bottom:14px}.heading-actions,.button-row{display:flex;gap:10px;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 16px;border-radius:8px;border:1px solid transparent;font-size:12px;font-weight:600;min-height:40px;text-decoration:none;line-height:1.4;white-space:nowrap}.button.primary{color:#fff;background:var(--teal);border-color:var(--teal)}.button.primary:hover{background:var(--teal-dark)}.button.secondary{background:#fff;border-color:#dde3d6;color:#425345}.button.secondary:hover{background:#f3f6ed}.button.ghost{background:transparent;border-color:transparent;color:#697563}.button.ghost:hover{background:#eaf0df}.button.small{font-size:11px;min-height:34px;padding:8px 12px}.button.full-width,.full-width{width:100%}.text-button{background:none;border:0;padding:8px 0;color:var(--teal);font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:6px;justify-content:center}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.text-button.small{font-size:11px}.danger-text{color:var(--red)!important}.mode-strip{display:flex;align-items:center;gap:27px;border-bottom:1px solid var(--line);margin-bottom:19px;font-size:10px;color:#b1b9aa}.mode-strip>span{padding:0 0 14px;display:flex;gap:7px}.mode-strip strong{font-weight:500;color:#89947f}.mode-strip .active{border-bottom:2px solid var(--teal);color:var(--teal)}.mode-strip .active strong{color:var(--ink)}.inline-note{display:flex;align-items:center;gap:9px;color:#7a856f;font-size:11px;margin:0 0 22px}.inline-note>span:first-child{color:#8a9e75;font-size:17px}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:23px}.primary-column{min-width:0}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:23px 23px 20px}.card-heading>div:first-child{display:flex;align-items:center;gap:10px}.section-index{font-size:10px;color:#8c9b7b;border:1px solid #e4e9da;width:24px;height:24px;border-radius:7px;display:grid;place-items:center}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}.metadata-grid{padding:0 23px 22px;grid-template-columns:minmax(0,1fr) 80px 116px}.metadata-grid .wide-field{grid-column:auto}label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:550;color:#75816b;margin-bottom:13px}label .muted{font-size:9px;font-weight:400}input,select,textarea{background:#fff;border:1px solid #dfe5d8;color:#34483c;border-radius:6px;padding:9px 10px;min-width:0;font-size:12px;line-height:1.45;width:100%}input::placeholder,textarea::placeholder{color:#a8b09f}input:hover,select:hover,textarea:hover{border-color:#aebfa2}input:focus,select:focus,textarea:focus{border-color:#6e9a76}input:disabled,select:disabled{background:#f3f4ef;color:#a0a898}input[type=checkbox]{width:14px;height:14px;accent-color:var(--teal);flex-shrink:0}textarea{resize:vertical}.table-scroll{overflow-x:auto;overscroll-behavior-x:contain}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-size:9px;font-weight:600;letter-spacing:.65px;color:#89937f;background:#f8faf4;text-align:left;padding:11px 12px;white-space:nowrap}td{padding:12px;border-bottom:1px solid #edf0e7;vertical-align:middle}td.numeric,th.numeric{text-align:right;font-variant-numeric:tabular-nums}.item-editor{min-width:666px}.item-editor th:first-child{padding-left:23px}.item-editor td:first-child{padding-left:17px}.item-editor td:last-child{padding-right:17px}.item-editor th:nth-child(1){width:29%}.item-editor th:nth-child(2){width:20%}.item-editor th:nth-child(3){width:7%}.item-editor th:nth-child(4),.item-editor th:nth-child(5),.item-editor th:nth-child(6){width:14%}.item-editor td{padding:9px 4px}.item-editor input{border-color:transparent;padding:8px 5px;background:transparent;font-size:11px}.item-editor input:hover,.item-editor input:focus{background:#f9fbf5;border-color:#dfe6d6}.item-editor input[data-key=amount],.item-editor input[data-key=line_discount],.item-editor input[data-key=unit_price],.item-editor input[data-key=quantity]{font-variant-numeric:tabular-nums}.item-editor small{display:block;letter-spacing:0;font-size:8px;font-weight:400}.icon-button{border:0;background:none;color:#97a28b;width:29px;height:29px;font-size:20px;display:inline-grid;place-items:center;border-radius:7px;padding:0}.icon-button:hover{background:#f0f3e9;color:var(--ink)}.item-footer{padding:10px 23px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.item-footer>span{font-size:9px;color:#9aa38f}.charges-area{padding:21px 23px 15px;border-top:1px solid var(--line);background:#fbfcf8}.section-label{font-size:9px;letter-spacing:1.3px;color:#87947b;font-weight:600;display:block;margin-bottom:13px}.charges-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 14px}.charges-grid input{background:white}.check-label{flex-direction:row;align-items:center;gap:8px;font-size:10px;line-height:1.6;font-weight:400;margin-bottom:6px;cursor:pointer}.check-label.small{font-size:10px}.details-section{padding:0 23px;border-top:1px solid #e9ede2}summary{cursor:pointer;display:list-item;font-size:11px;font-weight:600;padding:15px 0;color:#53674b}summary::marker{font-size:9px;color:#9caa8d}.summary-hint{float:right;color:#9ca58f;font-size:9px;font-weight:400;margin-top:2px}.tip-grid{grid-template-columns:1fr 1fr}.field-help{font-size:10px;line-height:1.65;color:#929d86;margin:3px 0 13px}.code-input,pre{font-family:Consolas,"Courier New",monospace;font-size:11px}.calculation-method{padding:20px 23px 10px;background:#fff;border-top:1px solid var(--line)}.segmented{display:flex;gap:3px;background:#f1f4eb;padding:4px;border-radius:8px;max-width:100%;margin-bottom:10px}.segmented button{border:0;background:none;border-radius:5px;padding:9px 10px;font-size:10px;color:#87967a;flex:1}.segmented button.selected{color:var(--ink);background:#fff;box-shadow:0 1px 4px #24453010}.card-actions{display:flex;align-items:center;gap:11px;padding:6px 23px 23px}.card-actions>.text-button{margin-left:auto;font-size:10px}.form-error{color:#a24e40;font-size:12px;line-height:1.6;background:#fcf1ed;border:1px solid #f0dbd2;border-radius:7px;padding:11px 13px;margin:13px 23px}.modal .form-error{margin-left:0;margin-right:0}.assistant-card{position:sticky;top:20px;background:#fcfdf9}.assistant-header{display:flex;align-items:center;gap:10px;padding:25px 20px 0}.assistant-header .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:5px}.assistant-header h2{font-size:16px;letter-spacing:-.3px}.assistant-mark{display:grid;place-items:center;flex-shrink:0;color:#678650;border:1px solid #e0e8d3;background:#f1f5e6;border-radius:10px;width:32px;height:35px;font-size:21px}.assistant-intro{font-size:11px;color:#8a967d;margin:14px 20px 19px;line-height:1.7}.provider-label{padding:0 20px;margin-bottom:8px}.provider-label select{background:#f6f8ef;font-size:11px}.provider-status{margin:0 20px 13px;font-size:9px;color:#8b987d;line-height:1.6}.provider-status.ready{color:var(--teal)}.provider-status.unavailable{color:#9b8262}.chat-context{font-size:9px;background:#edf2e3;color:#7d8f6c;padding:8px 20px}.assistant-card>#conversation-history{display:block;margin:5px 20px;font-size:9px}.chat-messages{min-height:215px;max-height:440px;overflow:auto;padding:10px 20px 15px;scroll-behavior:smooth}.chat-welcome{border:1px dashed #dfe6d2;border-radius:10px;text-align:center;padding:12px 18px 20px;margin-top:13px;color:#90a17e}.chat-welcome>span{font-family:Georgia,serif;font-size:40px;line-height:1;color:#afc297}.chat-welcome p{font-size:12px;font-style:italic;margin:4px 0 12px;line-height:1.85}.chat-welcome small{font-size:9px;font-style:normal;color:#a5af9a}.chat-bubble{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;padding:11px 12px;border-radius:10px;background:#f0f4e7;color:#506342;margin:10px 0}.chat-bubble.user{background:#e6eee0;color:#315b40;margin-left:22px}.chat-bubble .message-role{display:block;text-transform:uppercase;font-size:8px;letter-spacing:1px;margin-bottom:5px;opacity:.65}.assistant-card form{padding:8px 20px 17px}.assistant-card textarea{background:#fff;font-size:11px;border-color:#e0e7d6;min-height:86px;margin-bottom:9px}.chat-send-row{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.assistant-card .form-error{margin:8px 0 0;font-size:10px}.assistant-card .field-help{font-size:8px;margin-top:13px}.assistant-footer{border-top:1px solid #e6ebdc;text-align:center;color:#9ca98e;font-size:9px;padding:13px}.assistant-footer>span{margin-right:4px}.proposal-card{margin:0 16px 15px;padding:13px;border:1px solid #cbd9ba;border-radius:9px;background:#f2f6e9}.proposal-card h3{font-size:12px;margin:0 0 7px}.proposal-card pre{max-height:200px;overflow:auto;font-size:9px;white-space:pre-wrap;overflow-wrap:anywhere;color:#6e7e5e}.proposal-card .button{width:100%;margin-top:7px}.results-card{margin-top:23px}.badge{font-size:8px;letter-spacing:.7px;padding:5px 8px;background:#f0f3e9;color:#9aa58b;border-radius:5px;white-space:nowrap}.badge.success{background:#eaf2e1;color:#5a7c49}.empty-state{text-align:center;padding:50px 30px;color:#8c9980}.empty-state.compact{padding:15px 25px 35px}.empty-state h3{color:#6e805f;margin:7px 0 8px;font-size:14px}.empty-state p{font-size:11px;max-width:330px;margin:0 auto 15px}.empty-graphic{display:inline-block;font-size:45px;line-height:1;color:#c6d5b8;font-weight:200}.result-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 23px 20px;padding:20px;background:#f0f5e7;border:1px solid #e1e9d5;border-radius:11px}.result-amount{font-size:34px;letter-spacing:-1px;font-weight:600;line-height:1.2}.result-currency{font-size:10px;letter-spacing:.8px;color:#8a9b75;margin-top:8px}.result-topline p{font-size:10px;color:#8a9978;margin-bottom:4px}.result-topline .section-label{margin-bottom:8px}.result-tabs{display:flex;gap:18px;padding:0 23px;border-bottom:1px solid var(--line)}.result-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:10px 1px;font-size:11px;color:#94a184}.result-tabs button.active{color:var(--teal);border-color:var(--teal)}.result-table{min-width:590px}.result-table td{font-size:11px;padding:12px 10px}.result-table td:first-child{padding-left:23px;max-width:220px}.result-table th:first-child{padding-left:23px}.result-table .item-subtitle{display:block;color:#9da88f;font-size:9px}.result-table td:last-child{font-weight:600}.result-footnote{font-size:9px;color:#99a68c;line-height:1.7;padding:15px 23px 0}.result-actions{padding:10px 23px 23px;display:flex;gap:10px;flex-wrap:wrap}.result-summary{display:flex;gap:16px;flex-wrap:wrap;margin:0 23px 16px;font-size:10px;color:#829474}.result-summary strong{color:#45613d;font-weight:600}.scenario-box{background:#fbf8ed;border:1px solid #ece6d1;margin:0 23px 18px;border-radius:8px;padding:13px;color:#918566;font-size:11px}.scenario-box p{margin:0}.inline-form{display:flex;gap:10px;align-items:flex-end;margin-top:10px}.inline-form label{margin-bottom:0}.inline-form .button{margin-bottom:0}.grow{flex:1}.chip-list{display:flex;flex-wrap:wrap;gap:7px;padding:15px 0 8px}.chip{font-size:10px;color:#6e8259;border:1px solid #dfe8d3;background:#f4f7ed;padding:4px 8px;border-radius:20px;display:inline-flex;align-items:center;gap:4px}.chip .icon-button{width:19px;height:19px;font-size:14px}.assignment-row{border:1px solid #e5ebdd;background:#fbfcf8;border-radius:8px;padding:11px 12px;margin:9px 0}.assignment-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:8px}.assignment-title select{width:130px;padding:5px;font-size:10px}.share-choices{display:flex;gap:8px 12px;flex-wrap:wrap}.share-choice{display:flex;align-items:center;gap:6px;margin:0;font-size:10px}.share-choice input[type=text]{width:70px;padding:5px;font-size:10px}.person-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 13px;margin:10px 0 20px}.person-entry{display:flex;align-items:center;gap:10px;background:#f8faf4;border:1px solid #e6ecdc;border-radius:7px;padding:10px}.person-entry label{margin:0;flex:1;font-size:11px}.person-entry input[type=text]{max-width:110px;background:#fff}.person-entry input[type=checkbox]{margin:0}.person-entry .person-id{font-size:8px;font-weight:400;color:#a6af9d}.page-footer{display:flex;align-items:center;justify-content:space-between;color:#a6ae9a;font-size:9px;margin-top:37px;padding-top:19px;border-top:1px solid var(--line)}.page-footer>span:last-child span{margin-left:7px;color:#8b9f73}.modal{border:1px solid #dfe6d5;border-radius:18px;padding:28px;max-width:660px;width:calc(100% - 32px);max-height:90vh;overflow:auto;background:#fff;color:var(--ink);box-shadow:0 30px 100px #173a3622}.modal::backdrop{background:#153b3566;backdrop-filter:blur(3px)}.small-modal{max-width:425px}.wide-modal{max-width:900px}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:21px}.modal-heading h2{font-size:24px;letter-spacing:-.7px}.modal-heading .eyebrow{margin-bottom:9px}.modal>.muted,.modal form>.muted{font-size:12px}.modal label{font-size:11px}.modal input,.modal select,.modal textarea{font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}.modal button.full-width{margin-top:10px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:1000;max-width:calc(100vw - 36px);border-radius:10px;padding:13px 23px;background:var(--teal-dark);color:#f1f7e7;box-shadow:0 6px 25px #163a3525;font-size:12px}.notice{padding:12px 17px;margin-bottom:20px;background:#edf4e2;border:1px solid #dfe8d2;border-radius:8px;font-size:12px;line-height:1.6}.notice.error{background:#fcf0eb;border-color:#efd6cb;color:#a25443}.history-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.list-card{border:1px solid var(--line);padding:15px;border-radius:9px;margin:10px 0;background:#fcfdf9}.list-card h3{margin:0 0 5px;font-size:13px}.list-card p{margin:3px 0;font-size:10px;color:#8b987b}.list-card .button-row{margin-top:10px;flex-wrap:wrap}.canvas-wrap{max-height:52vh;overflow:auto;background:#f0f2ec;border:1px solid var(--line);border-radius:8px;position:relative;text-align:center}.canvas-wrap canvas{display:block;max-width:100%;height:auto;margin:auto;touch-action:none;cursor:crosshair}.receipt-tools{display:flex;gap:8px;margin-bottom:13px}.receipt-tools .selected{border-color:#70966d;background:#edf4e3}.attachment-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 23px 15px;background:#f3f7e9;padding:10px 13px;border-radius:8px;font-size:11px}.attachment-row a{overflow-wrap:anywhere}.group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.group-card{padding:24px;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:15px;background:#fff;transition:transform .15s,border-color .15s;box-shadow:var(--shadow)}.group-card:hover{border-color:#b9caab;transform:translateY(-2px)}.group-card .group-symbol{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#ecf2df;color:#7a9465;font-size:23px;margin-bottom:21px}.group-card h2{font-size:19px;margin-bottom:5px}.group-card p{color:#98a48a;font-size:11px;margin-bottom:19px}.group-card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0e7;padding-top:14px;font-size:10px;color:#80946b}.group-back{margin-bottom:20px}.group-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.group-detail-heading h2{font-size:29px;letter-spacing:-.9px;margin-bottom:8px}.group-detail-heading p{font-size:11px;color:#8f9d80}.group-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.summary-card{border:1px solid var(--line);border-radius:11px;background:#fff;padding:18px 22px}.summary-card:first-child{background:#eaf0de;border-color:#dbe5ca}.summary-card .section-label{font-size:8px;margin-bottom:8px}.summary-card .summary-value{font-size:25px;letter-spacing:-.7px;font-weight:550}.summary-card .summary-caption{font-size:9px;color:#91a17d;margin-top:5px}.group-tabs{display:flex;gap:24px;border-bottom:1px solid #dfe5d6;margin-bottom:20px}.group-tabs button{border:0;background:none;padding:12px 0;font-size:12px;color:#8b9a7b;border-bottom:2px solid transparent}.group-tabs button.active{color:var(--teal);border-color:var(--teal)}.group-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:18px}.group-toolbar input{max-width:290px;background:#fff}.group-toolbar .button-row{margin-left:auto}.expense-list-row{display:flex;align-items:center;gap:15px;padding:18px 22px;border-bottom:1px solid var(--line)}.expense-list-row:last-child{border-bottom:0}.expense-list-icon{width:38px;height:38px;background:#f1f5e7;border-radius:10px;display:grid;place-items:center;color:#91a37b;font-size:18px;flex-shrink:0}.expense-main{flex:1;min-width:0}.expense-main h3{font-size:13px;margin:0 0 4px;overflow-wrap:anywhere}.expense-main p{font-size:10px;color:#99a48b;margin:0}.expense-amount{font-weight:600;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.expense-list-row.voided{opacity:.6}.expense-row-actions{display:flex;gap:7px}.expense-row-actions .button{padding:6px 9px;min-height:29px;font-size:10px}.balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.balance-card{padding:20px;border:1px solid var(--line);border-radius:12px;background:white}.balance-card h3{margin:0 0 13px}.balance-amount{font-size:22px;font-weight:600;letter-spacing:-.7px}.balance-amount.positive{color:#527b3c}.balance-amount.negative{color:#a2704c}.balance-card p{font-size:10px;color:#929e84;margin:5px 0 0}.suggestions-card{padding:22px;margin-top:24px}.suggestions-card h3{margin-top:0}.suggestion-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:13px 0;gap:12px;font-size:12px}.suggestion-row p{margin:0}.member-row{display:flex;align-items:center;gap:13px;padding:15px 19px;border-bottom:1px solid var(--line)}.member-row:last-child{border-bottom:0}.member-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#edf3e2;color:#7f9568;font-size:12px;font-weight:600}.member-main{flex:1}.member-main strong{display:block;font-size:12px;font-weight:550}.member-main small{font-size:9px;color:#94a385}.invite-box{background:#f7faef;border:1px solid #e1e9d6;border-radius:9px;padding:14px;margin:10px 0}.invite-box input{font-size:10px;margin-bottom:8px}.activity-row{padding:15px 19px;border-bottom:1px solid var(--line)}.activity-row p{margin:2px 0;font-size:11px}.activity-row small{font-size:9px;color:#92a184}.activity-row pre,.review-json{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto;padding:12px;background:#f5f8ee;border:1px solid #e5ebdc;border-radius:7px;font-size:10px}.review-line{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.review-line>span:first-child{color:#879779}.review-line strong{text-align:right;overflow-wrap:anywhere}.detail-section{margin-bottom:20px}.detail-section h3{margin-top:10px}.mobile-break{display:none}.archive-banner{background:#faf1e0;color:#a88c5b;border:1px solid #eddfbe;border-radius:8px;padding:12px 16px;margin-bottom:20px;font-size:11px}.loading-state{font-size:12px;color:#8d9c7a;padding:25px;text-align:center}.inline-status{font-size:10px;color:#8d9b7a}.chip.warning{color:#a4814d;background:#fbf3e3;border-color:#e9dcc2}.subtle-label{font-size:9px;color:#9ca58f}.subsection-heading{display:flex;align-items:center;justify-content:space-between;margin:23px 0 12px}.subsection-heading h3{margin:0}.results-heading-meta{color:#95a588;font-size:10px}.busy{pointer-events:none;opacity:.7}.group-ai-link{margin-left:auto}.pending-row{padding:14px;border:1px solid #e4e9db;border-radius:8px;margin:10px 0}.pending-row p{font-size:12px;margin-bottom:8px}.group-mode-ai{margin-top:20px}.group-mode-ai .assistant-card{position:relative;max-width:660px}.group-mode-ai .chat-messages{min-height:100px}.group-mode-ai .assistant-intro{margin-top:10px}.group-mode-ai .chat-welcome{max-width:400px;margin-left:auto;margin-right:auto}
@media(min-width:1550px){.workspace-grid{grid-template-columns:minmax(0,1fr) 330px}.metadata-grid{grid-template-columns:minmax(0,1fr) 90px 125px}.item-editor{min-width:740px}}@media(max-width:1300px){.app-shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding-left:16px;padding-right:16px}.brand{font-size:23px}.topbar{padding:0 28px}main{padding:30px 28px 16px}.workspace-grid{grid-template-columns:minmax(0,1fr) 280px;gap:17px}.card-heading{padding:20px 18px}.metadata-grid{padding:0 18px 19px;grid-template-columns:minmax(0,1fr) 70px 105px}.card-actions{padding-left:18px;padding-right:18px;gap:8px}.card-actions .button{font-size:11px;padding:10px 12px}.heading-actions{gap:5px}.heading-actions .button{padding:9px 12px;font-size:11px}.charges-area,.details-section,.calculation-method{padding-left:18px;padding-right:18px}.summary-hint{float:none;display:block;padding-left:13px;font-size:8px}.group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assistant-header{padding:22px 16px 0;gap:8px}.assistant-intro{margin-left:16px;margin-right:16px}.assistant-header h2{font-size:15px}.assistant-header .eyebrow{font-size:6px}}@media(max-width:1100px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.assistant-card{position:relative;top:auto}.assistant-card .chat-messages{min-height:90px;max-height:300px}.chat-welcome{max-width:440px;margin:0 auto}.assistant-header .eyebrow{font-size:8px}.assistant-header h2{font-size:18px}.assistant-card form{padding-top:0}.assistant-card textarea{min-height:70px}.primary-column{display:contents}.bill-card{order:0}.assistant-card{order:2}.results-card{order:1;margin-top:0}.page-heading{align-items:flex-start}.heading-actions{flex-direction:column;align-items:flex-end}.group-detail-heading .button-row{flex-wrap:wrap;justify-content:flex-end}.expense-row-actions{flex-direction:column}.balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:sticky;top:0;height:auto;z-index:20;padding:12px 20px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:18px}.brand{font-size:22px;gap:7px}.brand-symbol{width:25px;height:29px;font-size:20px;border-radius:8px}.brand-symbol span{left:13px;top:7px;font-size:15px}.workspace-label,.sidebar-note,.sidebar-bottom{display:none}.main-nav{flex-direction:row;gap:5px}.nav-item{width:auto;padding:9px 11px;font-size:11px;gap:6px}.nav-icon{font-size:17px;width:16px}.nav-arrow{display:none}.topbar{height:56px;padding:0 22px}.topbar-actions{gap:15px}.breadcrumb{font-size:10px;gap:10px}.account-button{font-size:11px}.avatar{width:27px;height:27px}.local-pill{font-size:8px;padding:4px 7px}main{padding:27px 20px 15px}.page-heading{gap:10px;margin-bottom:24px}.page-heading h1{font-size:35px;letter-spacing:-1.4px}.page-heading p{font-size:11px;max-width:250px}.eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:12px}.heading-actions{gap:5px}.heading-actions .button{font-size:9px;min-height:32px;padding:8px 9px}.heading-actions .button.ghost{font-size:9px}.mode-strip{gap:17px;font-size:8px}.mode-strip>span{gap:4px}.inline-note{font-size:9px;align-items:flex-start;margin-bottom:18px}.inline-note>span:first-child{font-size:13px}.card{border-radius:12px}.card-heading{padding:18px 16px;gap:8px}.card-heading h2{font-size:17px}.card-heading .text-button{font-size:10px}.card-heading .button.small{font-size:9px;padding:7px 9px}.card-heading .button-row{gap:10px}.section-index{width:20px;height:20px;font-size:8px}.metadata-grid{grid-template-columns:minmax(0,1fr) 65px 99px;gap:9px;padding:0 16px 16px}.metadata-grid label{font-size:9px}.metadata-grid input,.metadata-grid select{font-size:10px;padding:8px 7px}.item-footer{padding:8px 16px 13px}.item-footer>span{font-size:8px}.charges-area,.details-section,.calculation-method{padding-left:16px;padding-right:16px}.charges-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 13px}.charges-grid label{font-size:9px}.segmented button{font-size:9px}.card-actions{padding:6px 16px 18px;flex-wrap:wrap;gap:8px}.card-actions .text-button{font-size:9px}.button{font-size:11px;padding:10px 13px;min-height:36px}.result-topline{margin:0 16px 16px;padding:16px}.result-amount{font-size:30px}.result-topline p{font-size:9px}.result-tabs{padding:0 16px;gap:20px}.result-tabs button{font-size:10px}.result-summary{margin:0 16px 15px;gap:9px;font-size:9px}.result-actions{padding:10px 16px 18px}.result-actions .button{font-size:10px}.result-footnote{padding:13px 16px 0;font-size:8px}.scenario-box{margin:0 16px 16px}.badge{font-size:7px;padding:4px 6px}.assistant-header{padding:20px 18px 0}.assistant-intro{margin:12px 18px}.provider-label{padding:0 18px}.provider-status{margin-left:18px;margin-right:18px}.chat-messages{padding-left:18px;padding-right:18px}.assistant-card form{padding-left:18px;padding-right:18px}.page-footer{font-size:8px;gap:15px;line-height:1.7;margin-top:27px}.modal{padding:23px 19px;border-radius:14px;width:calc(100% - 22px);max-height:92vh}.modal-heading h2{font-size:22px}.history-columns{grid-template-columns:1fr;gap:15px}.person-grid{grid-template-columns:1fr}.form-grid .wide-field{grid-column:1/-1}.metadata-grid .wide-field{grid-column:auto}.form-grid{gap:5px 12px}.group-grid{grid-template-columns:1fr;gap:14px}.group-card{padding:21px}.group-card .group-symbol{margin-bottom:13px}.group-detail-heading{display:block}.group-detail-heading .button-row{justify-content:flex-start;gap:8px;flex-wrap:wrap;margin-top:13px}.group-detail-heading .button{font-size:10px}.group-summary{gap:9px;margin-bottom:18px}.summary-card{padding:13px 11px}.summary-card .summary-value{font-size:21px}.summary-card .section-label{font-size:7px;letter-spacing:.5px;margin-bottom:5px}.summary-card .summary-caption{font-size:8px}.group-tabs{gap:22px}.group-tabs button{font-size:10px}.group-toolbar{flex-wrap:wrap}.group-toolbar input{max-width:none}.group-toolbar .button-row{margin-left:0;flex-wrap:wrap}.expense-list-row{padding:15px 14px;gap:10px;align-items:flex-start;flex-wrap:wrap}.expense-list-icon{width:32px;height:32px;font-size:16px}.expense-main{min-width:140px}.expense-main h3{font-size:12px}.expense-main p{font-size:9px}.expense-amount{font-size:12px}.expense-row-actions{flex-direction:row;flex-basis:100%;justify-content:flex-end}.balance-grid{grid-template-columns:1fr 1fr;gap:10px}.balance-card{padding:16px 14px}.balance-card h3{font-size:12px}.balance-amount{font-size:19px}.suggestions-card{padding:18px 15px}.suggestion-row{font-size:11px}.suggestion-row .button{font-size:9px;padding:7px 9px}.share-choice{font-size:9px}.assignment-title{font-size:10px}.assignment-title select{font-size:9px;width:110px}.attachment-row{margin-left:16px;margin-right:16px;font-size:10px}.review-line{font-size:11px}.inline-form .button{font-size:10px}.toast{bottom:15px;font-size:11px}.receipt-tools .button{font-size:10px}.receipt-tools .text-button{font-size:10px}.group-mode-ai .assistant-card{max-width:100%}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{.sidebar,.topbar,.page-heading,.mode-strip,.inline-note,.bill-card,.assistant-card,.result-actions,.result-tabs,.page-footer,.group-back,.group-toolbar,.expense-row-actions,.heading-actions,dialog,.toast{display:none!important}.app-shell,.workspace-grid{display:block}.main-shell main{padding:0}.results-card{border:0;box-shadow:none;margin:0}.table-scroll{overflow:visible}.result-table{min-width:0}body{background:white}.result-topline{break-inside:avoid}.card{box-shadow:none}.group-detail-heading .button-row{display:none}.results-pane[hidden]{display:block!important}}
/* Keep small functional text readable against the warm surfaces. */
:root { --muted: #697663; }
label { color: #637456; }
.field-help, .assistant-intro, .provider-status, .result-footnote { color: #6c7c60; }
th, .section-label { color: #697b5b; }
.item-editor input::placeholder, input::placeholder, textarea::placeholder { color: #7d8a72; }
.summary-caption, .summary-card .summary-caption, .expense-main p, .member-main small { color: #6d7e60; }
.charges-area .check-label, .assistant-card .check-label { color: #66795b; }
.table-scroll { position: relative; max-width: 100%; min-width: 0; }
.sr-only { left: 0; top: 0; }
.workspace-grid > *, .primary-column, .card { min-width: 0; }
.provider-usage { margin: 0 20px 14px; font-size: 9px; line-height: 1.7; color: #6c7c60; overflow-wrap: anywhere; }
.status-filter { width: auto; min-width: 144px; max-width: 180px; font-size: 11px; }
.unit-summary { margin: 16px 23px; padding: 14px 16px; background: #f5f8ed; border: 1px solid #e1e8d6; border-radius: 9px; }
.unit-summary h3 { margin-top: 0; font-size: 12px; }
.unit-summary ul { padding-left: 18px; margin-bottom: 8px; font-size: 11px; color: #637454; }
.unit-summary .field-help { margin-bottom: 0; }
@media (max-width: 760px) { .provider-usage { margin-left: 18px; margin-right: 18px; } .status-filter { max-width: 100%; } .unit-summary { margin-left: 16px; margin-right: 16px; } }
@media print { .details-section, .results-card .details-section { display: none; } }

/* Splitwise mode keeps direct records and shared groups in one clear workspace. */
.splitwise-nav { display: flex; gap: 26px; border-bottom: 1px solid var(--line); margin: 0 0 24px; overflow-x: auto; max-width: 100%; position: relative; }
.splitwise-nav button { flex: 0 0 auto; border: 0; background: transparent; color: #748267; padding: 12px 0 14px; font-size: 12px; border-bottom: 2px solid transparent; white-space: nowrap; }
.splitwise-nav button[aria-current="page"] { color: var(--teal-dark); border-color: var(--teal); font-weight: 600; }
.workspace-actions { flex-wrap: wrap; }
.workspace-group-actions { display: flex; gap: 20px; align-items: center; justify-content: space-between; margin-bottom: 22px; }
.workspace-group-actions .field-help { margin: 0; }
.workspace-group-actions .button-row { flex: 0 0 auto; }
.workspace-filters { padding: 19px 20px; background: #fff; border: 1px solid var(--line); border-radius: 12px; margin-bottom: 20px; }
.workspace-filter-main { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr); gap: 13px; }
.workspace-filter-main label { margin: 0; }
.workspace-filter-more { margin: 11px 0; }
.workspace-filter-more summary { cursor: pointer; font-size: 10px; color: #6c7d60; padding: 6px 0; }
.workspace-filter-more .form-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 12px; }
.workspace-filters > .button-row { justify-content: flex-end; }
.workspace-filters input, .workspace-filters select { min-width: 0; }
.workspace-statline { display: flex; gap: 24px; flex-wrap: wrap; font-size: 11px; color: #6d7e60; margin: 20px 0 12px; }
.currency-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); gap: 18px; margin: 20px 0 26px; }
.currency-card { padding: 23px; }
.currency-heading { display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.currency-heading h2 { font-size: 17px; margin: 0; }
.currency-net { padding: 23px 0 18px; border-bottom: 1px solid var(--line); }
.currency-net .section-label { margin-bottom: 7px; }
.currency-net strong { display: block; font-size: 35px; font-weight: 550; letter-spacing: -1.1px; line-height: 1.3; color: var(--teal-dark); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.currency-net .field-help { display: block; margin: 7px 0 0; }
.currency-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 20px 0 0; }
.currency-metrics dt { font-size: 10px; color: #6d7e60; margin-bottom: 5px; }
.currency-metrics dd { margin: 0; font-size: 18px; font-weight: 550; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.workspace-pagination { display: flex; justify-content: space-between; align-items: center; gap: 13px; padding: 21px 0; }
.workspace-pagination span { text-align: center; font-size: 10px; color: #697b5b; }
.person-card .member-avatar { margin-bottom: 19px; }
.contact-balance { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 15px; }
.contact-balance strong { font-size: 16px; font-weight: 550; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.contact-balance span { text-align: right; font-size: 9px; color: #6d7e60; }
.ledger-balance { display: block; font-size: 25px; font-weight: 550; margin: 17px 0 7px; letter-spacing: -.6px; overflow-wrap: anywhere; }
.aggregate-activity { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.aggregate-activity > div { min-width: 0; flex: 1; }
.aggregate-activity .text-button { flex: 0 0 auto; }
.expense-main p, .member-main, .person-card h2 { overflow-wrap: anywhere; }
.currency-filter { max-width: 125px; }
.group-toolbar > select { width: auto; max-width: 200px; }
.workspace-filters, #splitwise-content, #group-list, #group-detail { min-width: 0; }
@media (max-width: 1100px) { .workspace-filter-main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .workspace-filter-main > label:first-child { grid-column: 1 / -1; } }
@media (max-width: 760px) {
  .sidebar { gap: 9px; padding-left: 16px; padding-right: 16px; }
  .main-nav { gap: 2px; } .nav-item { padding: 9px 8px; gap: 4px; }
  .splitwise-nav { gap: 22px; margin-bottom: 20px; } .splitwise-nav button { font-size: 11px; }
  .workspace-group-actions { align-items: flex-start; flex-direction: column; gap: 12px; }
  .workspace-filters { padding: 16px; } .workspace-filter-main { gap: 9px; }
  .workspace-filter-more .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-filters label { font-size: 10px; } .workspace-filters input, .workspace-filters select { font-size: 12px; }
  .workspace-statline { gap: 16px; font-size: 10px; }
  .currency-grid { gap: 14px; } .currency-card { padding: 20px; } .currency-net strong { font-size: 32px; }
  .currency-metrics dd { font-size: 17px; } .currency-metrics { gap: 17px; }
  .workspace-pagination { gap: 8px; } .workspace-pagination .button { font-size: 10px; padding: 8px 10px; }
  .workspace-pagination span { font-size: 9px; }
  .aggregate-activity { flex-wrap: wrap; gap: 9px; } .aggregate-activity > div { flex-basis: 100%; }
  .contact-balance span { max-width: 150px; } .group-toolbar > select { max-width: 100%; }
}
@media (max-width: 370px) { .brand { font-size: 19px; } .nav-item { font-size: 10px; padding-left: 6px; padding-right: 6px; } .nav-icon { display: none; } }
@media print { .splitwise-nav, .workspace-filters, .workspace-pagination, .workspace-group-actions, .workspace-actions { display: none !important; } }
@media (max-width: 760px) {
  .topbar { gap: 12px; }
  .breadcrumb { flex: 1 1 0; min-width: 0; overflow: hidden; white-space: nowrap; }
  .breadcrumb strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .topbar-actions { flex: 0 1 auto; min-width: 0; max-width: 55%; gap: 12px; }
  .topbar-actions .local-pill, .account-button .avatar { flex-shrink: 0; }
  .account-button { min-width: 0; max-width: 100%; }
  #account-label { min-width: 0; max-width: 106px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
/* Quick Split steps navigate the existing page without hiding bill controls. */
.mode-strip > button { appearance: none; border: 0; border-bottom: 2px solid transparent; background: transparent; color: inherit; padding: 0 0 14px; min-height: 44px; display: flex; align-items: center; gap: 7px; font: inherit; text-align: left; }
.mode-strip > button:focus-visible { outline: 3px solid #7caa81; outline-offset: 4px; border-radius: 3px; color: var(--ink); }
#bill-card, #results-card, #quick-save-actions, #quick-error { scroll-margin-top: 24px; }
@media (max-width: 760px) {
  .mode-strip { gap: 12px; }
  .mode-strip > button { flex: 1 1 0; min-width: 0; gap: 4px; }
  #bill-card, #results-card, #quick-save-actions, #quick-error { scroll-margin-top: 94px; }
}

/* Reusable rules, safe discussion and exact spending reports. */
.group-tabs { overflow-x: auto; max-width: 100%; }
.group-tabs button { flex: 0 0 auto; white-space: nowrap; }
.spending-card { padding: 23px; margin: 22px 0; }
.spending-card > h3 { margin: 26px 0 14px; }
.spending-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 24px; }
.spending-table { min-width: 600px; width: 100%; }
.spending-table th:first-child { width: 30%; min-width: 130px; }
.spending-table td { white-space: nowrap; }
.spending-table tbody th { font-size: 11px; color: var(--ink); font-weight: 500; text-transform: none; letter-spacing: 0; }
.spending-table caption { text-align: left; }
.spending-bar { display: block; height: 5px; max-width: 170px; border-radius: 4px; background: #eff3e8; margin-top: 8px; overflow: hidden; }
.spending-bar > span { display: block; height: 100%; border-radius: inherit; background: #6c9781; }
.table-scroll:focus-visible { outline: 3px solid #7caa81; outline-offset: 3px; }
.expense-presets { margin: 14px 0 23px; padding: 14px 16px; background: #f5f8ee; border: 1px solid var(--line); border-radius: 9px; }
.expense-presets > summary { cursor: pointer; font-size: 12px; font-weight: 550; }
.expense-presets h3 { margin: 15px 0 10px; }
.preset-apply-row, .preset-save-row { display: flex; align-items: center; gap: 12px; margin: 13px 0; }
.preset-apply-row select, .preset-save-row input { flex: 1 1 0; min-width: 0; margin-bottom: 0; }
.preset-apply-row button, .preset-save-row button { flex: 0 0 auto; }
.preset-row { display: flex; justify-content: space-between; gap: 16px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.preset-row:last-child { border-bottom: 0; }
.preset-row h3 { margin: 0 0 7px; overflow-wrap: anywhere; }
.preset-row > div:first-child { min-width: 0; }
.preset-row .field-help { margin-bottom: 0; overflow-wrap: anywhere; }
.preset-row .button-row { flex: 0 0 auto; align-self: center; flex-wrap: wrap; justify-content: flex-end; }
.preset-row.archived { background: #fafbf6; }
.preset-warning { font-size: 11px; color: #8b5c30; }
.expense-comments { padding-top: 17px; border-top: 1px solid var(--line); margin: 25px 0; }
.comment-list { padding: 6px 0; }
.comment-entry { padding: 14px 0; border-bottom: 1px solid var(--line); }
.comment-author { font-size: 10px; color: #6d7e60; }
.comment-body { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; }
.comment-entry.retracted .comment-body { font-style: italic; color: #6d7e60; }
.comment-form { margin-top: 16px; }
.comment-form textarea { width: 100%; }
.comment-form .button { margin-top: 9px; }
@media (max-width: 760px) {
  .spending-card { padding: 19px 16px; }
  .spending-metrics { gap: 12px; }
  .spending-metrics dd { font-size: 16px; }
  .preset-apply-row, .preset-save-row { align-items: stretch; flex-direction: column; gap: 7px; }
  .preset-apply-row select, .preset-save-row input { flex: auto; width: 100%; }
  .preset-row { flex-direction: column; padding: 16px; gap: 10px; }
  .preset-row .button-row { align-self: flex-start; justify-content: flex-start; }
}
@media print { .expense-presets, .preset-list, .comment-form { display: none !important; } .spending-card { break-inside: avoid; } .spending-table { min-width: 0; } }

/* Account access remains distinct from financial group membership. */
.account-admin-actions{margin:14px 0;flex-wrap:wrap}.account-access-card h3{margin-top:0}.account-access-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:14px}.account-access-form label{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;font-size:12px}.account-access-form input[type=checkbox]{margin:0}.account-panel-actions{justify-content:center;flex-wrap:wrap}.secret-invitation{font-family:Consolas,monospace;overflow-wrap:anywhere}.account-access-form .button{margin-left:auto}#account-admin-button{margin:8px 0 18px}#account-invitation-notice .text-button{margin-left:8px}#approval-panel h1{font-size:28px;letter-spacing:-.6px}@media(max-width:600px){.account-access-form .button{margin-left:0}.account-admin-actions .button{flex:1;white-space:normal}#account-admin-dialog{padding:20px}}

/* Administration stays inside the same authenticated app and keeps secrets out of ordinary history. */
.admin-statistics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.admin-stat{padding:22px;display:flex;flex-direction:column;gap:9px}.admin-stat strong{font-size:30px;font-weight:550;line-height:1.2}.admin-stat .section-label{font-size:10px;letter-spacing:.5px}.admin-info-card{padding:24px;margin:20px 0}.admin-info-card h3{margin-top:0}.admin-info-card p{margin:12px 0}.admin-info-card .button-row{flex-wrap:wrap}.admin-user-row{padding:21px 24px;margin:12px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-user-row h3,.admin-event-list h3{margin:0 0 5px;overflow-wrap:anywhere}.admin-user-row p,.admin-event-list p{margin:0}.admin-user-row .button{flex-shrink:0}.admin-search{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:16px;margin:20px 0}.admin-search label{margin:0}.admin-search input,.admin-search select{min-width:0}.admin-detail-heading{margin:23px 0 15px}.admin-detail-heading h2{font-size:26px;overflow-wrap:anywhere}.admin-event-list .list-card{padding:16px 20px}.admin-event-list h3{font-size:13px;text-transform:capitalize}.admin-privacy-note{max-width:850px;margin-bottom:22px}.admin-usage-row{padding:12px 18px;background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:8px;font-size:12px}.recovery-card{max-width:600px;padding:32px;margin:40px auto}.recovery-card h1{font-size:31px;letter-spacing:-.8px}.recovery-card p{font-size:13px}.recovery-card input{width:100%}#admin-content>h2{margin:22px 0 10px}#account-admin-content>.button{margin-top:16px}
@media(max-width:900px){.admin-statistics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-search{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.admin-search>.button{grid-column:1/-1;justify-self:end}}
@media(max-width:760px){.sidebar{gap:10px}.main-nav{flex-wrap:wrap;justify-content:flex-end}.nav-item{padding:8px;font-size:10px}#admin-navigation .nav-icon{display:none}.admin-user-row{padding:17px;align-items:flex-start;flex-wrap:wrap;gap:12px}.admin-user-row>.button{margin-left:auto}.admin-statistics{gap:10px}.admin-stat{padding:17px}.admin-stat strong{font-size:26px}.admin-info-card{padding:20px}.admin-search{gap:12px}.recovery-card{padding:24px;margin:15px auto}.admin-info-card .account-access-form{align-items:flex-start}.admin-info-card .account-access-form .button{margin-left:0}}
@media print{#admin-mode,#password-reset-mode{display:none!important}}
