@charset "UTF-8";
:root{--green:#173f33;--green-dark:#103027;--green-soft:#eaf1ed;--ink:#1d2924;--muted:#6c7771;--border:#dfe5df;--canvas:#f6f7f3;--white:#fff;--gold:#ba9862;--warning:#815e1e;--danger:#a13931;--radius:14px;--shadow:0 8px 28px #163e320a;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.58;cursor:wait}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:34px;font-weight:580;line-height:1.2;letter-spacing:-1.1px}h2{font-size:18px;font-weight:620;letter-spacing:-.3px}h3{font-size:15px;font-weight:650}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #87b29e;outline-offset:3px}[hidden]{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.eyebrow{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1.7px}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:white;padding:12px 20px}.skip-link:focus{top:10px}.topbar{height:76px;background:#fff;border-bottom:1px solid #edf0eb;position:relative;display:flex;align-items:center;gap:28px;padding:0 34px;backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:13px;font-weight:650;line-height:1.4}.brand:hover{text-decoration:none}.brand img{object-fit:contain;border-radius:6px}.brand small{display:block;font-weight:400;font-size:10px;letter-spacing:.7px;color:var(--muted)}.main-navigation{position:sticky;top:0;z-index:20;display:flex;align-items:stretch;gap:14px;height:47px;justify-content:center;background:#fffffff7;border-bottom:1px solid var(--border);backdrop-filter:blur(16px)}.main-navigation a{position:relative;display:flex;align-items:center;padding:0 11px;white-space:nowrap;font-size:12px;color:#69756e;font-weight:550}.main-navigation a:hover{color:var(--green);text-decoration:none;background:#f8faf7}.main-navigation a[aria-current=page]{color:var(--green);font-weight:700}.main-navigation a[aria-current=page]:after{content:"";height:3px;position:absolute;bottom:0;left:12px;right:12px;background:var(--green);border-radius:4px 4px 0 0}.logout{margin:0 0 0 auto;border-left:1px solid var(--border);padding-left:18px}.icon-button{border:0;background:transparent;color:var(--muted);width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.icon-button:hover{background:var(--green-soft);color:var(--green)}#main{max-width:1510px;margin:0 auto;padding:35px 46px 28px;min-height:100vh;outline:none}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.page-heading .eyebrow{margin-bottom:9px}.page-heading p.subtitle{color:var(--muted);margin-top:10px;font-size:13px}.heading-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;line-height:1.3;min-height:38px;padding:9px 14px;border:1px solid var(--border);border-radius:7px;background:white;color:var(--ink);font-weight:550;font-size:12px;white-space:nowrap;text-decoration:none}.button:hover{background:#f2f5f1;text-decoration:none}.button svg{height:15px;width:15px}.button.primary{background:var(--green);color:white;border-color:var(--green)}.button.primary:hover{background:var(--green-dark)}.button.danger{color:var(--danger);border-color:#e8c7c3}.button.ghost{background:transparent;border-color:transparent;color:var(--muted)}.button.ghost:hover{color:var(--green);background:var(--green-soft)}.text-button{font-size:12px;background:none;border:0;padding:4px 0;color:var(--green);font-weight:600;text-align:left}.text-button:hover{text-decoration:none;color:#65815a}.help-button{font-size:11px;min-height:32px;padding:6px 9px}.panel{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:20px 23px;gap:12px;border-bottom:1px solid #edf0eb}.panel-heading p{font-size:12px;color:var(--muted);margin-top:4px}.panel-body{padding:23px}.welcome-banner{background:var(--green);color:white;padding:27px 30px;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;margin-bottom:23px;gap:25px;position:relative;overflow:hidden}.welcome-banner:after{content:"";position:absolute;right:130px;width:180px;height:180px;border:1px solid #ffffff0c;border-radius:50%;pointer-events:none}.welcome-banner .eyebrow{color:#b2c5bb;margin-bottom:7px}.welcome-banner h2{font-size:23px;font-weight:500;letter-spacing:-.5px}.welcome-banner p:last-child{color:#c7d6cd;margin-top:6px;font-size:12px}.welcome-banner .banner-meta{border-left:1px solid #ffffff25;padding-left:28px;text-align:right;white-space:nowrap;font-size:12px;color:#c7d6cd;z-index:1}.banner-meta strong{display:block;color:white;font-size:16px;font-weight:500;margin-top:5px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:23px}.metric{padding:20px 22px;background:white;border:1px solid var(--border);border-radius:11px;box-shadow:var(--shadow)}.metric-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);gap:10px}.metric-icon{width:30px;height:30px;background:var(--green-soft);color:var(--green);border-radius:8px;display:flex;align-items:center;justify-content:center}.metric-icon svg{width:16px;height:16px}.metric-value{font-size:28px;line-height:1.3;letter-spacing:-.8px;font-weight:600;margin:9px 0 4px;font-variant-numeric:tabular-nums}.metric-caption{font-size:11px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:23px;margin-bottom:23px}.dashboard-grid.equal{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.chart-wrap{padding:25px 23px 15px}.legend{display:flex;gap:18px;font-size:11px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:7px;height:7px;border-radius:2px;background:var(--green);display:inline-block}.legend .expense{background:#c6d6bc}.chart{height:170px;display:flex;align-items:stretch;gap:12px;border-bottom:1px solid var(--border);background:repeating-linear-gradient(to top,transparent,transparent 41px,#edf0eb 42px);padding:5px 4px 0}.chart-month{display:flex;flex:1;gap:3px;align-items:flex-end;justify-content:center;position:relative;min-width:8px}.chart-bar{background:var(--green);border-radius:3px 3px 0 0;min-width:4px;width:13px;max-width:40%;min-height:1px;transition:height .2s}.chart-bar.expense{background:#c6d6bc}.chart-labels{display:flex;gap:12px;padding:8px 4px;font-size:9px;color:var(--muted)}.chart-labels span{flex:1;text-align:center;min-width:8px}.chart-scale{font-size:10px;color:var(--muted);margin-bottom:10px}.chart-note{font-size:11px;color:var(--muted);margin-top:11px}.quick-links{display:grid;gap:9px;padding:17px 20px}.quick-link{display:flex;align-items:center;gap:12px;border:1px solid var(--border);background:white;border-radius:8px;padding:13px 14px;width:100%;text-align:left;color:var(--ink)}.quick-link:hover{background:#f5f8f3}.quick-link>svg{color:var(--green);width:18px}.quick-link span{flex:1;font-size:12px;font-weight:600}.quick-link small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:2px}.quick-link .arrow{font-size:16px;color:var(--muted);flex:0}.status-note{margin:1px 20px 20px;padding:12px;border-radius:8px;background:#f4f6f0;color:#6c765f;font-size:11px;line-height:1.6}.notice{padding:14px 17px;background:#fbf5e8;border:1px solid #eadab7;color:var(--warning);border-radius:9px;font-size:12px;display:flex;gap:12px;align-items:center;margin-bottom:21px}.notice svg{width:18px;height:18px;flex-shrink:0}.notice span{flex:1}.notice .text-button{color:var(--warning)}.notice.neutral{background:#eff4f0;border-color:#dbe6dd;color:#4a6658}.filters{display:flex;gap:10px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.search-field{position:relative;flex:1;min-width:190px;max-width:370px}.search-field svg{position:absolute;top:12px;left:12px;width:16px;height:16px;color:var(--muted)}.search-field input{padding-left:38px}.filters select{width:auto;min-width:150px}.filters .record-count{margin-left:auto;font-size:11px;color:var(--muted)}input,select,textarea{border:1px solid #d9e1d8;background:white;border-radius:7px;width:100%;padding:10px 11px;color:var(--ink);min-height:41px;transition:border-color .15s;max-width:100%}input:hover,select:hover,textarea:hover{border-color:#a5b9aa}input::placeholder,textarea::placeholder{color:#929b93}textarea{resize:vertical;min-height:95px}input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--green)}input[type=file]{padding:9px;background:#f7f9f5;font-size:12px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-weight:500;color:#7a847d;font-size:10px;text-transform:uppercase;letter-spacing:.7px;padding:12px 22px;background:#fafbf8;white-space:nowrap;border-bottom:1px solid var(--border)}td{padding:16px 22px;border-bottom:1px solid #edf0eb;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafbf8}.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.cell-title{font-weight:600;color:var(--ink)}.cell-subtitle{font-size:10px;color:var(--muted);display:block;margin-top:3px}.table-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;white-space:nowrap}.table-actions .text-button{font-size:11px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;font-size:10px;font-weight:550;padding:4px 8px;white-space:nowrap;background:#f0f2ec;color:#737c72}.badge:before{content:"";width:4px;height:4px;display:block;background:currentColor;border-radius:50%}.badge.green{color:#347051;background:#eaf4e9}.badge.amber{color:#967330;background:#fbf4e2}.badge.red{color:#a04f44;background:#fcf0eb}.badge.neutral{color:#6d7771;background:#eff2ed}.empty-state{text-align:center;padding:48px 22px}.empty-state svg{width:32px;height:32px;color:#8fa595;margin-bottom:10px}.empty-state h3{font-weight:550;margin-bottom:5px}.empty-state p{font-size:12px;color:var(--muted);max-width:380px;margin:0 auto 17px}.empty-state .button{margin-top:3px}.activity-list{padding:1px 21px}.activity-item{display:flex;gap:11px;padding:15px 0;border-bottom:1px solid #edf0eb}.activity-item:last-child{border:0}.activity-dot{margin-top:5px;width:7px;height:7px;background:#bad0b5;border-radius:50%;flex-shrink:0}.activity-item p{font-size:11px}.activity-item small{font-size:10px;color:var(--muted)}.page-footer{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#929b93;font-size:10px;padding-top:23px;margin-top:6px}.loading-state{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px}.loading-state h1{font-size:25px}.loading-state p{font-size:13px;color:var(--muted)}.spinner{width:28px;height:28px;border:2px solid #d8e2d6;border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:13px 22px;background:var(--green-dark);color:white;border-radius:9px;font-size:12px;z-index:70;box-shadow:0 10px 30px #0002;max-width:calc(100vw - 36px)}.toast.error{background:#8e3a32}
dialog{border:1px solid var(--border);border-radius:15px;box-shadow:0 24px 100px #0003;padding:0;width:min(700px,calc(100vw - 36px));max-height:calc(100dvh - 60px);color:var(--ink);background:white}dialog.wide{width:min(920px,calc(100vw - 36px))}dialog.small-dialog{width:min(530px,calc(100vw - 36px))}dialog::backdrop{background:#102e265c;backdrop-filter:blur(3px)}.dialog-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 64px)}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;padding:23px 26px 18px;gap:20px;border-bottom:1px solid var(--border)}.dialog-header h2{font-size:21px}.dialog-header p{font-size:12px;color:var(--muted);margin-top:4px}.dialog-body{padding:24px 26px;overflow:auto}.dialog-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:16px 26px;border-top:1px solid var(--border);background:#fafbf8;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field>label{font-size:12px;font-weight:550}.field small{font-size:10px;color:var(--muted)}.field.full{grid-column:1/-1}.form-section{font-size:13px;margin:0 0 16px;font-weight:650}.form-section:not(:first-child){margin-top:26px;padding-top:21px;border-top:1px solid var(--border)}.form-error{color:var(--danger);border:1px solid #eed1cb;background:#fff4f0;padding:12px 15px;border-radius:8px;font-size:12px;margin-top:16px;white-space:pre-wrap}.check-field{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;margin-top:18px}.check-field input{margin-top:3px;flex-shrink:0}.help-content p,.help-content li{font-size:13px;color:#5e6c63;line-height:1.75}.help-content h3{margin:18px 0 6px}.help-content h3:first-child{margin-top:0}.help-content ul{padding-left:20px;margin:8px 0}.help-content li+li{margin-top:7px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;margin-bottom:22px}.detail-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px;margin-bottom:4px}.detail-value{font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.detail-value.large{font-size:21px;font-weight:600;letter-spacing:-.5px}.detail-section{margin-top:24px;padding-top:19px;border-top:1px solid var(--border)}.detail-section h3{margin-bottom:13px}.detail-section .table-wrap{border:1px solid var(--border);border-radius:8px}.detail-section th,.detail-section td{padding:10px 12px}.invoice-lines{display:grid;gap:12px}.invoice-line{border:1px solid var(--border);background:#fafbf8;border-radius:9px;padding:13px;display:grid;grid-template-columns:1fr 85px 112px 94px 28px;align-items:start;gap:9px}.invoice-line .field>label{font-size:10px}.invoice-line input,.invoice-line select{font-size:12px;padding:8px;min-height:36px}.invoice-line .icon-button{align-self:end;margin-bottom:1px}.invoice-line .line-description{min-width:0}.invoice-preview{display:flex;justify-content:flex-end;gap:24px;flex-wrap:wrap;margin:17px 0 4px;font-size:12px;color:var(--muted)}.invoice-preview strong{display:block;color:var(--ink);font-size:16px;font-weight:600}.line-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0 22px}.line-tools p{font-size:10px;color:var(--muted)}.settings-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,1fr);gap:23px;align-items:start}.settings-stack{display:grid;gap:23px}.settings-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-summary .detail-value{font-size:12px}.settings-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.report-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:23px}.report-quick .panel-body p{font-size:12px;color:var(--muted);margin-top:7px}.report-quick .button{margin-top:17px}.year-picker{width:100px;min-height:38px;padding:8px 11px;font-size:12px}.payment-list{display:grid;gap:7px}.payment-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:6px;background:#f4f7f0;font-size:12px}.attachment-list{display:grid;gap:10px}.attachment-list a{font-size:12px;text-decoration:underline}.dialog-body .notice{margin-bottom:19px}.readonly-note{font-size:11px;color:var(--muted);margin-top:12px}.login-page{background:#fff}.login-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-story{background:var(--green);color:#fff;padding:50px 10%;display:flex;flex-direction:column;justify-content:space-between;min-height:100dvh}.login-wordmark{display:flex;align-items:center;gap:16px;font-size:17px;font-weight:500;line-height:1.35}.login-wordmark img{object-fit:contain;background:white;border-radius:12px;padding:6px}.login-story .eyebrow{color:#bed1c0;margin-bottom:22px}.login-story h1{font-size:51px;line-height:1.13;letter-spacing:-1.7px;font-weight:450;margin-bottom:24px}.login-story p:last-child{font-size:14px;color:#bad0c3;line-height:1.8}.login-signature{font-size:11px;color:#b4c9bc}.login-signature span{margin:0 8px;color:#8ba695}.login-form-panel{padding:50px;display:flex;justify-content:center;align-items:center}.login-form-wrap{max-width:345px;width:100%}.login-form-wrap .eyebrow{margin-bottom:12px}.login-form-wrap h2{font-size:29px;letter-spacing:-.8px;font-weight:550;margin-bottom:10px}.login-form-wrap>.muted{font-size:12px;margin-bottom:29px}.login-form{display:flex;flex-direction:column;gap:7px}.login-form label{font-size:12px;font-weight:550;margin-top:14px}.login-form input{min-height:45px}.login-form .button{margin-top:24px;justify-content:space-between;padding:13px 16px}.login-footnote{display:flex;align-items:center;gap:8px;justify-content:center;color:var(--muted);font-size:10px;margin-top:26px}.login-footnote svg{height:13px;width:13px}
@media(min-width:1600px){.topbar{padding-left:max(34px,calc((100vw - 1510px)/2 + 46px));padding-right:max(34px,calc((100vw - 1510px)/2 + 46px))}}
@media(max-width:1240px){.topbar{padding:0 22px;gap:15px}.brand{font-size:11px}.brand small{font-size:9px}.brand img{width:36px;height:36px}.main-navigation{gap:0}.main-navigation a{font-size:11px;padding:0 8px}.logout{padding-left:10px}#main{padding:32px 28px 25px}.metric{padding:18px}.metric-value{font-size:25px}.dashboard-grid{gap:18px}.chart{gap:8px}.chart-labels{gap:8px}}
@media(max-width:990px){.topbar{height:69px;gap:0;padding:12px 22px}.brand{height:38px;font-size:12px}.main-navigation{padding:0 22px;width:100%;height:44px;justify-content:space-between;overflow-x:auto}.main-navigation a{padding:0 10px;font-size:11px}.logout{margin-left:auto;border:0}.main-navigation a:first-child{padding-left:0}.main-navigation a:first-child:after{left:0}.main-navigation a:last-child{padding-right:0}#main{padding-top:29px}.dashboard-grid,.dashboard-grid.equal{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}.metrics{gap:12px}.metric{padding:15px}.metric-value{font-size:23px}.metric-caption{font-size:10px}.metric-icon{display:none}.page-heading{align-items:flex-start}h1{font-size:30px}.heading-actions{max-width:280px}.settings-layout{grid-template-columns:1fr}.report-quick{gap:12px}.report-quick .panel-body{padding:18px}.login-story h1{font-size:42px}.login-form-panel{padding:30px}}
@media(max-width:760px){#main{padding-left:18px;padding-right:18px}.page-heading{margin-bottom:20px;gap:16px}.page-heading p.subtitle{font-size:12px}.page-heading .eyebrow{font-size:9px}.heading-actions{gap:6px}.heading-actions .help-button{order:3;width:100%;justify-content:flex-end;font-size:10px}.heading-actions .button{font-size:11px;padding:8px 10px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{padding:16px}.metric-value{font-size:27px}.metric-icon{display:flex}.dashboard-grid,.dashboard-grid.equal{grid-template-columns:1fr;gap:18px}.welcome-banner{padding:22px}.welcome-banner h2{font-size:21px}.welcome-banner .banner-meta{display:none}.panel-heading{padding:18px}.panel-body{padding:19px}h1{font-size:28px}h2{font-size:16px}.report-quick{grid-template-columns:1fr}.page-footer{font-size:9px}.notice{align-items:flex-start;flex-wrap:wrap}.notice .text-button{margin-left:30px}.filters .record-count{width:100%;margin:2px 0}.search-field{max-width:none}.invoice-line{grid-template-columns:1fr 1fr 1fr 28px}.invoice-line .line-description{grid-column:1/-1}.dialog-header{padding:20px}.dialog-body{padding:20px}.dialog-footer{padding:14px 20px}.dialog-footer .button{font-size:11px}.dialog-header h2{font-size:19px}.login-shell{grid-template-columns:1fr}.login-story{min-height:0;padding:28px 30px;gap:27px}.login-wordmark{font-size:14px}.login-wordmark img{height:53px;width:53px}.login-story>div:nth-child(2){display:none}.login-signature{font-size:10px}.login-form-panel{padding:42px 28px}.login-form-wrap{max-width:410px}}
@media(max-width:460px){.topbar{padding-left:16px;padding-right:16px}.main-navigation{gap:15px;padding:0 16px;justify-content:flex-start}.main-navigation a{padding:0;font-size:10px}.main-navigation a[aria-current=page]:after{left:0;right:0}.page-heading{flex-direction:column;gap:15px}.heading-actions{max-width:none;width:100%;justify-content:flex-start}.heading-actions .help-button{order:0;width:auto;margin-left:auto}.metrics{gap:10px}.metric{padding:14px}.metric-value{font-size:24px}.metric-top{font-size:11px}.metric-icon{width:24px;height:24px}.welcome-banner{margin-bottom:18px}.welcome-banner h2{font-size:19px}.chart-wrap{padding:20px 15px 12px}.chart,.chart-labels{gap:6px}.legend{gap:12px;font-size:10px}.form-grid{grid-template-columns:1fr}.detail-grid{gap:15px}.detail-label{font-size:9px}.detail-value{font-size:12px}.settings-summary{grid-template-columns:1fr}.dialog-footer{gap:7px}.dialog-footer .button{padding:8px 10px}dialog,dialog.wide{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.dialog-shell{max-height:calc(100dvh - 28px)}.dialog-body{padding:18px 16px}.dialog-header{padding:17px 16px}.dialog-footer{padding:12px 16px}.invoice-line{gap:7px;padding:10px;grid-template-columns:1fr 1fr 1fr 25px}.invoice-preview{gap:17px}.invoice-preview strong{font-size:14px}.line-tools p{max-width:155px}.toast{font-size:11px}.notice{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition:none!important}}

.discount-fields{padding:17px;border:1px solid var(--border);border-radius:9px;background:#fafbf8;margin-bottom:17px}.discount-fields input:disabled{background:#eef1ea;color:#899185}.payment-row{align-items:center}.payment-row .table-actions{flex-wrap:wrap}.cell-title:hover{text-decoration:none}.contract-templates{display:grid;gap:12px}.contract-template{border:1px solid var(--border);border-radius:8px;padding:16px}.contract-template p{font-size:12px;color:var(--muted);margin:5px 0 12px}

.section-gap{margin-top:23px}
.main-navigation{scrollbar-width:none}.main-navigation::-webkit-scrollbar{display:none}

.section-tabs{display:flex;gap:22px;border-bottom:1px solid var(--border);margin:-5px 0 20px;overflow-x:auto}.section-tabs .button{position:relative;border:0;border-radius:0;padding:12px 0;background:transparent;color:var(--muted);font-size:12px}.section-tabs .button.selected{color:var(--ink);font-weight:650}.section-tabs .button.selected:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--green)}.contract-section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.contract-section-heading h3,.contract-section-heading h4{margin:0}.contract-revisions{display:grid;gap:14px}.contract-revision{padding:17px;border:1px solid var(--border);border-radius:9px;background:#fafcf8}.contract-downloads{display:flex;gap:8px;flex-wrap:wrap}.contract-downloads .button{white-space:normal;text-align:left;justify-content:flex-start;flex:1 1 180px}.contract-downloads .button svg{flex-shrink:0}.contract-open-fields{padding:15px 17px;border:1px solid #eadab7;background:#fbf7ec;border-radius:9px;font-size:12px;margin:16px 0 22px;color:#766335}.contract-open-fields p{font-size:11px;line-height:1.8;margin-top:5px}.contract-upload-list{display:grid;gap:8px}.contract-upload-row{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}.contract-upload-row:last-child{border-bottom:0}.contract-upload-row>div{min-width:0;overflow-wrap:anywhere}.contract-document-link{margin-bottom:20px}.contract-fixed-terms{padding:14px 17px;background:#f4f7f0;border-radius:8px;margin-top:20px;font-size:12px}.contract-fixed-terms p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:5px}.wizard-steps{display:flex;justify-content:space-between;gap:6px;margin:-6px 0 27px;border-bottom:1px solid var(--border);padding-bottom:16px;overflow-x:auto;scrollbar-width:thin}.wizard-steps button{display:flex;gap:7px;align-items:center;border:0;background:transparent;color:var(--muted);font-size:11px;padding:6px 3px;white-space:nowrap}.wizard-step-number{display:flex;justify-content:center;align-items:center;width:23px;height:23px;border:1px solid var(--border);border-radius:50%;font-size:10px;background:#fafcf8}.wizard-steps button.current{color:var(--green);font-weight:650}.wizard-steps button.current .wizard-step-number{color:white;background:var(--green);border-color:var(--green)}.wizard-step-caption{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.wizard-title{font-size:20px;font-weight:550;line-height:1.35;margin:0 0 22px;outline:none}.wizard-customer-summary{padding:15px 17px;background:#f6f8f2;border:1px solid var(--border);border-radius:8px;margin-top:20px}.wizard-context{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:20px}.wizard-save-state{margin-right:auto;font-size:10px;color:var(--muted);line-height:1.5;max-width:160px}.contract-wizard .dialog-footer{gap:7px}.contract-wizard .dialog-footer .button{font-size:11px}.contract-wizard .dialog-footer .button.ghost{padding-left:8px;padding-right:8px}.contract-wizard .dialog-body{min-height:350px}.contract-wizard .detail-grid{margin-top:24px}
@media(max-width:760px){.contract-wizard .dialog-footer .wizard-save-state{width:100%;max-width:none}.wizard-steps{gap:15px;justify-content:flex-start}.wizard-steps button{font-size:10px}.contract-section-heading{align-items:flex-start}.contract-section-heading .button{font-size:11px}.contract-downloads{display:grid;grid-template-columns:1fr}.contract-revision{padding:14px}.contract-open-fields{padding:13px}.wizard-title{font-size:18px}.wizard-steps{margin-bottom:22px}.contract-wizard .dialog-body{min-height:0}}
@media(max-width:460px){.contract-wizard .dialog-footer .button{font-size:10px;padding:8px}.contract-wizard .dialog-footer .button.ghost{margin-right:auto}.wizard-steps button{gap:5px}.wizard-steps{gap:14px}.wizard-step-number{width:21px;height:21px}.contract-upload-row{align-items:flex-start}.contract-upload-row .button{font-size:10px;padding:8px}.section-tabs{gap:20px}.contract-wizard .detail-grid{grid-template-columns:1fr}.contract-wizard .dialog-footer{justify-content:flex-end}.contract-open-fields p{line-height:1.75}}

.contract-preset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:10px 0 22px}.contract-preset{padding:13px 12px;border:1px solid var(--border);border-radius:9px;background:#fff;text-align:left;color:var(--ink);min-width:0}.contract-preset strong{display:block;font-size:12px}.contract-preset span{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:5px}.contract-preset.selected{background:#edf4ea;border-color:#89a78d;box-shadow:inset 0 0 0 1px #89a78d}.contract-preset.selected strong{color:var(--green)}.contract-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 15px;margin:12px 0 17px}.contract-module{display:flex;gap:9px;align-items:flex-start;padding:8px 10px;border:1px solid #e6eae3;border-radius:7px;font-size:11px;line-height:1.5;cursor:pointer}.contract-module:has(input:checked){background:#f2f7ed;border-color:#c6d7bf}.contract-module input{margin-top:1px;flex-shrink:0}.contract-field-heading{font-size:12px;font-weight:600;margin-top:22px}.contract-wizard-simple .wizard-steps{gap:12px}.contract-wizard-simple .form-grid{margin-bottom:18px}.contract-wizard-simple .field+.field{margin-top:15px}.contract-wizard-simple .form-grid .field+.field{margin-top:0}.contract-inline-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.contract-standard-card{border:1px solid var(--border);border-radius:9px;padding:16px 18px;margin-top:15px;background:#fafcf8}.contract-standard-card h3{font-size:13px}.contract-standard-card .contract-section-heading{margin-bottom:10px}.contract-standard-card .button{font-size:11px;min-height:33px;padding:7px 10px}.contract-standard-summary{display:grid;gap:8px;margin:0}.contract-standard-summary>div{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(0,1.4fr);gap:15px;font-size:11px;padding:5px 0}.contract-standard-summary dt{color:var(--muted)}.contract-standard-summary dd{margin:0;white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6}.contract-standard-summary dd.is-open{color:#8f793f}.contract-card-caption{font-size:10px;color:var(--muted);margin:4px 0 0}.contract-card-more{font-size:10px;color:var(--muted);margin-top:10px}.contract-standards-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:11px}.contract-standards-bar .button{white-space:normal;text-align:left;font-size:11px}.contract-fields-editor{display:grid;gap:20px}.contract-setting-field{padding-bottom:18px;border-bottom:1px solid #e8ece4}.contract-setting-field:last-child{border-bottom:0;padding-bottom:0}.contract-setting-field>.field+.field{margin-top:12px}.contract-setting-field .field[hidden]{display:none}.contract-review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px;padding-left:17px;margin:10px 0 0;font-size:11px;line-height:1.6}.contract-review-ready{display:flex;gap:10px;padding:14px;background:#edf4ea;border:1px solid #c6d7bf;border-radius:9px;font-size:12px;color:var(--green)}.contract-review-ready svg{width:18px;height:18px;flex-shrink:0}.contract-wizard-simple .wizard-save-state{max-width:130px}
@media(max-width:760px){.contract-preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-standard-summary>div{grid-template-columns:minmax(110px,1fr) minmax(0,1.3fr);gap:10px}.contract-wizard-simple .wizard-steps{justify-content:space-between;gap:10px}.contract-wizard-simple .wizard-steps button{flex-direction:column;gap:6px;font-size:10px}.contract-standards-bar{align-items:flex-start}.contract-review-list{grid-template-columns:1fr}.contract-standard-card{padding:14px}.contract-standard-summary dd{-webkit-line-clamp:2}}
@media(max-width:460px){.contract-module-grid{grid-template-columns:1fr;gap:6px}.contract-preset{padding:11px}.contract-preset span{font-size:9px}.contract-wizard-simple .wizard-steps{gap:8px}.contract-wizard-simple .wizard-steps button{font-size:9px;white-space:normal;flex:1;text-align:center;padding-left:0;padding-right:0}.contract-standard-summary>div{grid-template-columns:1fr;gap:3px;padding:6px 0}.contract-standard-card .contract-section-heading{align-items:center}.contract-inline-actions .button{white-space:normal;font-size:11px}.contract-wizard-simple .wizard-save-state{max-width:none}.contract-module{padding:9px 10px}.contract-wizard-simple .dialog-footer .button{min-height:36px}}
.contract-module-grid{max-height:270px;overflow-y:auto;padding-right:5px;scrollbar-width:thin}
.contract-wizard-simple .contract-hosting-choice{margin-bottom:16px}.contract-hosting-warning{margin:0 0 16px;padding:11px 14px;border:1px solid #eadab7;border-radius:8px;background:#fbf7ec;color:#766335;font-size:12px;line-height:1.6}
.contract-standards-origin{margin:0 0 20px;font-size:11px;line-height:1.6;color:var(--muted)}.contract-standard-origin{display:block;margin-top:4px;font-size:9px;font-weight:400;color:var(--green)}
.contract-comparison-dependency{font-size:10px;line-height:1.6;color:var(--green);margin:8px 0 0;overflow-wrap:anywhere}
.contract-comparison-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:19px}.contract-comparison-count{font-size:11px;color:var(--muted)}.contract-comparison-toolbar .button{font-size:11px}.contract-comparison-group+.contract-comparison-group{margin-top:25px}.contract-comparison-group>h3{font-size:13px;margin-bottom:12px}.contract-comparison-item{padding:15px;border:1px solid var(--border);border-radius:9px;background:#fff;margin-top:11px}.contract-comparison-item:has(input:checked){border-color:#9fb798}.contract-comparison-select{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.contract-comparison-select input{flex-shrink:0;margin-top:2px}.contract-comparison-select>span{min-width:0}.contract-comparison-select strong{display:block;font-size:12px;font-weight:600;line-height:1.5}.contract-comparison-select small{display:block;margin-top:3px;font-size:10px;color:var(--muted)}.contract-comparison-reason{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 0;overflow-wrap:anywhere}.contract-comparison-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:13px}.contract-comparison-values>div{padding:12px;border:1px solid #e6eae3;border-radius:7px;background:#f7f8f4;min-width:0}.contract-comparison-values .contract-comparison-after{background:#f0f5ed;border-color:#d3dfcb}.contract-comparison-values p{font-size:11px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0}.contract-comparison .dialog-footer .button{white-space:normal;text-align:center}
.contract-technical-tasks{margin:18px 0;padding:15px 17px;border:1px solid #d6dfdf;border-radius:9px;background:#f2f6f6;color:#344e50}.contract-technical-tasks h4{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;margin:0}.contract-technical-tasks h4 svg{width:15px;height:15px;flex-shrink:0}.contract-technical-tasks>p{font-size:11px;line-height:1.6;margin:7px 0 0}.contract-technical-tasks ul{padding-left:18px;margin:11px 0 0}.contract-technical-tasks li{font-size:11px;line-height:1.65;overflow-wrap:anywhere}.contract-technical-tasks li+li{margin-top:9px}.contract-technical-tasks li strong{display:block;font-weight:600}.contract-technical-tasks li span{display:block;color:#567074;margin-top:2px}
@media(max-width:600px){.contract-comparison-values{grid-template-columns:1fr;gap:8px}.contract-comparison-item{padding:12px}.contract-comparison-toolbar{align-items:flex-start}.contract-comparison-toolbar .button{padding-right:0}.contract-technical-tasks{padding:13px}.contract-comparison-select strong{font-size:11px}}
.contract-review-list{padding:0;list-style:none;gap:6px 14px}.contract-finding.button{border:0;background:transparent;white-space:normal;text-align:left;justify-content:flex-start;padding:7px 0;min-height:32px;font-size:11px;color:inherit;line-height:1.5}.contract-finding.button:hover{color:var(--green);background:#ffffff60}.contract-finding svg{width:12px;height:12px;flex-shrink:0}.field-highlight{outline:2px solid #91b49a;outline-offset:6px;border-radius:4px}.billing-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}.billing-toolbar>select{width:230px}.billing-month-controls{display:flex;align-items:center;gap:8px}.billing-month-controls input{width:200px}.billing-month-controls .month-arrow{font-size:23px;padding:4px 13px;line-height:1;min-height:40px}.billing-calendar-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:20px;margin:22px 0}.billing-calendar-layout>.panel{min-width:0}.billing-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:14px;gap:5px}.billing-weekday{text-align:center;padding:5px 0 10px;font-size:10px;color:var(--muted)}.billing-calendar-day{position:relative;text-align:left;min-width:0;min-height:93px;background:#f8faf6;color:var(--ink);border:1px solid transparent;border-radius:7px;padding:8px 6px;display:flex;flex-direction:column;gap:5px;align-items:flex-start}.billing-calendar-day:hover{background:#edf3e9;border-color:#bdcdb8}.billing-calendar-day.today .day-number{background:var(--green);color:#fff;border-radius:50%;padding:2px 5px;margin:-2px -5px}.billing-calendar-day.selected{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);background:#f0f6ec}.day-number{font-size:11px;line-height:1.4;font-weight:600}.billing-day-total{font-size:9px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:100%;border-left:3px solid var(--green);padding-left:4px}.billing-day-total.expense{border-color:#bc9864;color:#866532}.billing-day-alert{position:absolute;right:5px;top:6px;color:#a23a30;font-size:10px;font-weight:700}.billing-agenda{padding:19px}.billing-agenda-list{display:grid;gap:9px;max-height:540px;overflow:auto;scrollbar-width:thin}.billing-event{display:flex;gap:13px;align-items:flex-start;padding:14px 12px;border:1px solid var(--border);border-left:3px solid var(--green);background:#fff;border-radius:8px;text-align:left;width:100%;color:var(--ink);min-width:0}.billing-event:hover{background:#f6f9f3}.billing-event.expense{border-left-color:#bc9864}.billing-event-date{font-size:10px;color:var(--muted);flex-shrink:0;padding-top:2px}.billing-event-main{min-width:0;flex:1}.billing-event-main>strong{display:block;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.billing-event-main>small{display:block;font-size:10px;color:var(--muted);margin:3px 0 7px}.billing-event-status{display:flex;gap:4px;flex-wrap:wrap}.billing-event-status .badge{font-size:9px;white-space:normal}.billing-event-amount{font-size:12px;font-weight:600;text-align:right;white-space:nowrap}.billing-event-amount small{display:block;color:var(--muted);font-size:9px;font-weight:400}.billing-no-events{padding:25px 0;color:var(--muted);font-size:12px;text-align:center}.billing-backlog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px;max-height:350px;overflow:auto;scrollbar-width:thin}.billing-plan-editor .form-grid{margin-bottom:16px}.billing-plan-editor .form-section{margin-top:5px}.billing-plan-editor .remove-plan-line{padding:0;width:26px;min-height:28px;border:0;color:var(--muted)}.billing-plan-editor .invoice-line{align-items:end}.billing-plan-editor .field+.field{margin-top:0}.invoice-mail-dialog .field{margin-bottom:18px}.mail-envelope{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#f5f8f2;border:1px solid var(--border);border-radius:8px;padding:14px;margin-bottom:20px}.mail-envelope .detail-value{font-size:12px;overflow-wrap:anywhere}.mail-history{display:grid;gap:8px;margin-top:12px}.mail-history-row{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;padding:12px;background:#f6f8f3;border-radius:6px}.mail-history-row>div{flex:1;min-width:160px}.mail-history-row strong{font-size:11px;overflow-wrap:anywhere}.mail-history-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.mail-history-row>p{width:100%}.mail-retry{background:#fbf5e8;padding:12px;border-radius:7px}
@media(max-width:1250px){.billing-calendar-layout{grid-template-columns:minmax(0,1fr)}.billing-agenda-list{max-height:400px}.billing-calendar-day{min-height:86px}.billing-day-total{font-size:10px}}
@media(max-width:600px){.billing-toolbar{gap:10px}.billing-toolbar>select{width:100%}.billing-month-controls{width:100%;gap:5px}.billing-month-controls input{width:160px;flex:1;font-size:12px;padding:8px}.billing-month-controls .ghost{font-size:10px;padding:5px}.billing-calendar-grid{padding:9px;gap:3px}.billing-calendar-day{min-height:76px;padding:7px 4px}.billing-desktop{display:none}.billing-day-total{font-size:8px;letter-spacing:-.3px;padding-left:2px;border-left-width:2px}.billing-weekday{font-size:9px}.billing-calendar-layout{gap:14px}.billing-agenda{padding:14px}.billing-event{gap:9px;padding:12px 10px;flex-wrap:wrap}.billing-event-date{width:100%;font-size:9px;padding:0}.billing-event-main>strong{font-size:11px}.billing-event-amount{font-size:11px}.billing-backlog{grid-template-columns:1fr;padding:13px}.mail-envelope{align-items:flex-start;flex-direction:column}.billing-metrics .metric-value{font-size:21px}.invoice-mail-dialog .check-field{font-size:11px}.billing-plan-editor .dialog-footer .button{white-space:normal}}
.billing-toolbar>.heading-actions{max-width:none;flex-wrap:nowrap}.billing-toolbar select{width:220px}.billing-metrics .metric{padding:13px 18px}.billing-metrics .metric-value{font-size:25px;margin:5px 0 2px}.billing-metrics .metric-caption{font-size:10px}.billing-metrics{margin-bottom:16px}.billing-calendar-layout{margin-top:16px}.billing-calendar-layout .panel-heading{padding:15px 20px}.billing-calendar-day{min-height:77px}.billing-metrics .metric-icon{width:25px;height:25px}
@media(max-width:760px){.billing-toolbar>.heading-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.billing-toolbar select{width:200px;flex:1;min-width:150px}.billing-toolbar>.heading-actions .button{font-size:10px;padding:5px}.billing-metrics .metric{padding:11px 13px}.billing-metrics .metric-value{font-size:21px}.billing-calendar-layout .panel-heading{padding:13px 16px}.billing-calendar-day{min-height:72px}}
.billing-mobile-count{display:none}@media(max-width:600px){.billing-desktop-amount{display:none}.billing-mobile-count{display:inline;font-size:9px;letter-spacing:0}.billing-day-total{padding-left:3px}.billing-calendar-day{min-height:64px}}
@media(max-width:460px){.billing-page-heading .eyebrow,.billing-page-heading .subtitle,.billing-metrics .metric-caption,.billing-metrics .metric-icon{display:none}.billing-page-heading{gap:11px;margin-bottom:14px}.billing-page-heading h1{font-size:26px}.billing-metrics .metric-top{font-size:10px}.billing-metrics .metric{padding:10px 12px}.billing-metrics .metric-value{font-size:20px;margin-top:4px}.billing-metrics{gap:8px}}
.finance-positive{color:#1c6244}.finance-negative{color:#aa3c38}.finance-month-summary{margin-bottom:17px}.finance-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.finance-totals>div{min-width:0}.finance-totals>div>span{display:block;font-size:11px;color:var(--muted)}.finance-totals strong{display:block;font-size:24px;line-height:1.35;font-weight:600;font-variant-numeric:tabular-nums;margin-top:5px;white-space:nowrap;letter-spacing:-.5px}.finance-month-totals{padding:20px 24px}.finance-month-totals>div+div{border-left:1px solid var(--border);padding-left:24px}.finance-basis{font-size:11px;color:var(--muted);margin:0}.finance-calendar-layout{grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr);align-items:start}.finance-calendar-day{min-height:106px;gap:5px;padding:9px 7px}.finance-cell-amount{display:block;max-width:100%;font-size:11px;line-height:1.45;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.finance-cell-balance{display:flex;flex-wrap:wrap;gap:2px 5px;justify-content:space-between;width:100%;border-top:1px solid #dce5da;padding-top:5px;margin-top:auto;font-size:10px;font-weight:650;line-height:1.5;font-variant-numeric:tabular-nums}.finance-cell-balance>span{font-size:8px;font-weight:400;color:var(--muted)}.finance-cell-mobile{display:none}.finance-cell-untracked{font-size:9px;line-height:1.45;color:var(--muted)}.finance-day-totals{gap:10px}.finance-day-totals strong{font-size:16px;letter-spacing:-.2px}.finance-day-totals>div>span{font-size:10px}.finance-summary-caption{font-size:9px;color:var(--muted);margin-top:9px}.finance-agenda-filter{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:18px 0 12px;padding-top:15px;border-top:1px solid var(--border)}.finance-agenda-filter>span{font-size:11px;color:var(--muted)}.finance-agenda-filter select{width:170px;font-size:11px;min-height:34px;padding:7px 10px}.finance-agenda-list{max-height:470px}.finance-event{gap:10px;flex-wrap:wrap}.finance-event .billing-event-date{width:100%;font-size:9px}.finance-event .billing-event-amount{font-size:12px}.finance-event.finance-outgoing{border-left-color:#bb6159}.finance-event.finance-incoming{border-left-color:#387753}.finance-excluded{background:#f9faf7;border-left-color:#a2aba3!important}.finance-excluded .billing-event-amount{color:var(--muted)}.finance-excluded .billing-event-main>strong{color:var(--muted)}.billing-open-task.button{white-space:normal;text-align:left;justify-content:flex-start;font-size:11px}.finance-calendar-layout>.panel:last-child{scroll-margin-top:65px}.finance-tabs{gap:25px}
@media(max-width:1250px){.finance-calendar-layout{grid-template-columns:minmax(0,1fr)}.finance-cell-amount{font-size:12px}.finance-calendar-day{min-height:99px}.finance-cell-balance{font-size:11px;flex-wrap:nowrap}.finance-day-totals strong{font-size:21px}.finance-event .billing-event-date{width:auto}.finance-event .billing-event-main{min-width:100px}}
@media(max-width:760px){.finance-month-totals{padding:15px 18px;gap:12px}.finance-totals strong{font-size:20px}.finance-month-totals>div+div{padding-left:15px}.finance-basis{font-size:10px}.finance-toolbar{gap:10px}.finance-calendar-day{min-height:90px}.finance-cell-amount{font-size:10px;letter-spacing:-.4px}.finance-cell-balance{font-size:9px;flex-wrap:wrap}.finance-cell-balance>span{font-size:8px}.finance-day-totals strong{font-size:18px}.finance-event .billing-event-date{width:100%}.finance-tabs{gap:22px}.finance-event .billing-event-amount{font-size:12px}}
@media(max-width:600px){.finance-calendar-day{min-height:64px;padding:7px 4px;gap:4px}.finance-cell-amount,.finance-cell-balance{display:none}.finance-cell-mobile{display:block;font-size:9px;white-space:nowrap;font-variant-numeric:tabular-nums}.finance-cell-untracked{font-size:7px;overflow-wrap:anywhere}.finance-month-totals{padding:13px 15px;gap:9px}.finance-month-totals>div+div{padding-left:10px}.finance-totals strong{font-size:17px;letter-spacing:-.6px}.finance-totals>div>span{font-size:10px}.finance-day-totals strong{font-size:17px}.finance-page-heading .subtitle{display:block!important;font-size:11px;margin-top:7px!important}.finance-month-summary{margin-bottom:14px}.finance-calendar-layout .panel-heading p{font-size:10px}.finance-agenda-filter{margin-top:12px}.finance-summary-caption{font-size:9px}.finance-calendar-layout{margin-top:13px}.finance-tabs{gap:18px}.finance-tabs .button{font-size:11px}}
@media(max-width:360px){.finance-totals strong{font-size:15px}.finance-day-totals{gap:6px}.finance-month-totals>div+div{padding-left:8px}.finance-tabs{gap:14px}.finance-tabs .button{font-size:10px}}
.expense-reference{font-weight:650;font-variant-numeric:tabular-nums;color:var(--green)}.expense-reference-field{padding:13px 15px;border:1px solid #dce5da;border-radius:8px;background:#f5f8f2;margin-bottom:20px}.expense-reference-field input{font-weight:650;background:#fdfefb;font-variant-numeric:tabular-nums}.finance-month-summary strong,.finance-day-totals strong{overflow-wrap:anywhere;white-space:normal}
.finance-cell-mobile-balance{display:none}@media(max-width:600px){.finance-calendar-day{min-height:88px}.finance-cell-mobile{font-size:8px}.finance-cell-mobile-balance{display:block;width:100%;border-top:1px solid #dce5da;padding-top:4px;margin-top:auto;font-size:9px;line-height:1.35;font-weight:650;letter-spacing:-.2px;font-variant-numeric:tabular-nums}.finance-cell-mobile-balance small{display:block;font-size:7px;font-weight:400;color:var(--muted);letter-spacing:0}}
.customer-tabs{gap:25px}.expense-source{padding:17px;border:1px solid #d8e3d8;border-radius:10px;background:#f7faf4;margin-bottom:21px}.expense-source-title{display:flex;align-items:center;gap:8px;margin-bottom:15px;color:var(--green)}.expense-source-title h3{font-size:13px}.expense-source-title svg{width:18px;height:18px}.expense-source>.field input[type=file]{background:#fff;font-size:12px;padding:10px}.expense-existing-source{display:flex;gap:10px;align-items:flex-end;margin-top:14px}.expense-existing-source>.field{flex:1;min-width:0}.expense-existing-source>.button{flex-shrink:0;margin-bottom:0;min-height:41px;font-size:11px}.expense-existing-source .field label{font-size:11px}.expense-extraction{border-top:1px solid #d8e3d8;padding-top:16px;margin-top:18px}.expense-extraction h3{font-size:13px;margin-bottom:5px}.expense-extraction>.small{font-size:11px}.extraction-progress{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px}.extraction-progress .spinner{width:17px;height:17px;border-width:2px;flex-shrink:0}.extraction-progress>.button{font-size:10px;margin-left:auto;padding:5px}.extraction-proposals{display:grid;gap:7px;margin-top:13px}.extraction-proposal{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e1e7db;border-radius:7px;padding:10px 12px;background:#fff}.extraction-proposal>div{min-width:0}.extraction-proposal small{display:block;font-size:10px;color:var(--muted)}.extraction-proposal strong{display:block;font-size:12px;font-weight:600;overflow-wrap:anywhere}.extraction-field-status{display:block;font-size:10px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.extraction-proposal>.button{min-height:31px;padding:5px 9px;font-size:10px;flex-shrink:0}.extraction-low{display:block;font-size:10px;color:var(--warning);margin-top:3px}.extraction-warning{display:flex;gap:7px;align-items:flex-start;padding:10px;background:#fcf5e7;border-radius:6px;color:#795b2e;font-size:11px;line-height:1.6;margin-top:10px;overflow-wrap:anywhere}.extraction-warning svg{width:15px;height:15px;margin-top:2px}.extraction-footnote{font-size:10px;color:var(--muted);line-height:1.65;margin-top:11px}.forecast-body{padding:20px 24px}.forecast-measures{display:flex;border:1px solid var(--border);border-radius:7px;padding:3px;gap:2px;background:#f8faf6}.forecast-measures .button{padding:6px 11px;font-size:11px;min-height:30px;border:0;background:transparent;color:var(--muted)}.forecast-measures .button.selected{background:#fff;box-shadow:0 1px 5px #163e3213;color:var(--green);font-weight:650}.forecast-year-summary,.forecast-month-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.forecast-year-summary>div,.forecast-month-summary>div{min-width:0}.forecast-year-summary>div+div,.forecast-month-summary>div+div{border-left:1px solid var(--border);padding-left:20px}.forecast-year-summary span,.forecast-month-summary span{display:block;font-size:11px;color:var(--muted)}.forecast-year-summary strong,.forecast-month-summary strong{display:block;font-size:24px;font-weight:600;line-height:1.35;font-variant-numeric:tabular-nums;letter-spacing:-.6px;margin-top:6px;overflow-wrap:anywhere}.forecast-year-summary small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.forecast-projected strong{font-weight:700}.forecast-legend{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px;font-size:10px;color:var(--muted)}.forecast-legend>span{display:flex;gap:7px;align-items:center}.forecast-legend i{display:inline-block;width:12px;height:9px;border-radius:2px;background:#377454}.forecast-legend i.expected{background:repeating-linear-gradient(45deg,#afd0ba,#afd0ba 2px,#eef5ec 2px,#eef5ec 4px);border:1px solid #789e82}.forecast-chart{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;position:relative;margin-top:12px;padding-left:15px}.forecast-zero{position:absolute;left:0;top:94px;font-size:9px;line-height:12px;color:var(--muted)}.forecast-month{appearance:none;border:0;border-radius:5px;padding:0;background:transparent;min-width:0;color:var(--muted)}.forecast-month:hover{background:#f5f8f2}.forecast-month.selected{background:#f0f5ec;box-shadow:inset 0 -2px 0 var(--green);color:var(--green)}.forecast-plot{display:block;position:relative;height:200px;background:linear-gradient(to bottom,transparent calc(50% - .5px),#d5dfd3 calc(50% - .5px),#d5dfd3 calc(50% + .5px),transparent calc(50% + .5px));margin:0 8px}.forecast-bar{position:absolute;width:27%;max-width:24px;min-height:0;border-radius:3px 3px 0 0;background:#377454}.forecast-bar.actual{right:53%}.forecast-bar.expected{left:53%;border:1px solid #78a085;background:repeating-linear-gradient(45deg,#b8d4bd,#b8d4bd 3px,#eef5ec 3px,#eef5ec 6px)}.forecast-bar.negative{border-radius:0 0 3px 3px}.forecast-bar.actual.negative{background:#b9695b}.forecast-bar.expected.negative{border-color:#bb8a77;background:repeating-linear-gradient(45deg,#e6bdb0,#e6bdb0 3px,#fcf0e9 3px,#fcf0e9 6px)}.forecast-month-label{display:block;text-align:center;font-size:10px;padding:9px 0;font-weight:550}.forecast-basis{font-size:10px;line-height:1.65;color:var(--muted);margin:13px 0 19px}.forecast-details{border-top:1px solid var(--border);padding-top:18px;scroll-margin-top:65px}.forecast-detail-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.forecast-detail-heading h3{font-size:14px}.forecast-month-summary strong{font-size:20px}.forecast-entry-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:17px;max-height:400px;overflow:auto;scrollbar-width:thin}.forecast-entry{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;min-width:0;border:1px solid var(--border);border-left:3px solid #9db29e;background:#fafcf8;border-radius:7px;padding:12px;text-align:left;color:var(--ink)}.forecast-entry:hover{background:#f0f5ec}.forecast-entry.actual{border-left-color:#377454;background:#fff}.forecast-entry-date{width:100%;font-size:9px;color:var(--muted)}.forecast-entry-main{flex:1;min-width:80px}.forecast-entry-main>strong{display:block;font-size:11px;overflow-wrap:anywhere}.forecast-entry-main>small{display:block;font-size:10px;color:var(--muted);margin-top:2px}.forecast-entry-amount{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.forecast-entry-badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.forecast-entry-badges .badge{font-size:9px;white-space:normal}.report-actual-metrics{margin-top:24px}
@media(max-width:760px){.forecast-body{padding:16px}.forecast-year-summary,.forecast-month-summary{gap:12px}.forecast-year-summary>div+div,.forecast-month-summary>div+div{padding-left:12px}.forecast-year-summary strong{font-size:20px}.forecast-year-summary small{font-size:9px}.forecast-entry-list{grid-template-columns:1fr}.forecast-plot{margin:0 3px}.forecast-chart{gap:3px}.forecast-bar{width:32%}.forecast-entry-amount{font-size:12px}.forecast-measures .button{padding:5px 9px}.forecast-month-summary strong{font-size:18px}.expense-source{padding:13px}.expense-existing-source{gap:7px}.expense-existing-source .button{padding:8px}.customer-tabs{gap:22px}}
@media(max-width:460px){.forecast-body{padding:14px}.forecast-year-summary,.forecast-month-summary{gap:8px}.forecast-year-summary>div+div,.forecast-month-summary>div+div{padding-left:8px}.forecast-year-summary strong,.forecast-month-summary strong{font-size:16px;letter-spacing:-.5px}.forecast-year-summary span,.forecast-month-summary span{font-size:10px;line-height:1.45}.forecast-year-summary small{font-size:9px;line-height:1.5}.forecast-legend{gap:9px;font-size:9px;margin-top:21px}.forecast-legend i{width:10px;height:8px}.forecast-chart{padding-left:11px;gap:2px}.forecast-plot{height:170px;margin:0 1px}.forecast-zero{top:79px;font-size:8px}.forecast-month-label{font-size:8px;padding:8px 0;letter-spacing:-.25px}.forecast-basis{font-size:9px}.forecast-detail-heading h3{font-size:12px}.forecast-detail-heading .badge{font-size:9px}.forecast-entry{padding:10px}.forecast-measures{margin-top:10px}.extraction-proposal{padding:9px}.extraction-proposal strong{font-size:11px}.extraction-progress>.button{margin-left:0}.expense-existing-source .button{font-size:10px}.expense-existing-source .button svg{display:none}.customer-tabs{gap:20px}.customer-tabs .button{font-size:11px}}
.extraction-result-heading{display:flex;gap:12px;align-items:center;justify-content:space-between}.extraction-result-heading>div{min-width:0}.extraction-result-heading>.button{font-size:10px;padding:6px 9px;min-height:32px;flex-shrink:0}.extraction-result-heading>.button svg{width:14px;height:14px}.extraction-result-heading p{font-size:10px}.expense-extraction{padding-top:12px;margin-top:12px}@media(max-width:460px){.extraction-result-heading{align-items:flex-start;flex-direction:column;gap:8px}.extraction-result-heading>.button{align-self:flex-end}.extraction-warning{font-size:10px;padding:8px}.expense-source-title{margin-bottom:11px}}

/* Originalbeleg und Eingabe bleiben beim Prüfen gemeinsam sichtbar. */
dialog.receipt-editor.has-receipt-preview{width:min(1160px,calc(100vw - 36px))}.receipt-workspace{display:block}.receipt-editor.has-receipt-preview .receipt-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,1fr);gap:25px;align-items:start}.receipt-editor-fields{min-width:0}.receipt-editor-fields>.field{margin-bottom:18px}.receipt-source-actions{display:flex;gap:9px;flex-wrap:wrap}.receipt-source-actions .button{font-size:11px;min-height:42px;padding:9px 12px;background:white}.receipt-source-actions .button:first-child{color:var(--green);border-color:#b8cdb9}.receipt-source-actions svg{width:17px;height:17px}.receipt-selected-name{display:block;overflow-wrap:anywhere;font-size:11px;color:var(--ink);margin-top:11px;font-weight:550}.receipt-source-hint{font-size:10px;color:var(--muted);margin-top:5px;line-height:1.65}.expense-source>button.ghost{padding:4px 0;font-size:10px;min-height:32px;margin-top:8px}.receipt-preview{position:sticky;top:0;min-width:0;background:#f0f3ed;border:1px solid #d6dfd4;border-radius:10px;overflow:hidden}.receipt-preview-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:13px 14px 5px}.receipt-preview-heading strong{font-size:12px}.receipt-preview-heading small{font-size:10px;color:var(--muted)}.receipt-preview-toolbar{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:2px 8px 7px}.receipt-preview-pages,.receipt-preview-zoom{display:flex;align-items:center;gap:3px}.receipt-preview-toolbar .button{padding:1px;width:34px;min-height:34px;line-height:1;font-size:20px;border:0}.receipt-preview-toolbar .button:disabled{opacity:.3}.receipt-page-label,.receipt-zoom-label{font-size:10px;font-variant-numeric:tabular-nums;white-space:nowrap}.receipt-zoom-label{min-width:37px;text-align:center}.receipt-preview-viewport{position:relative;overflow:auto;height:min(63dvh,680px);overscroll-behavior:contain;scrollbar-width:thin;background:#e5eae3;outline-offset:-3px}.receipt-preview-viewport img{display:block;width:100%;max-width:none;height:auto;background:#fff;user-select:none}.receipt-preview-message{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px;max-width:330px;padding:32px 24px;min-height:220px;margin:auto;font-size:12px;color:var(--muted);line-height:1.7}.receipt-preview-message .spinner{width:24px;height:24px}.receipt-editor .expense-existing-source{gap:7px}.receipt-editor .expense-existing-source>.button{font-size:10px;padding:8px}.receipt-editor .expense-source{padding:15px}.receipt-editor .expense-source-title h3{font-size:12px}.receipt-editor .expense-reference-field{padding:9px 11px;border:1px solid var(--border);background:#fafbf8;border-radius:7px;gap:3px}.receipt-editor .expense-reference-field label{font-size:10px;color:var(--muted)}.receipt-editor .expense-reference-field input{padding:0;min-height:24px;border:0;background:transparent;font-size:11px}.receipt-editor .expense-reference-field small{font-size:9px}
@media(max-width:760px){dialog.receipt-editor.has-receipt-preview{width:calc(100vw - 20px)}.receipt-editor.has-receipt-preview .receipt-workspace{display:flex;flex-direction:column;gap:16px}.receipt-editor-fields{width:100%}.receipt-preview{width:100%;top:-1px;z-index:2;box-shadow:0 5px 12px #1a362615;border-radius:8px}.receipt-preview-heading{padding:7px 10px 0}.receipt-preview-heading strong{font-size:10px}.receipt-preview-heading small{font-size:9px}.receipt-preview-toolbar{padding:0 5px 3px}.receipt-preview-toolbar .button{min-height:34px;width:34px}.receipt-preview-viewport{height:min(22dvh,185px)}.receipt-preview-message{min-height:140px;padding:15px;font-size:11px}.receipt-source-actions{gap:7px}.receipt-source-actions .button{flex:1;font-size:11px;padding:9px 8px;min-height:44px}.receipt-editor .expense-source{padding:12px;margin-bottom:15px}.receipt-editor .expense-source-title{margin-bottom:10px}.receipt-editor.has-receipt-preview .dialog-header p{display:none}.receipt-editor .dialog-header h2{font-size:18px}.receipt-editor .dialog-header{padding-top:13px;padding-bottom:13px}.receipt-editor .dialog-body{padding-top:14px}.receipt-editor .expense-existing-source>.field label{font-size:10px}.receipt-editor .expense-existing-source select{font-size:11px}.receipt-preview-viewport img{touch-action:pan-x pan-y pinch-zoom}.receipt-editor input:not([type=file]),.receipt-editor select{font-size:16px}}
@media(max-width:370px){.receipt-preview-heading small{display:none}.receipt-source-actions .button{font-size:10px}.receipt-source-actions svg{width:14px;height:14px}.receipt-editor .expense-existing-source{flex-wrap:wrap}.receipt-editor .expense-existing-source>.field{flex-basis:100%}.receipt-editor .expense-existing-source>.button{margin-left:auto}}
@media(max-width:760px){.receipt-editor .receipt-preview{top:-14px}.receipt-preview-toolbar .button{min-height:40px;width:40px}}
/* Year selection and receipt/forecast comparison remain usable with touch. */
.report-year-control{display:flex;gap:6px;align-items:center}.report-year-control .year-picker{min-width:154px;max-width:190px}.report-year-control>.button{font-size:23px;padding:4px;width:40px;min-height:41px}.forecast-month-control{display:flex;align-items:center;gap:12px;margin:18px 0 0;font-size:12px;color:var(--muted)}.forecast-month-control select{width:auto;min-width:160px;max-width:100%}.forecast-chart-scroll{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.report-mobile-months{display:none}.forecast-year-summary>div,.forecast-month-summary>div{min-width:0}.forecast-year-summary strong,.forecast-month-summary strong{overflow-wrap:anywhere}
@media(max-width:760px){.report-year-control{max-width:100%;margin-left:auto}.report-year-control>.button{width:44px;min-height:44px}.report-year-control .year-picker{min-height:44px;font-size:16px;min-width:156px}.forecast-panel>.panel-heading{flex-wrap:wrap;align-items:flex-start}.forecast-panel .forecast-measures{margin-top:0;width:100%;display:flex}.forecast-panel .forecast-measures>.button{flex:1;min-height:44px;font-size:12px}.forecast-chart-scroll{margin-top:12px;padding-bottom:4px;scrollbar-width:thin}.forecast-chart-scroll .forecast-chart{min-width:600px;gap:4px}.forecast-chart-scroll .forecast-month{min-width:44px}.forecast-chart-scroll .forecast-month-label{font-size:12px;padding:10px 0}.forecast-month-control select{font-size:16px;min-height:44px;flex:1}.forecast-year-summary,.forecast-month-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.forecast-year-summary>div+div,.forecast-month-summary>div+div{padding-left:0;border-left:0}.forecast-year-summary .forecast-projected,.forecast-month-summary .forecast-projected{grid-column:1/-1;padding:12px;background:var(--green-soft);border-radius:8px}.forecast-year-summary strong{font-size:22px}.forecast-year-summary span,.forecast-month-summary span{font-size:12px}.forecast-year-summary small{font-size:11px}.forecast-legend{font-size:11px;flex-wrap:wrap;gap:10px}.forecast-basis{font-size:11px;line-height:1.6}.forecast-entry{min-height:60px}.forecast-entry-date{font-size:11px}.forecast-entry-main{min-width:0;overflow-wrap:anywhere}.forecast-entry-main strong{font-size:13px}.forecast-entry-amount{font-size:13px}.report-desktop-months{display:none}.report-mobile-months{display:block;padding:18px}.report-mobile-months>select{font-size:16px;min-height:44px}.report-month-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.report-month-values .detail-value{font-size:17px;overflow-wrap:anywhere}.report-month-values .detail-label{font-size:11px}.report-actual-metrics .metric-value{overflow-wrap:anywhere}.forecast-details{scroll-margin-top:64px}}
@media(max-width:760px){.forecast-entry-list{max-height:none;overflow:visible}}
/* Receipt inbox keeps filing separate from expense booking. */
.receipt-inbox-row{display:grid;grid-template-columns:38px minmax(180px,1fr) auto;gap:15px;align-items:center;padding:19px 22px;border-bottom:1px solid var(--border)}.receipt-inbox-row:last-child{border-bottom:0}.receipt-inbox-icon{display:grid;place-items:center;width:36px;height:42px;border:1px solid #dce5d8;border-radius:6px;background:#f6f9f2;color:#6f8c75}.receipt-inbox-icon svg{width:18px;height:18px}.receipt-inbox-info{min-width:0}.receipt-inbox-info>.text-button{font-size:13px;text-align:left;font-weight:600;max-width:100%;overflow-wrap:anywhere}.receipt-inbox-info>.cell-subtitle{overflow-wrap:anywhere}.receipt-inbox-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:9px;font-size:10px;color:var(--muted)}.receipt-inbox-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;max-width:480px}.receipt-inbox-actions .button{font-size:10px;padding:8px 10px;min-height:38px}.receipt-inbox-assigned,.receipt-inbox-reason{font-size:11px;margin:8px 0 0;color:var(--muted);overflow-wrap:anywhere}.receipt-inbox-filters{margin-top:2px}.receipt-inbox-filters .record-count{font-variant-numeric:tabular-nums}.inbox-upload-fields>.receipt-source-hint{margin-bottom:24px}.inbox-upload-fields>.receipt-selected-name{padding-top:8px}.inbox-assignment-fields>.field{margin-bottom:20px}.inbox-expense-summary{display:grid;grid-template-columns:1fr 1fr;gap:19px;padding-top:20px;margin-top:20px;border-top:1px solid var(--border)}.inbox-expense-summary:empty{display:none}.inbox-preview-dialog .inbox-document-preview{position:static}.inbox-preview-dialog .receipt-preview-viewport{height:min(65dvh,800px)}.receipt-workspace>.form-error{grid-column:1/-1;width:100%}.finance-tabs .button{flex-shrink:0}
@media(max-width:1100px){.receipt-inbox-row{grid-template-columns:38px minmax(0,1fr)}.receipt-inbox-actions{grid-column:2;justify-content:flex-start;max-width:none}.receipt-inbox-actions .button{font-size:11px}.receipt-inbox-filters .record-count{font-size:10px}}
@media(max-width:760px){.receipt-inbox-row{padding:16px;gap:12px}.receipt-inbox-info>.text-button{font-size:12px}.receipt-inbox-actions{gap:6px}.receipt-inbox-actions .button{min-height:42px;font-size:10px;padding:8px 10px}.receipt-inbox-filters select{flex:1;min-width:170px}.inbox-upload-fields>.field,.inbox-assignment-fields>.field{margin-bottom:14px}.inbox-preview-dialog .receipt-preview-viewport{height:55dvh}.inbox-expense-summary{font-size:12px;gap:14px}.receipt-workspace>.form-error{flex-shrink:0}.receipt-inbox-filters .record-count{margin-top:0}.inbox-upload-dialog .receipt-preview-viewport{height:min(24dvh,195px)}}
@media(max-width:440px){.receipt-inbox-row{grid-template-columns:28px minmax(0,1fr)}.receipt-inbox-icon{width:28px;height:35px}.receipt-inbox-icon svg{width:15px}.receipt-inbox-actions{grid-column:1/-1}.receipt-inbox-actions .button{flex-grow:1}.receipt-inbox-actions .button:last-child{flex-basis:100%;justify-content:flex-start;padding-left:0}.receipt-inbox-info>.text-button{font-size:13px}.receipt-inbox-actions .button.ghost{background:transparent}.receipt-inbox-actions .button:first-child{flex-grow:0}.receipt-inbox-meta{gap:7px}.inbox-upload-fields>.receipt-source-actions{flex-wrap:wrap}}
.inbox-selected-supplier{grid-column:1/-1}
/* Combined payment ledger and explicit net/gross/tax comparison. */
.ledger-toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.ledger-toolbar>.field{flex:0 1 135px}.ledger-toolbar>.field:nth-child(3){flex-basis:205px}.ledger-toolbar>.field:nth-child(4){flex:1;min-width:190px}.ledger-toolbar .field label{font-size:11px;color:var(--muted)}.ledger-toolbar select,.ledger-toolbar input{min-height:42px;font-size:12px}.ledger-tools{display:flex;gap:7px}.ledger-tools .button{min-height:42px;font-size:11px}.ledger-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px 20px;border:1px solid var(--border);border-radius:10px;background:white;margin-bottom:19px}.ledger-summary>div{min-width:0}.ledger-summary span{display:block;font-size:11px;color:var(--muted)}.ledger-summary strong{display:block;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.4;margin-top:4px;overflow-wrap:anywhere}.tax-due{color:#9b611e}.tax-credit{color:#346aa2}.ledger-list-caption{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:9px}.ledger-table table{min-width:1110px;font-size:11px}.ledger-table th{font-size:9px;letter-spacing:.35px;white-space:normal;line-height:1.4;max-width:130px}.ledger-table th,.ledger-table td{padding:13px 12px}.ledger-table td:first-child{white-space:nowrap;font-variant-numeric:tabular-nums}.ledger-table td.ledger-document-cell{min-width:200px;max-width:270px}.ledger-document-cell>.text-button{font-size:11px;font-weight:600;text-align:left}.ledger-document-cell .cell-subtitle{overflow-wrap:anywhere}.ledger-document-cell .ledger-counterparty{font-size:11px;color:var(--ink)}.ledger-details-button.button{font-size:10px;min-height:36px;padding:7px}.ledger-total-row{background:#f2f6ef;font-weight:650}.ledger-tax-note{font-size:11px;line-height:1.65;color:var(--muted);margin:14px 0;max-width:1100px}.ledger-print-only{display:none}.ledger-results[aria-busy=true]{opacity:.65}.ledger-tools [aria-disabled=true]{opacity:.5;cursor:wait}.forecast-controls{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.forecast-bases{background:#eaf1e6;border-color:#d9e5d1}.forecast-tax-breakdown{margin-top:11px;padding-top:9px;border-top:1px solid var(--border);display:grid!important;gap:5px}.forecast-tax-breakdown>span{display:flex!important;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:10px!important;line-height:1.6}.forecast-tax-breakdown b{font-weight:500;white-space:nowrap;color:var(--ink)}.forecast-tax .forecast-bar.actual.positive{background:#b17c38}.forecast-tax .forecast-bar.actual.negative{background:#537ca3}.forecast-tax .forecast-bar.expected.positive{background:repeating-linear-gradient(45deg,#e1caa3,#e1caa3 3px,#faf5eb 3px,#faf5eb 6px);border-color:#b69b71}.forecast-tax .forecast-bar.expected.negative{background:repeating-linear-gradient(45deg,#bdd0df,#bdd0df 3px,#f0f7fb 3px,#f0f7fb 6px);border-color:#7b99b7}.forecast-tax .forecast-legend i.actual{background:#b17c38}.forecast-tax .forecast-legend i.expected{background:repeating-linear-gradient(45deg,#e1caa3,#e1caa3 3px,#faf5eb 3px,#faf5eb 6px);border-color:#b69b71}.forecast-tax .forecast-projected{background:#f8f5ed!important}
@media(max-width:1050px){.ledger-summary strong{font-size:21px}.ledger-toolbar>.field:nth-child(4){min-width:240px}}
@media(max-width:760px){.ledger-toolbar{gap:10px}.ledger-toolbar>.field{flex:1 1 110px}.ledger-toolbar>.field:nth-child(3){flex:1 1 170px}.ledger-toolbar>.field:nth-child(4){flex:1 1 100%;min-width:0}.ledger-toolbar input,.ledger-toolbar select{font-size:16px;min-height:44px}.ledger-tools{width:100%;justify-content:flex-end}.ledger-tools .button{min-height:44px;flex:0 1 100px}.ledger-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:16px 12px}.ledger-summary strong{font-size:21px}.ledger-summary span{font-size:11px;line-height:1.4}.ledger-table th,.ledger-table td{padding:12px 9px}.ledger-table td.ledger-document-cell{min-width:165px;max-width:190px;position:sticky;left:0;background:inherit}.ledger-table tbody tr{background:white}.ledger-table tbody tr.ledger-total-row{background:#f2f6ef}.ledger-table tbody tr:hover{background:#fafbf8}.ledger-table td.ledger-document-cell .text-button{min-height:36px}.ledger-table{scrollbar-width:thin;overscroll-behavior-x:contain}.ledger-table:focus-visible{outline:2px solid #4c8863;outline-offset:2px}.ledger-list-caption{font-size:10px;gap:10px}.forecast-controls{width:100%;align-items:stretch}.forecast-controls .forecast-measures{width:100%}.forecast-controls .forecast-measures>.button{flex:1;min-height:42px;font-size:12px}.forecast-tax-breakdown>span{font-size:10px!important}.ledger-tax-note{font-size:10px}.ledger-details-button.button{min-height:44px}}
@media print{@page ledger{size:A4 landscape;margin:12mm}body.ledger-page{background:white;color:black}body.ledger-page>.topbar,body.ledger-page>.main-navigation,body.ledger-page>.toast,body.ledger-page>.skip-link,body.ledger-page>dialog{display:none!important}body.ledger-page #main{padding:0!important;max-width:none!important}body.ledger-page #main>*:not(.ledger-print-only){display:none!important}body.ledger-page .ledger-print-only{display:block!important;page:ledger}body.ledger-page .ledger-print-only h1{font-size:19pt;margin-bottom:4mm}body.ledger-page .ledger-print-only p{font-size:9pt;margin:3mm 0}body.ledger-page .ledger-table{overflow:visible}body.ledger-page .ledger-table table{min-width:0!important;width:100%;font-size:8pt}body.ledger-page .ledger-table th,body.ledger-page .ledger-table td{padding:2.2mm 1.5mm;max-width:none;font-size:8pt}body.ledger-page .ledger-table th{font-size:7.5pt}body.ledger-page .ledger-table td.ledger-document-cell{min-width:0!important;max-width:58mm;position:static}body.ledger-page .ledger-table .cell-subtitle{font-size:7.5pt}body.ledger-page .ledger-table .ledger-counterparty{font-size:8pt}body.ledger-page .ledger-table tr{break-inside:avoid}body.ledger-page .ledger-table thead{display:table-header-group}body.ledger-page .ledger-print-note{font-size:8pt!important;line-height:1.5}}
.ledger-loading{padding:25px;color:var(--muted);font-size:12px}.ledger-summary:empty{display:none}
.expense-tax-editor{margin:22px 0;border-top:1px solid var(--border);padding-top:18px}.expense-tax-heading,.expense-tax-line-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.expense-tax-heading h3,.expense-tax-line-heading h4{margin:0;font-size:14px}.expense-tax-heading p{font-size:11px;color:var(--muted);margin:5px 0 0}.expense-tax-heading .button,.expense-tax-line-heading .button{font-size:11px;min-height:36px;white-space:normal}.expense-tax-lines{display:grid;gap:14px}.expense-tax-line{padding:16px;border:1px solid var(--border);border-radius:9px;background:#f7f9f5}.expense-tax-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.expense-tax-grid .field+.field{margin-top:0}.expense-tax-grid input[readonly]{background:#edf1e8;color:#355347}.expense-tax-rate-info{display:block;margin-top:5px;font-size:10px;color:var(--muted)}.expense-tax-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px 4px}.expense-tax-totals span{display:block;color:var(--muted);font-size:10px}.expense-tax-totals strong{display:block;margin-top:5px;font-size:16px}.expense-tax-warning{font-size:11px;color:#8b412c;margin:12px 0 0}.asset-filters{margin-bottom:18px}.asset-year-toolbar{margin-top:24px}.asset-year-toolbar>label{font-size:11px;color:var(--muted);display:flex;gap:12px;align-items:center}.asset-year-toolbar input{width:110px}.asset-bridge-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.asset-bridge-values .detail-value{font-variant-numeric:tabular-nums}.asset-bridge .notice{margin-top:18px}.asset-bridge>p{margin:18px 0 0;line-height:1.6}.asset-allocations{display:grid;gap:13px;margin-bottom:20px}.asset-allocation{padding:14px;border:1px solid var(--border);border-radius:8px;background:#f7f9f5;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}.asset-allocation>.field:first-child{grid-column:1/-1}.asset-allocation>.field+.field{margin-top:0}.asset-allocation>.button{grid-column:1/-1;justify-self:end;padding:4px 0;font-size:11px;min-height:28px}.asset-editor .form-grid{margin-bottom:22px}.asset-editor .check-field{margin:15px 0 20px}.asset-editor .expense-tax-heading{margin-top:20px}.asset-editor .field+.field{margin-top:14px}.asset-editor .form-grid .field+.field{margin-top:0}.asset-review{margin-top:20px}.asset-review ul{padding-left:16px;margin-bottom:0}.asset-expense-links{display:grid;gap:12px}.asset-expense-links .text-button{text-align:left;white-space:normal}.asset-detail .detail-grid{margin-bottom:18px}.asset-detail .form-section{margin-top:24px}.asset-detail .dialog-footer,.asset-editor .dialog-footer{flex-wrap:wrap}.asset-detail .dialog-footer .button{white-space:normal}.asset-bridge .detail-value.large{font-size:22px}
@media(max-width:900px){.asset-bridge-values{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.expense-tax-heading{align-items:flex-start}.expense-tax-heading h3{font-size:13px}.expense-tax-heading .button{max-width:145px;font-size:10px;padding:8px}.expense-tax-line{padding:12px}.expense-tax-grid{gap:12px 9px}.expense-tax-grid label{font-size:10px;min-height:28px;display:flex;align-items:flex-end}.expense-tax-grid input,.expense-tax-grid select{font-size:12px;padding:10px 8px}.expense-tax-grid select{max-width:100%}.expense-tax-totals strong{font-size:15px}.asset-bridge-values{gap:17px 12px}.asset-bridge-values .detail-label{font-size:10px}.asset-bridge .detail-value.large{font-size:19px}.asset-year-toolbar{gap:12px}.asset-year-toolbar .button{font-size:11px}.asset-editor .dialog-footer .button{font-size:11px;padding:10px;white-space:normal}.asset-allocation{padding:11px}.asset-allocation>.field:first-child select{font-size:11px}.asset-filters{flex-wrap:wrap}.asset-filters>.search-field{width:100%}.asset-filters>select{width:100%}}
.asset-print-document{display:none}@page asset-report{size:A4 landscape;margin:12mm}@media print{body.printing-assets>*{display:none!important}body.printing-assets>.asset-print-document{display:block!important;page:asset-report;margin:0;padding:0;color:#111;font-size:10pt}.asset-print-document h1{font-size:20pt;margin:5mm 0}.asset-print-document h2{font-size:13pt;margin:8mm 0 4mm}.asset-print-document header p,.asset-print-footer{font-size:9pt;color:#444}.asset-print-document .table-wrap{overflow:visible;border:0}.asset-print-document table{width:100%;min-width:0;font-size:9pt;border-collapse:collapse}.asset-print-document th,.asset-print-document td{padding:3mm 2mm;border-bottom:1px solid #ccc}.asset-print-document th{font-size:8pt;color:#222;white-space:normal}.asset-print-document tr{break-inside:avoid}.asset-print-document button.text-button{display:inline!important;border:0;padding:0;color:#111;font:inherit}.asset-print-document .button:not(.text-button){display:none!important}.asset-print-document .panel{box-shadow:none;border:0;margin-top:5mm}.asset-print-document .panel-heading{padding:0}.asset-print-document .panel-body{padding:4mm 0}.asset-print-document .asset-bridge-values{grid-template-columns:repeat(4,1fr)}.asset-print-document .asset-bridge .detail-value.large{font-size:14pt}.asset-print-document .detail-label{font-size:8pt}.asset-print-document .detail-grid{margin:6mm 0}.asset-print-document .notice{background:none;border:1px solid #bbb;break-inside:avoid}.asset-print-footer{margin-top:8mm}}
@media print{body.printing-assets,.asset-print-document{background:#fff!important}.asset-print-document .panel,.asset-print-document th{background:#fff!important}}
@media print{
  html{background:#fff!important}
  .asset-print-document{line-height:1.35}
  .asset-print-document h1{font-size:18pt;margin:3mm 0}
  .asset-print-document h2{font-size:12pt;margin:4mm 0 3mm;break-after:avoid}
  .asset-print-document p{margin:2mm 0;font-size:9pt}
  .asset-print-document th,.asset-print-document td{padding:2mm 1.5mm;font-size:8.5pt}
  .asset-print-document thead{display:table-header-group}
  .asset-print-document .panel{break-inside:avoid;margin-top:4mm}
  .asset-print-document .panel-body{padding:2mm 0}
  .asset-print-document .asset-bridge>p{margin-top:3mm;font-size:8pt}
  .asset-print-document .asset-print-footer{margin-top:4mm;font-size:8pt}
}
.main-navigation .navigation-more{margin-left:auto;flex-shrink:0;background:transparent;color:inherit;border:0;min-height:44px}.area-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.area-picker .button{justify-content:flex-start;text-align:left;white-space:normal;min-height:46px}.simple-mode-choice{display:flex;align-items:center;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid #d9e3dc;cursor:pointer}.simple-mode-choice input{width:20px;height:20px}.simple-mode-choice small{display:block;margin-top:5px;color:#56665e;font-weight:normal}.simple-tasks{display:flex;gap:10px;flex-wrap:wrap;padding:16px}.metrics.simple-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.simple-navigation .main-navigation{gap:0;justify-content:space-between}.simple-navigation .main-navigation a{padding:14px 8px;font-size:12px}.simple-navigation .main-navigation .navigation-more{padding:12px 8px;font-size:12px;margin-left:0}.metrics.simple-metrics{grid-template-columns:1fr}.simple-tasks{display:grid;grid-template-columns:1fr}.area-picker{grid-template-columns:1fr}.simple-navigation .page-heading .eyebrow{display:none}}
.simple-navigation #main>.panel+.panel{margin-top:20px}
/* Long forms scroll in their body; the title and actions retain their height. */
dialog .dialog-header,dialog .dialog-footer{flex-shrink:0}
dialog .dialog-body{min-height:0;flex:1 1 auto}
.optional-fields{margin-top:20px;border-top:1px solid var(--border);padding-top:14px}
.optional-fields-toggle.button{min-height:38px;padding:7px 11px;font-size:12px;background:transparent}
.optional-fields-content{margin-top:16px}.optional-fields-content[hidden]{display:none}
.optional-fields-content .discount-fields{margin:0}.simple-tasks-empty{margin:0;padding:8px;color:var(--muted);font-size:12px}
.receipt-capture-steps{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding-bottom:13px;margin-bottom:20px;font-size:11px;color:var(--muted)}.receipt-capture-steps .button{padding:5px 8px;min-height:32px;font-size:11px;color:var(--muted);background:transparent}.receipt-capture-steps [aria-current=step]{background:#edf3e9;color:var(--green);font-weight:650}dialog.receipt-editor.receipt-capture-select.has-receipt-preview{width:min(640px,calc(100vw - 36px))}.receipt-capture-select .expense-source{margin:0;border:0;background:transparent;padding:0}.receipt-capture-select .expense-source-title{margin-bottom:20px}.receipt-capture-select .expense-source-title h3{font-size:16px}.receipt-capture-select .receipt-source-actions .button{flex:1;justify-content:center;min-height:88px;flex-direction:column;gap:11px;font-size:13px;background:#f7faf4;border-color:#ceddca}.receipt-capture-select .receipt-source-actions svg{width:25px;height:25px}.receipt-capture-alternatives{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:17px}.receipt-capture-alternatives .button{font-size:11px;padding:5px 0;min-height:35px}.receipt-capture-source{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.receipt-capture-source>div{display:flex;gap:7px;align-items:center;flex:1;min-width:110px}.receipt-capture-source svg{width:16px;height:16px;flex-shrink:0}.receipt-capture-name{font-size:11px;font-weight:550;overflow-wrap:anywhere}.receipt-capture-source .button{font-size:10px;min-height:32px;padding:4px}.receipt-capture .expense-extraction{border-top:0;padding-top:0;margin:0 0 18px}.receipt-capture-summary{margin-right:auto;min-width:110px}.receipt-capture-summary strong,.receipt-capture-summary span{display:block}.receipt-capture-summary strong{font-size:14px;font-variant-numeric:tabular-nums}.receipt-capture-summary span{font-size:10px;color:var(--muted);margin-top:3px}.receipt-capture .dialog-footer{flex-wrap:wrap}.receipt-capture .dialog-footer>.button{font-size:12px;white-space:normal}.receipt-capture .dialog-footer>.ghost{font-size:11px}.receipt-capture .form-error{margin-top:16px}.receipt-capture-workspace[hidden],.receipt-capture .expense-source[hidden],.receipt-capture .expense-existing-source[hidden]{display:none}.receipt-capture .expense-tax-heading p{display:none}.expense-tax-compact .expense-tax-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expense-tax-compact .expense-tax-grid>.field:has([data-tax-deduction]){grid-column:1/-1}.expense-tax-compact-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:17px;padding-top:13px;border-top:1px solid var(--border)}.expense-tax-compact-summary span{display:block;font-size:10px;color:var(--muted)}.expense-tax-compact-summary strong{display:block;margin-top:5px;font-size:14px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.expense-tax-compact .expense-tax-line>.ghost{margin:7px 0 0;padding:3px 0;min-height:31px;font-size:11px}.expense-tax-compact .expense-tax-details{margin-top:12px}.expense-tax-compact .expense-tax-details[hidden],.expense-tax-compact .expense-tax-line-heading[hidden],.expense-tax-compact .expense-tax-totals[hidden],.expense-tax-compact .field[hidden]{display:none}
@media(max-width:760px){.receipt-capture-steps{gap:6px;margin-bottom:14px;padding-bottom:10px;font-size:10px}.receipt-capture-steps .button{font-size:10px;padding:4px 6px}dialog.receipt-editor.receipt-capture-select.has-receipt-preview{width:calc(100vw - 20px)}.receipt-capture-select .receipt-source-actions .button{font-size:12px;min-height:92px}.receipt-capture-alternatives{align-items:flex-start;gap:14px}.receipt-capture-alternatives .button{font-size:11px;white-space:normal;text-align:left}.receipt-capture-summary{flex-basis:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0}.receipt-capture-summary span{margin:0;font-size:10px}.receipt-capture .dialog-footer{gap:7px;padding:12px 16px}.receipt-capture .dialog-footer>.button{min-height:40px;padding:8px;font-size:11px}.receipt-capture .dialog-footer>.ghost{font-size:10px}.receipt-capture .expense-tax-grid label{font-size:11px;min-height:20px}.receipt-capture .expense-tax-grid input,.receipt-capture .expense-tax-grid select{font-size:16px}.receipt-capture .receipt-preview{position:relative;top:auto}.receipt-capture .receipt-preview-viewport{height:min(23dvh,190px)}.receipt-capture .receipt-preview:focus-within{position:sticky;top:0}.receipt-capture-source{gap:7px}.receipt-capture-source>div{flex-basis:100%}.receipt-capture-source>.button{padding:3px 0}.expense-tax-compact-summary strong{font-size:13px}}
@media(max-width:640px){body.simple-navigation .metrics.simple-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}body.simple-navigation .simple-metrics .metric{padding:12px 9px;min-width:0}body.simple-navigation .simple-metrics .metric-value{font-size:clamp(14px,4vw,20px);overflow-wrap:anywhere}body.simple-navigation .simple-metrics .metric-top{font-size:11px}body.simple-navigation .simple-metrics .metric-icon{display:none}body.simple-navigation .simple-metrics .metric-caption{font-size:10px}}

.invoice-import-source{padding:14px 16px;background:var(--surface-soft,#f1f5f2);border-radius:12px;margin-bottom:16px;overflow-wrap:anywhere}.invoice-import-source h3{margin:0 0 6px}.invoice-import-source p{margin:4px 0;font-size:.88rem}.invoice-import-confirm{display:flex;gap:12px;align-items:flex-start;margin:16px 0;padding:14px;border:1px solid #aec7b9;border-radius:10px}.invoice-import-confirm input{flex:0 0 20px;width:20px;height:20px;margin-top:2px}.invoice-import-customer-summary{padding:10px 0 16px;overflow-wrap:anywhere}.invoice-import-customer-summary small{color:var(--muted,#64736b)}
