:root{--bg:#f6f4ee;--panel:#ffffff;--panel-muted:#faf8f3;--line:#d8d3c9;--line-soft:#ece7dd;--text:#1f3148;--muted:#7f8ba0;--accent:#3f8f8a;--accent-strong:#267672;--accent-soft:#eef6f5;--danger:#e26057;--danger-soft:#fff0ee;--warning:#d89a2e;--warning-soft:#fff8ea;--success:#4f928c;--success-soft:#edf7f5;--draft:#b7bcc7;--draft-soft:#f3f4f6;--shadow:none;color-scheme:light}*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Avenir Next,Segoe UI,sans-serif;color:var(--text);background:#f8f6f1}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:.82rem .9rem;background:#fff;color:var(--text)}textarea{resize:vertical}a:focus-visible,button:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid rgba(63,143,138,.2);outline-offset:2px;border-color:var(--accent)}label{display:grid;grid-gap:.45rem;gap:.45rem}.page-shell{width:min(1180px,calc(100% - 2rem));margin:0 auto}.auth-shell{min-height:100vh;padding:2rem 0}.auth-layout,.auth-shell{display:grid;align-items:center}.auth-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,430px);grid-gap:2rem;gap:2rem}.auth-copy h1,.ledger-client-card h3,.ledger-modal-header h2,.ledger-page-header h1,.ledger-panel h3,.ledger-stat-card strong,.panel-header h2{margin:0;font-family:Avenir Next,Segoe UI,sans-serif;font-weight:600}.auth-copy{display:grid;grid-gap:1rem;gap:1rem}.auth-copy h1{font-size:clamp(2.8rem,6vw,4.6rem);line-height:.96}.auth-switch,.hero-text,.ledger-client-card p,.ledger-client-meta span,.ledger-empty-state p,.ledger-logo-upload p,.ledger-page-header p,.ledger-recent-row p,.ledger-reminder-copy p,.ledger-settings-card p,.ledger-subtitle{color:var(--muted);line-height:1.55}.auth-card,.ledger-client-card,.ledger-panel,.ledger-reminder-card,.ledger-settings-card,.ledger-stat-card,.ledger-table-panel,.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.auth-card{padding:1.5rem;display:grid;grid-gap:1rem;gap:1rem}.ledger-panel-head,.ledger-settings-card-head,.ledger-subsection-head,.panel-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.auth-switch{margin:0}.auth-switch a{color:var(--accent-strong)}.banner{margin:0;padding:.9rem 1rem;border-radius:10px;border:1px solid transparent}.success-banner{background:var(--success-soft);color:var(--success);border-color:rgba(79,146,140,.18)}.error-banner{background:var(--danger-soft);color:var(--danger);border-color:rgba(226,96,87,.18)}.ledger-toast-stack{position:fixed;right:1.2rem;bottom:1.2rem;z-index:1000;max-width:min(420px,calc(100vw - 2.4rem));pointer-events:none}.ledger-toast{margin:0;padding:.88rem 1rem;border-radius:10px;border:1px solid transparent;box-shadow:0 10px 24px rgba(31,49,72,.16);font-size:.93rem;line-height:1.45;background:#fff}.ledger-toast.is-success{background:var(--success-soft);color:var(--success);border-color:rgba(79,146,140,.3)}.ledger-toast.is-error{background:var(--danger-soft);color:var(--danger);border-color:rgba(226,96,87,.3)}.ledger-button,.ledger-inline-button,.ledger-mini-button,.ledger-signout,.ledger-text-link-button,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:8px;border:1px solid transparent;transition:background .14s ease,color .14s ease,border-color .14s ease,transform .14s ease}.ledger-button:hover,.ledger-inline-button:hover,.ledger-mini-button:hover,.ledger-signout:hover,.ledger-text-link-button:hover,.primary-button:hover{transform:translateY(-1px)}.ledger-button{padding:.72rem 1rem;font-size:.92rem;font-weight:600;line-height:1}.ledger-button-primary,.primary-button{background:var(--accent);color:#fff;border-color:rgba(38,118,114,.3);padding:.72rem 1rem}.ledger-button-primary:hover,.primary-button:hover{background:var(--accent-strong);border-color:rgba(38,118,114,.45)}.ledger-button:disabled,.ledger-table-icon-button:disabled,.primary-button:disabled{opacity:.55;cursor:not-allowed}.ledger-button-secondary{background:var(--accent-soft);color:var(--accent-strong);border-color:rgba(63,143,138,.32);padding:.72rem 1rem}.ledger-button-secondary:hover{background:#e3f0ee;border-color:rgba(63,143,138,.46)}.ledger-button-ghost,.ledger-inline-button,.ledger-signout{background:transparent;color:var(--text);border-color:var(--line);padding:.68rem .92rem}.ledger-mini-button{background:#fff;border-color:var(--line);color:var(--text);padding:.54rem .72rem;font-size:.92rem}.ledger-text-link-button{background:transparent;border:none;padding:0;color:var(--text)}.full-button,.ledger-button-full{width:100%}.ledger-shell{min-height:100vh;display:grid;grid-template-columns:254px minmax(0,1fr);transition:grid-template-columns .16s ease}.ledger-shell.is-collapsed{grid-template-columns:78px minmax(0,1fr)}.ledger-sidebar{position:-webkit-sticky;position:sticky;top:0;align-self:start;min-height:100dvh;display:grid;grid-template-rows:auto auto 1fr auto;grid-gap:.72rem;gap:.72rem;padding:.95rem .45rem .88rem;overflow:hidden;border-right:1px solid var(--line-soft);background:#faf8f3}.ledger-brand{min-height:32px;display:flex;align-items:center;gap:.45rem;padding:0 .72rem}.ledger-brand-mark{color:#6c7aa0;font-family:Georgia,serif;font-size:.72rem}.ledger-brand-name{font-size:1.03rem;font-weight:600;line-height:1;white-space:nowrap}.ledger-kicker,.ledger-sidebar-section-label{text-transform:uppercase;letter-spacing:.28em;font-size:.68rem;color:#7f8ba0;font-family:SFMono-Regular,Consolas,monospace}.ledger-sidebar-section-label{min-height:14px;display:flex;align-items:center;padding:0 .72rem}.ledger-kicker-danger{color:var(--danger)}.ledger-nav{display:grid;grid-gap:.2rem;gap:.2rem;align-content:start}.ledger-nav-link{height:38px;display:flex;align-items:center;gap:.56rem;padding:0 .72rem;border-radius:6px;color:var(--text);font-size:.98rem;font-weight:500}.ledger-nav-group{display:grid;grid-gap:.16rem;gap:.16rem}.ledger-nav-trigger{width:100%;border:none;background:transparent;text-align:left}.ledger-nav-caret{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:transform .16s ease}.ledger-nav-group.is-open .ledger-nav-caret{transform:rotate(180deg)}.ledger-nav-children{display:grid;grid-gap:.16rem;gap:.16rem;padding-left:1.38rem}.ledger-nav-sublink{height:34px;display:flex;align-items:center;gap:.56rem;padding:0 .72rem;border-radius:6px;color:var(--muted);font-size:.92rem;font-weight:500}.ledger-nav-sublink.is-active{background:rgba(31,49,72,.04);color:var(--accent-strong)}.ledger-nav-group:not(.is-open) .ledger-nav-children{display:none}.ledger-nav-link.is-active{background:rgba(31,49,72,.045);color:var(--accent-strong)}.ledger-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 16px}.ledger-button svg,.ledger-client-meta svg,.ledger-icon-button svg,.ledger-inline-button svg,.ledger-logo-dropzone svg,.ledger-mini-button svg,.ledger-nav-icon,.ledger-nav-icon svg,.ledger-reminder-badge svg,.ledger-table-icon svg,.primary-button svg{width:16px;height:16px}.ledger-nav-label{line-height:1;white-space:nowrap}.ledger-sidebar-footer{display:grid;grid-gap:.55rem;gap:.55rem;padding:0 .72rem;color:var(--muted);font-size:.74rem;font-family:SFMono-Regular,Consolas,monospace}.ledger-sidebar-footer p{margin:0}.ledger-shell.is-collapsed .ledger-brand{display:grid;place-items:center;width:100%;padding-inline:0}.ledger-shell.is-collapsed .ledger-brand-name,.ledger-shell.is-collapsed .ledger-nav-caret,.ledger-shell.is-collapsed .ledger-nav-children,.ledger-shell.is-collapsed .ledger-nav-label,.ledger-shell.is-collapsed .ledger-sidebar-footer{display:none}.ledger-shell.is-collapsed .ledger-sidebar-section-label{visibility:hidden}.ledger-shell.is-collapsed .ledger-nav{width:100%;justify-items:center}.ledger-shell.is-collapsed .ledger-nav-link,.ledger-shell.is-collapsed .ledger-nav-sublink{display:grid;place-items:center;width:40px;margin-inline:auto;padding-inline:0}.ledger-main{min-width:0}.ledger-topbar{height:44px;display:flex;align-items:center;padding:0 .95rem;border-bottom:1px solid var(--line-soft)}.ledger-icon-button,.ledger-table-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--text)}.ledger-table-icon-button{padding:0}.ledger-content{width:min(1060px,calc(100% - 2rem));margin:0 auto;padding:1.65rem 0 2.1rem;display:grid;grid-gap:1.05rem;gap:1.05rem}.ledger-page-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.ledger-page-header h1{font-size:clamp(2rem,3.1vw,2.6rem);font-weight:700}.ledger-page-header p{margin:.32rem 0 0;font-size:.98rem}.ledger-section-title{margin:.28rem 0 0;font-size:1.22rem;font-weight:600}.ledger-section-title+p{margin:.38rem 0 0}.ledger-page-header-stack{margin-bottom:.2rem}.ledger-action-row,.ledger-form-actions,.ledger-header-actions,.ledger-icon-actions,.ledger-settings-actions,.ledger-toolbar-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.ledger-toolbar{display:grid;grid-gap:.75rem;gap:.75rem}.ledger-toolbar-row{display:flex;gap:.75rem;align-items:center}.ledger-search-field{position:relative;flex:1 1}.ledger-search-field svg{position:absolute;left:.9rem;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted)}.ledger-search-field span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.ledger-search-field input{padding-left:2.65rem}.ledger-card-grid,.ledger-dashboard-grid,.ledger-stat-grid{display:grid;grid-gap:.95rem;gap:.95rem}.ledger-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ledger-dashboard-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr)}.ledger-overview-grid{align-items:stretch}.ledger-overview-panel{min-height:314px}.ledger-overview-chart-panel{padding-right:1.1rem}.ledger-overview-chart{min-height:248px;grid-template-columns:58px minmax(0,1fr);gap:.9rem;padding-top:.15rem}.ledger-overview-chart-scale{padding-bottom:1.35rem}.ledger-overview-chart-bars{position:relative;padding:0 .15rem 1.35rem .1rem}.ledger-overview-chart-bars:before{content:"";position:absolute;inset:0 .15rem 1.35rem 0;background-image:repeating-linear-gradient(90deg,rgba(216,211,201,.7) 0 4px,transparent 4px 8px),repeating-linear-gradient(90deg,rgba(236,231,221,.9) 0 4px,transparent 4px 8px),repeating-linear-gradient(90deg,rgba(236,231,221,.9) 0 4px,transparent 4px 8px),repeating-linear-gradient(90deg,rgba(236,231,221,.9) 0 4px,transparent 4px 8px);background-size:100% 1px,100% 1px,100% 1px,100% 1px;background-repeat:no-repeat;background-position:0 calc(100% - 1px),0 75%,0 50%,0 25%;pointer-events:none}.ledger-overview-chart-bars .ledger-chart-column{position:relative;z-index:1;gap:.5rem}.ledger-overview-chart-bars .ledger-chart-column span{color:#5f6980;font-size:.86rem}.ledger-overview-chart-bars .ledger-chart-bar{max-width:40px;border-radius:4px 4px 0 0}.ledger-overview-recent-panel{padding-bottom:.85rem}.ledger-overview-recent-list{gap:0}.ledger-overview-recent-row{padding:1rem 0}.ledger-overview-recent-copy{display:grid;grid-gap:.18rem;gap:.18rem}.ledger-overview-recent-copy strong{font-family:SFMono-Regular,Consolas,monospace;font-weight:500;letter-spacing:-.03em}.ledger-overview-recent-copy p{margin:0;font-size:.93rem}.ledger-overview-recent-meta{min-width:214px;display:flex;align-items:center;justify-content:flex-end;gap:1rem}.ledger-overview-recent-amount{min-width:128px;text-align:right}.ledger-panel,.ledger-settings-card,.ledger-stat-card,.ledger-table-panel{padding:1.12rem 1.18rem}.ledger-stat-card{display:grid;grid-gap:.45rem;gap:.45rem}.ledger-stat-card strong{font-size:clamp(1.72rem,2vw,2rem);font-family:SFMono-Regular,Consolas,monospace;font-weight:500;letter-spacing:-.03em}.ledger-stat-card>span{color:var(--muted);text-transform:uppercase;letter-spacing:.28em;font-size:.68rem;font-family:SFMono-Regular,Consolas,monospace}.ledger-chart{display:grid;grid-template-columns:58px minmax(0,1fr);grid-gap:.95rem;gap:.95rem;align-items:end;min-height:232px}.ledger-chart-scale{height:100%;display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:.76rem;font-family:SFMono-Regular,Consolas,monospace}.ledger-chart-bars{height:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.9rem;gap:.9rem;align-items:end}.ledger-chart-column{display:grid;grid-gap:.45rem;gap:.45rem;justify-items:center}.ledger-chart-column span{color:var(--muted);font-size:.82rem}.ledger-chart-bar{width:100%;max-width:44px;border-radius:6px 6px 0 0}.tone-paid{background:#3e8a84}.tone-pending{background:#d7a844}.tone-overdue{background:#cf3837}.tone-draft{background:#b8bdc7}.ledger-receipt-archive,.ledger-recent-list,.ledger-reminder-list{display:grid;grid-gap:.75rem;gap:.75rem}.ledger-recent-row{display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;grid-gap:1rem;gap:1rem;padding:.82rem 0;border-bottom:1px solid var(--line-soft);align-items:center}.ledger-recent-row:last-child{border-bottom:none}.ledger-client-card h3,.ledger-panel-head h3,.ledger-recent-row strong,.ledger-reminder-copy strong{font-size:1.06rem}.ledger-recent-row>div:last-child strong,.ledger-reminder-amount,.ledger-table td:first-child strong,.ledger-table td:nth-child(5) strong{font-family:SFMono-Regular,Consolas,monospace;letter-spacing:-.03em;font-weight:500}.ledger-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:68px;padding:.26rem .58rem;border-radius:999px;font-size:.78rem;text-transform:lowercase;border:1px solid transparent}.status-paid{background:var(--success-soft);color:var(--success);border-color:rgba(79,146,140,.22)}.status-pending{background:var(--warning-soft);color:var(--warning);border-color:rgba(216,154,46,.25)}.status-overdue{background:var(--danger-soft);color:var(--danger);border-color:rgba(226,96,87,.22)}.status-draft{background:var(--draft-soft);color:#7c8795;border-color:rgba(183,188,199,.35)}.ledger-table{width:100%;border-collapse:collapse}.ledger-table td,.ledger-table th{padding:.88rem .9rem;border-top:1px solid var(--line-soft);text-align:left;vertical-align:middle}.ledger-table thead th{padding-top:0;border-top:none;color:var(--muted);font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;font-family:SFMono-Regular,Consolas,monospace}.ledger-table-stack{display:grid;grid-gap:.22rem;gap:.22rem}.ledger-table-stack strong{font-size:.98rem}.ledger-table-stack span{color:var(--muted);font-size:.82rem;line-height:1.35}.ledger-table-row-current td{background:rgba(62,138,132,.08)}.ledger-document-share-panel,.ledger-document-viewer{display:grid;grid-gap:1rem;gap:1rem}.ledger-document-frame-shell{overflow:hidden;border:1px solid var(--line-soft);border-radius:10px;background:#fff}.ledger-document-frame{width:100%;min-height:980px;border:0;background:#fff}.ledger-icon-actions{justify-content:flex-end}.ledger-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ledger-client-card{padding:1.12rem 1.18rem;display:grid;grid-gap:.9rem;gap:.9rem}.ledger-client-card-head{display:flex;justify-content:space-between;gap:1rem}.ledger-client-meta{display:grid;grid-gap:.65rem;gap:.65rem;padding:.4rem 0 1rem;border-bottom:1px solid var(--line-soft)}.ledger-client-meta div{display:flex;gap:.55rem;align-items:center}.ledger-client-footer{color:var(--muted);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase}.ledger-form-stack,.ledger-settings-stack{display:grid;grid-gap:1rem;gap:1rem}.ledger-form-grid{display:grid;grid-gap:.9rem;gap:.9rem}.ledger-form-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-field span{color:var(--text);font-size:.68rem;text-transform:uppercase;letter-spacing:.28em;font-family:SFMono-Regular,Consolas,monospace}.ledger-field-full{grid-column:1/-1}.ledger-receipt-summary,.ledger-subsection{display:grid;grid-gap:.8rem;gap:.8rem;padding:.95rem;border:1px solid var(--line-soft);border-radius:10px;background:var(--panel-muted)}.ledger-line-items,.ledger-receipt-select-list{display:grid;grid-gap:.75rem;gap:.75rem}.ledger-line-item-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 104px 44px;grid-gap:.7rem;gap:.7rem}.ledger-icon-text-button{border:none;background:transparent;color:var(--muted);font-size:1.2rem}.ledger-form-footer{display:grid;grid-gap:1rem;gap:1rem}.ledger-form-message{margin:0;font-size:.86rem}.ledger-form-message-error{color:var(--danger)}.ledger-receipt-summary,.ledger-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ledger-summary-grid{display:grid;grid-gap:.75rem;gap:.75rem;padding:.95rem;border-radius:10px;background:var(--panel-muted);border:1px solid var(--line-soft)}.ledger-receipt-summary span,.ledger-summary-grid span{color:var(--muted);display:block;margin-bottom:.32rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.28em;font-family:SFMono-Regular,Consolas,monospace}.ledger-receipt-option{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(180px,220px) auto;grid-gap:.95rem;gap:.95rem;align-items:center;padding:.9rem 1rem;border:1px solid var(--line);border-radius:10px;background:#fff}.ledger-receipt-option.is-selected{border-color:rgba(63,143,138,.5);background:var(--accent-soft)}.ledger-receipt-option-toggle{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:.85rem;gap:.85rem;align-items:flex-start}.ledger-receipt-option-copy{display:grid;grid-gap:.18rem;gap:.18rem}.ledger-receipt-option-copy strong{font-size:.96rem}.ledger-receipt-option-copy span:last-child{color:var(--muted);font-size:.8rem;line-height:1.4}.ledger-receipt-option input[type=checkbox]{width:18px;height:18px}.ledger-receipt-amount-field{display:grid;grid-gap:.38rem;gap:.38rem}.ledger-receipt-amount-field span{color:var(--text);font-size:.68rem;text-transform:uppercase;letter-spacing:.28em;font-family:SFMono-Regular,Consolas,monospace}.ledger-receipt-amount-field input{width:100%}.ledger-receipt-option-side{display:grid;grid-gap:.18rem;gap:.18rem;justify-items:end;text-align:right}.ledger-panel-muted-copy{padding-inline:0}.ledger-settings-card{display:grid;grid-gap:.9rem;gap:.9rem}.ledger-settings-link-card{align-items:center}.ledger-settings-link-row{display:flex;justify-content:space-between;gap:1rem;align-items:center}.ledger-settings-link-row p{max-width:660px}.ledger-logo-upload{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:stretch;padding:.85rem;border:1px solid var(--line-soft);border-radius:12px;background:linear-gradient(140deg,#fff,#faf8f3)}.ledger-logo-dropzone{min-height:188px;display:grid;justify-items:center;align-content:center;grid-gap:.7rem;gap:.7rem;text-align:center;border:2px dashed rgba(63,143,138,.35);border-radius:12px;background:#fff;padding:1rem;transition:border-color .14s ease,background .14s ease}.ledger-logo-dropzone:hover{border-color:rgba(63,143,138,.58);background:#f8fcfb}.ledger-logo-dropzone-preview{width:112px;height:112px;display:grid;place-items:center;border:1px solid var(--line-soft);border-radius:14px;background:var(--panel-muted);overflow:hidden}.ledger-logo-dropzone-preview img{width:100%;height:100%;object-fit:contain;padding:.6rem;background:#fff}.ledger-logo-dropzone-preview svg{width:24px;height:24px;color:var(--accent-strong)}.ledger-logo-dropzone-copy{display:grid;grid-gap:.2rem;gap:.2rem}.ledger-logo-dropzone-copy strong{font-size:.94rem}.ledger-logo-dropzone-copy span{color:var(--muted);font-size:.8rem}.ledger-logo-upload-copy{display:grid;grid-gap:.42rem;gap:.42rem;align-content:start;padding:.2rem .35rem}.ledger-logo-upload-copy strong{font-size:1rem}.ledger-logo-status{margin:0}.ledger-logo-dropzone input{display:none}.ledger-empty-state,.ledger-setup-panel{padding:1.5rem;display:grid;grid-gap:.9rem;gap:.9rem}.ledger-reminder-groups{display:grid;grid-gap:1.5rem;gap:1.5rem}.ledger-reminder-group{display:grid;grid-gap:.8rem;gap:.8rem}.ledger-reminder-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-gap:1rem;gap:1rem;align-items:center;padding:.95rem 1.05rem}.ledger-reminder-card.is-overdue{border-color:rgba(226,96,87,.3);background:#fffdfd}.ledger-reminder-badge{width:48px;height:48px;display:grid;place-items:center;border-radius:999px;background:var(--danger-soft);color:var(--danger)}.ledger-reminder-badge.is-upcoming{background:var(--warning-soft);color:var(--warning)}.ledger-reminder-copy span{color:var(--muted);font-weight:500}.ledger-overdue-pill{display:inline-flex;align-items:center;padding:.25rem .65rem;margin-left:.6rem;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-size:.8rem}.ledger-reminder-amount{font-size:1.24rem;font-family:SFMono-Regular,Consolas,monospace}.ledger-reminder-actions{display:flex;align-items:center;gap:.75rem}.ledger-receipt-card{display:grid;grid-gap:.85rem;gap:.85rem}.ledger-receipt-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.ledger-receipt-card-header{display:grid;grid-gap:.25rem;gap:.25rem}.ledger-receipt-card-actions{justify-content:flex-end}.ledger-receipt-meta{display:flex;flex-wrap:wrap;gap:.6rem;color:var(--muted)}.ledger-receipt-meta span{padding:.3rem .58rem;border:1px solid var(--line-soft);border-radius:999px;background:var(--panel-muted);font-size:.78rem}.ledger-modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:1rem;background:rgba(15,23,42,.62)}.ledger-modal-window{width:min(960px,100%);max-height:min(90vh,880px);display:grid;grid-template-rows:auto minmax(0,1fr);background:#fff;border-radius:12px;box-shadow:0 24px 50px rgba(15,23,42,.18);overflow:hidden}.ledger-modal-window.is-compact{width:min(780px,100%)}.ledger-modal-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--line-soft)}.ledger-modal-close{width:34px;height:34px;border-radius:8px;border:none;background:transparent;color:var(--muted)}.ledger-modal-body{overflow:auto;padding:1.5rem}.ledger-setup-steps{display:grid;grid-gap:.55rem;gap:.55rem;color:var(--muted)}.ledger-template-editor,.ledger-template-library,.ledger-template-page-stack,.ledger-template-picker,.ledger-template-stage{display:grid;grid-gap:1rem;gap:1rem}.ledger-template-summary-card{align-content:start}.ledger-template-summary-count{font-family:SFMono-Regular,Consolas,monospace;font-size:clamp(1.58rem,2vw,1.9rem);font-weight:500;letter-spacing:-.03em}.ledger-template-summary-label{font-family:Avenir Next,Segoe UI,sans-serif;font-size:1.08rem;font-weight:600;line-height:1.35}.ledger-template-summary-note{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.ledger-template-defaults-card{gap:1.1rem}.ledger-template-defaults-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.ledger-template-studio{gap:1.1rem}.ledger-template-studio-overview{padding:1.5rem 1.5rem 1.25rem}.ledger-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.ledger-template-picker.is-compact .ledger-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.ledger-template-choice{display:grid;grid-gap:.8rem;gap:.8rem;padding:.95rem;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:left}.ledger-template-choice.is-selected{border-color:rgba(63,143,138,.5);background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgba(63,143,138,.22)}.ledger-template-choice-copy{display:grid;grid-gap:.35rem;gap:.35rem}.ledger-template-picker.is-compact .ledger-template-choice{padding:.8rem;gap:.65rem}.ledger-template-choice-copy p,.ledger-template-library-card p,.ledger-template-selection-note p{margin:0;color:var(--muted);line-height:1.5}.ledger-template-selection-note{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.ledger-template-studio-grid{display:grid;grid-template-columns:1fr;grid-gap:1rem;gap:1rem}.ledger-template-library-list,.ledger-template-order-list{display:grid;grid-gap:.75rem;gap:.75rem}.ledger-template-library-card,.ledger-template-order-row{border:1px solid var(--line-soft);border-radius:12px;background:var(--panel-muted)}.ledger-template-library-card{display:grid;grid-gap:.85rem;gap:.85rem;padding:.9rem}.ledger-template-library-card.is-selected{border-color:rgba(63,143,138,.45);background:var(--accent-soft);box-shadow:inset 0 0 0 1px rgba(63,143,138,.18)}.ledger-template-library-open{display:grid;grid-gap:.8rem;gap:.8rem;padding:0;border:none;background:transparent;text-align:left}.ledger-template-library-open .ledger-template-canvas{padding:.7rem}.ledger-template-library-card-copy{display:grid;grid-gap:.35rem;gap:.35rem}.ledger-template-library-card .ledger-action-row,.ledger-template-order-row{justify-content:space-between}.ledger-template-order-row{display:flex;gap:1rem;align-items:center;padding:.9rem 1rem}.ledger-template-studio .ledger-mini-button{padding:.45rem .65rem;font-size:.86rem}.ledger-template-studio .ledger-inline-button{padding:.62rem .85rem}.ledger-template-studio .ledger-button-primary,.ledger-template-studio .ledger-button-secondary{padding:.72rem 1rem}.ledger-template-library .ledger-field>span{display:none}.ledger-template-library .ledger-field{gap:.25rem}.ledger-template-library .ledger-field input[type=search]{padding:.6rem .8rem;border-radius:8px}.ledger-template-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.ledger-toggle-field{display:flex;align-items:center;gap:.7rem;padding:.9rem 1rem;border:1px solid var(--line-soft);border-radius:12px;background:var(--panel-muted)}.ledger-toggle-field input{width:18px;height:18px;padding:0}.ledger-template-canvas{padding:.85rem;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(246,244,238,.98));border:1px solid var(--line-soft)}.ledger-template-picker.is-compact .ledger-template-canvas{padding:.7rem}.ledger-template-canvas.is-stage{padding:.85rem}.ledger-template-sheet{display:grid;grid-gap:.75rem;gap:.75rem;min-height:220px;padding:.9rem;border-radius:var(--template-radius);background:var(--template-bg);font-family:var(--template-body-font)}.ledger-template-picker.is-compact .ledger-template-sheet{min-height:150px;padding:.75rem;gap:.55rem}.ledger-template-picker.is-compact .ledger-template-sections{max-height:74px;overflow:hidden}.ledger-template-canvas.is-stage .ledger-template-sheet{min-height:230px;padding:.85rem;gap:.6rem}.ledger-template-canvas.is-stage .ledger-template-sections{gap:.5rem}.ledger-template-canvas.is-stage .ledger-template-panel{padding:.65rem .7rem;gap:.22rem}.ledger-template-editor,.ledger-template-stage{gap:.75rem}.ledger-template-canvas.is-compact .ledger-template-sheet{gap:.55rem}.ledger-template-hero{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.ledger-template-canvas.is-title-center .ledger-template-hero{text-align:center}.ledger-template-canvas.is-title-right .ledger-template-hero{text-align:right}.ledger-template-title-block{display:grid;grid-gap:.25rem;gap:.25rem}.ledger-template-canvas.is-title-center .ledger-template-title-block{margin:0 auto}.ledger-template-canvas.is-title-right .ledger-template-title-block{margin-left:auto}.ledger-template-logo{width:26px;height:26px;display:block;border-radius:999px;background:var(--template-accent);margin-bottom:.55rem}.ledger-template-panel span,.ledger-template-tag{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:var(--template-accent)}.ledger-template-business,.ledger-template-panel strong,.ledger-template-title-block strong{font-family:var(--template-heading-font)}.ledger-template-business,.ledger-template-title-block strong{display:block;font-size:1rem}.ledger-template-muted{color:var(--muted);font-size:.82rem}.ledger-template-sections{display:grid;grid-gap:.65rem;gap:.65rem}.ledger-template-panel{display:grid;grid-gap:.3rem;gap:.3rem;padding:.75rem .8rem;border-radius:calc(var(--template-radius) * .8);border:1px solid rgba(31,49,72,.08);background:var(--template-panel)}.ledger-template-panel strong{font-size:.92rem}.ledger-template-items-table{width:100%;border-collapse:collapse;font-family:var(--template-body-font);font-size:.86rem}.ledger-template-items-table th{text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:var(--template-accent);font-weight:600;text-align:left;padding-bottom:.35rem}.ledger-template-items-table td{padding:.12rem .2rem .18rem;border-bottom:1px solid rgba(31,49,72,.06);vertical-align:top}.ledger-template-items-table tr:last-child td{border-bottom:none}.ledger-template-items-table .num{text-align:right;white-space:nowrap}.ledger-template-totals-grid{display:grid;grid-gap:.35rem;gap:.35rem}.ledger-template-totals-row{display:grid;grid-template-columns:1fr auto;grid-gap:.6rem;gap:.6rem;align-items:baseline}.ledger-template-totals-label{font-family:var(--template-heading-font);text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;color:var(--template-accent)}.ledger-template-totals-value{text-align:right;font-family:var(--template-body-font)}.ledger-template-totals-value-strong{font-weight:700}@media (max-width:1080px){.ledger-shell{grid-template-columns:220px minmax(0,1fr)}.ledger-content{width:min(100%,calc(100% - 1.5rem))}.ledger-card-grid,.ledger-stat-grid,.ledger-template-studio-grid,.ledger-template-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-dashboard-grid,.ledger-template-studio-grid{grid-template-columns:1fr}}@media (max-width:820px){.auth-layout,.ledger-card-grid,.ledger-form-grid-two,.ledger-receipt-summary,.ledger-shell,.ledger-stat-grid,.ledger-summary-grid{grid-template-columns:1fr}.ledger-shell{display:block}.ledger-sidebar{position:static;min-height:auto;grid-template-rows:auto;border-right:none;border-bottom:1px solid var(--line-soft)}.ledger-brand-name,.ledger-nav-label,.ledger-sidebar-section-label{display:initial}.ledger-sidebar-footer{display:grid}.ledger-nav{grid-template-columns:1fr}.ledger-nav-children{padding-left:1.18rem}.ledger-nav-link,.ledger-nav-sublink{justify-content:flex-start}.ledger-logo-upload,.ledger-page-header,.ledger-reminder-card,.ledger-settings-link-row,.ledger-template-defaults-grid,.ledger-toolbar-row{grid-template-columns:1fr;display:grid}.ledger-receipt-card-top,.ledger-reminder-card{align-items:flex-start}.ledger-receipt-card-top{display:grid}.ledger-document-frame{min-height:680px}.ledger-line-item-row,.ledger-receipt-option{grid-template-columns:1fr}.ledger-receipt-option-side{justify-items:start;text-align:left}.ledger-chart{grid-template-columns:1fr}.ledger-chart-scale{display:none}.ledger-overview-chart-bars{padding-inline:0}.ledger-overview-recent-meta{min-width:0;justify-content:space-between}.ledger-overview-recent-amount{min-width:0;text-align:left}.ledger-action-row,.ledger-form-actions,.ledger-header-actions,.ledger-reminder-actions,.ledger-settings-actions,.ledger-template-library-card,.ledger-template-order-row,.ledger-template-selection-note,.ledger-toolbar-actions,.ledger-toolbar-row{flex-direction:column;align-items:stretch}.ledger-template-grid,.ledger-template-toggle-grid{grid-template-columns:1fr}.ledger-table-panel{overflow-x:auto}.ledger-table{min-width:720px}}.ledger-brand-assets-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.ledger-brand-asset-card{display:grid;grid-gap:.7rem;gap:.7rem;padding:.9rem;border:1px solid var(--line-soft);border-radius:12px;background:linear-gradient(146deg,#ffffff,#f8f6f1)}.ledger-brand-asset-head{display:grid;grid-gap:.2rem;gap:.2rem}.ledger-brand-asset-head span{color:var(--muted);font-size:.82rem}.ledger-brand-dropzone{min-height:168px}.ledger-logo-dropzone-preview.is-signature{width:100%;height:86px;border-radius:10px;background:#fff}.ledger-logo-dropzone-preview.is-signature img{width:100%;height:100%;object-fit:contain;padding:.45rem}.ledger-field-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.ledger-template-style-list{display:grid;grid-gap:.7rem;gap:.7rem}.ledger-template-style-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,190px);grid-gap:.75rem;gap:.75rem;align-items:center;padding:.75rem .9rem;border:1px solid var(--line-soft);border-radius:12px;background:var(--panel-muted)}.ledger-template-style-row .ledger-field{gap:.2rem}.ledger-template-style-row .ledger-field>span{display:none}.ledger-template-sheet{grid-template-rows:auto 1fr auto}.ledger-template-sections{align-content:start}.ledger-template-panel.is-table{border-color:rgba(31,49,72,.18)}.ledger-template-panel.is-bordered{border-color:rgba(31,49,72,.08)}.ledger-template-panel.is-none{border:none;background:transparent;padding:0;border-radius:0}.ledger-template-detail-table{width:100%;border-collapse:collapse;font-size:.82rem}.ledger-template-detail-table td,.ledger-template-detail-table th{padding:.18rem .2rem;border-bottom:1px solid rgba(31,49,72,.08);text-align:left;vertical-align:top}.ledger-template-detail-table th{width:34%;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;color:var(--template-accent)}.ledger-template-detail-table tr:last-child td,.ledger-template-detail-table tr:last-child th{border-bottom:none}.ledger-template-detail-list{display:grid;grid-gap:.28rem;gap:.28rem}.ledger-template-detail-list-row{display:grid;grid-gap:.08rem;gap:.08rem}.ledger-template-detail-list-row span{text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;color:var(--template-accent)}.ledger-template-detail-list-row strong{font-size:.86rem}.ledger-template-footer{display:flex;justify-content:space-between;gap:.9rem;align-items:flex-end;padding-top:.45rem}.ledger-template-signature-block{display:grid;grid-gap:.22rem;gap:.22rem;min-width:120px}.ledger-template-signature-box{min-height:38px;border-bottom:1px solid rgba(31,49,72,.24);display:grid;align-items:end}.ledger-template-signature-box img{max-height:36px;max-width:140px;object-fit:contain}.ledger-template-generator-print,.ledger-template-signature-label,.ledger-template-signature-placeholder{color:var(--muted);font-size:.66rem;letter-spacing:.04em}.ledger-template-generator-print{text-align:right}@media (max-width:820px){.ledger-brand-assets-grid,.ledger-template-style-row{grid-template-columns:1fr}.ledger-template-footer{align-items:flex-start;flex-direction:column}.ledger-template-generator-print{text-align:left}}.ledger-system-wordmark,.ledger-wordmark{display:inline-flex;align-items:baseline;gap:.02em;letter-spacing:-.01em;line-height:1;font-family:Avenir Next,Segoe UI,sans-serif;font-weight:700;text-transform:none}.ledger-brand .ledger-wordmark{font-size:1.03rem}.ledger-system-wordmark{margin:0;font-size:.98rem}.ledger-wordmark-ledger{color:#111111}.ledger-wordmark-x{color:#22a447}.ledger-shell.is-collapsed .ledger-wordmark-ledger{display:none}.ledger-shell.is-collapsed .ledger-wordmark{font-size:1.16rem}.ledger-filter-row{flex-wrap:wrap;gap:.62rem}.ledger-filter-row select{width:170px;min-width:150px;padding:.58rem .75rem}.ledger-filter-button{min-height:38px;padding:.58rem .82rem;font-size:.86rem;font-weight:600;border-radius:8px}.ledger-filter-button svg{width:14px;height:14px}.ledger-filter-button-apply{color:#ffffff;background:#2f8f5b;border-color:#2a7f51}.ledger-filter-button-apply:hover{background:#267648;border-color:#226a41}.ledger-filter-button-clear{color:#2f3f58;background:#edf1f6;border-color:#cdd6e2}.ledger-filter-button-clear:hover{background:#e2e9f2;border-color:#bcc9d8}@media (max-width:820px){.ledger-filter-row .ledger-filter-button,.ledger-filter-row select{width:100%}}.ledger-template-hero{padding:.75rem .8rem}.ledger-template-footer{padding:.45rem .8rem 0}.ledger-template-canvas.is-stage .ledger-template-hero,.ledger-template-picker.is-compact .ledger-template-hero{padding:.62rem .7rem}.ledger-template-footer{margin-top:0;padding:.75rem .8rem}.ledger-template-canvas.is-stage .ledger-template-footer,.ledger-template-picker.is-compact .ledger-template-footer{padding:.62rem .7rem}.ledger-template-hero.is-boxed{padding:.75rem .8rem}.ledger-template-footer.is-boxed{margin-top:0;padding:.75rem .8rem}.ledger-template-footer.is-plain,.ledger-template-hero.is-plain{margin-top:0;padding:0}.ledger-template-canvas.is-stage .ledger-template-footer.is-boxed,.ledger-template-canvas.is-stage .ledger-template-hero.is-boxed,.ledger-template-picker.is-compact .ledger-template-footer.is-boxed,.ledger-template-picker.is-compact .ledger-template-hero.is-boxed{padding:.62rem .7rem}.ledger-template-canvas.is-stage .ledger-template-footer.is-plain,.ledger-template-canvas.is-stage .ledger-template-hero.is-plain,.ledger-template-picker.is-compact .ledger-template-footer.is-plain,.ledger-template-picker.is-compact .ledger-template-hero.is-plain{padding:0}