:root{--navy:#1a2535;--navy-light:#243044;--navy-dark:#111a27;--orange:#e5a00d;--orange-hover:#f0b429;--orange-glow:rgba(229,160,13,0.15);--orange-glow-strong:rgba(229,160,13,0.28);--bg:#f8fafc;--bg-soft:#f1f5f9;--panel:#ffffff;--panel-raised:#fbfdff;--ink:#334155;--ink-strong:var(--navy);--muted:#64748b;--muted-2:#94a3b8;--line:#e2e8f0;--line-strong:#cbd5e1;--primary:var(--orange);--primary-dark:#b77908;--primary-soft:rgba(229,160,13,0.13);--blue:#3b82f6;--blue-soft:#eff6ff;--warning:#b77908;--warning-soft:#fff7dc;--danger:#b4232b;--danger-soft:#fff1f2;--success:#166534;--success-soft:#ecfdf3;--shadow-xs:0 1px 3px rgba(17,26,39,0.08);--shadow-sm:0 8px 24px rgba(17,26,39,0.08);--shadow-md:0 18px 56px rgba(17,26,39,0.14);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--sidebar:var(--navy);--sidebar-2:var(--navy-dark);--focus:0 0 0 4px rgba(229,160,13,0.20)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:radial-gradient(circle at top left,rgba(229,160,13,.12),transparent 30rem),radial-gradient(circle at top right,rgba(59,130,246,.08),transparent 34rem),linear-gradient(135deg,var(--bg) 0,#ffffff 46%,var(--bg-soft) 100%);color:var(--ink);font-family:Aptos,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:"tnum" 1,"ss01" 1;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,select,textarea{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}::selection{background:rgba(229,160,13,.24)}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.sidebar{background:radial-gradient(circle at 20% 0,rgba(229,160,13,.14),transparent 18rem),linear-gradient(180deg,rgba(255,255,255,.05),transparent 18rem),linear-gradient(180deg,var(--sidebar) 0,var(--sidebar-2) 100%);border-right:1px solid rgba(255,255,255,.08);color:#ecf8f5;display:flex;flex-direction:column;gap:24px;height:100vh;padding:24px 20px;position:sticky;top:0}.brand{align-items:center;display:flex;gap:12px;min-height:54px}.brand span{align-items:center;background:linear-gradient(145deg,var(--navy-light),var(--navy-dark));border:1px solid rgba(229,160,13,.38);border-radius:10px;box-shadow:0 12px 32px rgba(229,160,13,.16);color:var(--orange);display:inline-flex;font-weight:900;height:44px;justify-content:center;letter-spacing:.03em;width:44px}.brand strong{color:#ffffff;font-size:1rem;letter-spacing:.01em}.sidebar-top{align-items:center;display:flex;justify-content:space-between}.nav-toggle{align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);color:#ecf8f5;cursor:pointer;display:none;height:42px;justify-content:center;width:42px}.nav-toggle:hover{background:rgba(255,255,255,.14)}.sidebar-logout-form{margin-top:auto}.sidebar nav{display:grid;gap:7px}.sidebar nav a,.sidebar-card,.sidebar-foot{align-items:center;border-radius:var(--radius-md);display:flex;gap:11px}.sidebar nav a{color:#cbd5e1;min-height:42px;padding:0 12px;position:relative}.sidebar nav a:before{background:linear-gradient(180deg,var(--orange),var(--orange-hover));border-radius:999px;bottom:10px;content:"";left:0;opacity:0;position:absolute;top:10px;transform:scaleY(.4);width:3px}.sidebar nav a:hover{background:rgba(255,255,255,.07);color:#ffffff;transform:translateX(2px)}.sidebar nav a.active{background:rgba(229,160,13,.13);color:#ffffff;font-weight:800}.sidebar nav a.active:before{opacity:1;transform:scaleY(1)}.sidebar-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);margin-top:auto;padding:14px}.sidebar-card-icon{align-items:center;background:rgba(229,160,13,.16);border:1px solid rgba(229,160,13,.35);border-radius:var(--radius-sm);color:var(--orange-hover);display:inline-flex;height:38px;justify-content:center;width:38px}.sidebar-card span,.sidebar-foot{color:#94a3b8;font-size:.86rem}.sidebar-card strong{color:#ffffff;display:block;margin-top:2px}.sidebar-foot{opacity:.82;padding:0 12px}.content{animation:page-in .26s ease both;margin:0 auto;max-width:1480px;min-width:0;padding:28px clamp(18px,3vw,40px) 40px;width:100%}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-head{align-items:flex-start;display:flex;gap:18px;justify-content:space-between;margin-bottom:20px}.page-head h1{color:var(--ink-strong);font-size:clamp(1.45rem,2vw,1.85rem);font-weight:800;letter-spacing:-.015em;line-height:1.12;margin:0 0 5px}.page-head p{color:var(--muted);font-size:.9rem;line-height:1.5;margin:0;max-width:680px}.actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.btn{align-items:center;background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--ink);cursor:pointer;display:inline-flex;font-size:.94rem;font-weight:800;gap:8px;justify-content:center;min-height:42px;padding:0 14px;white-space:nowrap}.btn:hover{background:#ffffff;border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn:focus-visible,.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--focus);outline:none}.btn.primary{background:linear-gradient(180deg,var(--orange-hover),var(--orange));border-color:rgba(229,160,13,.88);color:var(--navy-dark);box-shadow:0 10px 24px rgba(229,160,13,.2)}.btn.primary:hover{background:linear-gradient(180deg,#f5c451,var(--orange-hover));box-shadow:0 14px 30px rgba(229,160,13,.3)}.confirm-backdrop{align-items:center;background:rgba(17,26,39,.42);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:80}.confirm-dialog{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:grid;gap:14px;max-width:440px;padding:22px;width:min(100%,440px)}.confirm-icon{align-items:center;background:var(--warning-soft);border:1px solid rgba(183,121,8,.22);border-radius:var(--radius-md);color:var(--warning);display:inline-flex;height:44px;justify-content:center;width:44px}.confirm-copy{display:grid;gap:6px}.confirm-copy h2{color:var(--ink-strong);font-size:1.15rem;line-height:1.2;margin:0}.confirm-copy p{color:var(--muted);line-height:1.55;margin:0}.confirm-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:4px}.grid{display:grid;gap:18px}.stats{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}.notice,.panel{background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.92);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stat-card.tone-amber{--tone-bg:#fff8ef;--tone-fg:#c2680c;--tone-edge:#f6e1c5}.stat-card.tone-rose{--tone-bg:#fdf3f2;--tone-fg:#c43b32;--tone-edge:#f4d4d1}.stat-card.tone-blue{--tone-bg:#eff4ff;--tone-fg:#2f6fed;--tone-edge:#d2defb}.stat-card.tone-green{--tone-bg:#eefaf2;--tone-fg:#1f9d57;--tone-edge:#cbeed7}.stat-card{background:var(--tone-bg,rgba(255,255,255,.82));border:1px solid var(--tone-edge,rgba(226,232,240,.92));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:block;height:100%;min-height:108px;overflow:hidden;padding:16px 18px;position:relative;transition:transform .18s ease,box-shadow .18s ease}.stat-watermark{color:var(--tone-fg,var(--primary));opacity:.16;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.stat-watermark svg{height:62px;width:62px}.stat-label{color:var(--tone-fg,var(--muted));font-size:.76rem;letter-spacing:.05em;line-height:1.25;margin-bottom:8px;text-transform:uppercase}.stat-label,.stat-value{display:block;font-weight:800;position:relative;z-index:1}.stat-value{color:var(--ink-strong);font-size:clamp(1.45rem,2.2vw,1.75rem);letter-spacing:-.01em;line-height:1.05;overflow-wrap:anywhere}.stat-sub{color:var(--muted);display:block;font-size:.82rem;margin-top:6px;position:relative;z-index:1}.stat-card-link{cursor:pointer;text-decoration:none}.stat-card-link:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card-link:focus-visible{box-shadow:var(--focus),var(--shadow-md);outline:none;transform:translateY(-2px)}.panel{overflow:hidden;padding:22px}.panel h2{color:var(--ink-strong);font-size:1.1rem;font-weight:800;letter-spacing:-.01em;margin:0 0 14px}.notice{background:var(--warning-soft);border-color:rgba(154,106,6,.28);color:#604200;padding:20px}.success-notice{background:var(--success-soft);border-color:rgba(22,111,69,.22);color:var(--success);margin-bottom:18px}.notice strong{display:block;font-size:1.05rem;margin-bottom:6px}.notice p{line-height:1.5;margin:8px 0}.actions form{display:inline-flex}.notice code{background:rgba(154,106,6,.1);border:1px solid rgba(154,106,6,.1);border-radius:var(--radius-sm);padding:2px 6px}.table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);overflow-x:auto}.table-scroll{max-height:min(58vh,540px);overflow:auto}.table-scroll thead th{background:#f8fafc;position:sticky;top:0;z-index:2}.customers-table-wrap{max-height:min(58vh,540px);overflow:auto}.customers-table-wrap thead th{background:#f8fafc;position:sticky;top:0;z-index:2}.customers-table{table-layout:fixed}.customer-col-company{width:18%}.customer-col-contact{width:26%}.customer-col-address{width:31%}.customer-col-status{width:11%}.customer-col-docs{width:14%}.stacked-cell{display:grid;gap:4px;min-width:0}.stacked-cell span,.stacked-cell strong{min-width:0;overflow-wrap:anywhere}.stacked-cell span{color:var(--muted);font-size:.9rem;line-height:1.3}.stacked-cell.compact{gap:2px}.document-groups{display:grid;gap:12px}.document-group{background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.92);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.document-group.has-open-total{background:linear-gradient(90deg,rgba(255,247,220,.92),rgba(255,255,255,.88) 28%);border-color:rgba(183,121,8,.26)}.document-group.is-settled{border-color:rgba(22,101,52,.14)}.document-summary{align-items:center;cursor:pointer;display:grid;gap:14px;list-style:none;padding:16px 18px}.document-summary::-webkit-details-marker{display:none}.document-summary:before{color:var(--primary-dark);content:"›";font-size:1.2rem;font-weight:900;line-height:1;margin-right:2px;transform:rotate(0deg);transition:transform .18s ease}.document-group[open] .document-summary:before{transform:rotate(90deg)}.document-summary{grid-template-columns:auto minmax(0,1fr) auto}.document-summary-main{display:grid;gap:4px;min-width:0}.document-summary-main strong{color:var(--ink-strong);font-size:1rem;overflow-wrap:anywhere}.document-summary-main span{color:var(--muted);font-size:.84rem;font-weight:800}.status-counts{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.status-counts .badge,.status-counts.badge{font-size:.72rem;min-height:24px;padding-inline:8px}.document-summary-stats .status-counts{justify-content:flex-start;margin-top:0}.document-summary-stats{align-items:center;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(136px,136px));justify-content:end}.document-stat{display:grid;gap:3px;justify-items:end;min-width:136px;text-align:right}.document-stat small{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.document-stat strong{color:var(--ink-strong);font-feature-settings:"tnum" 1;white-space:nowrap}.open-stat{border:1px solid transparent;border-radius:var(--radius-md);padding:7px 9px}.open-stat.is-open{background:var(--warning-soft);border-color:rgba(183,121,8,.25)}.open-stat.is-open small,.open-stat.is-open strong{color:var(--warning)}.open-stat.is-paid{background:var(--success-soft);border-color:rgba(22,101,52,.16)}.open-stat.is-paid small,.open-stat.is-paid strong{color:var(--success)}.group-table{border-bottom:0;border-left:0;border-radius:0;border-right:0}table{border-collapse:collapse;table-layout:auto;width:100%}thead{background:#f8fafc}td,th{border-bottom:1px solid var(--line);padding:11px clamp(8px,.8vw,14px);text-align:left;vertical-align:middle}tbody tr{background:rgba(255,255,255,.6)}tbody tr:hover{background:rgba(229,160,13,.05)}tbody tr.clickable-row{cursor:pointer}tbody tr.clickable-row td{padding:0}tbody tr.clickable-row .row-cell-link{color:inherit;display:block;height:100%;padding:11px clamp(8px,.8vw,14px);text-decoration:none}tbody tr.clickable-row .row-link.row-cell-link{color:var(--primary-dark)}td.amount .row-cell-link{font-feature-settings:"tnum" 1;text-align:right;white-space:nowrap}tbody tr:last-child td{border-bottom:0}th{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}td strong{color:var(--ink-strong)}.amount{font-feature-settings:"tnum" 1;text-align:right}.amount,.badge{font-weight:900;white-space:nowrap}.badge{align-items:center;background:var(--blue-soft);border:1px solid rgba(50,105,169,.13);border-radius:999px;color:var(--blue);display:inline-flex;font-size:.78rem;min-height:28px;padding:0 10px}.status-teilbezahlt{background:var(--warning-soft);border-color:rgba(154,106,6,.18);color:var(--warning)}.status-active,.status-angenommen,.status-bezahlt{background:var(--success-soft);border-color:rgba(22,111,69,.16);color:var(--success)}.status-abgelaufen,.status-abgelehnt,.status-storniert,.status-ueberfaellig{background:var(--danger-soft);border-color:rgba(166,61,64,.16);color:var(--danger)}.status-archived{background:var(--bg-soft);border-color:var(--line-strong);color:var(--muted)}.form-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-section-title{border-bottom:1px solid var(--line);color:var(--ink-strong);font-size:1rem;grid-column:1/-1;margin:4px 0 0;padding-bottom:10px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field span{color:var(--muted);font-size:.84rem;font-weight:850}.field input,.field select,.field textarea{background:#ffffff;border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);min-height:42px;padding:9px 11px;width:100%}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--line-strong)}.field input[readonly],.field textarea[readonly]{background:#f8fafc;color:var(--muted)}.field textarea{line-height:1.45;min-height:96px;resize:vertical}.payment-insight{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,250,252,.94)),var(--panel);border:1px solid rgba(229,160,13,.18);border-radius:var(--radius-lg);box-shadow:0 12px 30px rgba(17,26,39,.07),inset 0 1px 0 rgba(255,255,255,.8);display:grid;gap:12px;padding:14px}.payment-insight.full{grid-column:1/-1}.payment-insight__header{align-items:start;display:flex;gap:14px;justify-content:space-between}.payment-insight__balance,.payment-insight__header>div:first-child{display:grid;gap:4px}.payment-insight .eyebrow,.payment-insight__balance span,.payment-insight__grid span{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.payment-insight__header strong{color:var(--ink-strong);font-size:1rem;font-weight:900}.payment-insight__header small{color:var(--muted);font-weight:700}.payment-insight__balance{background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);min-width:190px;padding:10px 12px;text-align:right}.payment-insight__balance strong{color:var(--primary-dark);font-size:1.18rem;font-weight:900}.payment-insight__progress{background:var(--line);border-radius:999px;box-shadow:inset 0 1px 2px rgba(17,26,39,.15);height:9px;overflow:hidden;position:relative}.payment-insight__progress span{background:linear-gradient(90deg,var(--navy),var(--navy-light));border-radius:inherit;bottom:0;left:0;position:absolute;top:0;transition:width .18s ease,left .18s ease}.payment-insight__progress .payment-insight__progress-after{background:linear-gradient(90deg,var(--orange),var(--orange-hover))}.payment-insight__grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.payment-insight__grid>div{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);display:grid;gap:5px;min-width:0;padding:10px}.payment-insight__grid strong{color:var(--ink-strong);font-size:1rem;font-weight:900;white-space:nowrap}.payment-insight__grid .is-live{background:var(--primary-soft);border-color:rgba(229,160,13,.44);box-shadow:inset 0 0 0 1px rgba(229,160,13,.1),var(--shadow-xs)}.payment-insight__grid .is-live strong{color:var(--primary-dark)}.payment-insight__hint,.payment-insight__warning{border-radius:var(--radius-md);font-size:.9rem;font-weight:700;margin:0;padding:9px 10px}.payment-insight__hint{background:rgba(255,255,255,.72);color:var(--muted)}.payment-insight__warning{background:var(--danger-soft);border:1px solid rgba(180,35,43,.18);color:var(--danger)}.checkbox-field{align-items:center;display:flex;gap:10px}.checkbox-field input{height:18px;min-height:18px;width:18px}.search-panel{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(180px,240px) auto;margin-bottom:22px}.search-field{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:var(--radius-md);display:flex;gap:10px;min-height:46px;padding:0 12px}.search-field:focus-within{box-shadow:var(--focus)}.search-field input,.search-field select{border:0;min-height:0;padding-inline:0}.search-field input:focus,.search-field select:focus{box-shadow:none}.back-link{align-items:center;color:var(--muted);display:inline-flex;font-size:.9rem;font-weight:850;gap:6px;margin-bottom:10px}.back-link:hover{color:var(--primary-dark)}.row-link{font-weight:850}.row-link,.row-link:hover{color:var(--primary-dark);text-decoration:none}.row-link.subtle{color:var(--ink);font-weight:inherit}.row-link.subtle:hover{color:var(--primary-dark);text-decoration:none}.detail-grid{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) minmax(0,340px);margin-bottom:22px}.detail-head{align-items:center;display:flex;gap:14px;justify-content:space-between;margin-bottom:18px}.detail-head h2{margin:0}.detail-grid+.panel,.grid+.panel,.panel+.panel{margin-top:22px}.def-list{display:grid;gap:14px;margin:0}.def-list>div{border-bottom:1px solid var(--line);display:grid;gap:4px;grid-template-columns:150px minmax(0,1fr);padding-bottom:14px}.def-list>div:last-child{border-bottom:0;padding-bottom:0}.def-list dt{color:var(--muted);font-size:.9rem;font-weight:850}.def-list dd{color:var(--ink-strong);margin:0}.note-block{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.note-block span{color:var(--muted);display:block;font-size:.9rem;font-weight:850;margin-bottom:6px}.note-block p{line-height:1.5;margin:0;white-space:pre-wrap}.mini-stats{display:grid;gap:12px}.mini-stats>div{display:grid;gap:4px}.mini-stats span{color:var(--muted);font-size:.84rem;font-weight:850}.mini-stats strong{color:var(--ink-strong);font-size:1.18rem;letter-spacing:-.01em}.empty{color:var(--muted);margin:0}.summary{display:grid;gap:10px}.summary-row{align-items:baseline;display:flex;justify-content:space-between}.summary-row span{color:var(--muted);font-weight:850}.summary-row strong{color:var(--ink-strong);font-feature-settings:"tnum" 1}.summary-row.total{border-top:1px solid var(--line);margin-top:4px;padding-top:12px}.summary-row.total span,.summary-row.total strong{color:var(--ink-strong);font-size:1.05rem;letter-spacing:-.01em}.summary-row.open strong{color:var(--primary-dark)}.invoice-form{gap:18px}.positions{display:grid;gap:14px}.position-card{background:var(--panel-raised);border:1px solid var(--line);border-radius:var(--radius-md);padding:16px}.position-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.position-no{color:var(--muted);font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.icon-btn{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--danger);cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:36px}.icon-btn:hover:not(:disabled){background:var(--danger-soft);border-color:rgba(166,61,64,.3)}.icon-btn:disabled{color:var(--muted-2);cursor:not-allowed;opacity:.6}.position-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.position-grid .field.full{grid-column:1/-1}.position-total{align-items:baseline;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;margin-top:14px;padding-top:12px}.position-total span{color:var(--muted);font-size:.9rem;font-weight:850}.position-total strong{color:var(--ink-strong);font-feature-settings:"tnum" 1;font-size:1.1rem}.sidebar-logout{align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#cbd5e1;cursor:pointer;display:flex;gap:11px;min-height:42px;padding:0 12px;width:100%}.sidebar-logout:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#ffffff}.auth-shell{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:rgba(255,255,255,.94);border:1px solid rgba(226,232,240,.92);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:400px;padding:clamp(24px,3vw,32px);width:100%}.auth-brand{align-items:center;display:flex;gap:12px;margin-bottom:22px}.auth-brand span{align-items:center;background:linear-gradient(145deg,var(--navy-light),var(--navy-dark));border:1px solid rgba(229,160,13,.38);border-radius:10px;box-shadow:0 12px 32px rgba(229,160,13,.18);color:var(--orange);display:inline-flex;font-weight:900;height:44px;justify-content:center;letter-spacing:.03em;width:44px}.auth-brand strong{color:var(--ink-strong);font-size:1rem}.auth-card h1{color:var(--ink-strong);font-size:1.35rem;font-weight:800;letter-spacing:-.015em;margin:0 0 8px}.auth-card>p{color:var(--muted);line-height:1.45;margin:0 0 20px}.auth-form{display:grid;gap:16px}.auth-error{background:var(--danger-soft);border:1px solid rgba(166,61,64,.22);border-radius:var(--radius-md);color:var(--danger);font-weight:700;margin:0;padding:10px 12px}.auth-submit{margin-top:2px;width:100%}.attach-hint{align-items:center;color:var(--muted);display:flex;gap:8px;font-size:.9rem;margin:0}.attach-hint strong{color:var(--ink-strong)}@media (max-width:1180px){.shell{grid-template-columns:226px minmax(0,1fr)}.content{padding-inline:24px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.position-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{gap:0;height:auto;padding:14px 16px;position:static}.content,.sidebar{min-width:0}.nav-toggle{display:inline-flex}.sidebar nav,.sidebar-logout-form{display:none}.sidebar-open nav{display:grid;gap:6px;margin-top:14px}.sidebar-open .sidebar-logout-form{display:block;margin-top:8px}.content{padding:22px 16px 36px}.page-head{display:grid;gap:14px}.actions{justify-content:flex-start}.btn{flex:1 1 160px}.form-grid,.position-grid,.search-panel,.stats{grid-template-columns:1fr}.payment-insight__header{display:grid}.payment-insight__balance{min-width:0;text-align:left}.def-list>div,.payment-insight__grid{grid-template-columns:1fr}.panel{padding:16px}.table-wrap{margin-inline:-2px}.document-summary{align-items:flex-start;grid-template-columns:auto minmax(0,1fr)}.document-summary-stats{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:flex-start;width:100%}.document-stat{justify-items:start;min-width:0;text-align:left}}.dashboard-screen{background:transparent;border:0;box-shadow:none;display:grid;gap:14px;margin-inline:auto;max-width:1120px;padding:0}.dashboard-appbar{align-items:center;display:flex;gap:16px;justify-content:space-between;min-height:54px}.dashboard-appbar h1{color:var(--ink-strong);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.1;margin:0 0 3px}.dashboard-appbar p{color:var(--muted);font-size:.88rem;line-height:1.4;margin:0}.dashboard-appbar-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.dashboard-appbar-actions .btn{min-height:38px;padding-inline:12px}.dashboard-icon-link{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--muted);height:38px;position:relative;width:38px}.dashboard-icon-link,.dashboard-notification-badge{align-items:center;display:inline-flex;justify-content:center}.dashboard-notification-badge{background:var(--danger);border:2px solid #ffffff;border-radius:var(--radius-full);box-shadow:0 4px 9px rgba(166,61,64,.28);color:#ffffff;font-size:.65rem;font-weight:900;height:18px;min-width:18px;padding-inline:4px;position:absolute;right:-6px;top:-6px}.dashboard-metric-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-card,.dashboard-metric-card{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 7px 18px rgba(17,26,39,.05)}.dashboard-metric-card{display:grid;gap:5px;min-height:82px;padding:12px}.dashboard-metric-card span{color:var(--muted);font-size:.74rem;font-weight:900}.dashboard-metric-card strong{color:var(--ink-strong);font-size:clamp(1rem,1.6vw,1.35rem);font-weight:900;line-height:1.05;overflow-wrap:anywhere}.dashboard-metric-card small{color:var(--muted);font-size:.72rem;font-weight:800}.dashboard-compact-row:hover,.dashboard-metric-card:hover{border-color:rgba(229,160,13,.35);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.dashboard-laptop-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.dashboard-card{padding:14px}.dashboard-panel-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.dashboard-panel-head h2{color:var(--ink-strong);font-size:.95rem;font-weight:900;line-height:1.15;margin:0}.dashboard-panel-head p{color:var(--muted);font-size:.78rem;margin:3px 0 0}.dashboard-year-form{align-items:center;display:flex;gap:8px;justify-content:flex-end}.dashboard-year-form label{color:var(--muted);font-size:.76rem;font-weight:850}.dashboard-year-form select{appearance:none;background:linear-gradient(45deg,transparent 50%,var(--muted) 50%) right 12px center /6px 6px no-repeat,linear-gradient(135deg,var(--muted) 50%,transparent 50%) right 8px center /6px 6px no-repeat,#ffffff;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-strong);font:inherit;font-size:.8rem;font-weight:850;min-height:34px;padding:0 28px 0 10px}.dashboard-year-form .btn{min-height:34px;padding-inline:10px}.dashboard-bars{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(12,minmax(0,1fr));min-height:142px}.dashboard-bar-item{appearance:none;background:transparent;border:0;color:inherit;cursor:pointer;display:grid;gap:6px;grid-template-rows:116px auto;font:inherit;min-width:0;padding:0;position:relative;text-align:center}.dashboard-bar-item:after{background:var(--ink-strong);border-radius:var(--radius-sm);bottom:calc(100% + 8px);box-shadow:var(--shadow-sm);color:#ffffff;content:attr(data-value);font-size:.72rem;font-weight:900;left:50%;line-height:1;opacity:0;padding:7px 8px;pointer-events:none;position:absolute;transform:translate(-50%,4px);transition:opacity .18s ease,transform .18s ease;white-space:nowrap;z-index:2}.dashboard-bar-item:active:after,.dashboard-bar-item:focus-visible:after,.dashboard-bar-item:hover:after{opacity:1;transform:translate(-50%)}.dashboard-bar-item:focus-visible{outline:2px solid rgba(229,160,13,.62);outline-offset:4px}.dashboard-bar-track{align-items:end;background:#faf7f1;border:1px solid var(--line);border-radius:var(--radius-sm);display:flex;overflow:hidden;padding:8px}.dashboard-bar-track span{background:linear-gradient(180deg,var(--orange-hover),var(--orange));border-radius:999px 999px 3px 3px;display:block;height:var(--bar-height);min-height:7px;transition:filter .18s ease,transform .18s ease;width:100%}.dashboard-bar-item:active .dashboard-bar-track span,.dashboard-bar-item:focus-visible .dashboard-bar-track span,.dashboard-bar-item:hover .dashboard-bar-track span{filter:saturate(1.08);transform:scaleY(1.02);transform-origin:bottom}.dashboard-bar-item strong{color:var(--ink-strong);font-size:.72rem;font-weight:900;text-transform:capitalize}.dashboard-donut-wrap{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(104px,126px) minmax(0,1fr)}.dashboard-donut{align-items:center;aspect-ratio:1;background:radial-gradient(circle,#ffffff 0 57%,transparent 58%),conic-gradient(var(--orange) 0 var(--paid-share),#d9e4e0 var(--paid-share) 100%);border-radius:999px;display:grid;justify-items:center}.dashboard-donut strong{color:var(--ink-strong);font-size:1.35rem;font-weight:900}.dashboard-status-list{display:grid;gap:8px}.dashboard-status-row{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:var(--radius-sm);column-gap:8px;display:grid;grid-template-columns:auto minmax(78px,1fr) auto;min-height:36px;padding:0 9px}.dashboard-status-dot{background:var(--muted-2);border-radius:999px;height:8px;width:8px}.dashboard-status-dot.is-paid{background:var(--success)}.dashboard-status-dot.is-open{background:var(--orange)}.dashboard-status-dot.is-overdue{background:var(--danger)}.dashboard-status-row span:not(.dashboard-status-dot){color:var(--muted);font-size:.78rem;font-weight:850;min-width:0;white-space:nowrap}.dashboard-status-row strong{color:var(--ink-strong);font-size:.82rem;font-weight:900;justify-self:end}.dashboard-compact-list{display:grid;gap:8px}.dashboard-compact-row{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:var(--radius-sm);display:grid;gap:10px;grid-template-columns:minmax(96px,.85fr) minmax(0,1.1fr) minmax(94px,auto) auto;min-height:42px;padding:8px 10px}.dashboard-compact-row small,.dashboard-compact-row span{color:var(--muted);font-size:.74rem;font-weight:850}.dashboard-compact-row strong{color:var(--ink-strong);font-size:.78rem;font-weight:850;min-width:0;overflow-wrap:anywhere}@media (max-width:1180px){.dashboard-laptop-grid{grid-template-columns:1fr}}@media (max-width:820px){.dashboard-screen{gap:12px;width:100%}.dashboard-appbar,.dashboard-panel-head{align-items:stretch;display:grid}.dashboard-appbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.dashboard-appbar-actions .btn{justify-content:center;min-width:0;white-space:nowrap}.dashboard-icon-link{width:100%}.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-year-form{justify-content:stretch}.dashboard-year-form .btn,.dashboard-year-form select{flex:1 1 0}.dashboard-donut-wrap{grid-template-columns:1fr}.dashboard-donut{justify-self:center;max-width:140px;width:100%}.dashboard-bars{gap:6px;grid-template-columns:repeat(12,minmax(0,1fr));min-height:122px;overflow:visible}.dashboard-bar-item{grid-template-rows:94px auto;min-width:0}.dashboard-bar-track{padding:5px}.dashboard-bar-item strong{font-size:.62rem}.dashboard-compact-row{align-items:start;grid-template-columns:minmax(0,1fr) auto}.dashboard-compact-row>:first-child{grid-column:1;grid-row:1}.dashboard-compact-row>:nth-child(2){grid-column:1;grid-row:2}.dashboard-compact-row>:nth-child(3){grid-column:2;grid-row:1;justify-self:end;text-align:right;white-space:nowrap}.dashboard-compact-row>:nth-child(4){grid-column:2;grid-row:2;justify-self:end}.dashboard-compact-row small,.dashboard-compact-row span,.dashboard-compact-row strong{min-width:0}}@media (max-width:560px){.dashboard-year-form{grid-template-columns:1fr}.dashboard-appbar-actions{grid-template-columns:1fr 1fr}.dashboard-appbar-actions .btn{font-size:.82rem;padding-inline:8px}.dashboard-year-form{display:grid}.dashboard-year-form label{display:none}.dashboard-card,.dashboard-metric-card{padding:10px}.dashboard-metric-card{gap:4px;min-height:74px}.dashboard-metric-card strong{font-size:.98rem}.dashboard-metric-card small,.dashboard-metric-card span{font-size:.68rem}.dashboard-panel-head{gap:8px;margin-bottom:10px}.dashboard-year-form .btn,.dashboard-year-form select{width:100%}.dashboard-status-row{min-height:34px}.dashboard-compact-row{gap:6px 10px;padding:8px}}@media (max-width:390px){.dashboard-metric-grid{gap:8px}.dashboard-metric-card{padding:10px}.dashboard-metric-card small,.dashboard-metric-card span{font-size:.68rem}.dashboard-metric-card strong{font-size:.94rem}}@media (max-width:340px){.dashboard-appbar-actions,.dashboard-metric-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}}