:root{--primary: #0000CD;--secondary: #191970;--accent: #E0663D;--radius: 14px;--font: "Inter", system-ui, sans-serif;--bg: var(--brand-bg, #F4F5FB);--sidebar: var(--brand-sidebar, #FFFFFF);--card: #FFFFFF;--surface: #FFFFFF;--text: #14162B;--text-2: #464A66;--muted: #7C80A0;--line: #E6E8F2;--hover: #F0F1F8;--primary-soft: color-mix(in srgb, var(--primary) 9%, white);--primary-strong: color-mix(in srgb, var(--primary) 78%, black);--primary-ink: var(--primary);--accent-soft: color-mix(in srgb, var(--accent) 12%, white);--gradient: linear-gradient(135deg, var(--primary), var(--secondary));--chart-in: var(--primary);--glow: 0 6px 20px color-mix(in srgb, var(--primary) 28%, transparent);--glow-strong: 0 8px 28px color-mix(in srgb, var(--primary) 40%, transparent);--page-glow: none;--good: #1E8E4E;--good-soft: #E6F4EC;--warning: #B26A00;--warning-soft: #FFF3DD;--critical: #C8372D;--critical-soft: #FCE9E7;--info: #2563B8;--info-soft: #E7EFFA;--shadow: 0 1px 2px rgba(20, 22, 43, .04), 0 4px 16px rgba(20, 22, 43, .05);--sidebar-w: 264px;color-scheme:light}:root[data-theme=dark]{--bg: #07081A;--sidebar: #0C0E26;--card: #10122E;--surface: #14173A;--text: #ECEEFF;--text-2: #B7BAD9;--muted: #8285AC;--line: rgba(160, 168, 255, .12);--hover: rgba(160, 168, 255, .08);--primary-soft: color-mix(in srgb, var(--primary) 26%, #0C0E26);--primary-strong: color-mix(in srgb, var(--primary) 30%, white);--primary-ink: color-mix(in srgb, var(--primary) 45%, white);--accent-soft: color-mix(in srgb, var(--accent) 22%, #10122E);--chart-in: color-mix(in srgb, var(--primary) 50%, white);--glow: 0 0 22px color-mix(in srgb, var(--primary) 55%, transparent);--glow-strong: 0 0 34px color-mix(in srgb, var(--primary) 75%, transparent);--page-glow: radial-gradient(900px 520px at 85% -8%, color-mix(in srgb, var(--primary) 30%, transparent), transparent 65%), radial-gradient(700px 480px at -5% 110%, color-mix(in srgb, var(--secondary) 55%, transparent), transparent 70%);--good: #4ADE80;--good-soft: rgba(74, 222, 128, .12);--warning: #FBBF24;--warning-soft: rgba(251, 191, 36, .12);--critical: #F87171;--critical-soft: rgba(248, 113, 113, .13);--info: #7AA7FF;--info-soft: rgba(122, 167, 255, .13);--shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 10px 30px rgba(0, 0, 0, .35);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:14.5px;line-height:1.5;color:var(--text);background:var(--page-glow),var(--bg);background-attachment:fixed;-webkit-font-smoothing:antialiased;transition:background-color .2s,color .2s}a{color:var(--primary-ink);text-decoration:none}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:26px}h3{font-size:16px}p{margin:0}img{max-width:100%}.muted{color:var(--muted)}.small{font-size:12.5px}.w-full{width:100%}.nowrap{white-space:nowrap}.center{text-align:center}.truncate{max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-text{color:var(--critical);font-size:13px}.money{display:inline-flex;align-items:baseline;gap:.28em;white-space:nowrap;font-variant-numeric:tabular-nums}.rf-sign{display:inline-block;width:1.05em;height:.67em;background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;align-self:center;flex-shrink:0}.rf-xl{font-size:44px;color:var(--primary-ink)}.cur-code{font-size:.78em;font-weight:600;color:var(--muted);letter-spacing:.02em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:calc(var(--radius) - 4px);border:1px solid transparent;font:inherit;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .05s;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-strong)}.btn-ghost{background:var(--card);border-color:var(--line);color:var(--text)}.btn-ghost:hover{background:var(--hover)}.btn-danger{background:var(--critical-soft);color:var(--critical)}.btn-danger:hover{background:#f8d7d3}.btn-sm{height:34px;padding:0 12px;font-size:13.5px}.btn-lg{height:50px;padding:0 24px;font-size:16px}.btn-row{display:flex;gap:10px;flex-wrap:wrap}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border:0;background:transparent;color:var(--text-2);border-radius:10px;cursor:pointer}.icon-btn:hover{background:var(--hover);color:var(--text)}.link-btn{border:0;background:none;color:var(--primary-ink);font:inherit;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0}.link-btn.danger{color:var(--critical);font-size:13px}.shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:40;transition:transform .2s ease}.sidebar-brand{padding:22px 22px 14px;display:flex;flex-direction:column;gap:8px}.portal-tag{align-self:flex-start;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);background:var(--accent-soft);padding:3px 8px;border-radius:99px}.sidebar-nav{flex:1;overflow-y:auto;padding:4px 14px 14px}.nav-group{margin-top:14px}.nav-section{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:0 12px 6px}.nav-link{display:flex;align-items:center;gap:14px;padding:10px 12px;margin:2px 0;border-radius:calc(var(--radius) - 2px);color:var(--text-2);font-weight:450;font-size:14.5px;transition:background .15s,color .15s}.nav-link:hover{background:var(--hover);color:var(--text)}.nav-link.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.nav-link.active svg{color:var(--primary-ink)}.sidebar-foot{padding:12px 14px 18px;border-top:1px solid var(--line)}.nav-portal{color:var(--accent)}.sidebar-scrim{display:none}.main{flex:1;margin-left:var(--sidebar-w);display:flex;flex-direction:column;min-width:0}.topbar{position:sticky;top:0;z-index:30;height:68px;display:flex;align-items:center;gap:14px;padding:0 32px;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar-title{flex:1;display:flex;align-items:center;gap:8px;font-weight:500}.topbar-actions{display:flex;align-items:center;gap:10px}.menu-btn{display:none}.user-chip{display:flex;align-items:center;gap:10px;padding:4px 10px 4px 4px;border-radius:99px;background:var(--card);border:1px solid var(--line)}.user-meta{display:flex;flex-direction:column;line-height:1.2}.user-meta strong{font-size:13px;font-weight:600}.user-meta small{font-size:11.5px;color:var(--muted)}.avatar{width:34px;height:34px;border-radius:50%;background:var(--primary-soft);color:var(--primary-strong);display:grid;place-items:center;font-size:12.5px;font-weight:600;flex-shrink:0}.avatar.sm{width:32px;height:32px;font-size:12px}.content{flex:1;padding:28px 32px 40px;max-width:1440px;width:100%}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--text)}.logo-mark{width:36px;height:36px;border-radius:11px;background:var(--primary);display:grid;place-items:center}.logo-mark svg{width:22px;height:22px}.logo-text{font-weight:700;font-size:18px;letter-spacing:-.02em}.logo-img{height:38px;width:auto;max-width:180px;object-fit:contain}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.page-head h1{display:flex;align-items:center;gap:12px}.page-head p{margin-top:4px}.page-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:13px;margin-bottom:6px}.list-summary{margin:-12px 0 16px;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;margin-bottom:20px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px 0}.card-head p{margin-top:2px}.card-actions{display:flex;gap:8px;align-items:center;color:var(--muted);white-space:nowrap;flex-shrink:0}.card-body{padding:16px 22px 22px;display:flex;flex-direction:column;gap:14px}.card>div:not(.card-body){padding-top:12px}.sub-head{font-size:13px;font-weight:600;margin-top:6px}.segmented{display:inline-flex;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:3px}.segmented button{border:0;background:none;font:inherit;font-weight:500;padding:6px 12px;border-radius:7px;color:var(--muted);cursor:pointer}.segmented button.active{background:var(--primary-soft);color:var(--primary-strong)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow)}.stat-top{display:flex;align-items:center;gap:10px;color:var(--text-2);font-weight:500}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.tone-primary{background:var(--primary-soft);color:var(--primary-ink)}.tone-info{background:var(--info-soft);color:var(--info)}.tone-critical{background:var(--critical-soft);color:var(--critical)}.tone-accent{background:var(--accent-soft);color:var(--accent)}.stat-value{font-size:26px;font-weight:650;letter-spacing:-.02em;margin-top:6px}.count-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;margin-bottom:20px}.count-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:2px;color:var(--text);transition:border-color .15s,transform .15s}.count-card svg{color:var(--primary-ink);margin-bottom:6px}.count-card strong{font-size:22px;font-weight:650}.count-card span{font-size:12.5px;color:var(--muted);line-height:1.3}.count-card:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--line));transform:translateY(-1px)}.count-card.tone-critical{background:var(--card)}.count-card.tone-critical svg,.count-card.tone-critical strong{color:var(--critical)}.dash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px}.span-2{grid-column:span 2}.chart-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--text-2)}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i,.chart-tip i{width:10px;height:10px;border-radius:3px;display:inline-block}.chart-box{margin:0 -8px}.chart-tip{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px;box-shadow:0 6px 24px #00000014;font-size:13px;display:flex;flex-direction:column;gap:4px;min-width:190px}.chart-tip div{display:flex;align-items:center;gap:6px}.chart-tip .money{margin-left:auto;font-weight:600}.tip-net{border-top:1px solid var(--line);padding-top:4px;color:var(--muted)}.status-meter{display:flex;gap:2px;height:12px;border-radius:6px;overflow:hidden;background:var(--hover)}.seg{display:block;min-width:4px}.seg-paid{background:var(--good)}.seg-partial{background:#e3a008}.seg-unpaid{background:#9aa5a2}.seg-overdue{background:var(--critical)}.status-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.status-list li{display:flex;align-items:center;gap:8px}.status-list strong{margin-left:auto}.top-list,.reminder-list,.payment-list,.related-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.top-list li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:13.5px}.top-list li:last-child{border:0}.reminder-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.reminder-list li:last-child{border:0}.reminder-list li>div:first-child{display:flex;flex-direction:column}.reminder-right{display:flex;align-items:center;gap:10px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-weight:500;font-size:12.5px;color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--line);white-space:nowrap;background:color-mix(in srgb,var(--bg) 50%,white)}.table td{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table .num{text-align:right}.row-link{cursor:pointer}.row-link:hover td{background:var(--hover)}.row-actions{text-align:right;white-space:nowrap}.cell-person{display:flex;align-items:center;gap:10px}.list-toolbar{display:flex;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:10px;padding:0 12px;height:38px;min-width:260px;flex:0 1 340px;color:var(--muted);background:var(--card)}.search input{border:0;outline:0;font:inherit;flex:1;background:transparent;color:var(--text)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:var(--card);padding:6px 12px;border-radius:99px;font:inherit;font-size:13px;text-transform:capitalize;color:var(--text-2);cursor:pointer}.chip:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}.chip.active{background:var(--primary-soft);border-color:transparent;color:var(--primary-strong);font-weight:500}.chip-sm{padding:3px 9px;font-size:12px;text-transform:none}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:99px;font-size:12px;font-weight:500;text-transform:capitalize;white-space:nowrap}.badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-good{background:var(--good-soft);color:var(--good)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-critical{background:var(--critical-soft);color:var(--critical)}.badge-info{background:var(--info-soft);color:var(--info)}.badge-neutral{background:var(--hover);color:var(--text-2)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field-label{font-size:13px;font-weight:500;color:var(--text-2)}.field-hint{font-size:12px;color:var(--muted);display:block}.input{width:100%;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);font:inherit;color:var(--text);transition:border-color .15s,box-shadow .15s}textarea.input{height:auto;padding:10px 12px;resize:vertical;line-height:1.5}select.input{padding-right:8px}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.input:disabled{background:var(--hover);color:var(--muted)}.input-sm{height:34px;font-size:13.5px;padding:0 10px}.input.num{text-align:right}.input.strong{font-weight:600}.muted-input{color:var(--text-2)}.narrow{max-width:80px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .span-2{grid-column:span 2}input[type=range]{accent-color:var(--primary);width:100%}input[type=checkbox],input[type=radio]{accent-color:var(--primary);width:16px;height:16px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.toggle-row.is-disabled{opacity:.6;cursor:not-allowed}.toggle-label{font-weight:500;display:block}.switch{width:44px;height:26px;border-radius:99px;border:0;background:#d4d9d7;position:relative;cursor:pointer;flex-shrink:0;transition:background .15s}.switch span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}.switch.on{background:var(--primary)}.switch.on span{transform:translate(18px)}.switch:disabled{cursor:not-allowed}.radio-card{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}.radio-card input{margin-top:3px}.radio-card span{display:flex;flex-direction:column;gap:2px}.radio-card small{color:var(--muted);font-size:12.5px}.radio-card.active{border-color:var(--primary);background:var(--primary-soft)}.gst-modes{display:flex;flex-direction:column;gap:8px}.upload{display:flex;align-items:center;gap:14px;border:1px dashed var(--line);border-radius:12px;padding:12px}.upload img{max-height:64px;max-width:180px;object-fit:contain}.upload-square img{max-height:48px}.upload-actions{display:flex;gap:8px;margin-left:auto}.color-input{display:flex;gap:8px}.color-input input[type=color]{width:44px;height:40px;padding:2px;border:1px solid var(--line);border-radius:10px;background:var(--card);cursor:pointer}.banner{display:flex;gap:10px;align-items:center;padding:12px 16px;border-radius:12px;margin-bottom:18px;font-size:13.5px}.banner-info{background:var(--info-soft);color:var(--info)}.banner-warn{background:var(--warning-soft);color:var(--warning);margin:12px 32px 0}.banner-error{background:var(--critical-soft);color:var(--critical)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:22px;overflow-x:auto}.tab{display:inline-flex;align-items:center;gap:8px;border:0;background:none;font:inherit;font-weight:500;padding:10px 14px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap}.tab:hover{color:var(--text)}.tab.active{color:var(--primary-strong);border-bottom-color:var(--primary)}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;align-items:start}.option-list{display:flex;flex-direction:column;gap:12px}.option-row{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}.link-row{display:flex;gap:8px;align-items:center}.link-row.indent{padding-left:14px}.gst-example{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;align-items:center}.gst-example span{display:flex;flex-direction:column;color:var(--muted)}.gst-example .money{color:var(--text);font-weight:500}.currency-hero{display:flex;align-items:center;gap:16px;padding:14px;border-radius:12px;background:var(--primary-soft)}.currency-hero div{display:flex;flex-direction:column}.sig-pad{position:relative;border:1px dashed var(--line);border-radius:12px;background:repeating-linear-gradient(0deg,transparent 0 34px,var(--hover) 34px 35px)}.sig-pad canvas{width:100%;height:140px;display:block;touch-action:none;cursor:crosshair}.sig-hint{position:absolute;left:14px;top:10px;pointer-events:none}.sig-actions{display:flex;justify-content:flex-end;gap:8px;padding:8px;border-top:1px dashed var(--line)}.editor-grid{display:grid;grid-template-columns:2fr 1fr;gap:0 20px;align-items:start}.lines-table td{vertical-align:top}.lines-table td:first-child{display:flex;flex-direction:column;gap:6px;min-width:240px}.lines-table .num{min-width:90px}.lines-foot{padding:12px 16px;border-top:1px solid var(--line)}.totals{margin:0;display:flex;flex-direction:column}.totals div{display:flex;justify-content:space-between;gap:12px;padding:7px 0}.totals dt{color:var(--text-2)}.totals dd{margin:0;font-variant-numeric:tabular-nums}.totals .grand{border-top:1px solid var(--line);margin-top:4px;padding-top:10px;font-weight:650;font-size:16px}.totals .grand dt{color:var(--text)}.totals .grand small{font-weight:400;color:var(--muted);font-size:12px}.totals.compact div{padding:4px 0}.doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.doc-side .card{margin-bottom:16px}.action-list{display:flex;flex-direction:column;gap:8px}.action-list .btn{justify-content:flex-start}.payment-list li{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line)}.payment-list li>div{display:flex;flex-direction:column}.related-list li{padding:4px 0}.paper{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:44px 48px;color:#1b2421;font-size:13.5px}.paper h6{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;font-weight:600}.paper-head{display:flex;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:2px solid var(--primary)}.paper-company{display:flex;flex-direction:column;gap:10px}.paper-logo{max-height:64px;max-width:200px;object-fit:contain;align-self:flex-start}.paper-name{font-size:20px;font-weight:700;color:var(--primary-ink)}.paper-addr{display:flex;flex-direction:column;color:var(--text-2);font-size:12.5px}.paper-title{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.paper-title h2{font-size:28px;letter-spacing:.04em;text-transform:uppercase;color:var(--primary-ink);font-weight:700}.paper-number{font-weight:600}.paper-gst-tag{font-size:11.5px;padding:3px 8px;border-radius:99px;background:var(--primary-soft);color:var(--primary-strong)}.paper-meta{display:flex;justify-content:space-between;gap:24px;padding:22px 0}.paper-meta>div{display:flex;flex-direction:column}.paper-meta dl{margin:0;display:grid;grid-template-columns:auto auto;gap:4px 18px;align-content:start}.paper-meta dl div{display:contents}.paper-meta dt{color:var(--muted)}.paper-meta dd{margin:0;font-weight:500;text-align:right}.paper-lines{width:100%;border-collapse:collapse}.paper-lines th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;padding:10px 8px;background:var(--primary-soft)}.paper-lines th:first-child{border-radius:8px 0 0 8px;width:32px}.paper-lines th:last-child{border-radius:0 8px 8px 0}.paper-lines td{padding:12px 8px;border-bottom:1px solid var(--line);vertical-align:top}.paper-lines td small{display:block;color:var(--muted);font-size:12px}.paper-lines .num{text-align:right;white-space:nowrap}.paper-totals{display:flex;justify-content:flex-end;padding-top:14px}.paper-totals .totals{width:320px}.paper-pay{margin-top:24px;padding:16px;border-radius:12px;background:#f8faf9}.pay-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:10px}.pay-grid div{display:flex;flex-direction:column;font-size:12.5px}.pay-grid span{color:var(--text-2)}.paper-pay p{font-size:12.5px;color:var(--text-2)}.paper-notes{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px}.paper-notes p{white-space:pre-line;color:var(--text-2);font-size:12.5px}.paper-sign{display:flex;justify-content:space-between;gap:40px;margin-top:auto;padding-top:36px}.paper-sign>div{display:flex;flex-direction:column;min-width:220px}.paper-sign img{max-height:70px;max-width:200px;object-fit:contain;margin-bottom:-6px}.sign-line{border-top:1px solid #9AA5A2;margin:auto 0 6px;display:block;height:0;padding-top:0}.paper-sign>div:not(:has(img)) .sign-line{margin-top:60px}.paper-sign span:last-child{color:var(--muted);font-size:12px}.composer{background:var(--card);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow)}.composer-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid var(--line)}.composer-title{display:flex;align-items:center;gap:10px}.composer-title h1{font-size:18px}.composer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn-dark{background:#17201e;color:#fff}.btn-dark:hover{background:#000}.icon-btn.bordered{width:40px;height:40px;border:1px solid var(--line);background:var(--card)}.split-btn{position:relative;display:inline-flex}.split-btn>.btn:first-child{border-radius:calc(var(--radius) - 4px) 0 0 calc(var(--radius) - 4px)}.split-caret{border-radius:0 calc(var(--radius) - 4px) calc(var(--radius) - 4px) 0!important;padding:0 12px;border-left:1px solid rgba(255,255,255,.18)}.menu{position:absolute;right:0;top:calc(100% + 6px);background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 36px #0000001f;padding:6px;min-width:240px;z-index:50;animation:pop .15s}.menu button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;font:inherit;text-align:left;padding:9px 12px;border-radius:8px;cursor:pointer;color:var(--text)}.menu button:hover{background:var(--hover)}.composer-body{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}.composer-form{border-right:1px solid var(--line);min-width:0;container-type:inline-size}.compose-banner{margin:16px 22px 0}.compose-banner .icon-btn{margin-left:auto;width:28px;height:28px;color:inherit}.c-section{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}.c-section:last-child{border-bottom:0}.c-section h4{font-size:13.5px;font-weight:500;color:var(--text-2)}.c-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.c-grid .span-2{grid-column:span 2}.fbox{position:relative;display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);cursor:text;transition:border-color .15s,box-shadow .15s;min-width:0}.fbox:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.fbox-main{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}.fbox-label{font-size:11.5px;color:var(--muted)}.fbox-value{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fbox-input{border:0;outline:0;padding:0;background:transparent;font:inherit;font-weight:500;color:var(--text);width:100%;min-width:0}textarea.fbox-input{resize:vertical;font-weight:400;line-height:1.5}.fbox-icon{color:var(--text-2);display:grid;pointer-events:none}.fbox input[type=date]::-webkit-calendar-picker-indicator{position:absolute;right:0;top:0;bottom:0;width:48px;height:auto;opacity:0;cursor:pointer}.fbox-select{cursor:pointer;padding-right:36px}.fbox-select:after{content:"";position:absolute;right:16px;top:50%;width:7px;height:7px;border-right:1.6px solid var(--text-2);border-bottom:1.6px solid var(--text-2);transform:translateY(-70%) rotate(45deg);pointer-events:none}.fbox-select select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;font:inherit}.customer-box{min-height:60px}.cust-avatar{width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:600;font-size:13px;flex-shrink:0}.gen-btn{flex-shrink:0;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-soft);color:var(--accent);border-radius:8px;padding:5px 10px;font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.gen-btn:hover{background:color-mix(in srgb,var(--accent) 20%,white)}.seg-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;background:var(--hover);border-radius:12px}.seg-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:none;font:inherit;font-size:13.5px;color:var(--muted);padding:9px 8px;border-radius:9px;cursor:pointer;white-space:nowrap}.seg-tabs button.active{background:var(--card);color:var(--text);font-weight:600;box-shadow:0 1px 3px #00000014}.inline-note{display:flex;align-items:center;gap:8px;font-size:13px}.inline-note.warn svg{color:var(--accent);flex-shrink:0}.items-table{display:flex;flex-direction:column}.items-head,.items-row{display:grid;grid-template-columns:16px minmax(0,1fr) 56px 92px 60px 96px 34px;gap:8px;align-items:center}.items-table.no-price .items-head,.items-table.no-price .items-row{grid-template-columns:16px minmax(0,1fr) 72px 34px}.items-head{background:var(--hover);border-radius:10px;padding:9px 8px;font-size:12.5px;color:var(--text-2)}.items-row{padding:8px;border-radius:10px}.items-row:hover{background:color-mix(in srgb,var(--hover) 60%,transparent)}.items-row .num,.items-head .num{text-align:right}.drag{color:#b5bdba;cursor:grab;display:grid;place-items:center}.drag:active{cursor:grabbing}.item-cell{display:flex;align-items:center;gap:10px;min-width:0}.item-tile{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.tile-violet{background:#efebfd;color:#6d4fd8}.tile-green{background:#e5f5ec;color:#1e8e4e}.tile-orange{background:#fdeee6;color:#d0602f}.tile-blue{background:#e7effa;color:#2563b8}.tile-pink{background:#fce8f1;color:#c23a78}.tile-teal{background:var(--primary-soft);color:var(--primary-ink)}.item-inputs{display:flex;flex-direction:column;min-width:0;flex:1}.bare{border:0;outline:0;background:transparent;font:inherit;color:var(--text);padding:2px 4px;margin-left:-4px;border-radius:6px;width:100%;min-width:0}.bare.strong{font-weight:600}.bare:focus{background:var(--hover)}.pill{height:34px;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--card);font:inherit;font-size:13.5px;text-align:center;padding:0 6px;color:var(--text);-moz-appearance:textfield}.pill::-webkit-outer-spin-button,.pill::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pill:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.item-amount{font-weight:500;font-size:13.5px}.add-item{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;width:100%;border:1px solid var(--line);background:var(--card);border-radius:12px;font:inherit;font-weight:500;cursor:pointer;color:var(--text)}.add-item:hover{background:var(--hover)}.totals-row{margin-top:4px;align-items:center}.mini-total{display:flex;flex-direction:column;align-items:flex-end}.mini-total-value{font-size:22px;font-weight:650;letter-spacing:-.02em}.c-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:4px}.composer-preview{background:color-mix(in srgb,var(--bg) 70%,white);border-radius:0 0 calc(var(--radius) + 4px) 0;padding:28px;min-width:0}.preview-scale{position:sticky;top:92px}.composer-preview .paper,.preview-modal .paper{font-size:12.5px;padding:30px 28px}.composer-preview .paper-title h2{font-size:20px}.preview-modal{background:var(--bg);padding:16px;border-radius:12px}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.template-card{display:flex;flex-direction:column;gap:4px;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:10px;font:inherit;cursor:pointer}.template-card.active{border-color:var(--primary);background:var(--primary-soft)}.tpl-thumb{height:96px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px;margin-bottom:6px}.tpl-thumb i{display:block;height:6px;border-radius:3px;background:#e3e7e5}.tpl-thumb i:first-child{width:45%;height:8px}.tpl-thumb i:nth-child(2){height:12px}.tpl-thumb i:last-child{width:40%;align-self:flex-end;height:10px}.tpl-modern i:first-child{background:#17201e}.tpl-modern i:nth-child(2){background:#17201e}.tpl-modern i:last-child{background:var(--accent-soft)}.tpl-classic i:first-child,.tpl-classic i:nth-child(2){background:var(--primary);opacity:.8}.tpl-classic i:last-child{background:var(--primary-soft)}.tpl-minimal i{background:#d6d6d6}.tpl-minimal i:nth-child(2){background:none;border-bottom:1.5px solid #111;border-radius:0}.design-links{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;font-size:13.5px}.paper-brand{display:flex;align-items:center;gap:12px}.paper-mark{width:48px;height:48px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:600;font-size:16px;flex-shrink:0}.paper-modern .paper-head{border-bottom:1px solid var(--line)}.paper-modern .paper-name{color:var(--text);font-weight:600;font-size:19px}.paper-modern .paper-title h2{color:var(--text);font-weight:500;font-size:22px;letter-spacing:.02em}.paper-modern .paper-number{color:var(--accent);font-size:12px}.paper-modern .paper-number:before{content:"#"}.paper-modern .paper-lines th{background:#17201e;color:#fff}.paper-modern .grand-total{background:var(--accent-soft);border-top:0!important;border-radius:8px;padding:10px 12px!important;margin:8px -12px 0}.paper-classic .paper-mark{border-radius:12px}.paper-minimal .paper-head{border-bottom:1.5px solid #111}.paper-minimal .paper-name,.paper-minimal .paper-title h2{color:#111}.paper-minimal .paper-mark{background:#111}.paper-minimal .paper-lines th{background:none;color:#111;border-bottom:1.5px solid #111;border-radius:0!important}.paper-minimal .paper-gst-tag{background:none;border:1px solid #999;color:#333}.paper-minimal .paper-pay{background:none;border:1px solid var(--line)}.msg-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:0 20px;align-items:start}.recipient-head{display:flex;gap:16px}.recipient-list{list-style:none;margin:0;padding:0;max-height:380px;overflow-y:auto;border:1px solid var(--line);border-radius:12px}.recipient-list li label{display:flex;gap:12px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer}.recipient-list li:last-child label{border:0}.recipient-list li span{display:flex;flex-direction:column}.var-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.msg-preview{background:var(--bg);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px}.msg-preview p{white-space:pre-line;font-size:13.5px}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tile{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:6px;color:var(--text);box-shadow:var(--shadow);transition:border-color .15s,transform .15s}.tile svg{color:var(--primary-ink);margin-bottom:8px}.tile:hover{border-color:var(--primary);transform:translateY(-2px)}.presets{display:flex;flex-wrap:wrap;gap:8px}.preset{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--card);border-radius:99px;padding:5px 12px 5px 6px;font:inherit;font-size:13px;cursor:pointer}.preset span{width:16px;height:16px;border-radius:50%;display:inline-block}.preset span+span{margin-left:-8px;margin-right:4px;border:2px solid var(--card)}.preset.active{border-color:var(--primary)}.brand-preview{display:grid;grid-template-columns:220px 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:220px;background:var(--bg)}.bp-side{background:var(--sidebar);border-right:1px solid var(--line);padding:18px 12px;display:flex;flex-direction:column;gap:4px}.bp-side .logo{margin:0 8px 14px}.bp-link{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:calc(var(--radius) - 2px);color:var(--text-2)}.bp-link.active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.bp-main{padding:20px;display:flex;flex-direction:column;gap:16px}.bp-main .stat{max-width:280px}.bp-buttons{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.perm-table td,.perm-table th{text-align:center}.perm-table td:first-child,.perm-table th:first-child{text-align:left}.perm-table .input{min-width:110px}.footer-preview{border-top:1px solid var(--line);overflow:hidden}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f161459;display:grid;place-items:center;z-index:100;padding:16px;animation:fade .15s}.modal{background:var(--card);border-radius:calc(var(--radius) + 4px);width:min(560px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 24px 64px #0000002e;animation:pop .18s}.modal-wide{width:min(820px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.modal-body{padding:20px 22px;overflow-y:auto}.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--line)}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}}.empty{text-align:center;padding:48px 20px;display:flex;flex-direction:column;align-items:center;gap:8px}.empty-icon{width:72px;height:72px;border-radius:20px;background:var(--primary-soft);color:var(--primary-ink);display:grid;place-items:center;margin-bottom:6px}.toaster{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:200}.toast{background:#17201e;color:#fff;padding:11px 18px;border-radius:12px;font-size:13.5px;box-shadow:0 10px 30px #0003;animation:pop .2s}.footer-compact{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 32px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}.footer-compact nav{display:flex;gap:16px;flex-wrap:wrap;flex:1}.footer-compact a{color:var(--text-2)}.footer-compact a:hover{color:var(--primary-ink)}.auth{min-height:100vh;display:grid;place-items:center;padding:16px;background:radial-gradient(900px 500px at 50% -10%,var(--primary-soft),transparent 70%),var(--bg)}.auth-card{width:min(420px,100%);background:var(--card);border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);padding:36px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 60px #0000000f}.auth-card h1{margin-top:10px;font-size:24px}.demo-accounts{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--line)}.demo-accounts .chip{text-align:left;text-transform:none;border-radius:10px}.m-only{display:none}.pill-wrap{display:block;min-width:0}.main{overflow-x:clip}.table.stack td.num,.table.stack td.m-sub,.table.stack td.m-right,.table.stack td.m-title{white-space:nowrap}@media screen and (max-width: 1360px){.table th,.table td{padding-left:12px;padding-right:12px}}.reminder-list li{flex-wrap:wrap;row-gap:6px}.reminder-list strong,.reminder-right{white-space:nowrap}.reminder-right{margin-left:auto}.paper-number,.paper-gst-tag{white-space:nowrap}.composer-preview{container-type:inline-size}@container (max-width: 560px){.paper-head{flex-direction:column;gap:16px}.paper-title{align-items:flex-start;text-align:left}.paper-meta{flex-direction:column;gap:14px}.paper-meta dd{text-align:left}}@media screen and (max-width: 1360px){.count-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-value{font-size:23px}}@media (min-width: 861px){.shell.collapsed{--sidebar-w: 88px}.shell.collapsed .sidebar-brand{align-items:center;padding:20px 10px 8px}.shell.collapsed .logo-text,.shell.collapsed .portal-tag,.shell.collapsed .nav-section,.shell.collapsed .nav-link span{display:none}.shell.collapsed .sidebar-nav{padding:4px 14px}.shell.collapsed .nav-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}.shell.collapsed .nav-group:first-child{border-top:0}.shell.collapsed .nav-link{justify-content:center;padding:12px 0}.shell.collapsed .sidebar-foot{padding:10px 14px 16px}}@media screen and (max-width: 1180px) and (min-width: 861px){.topbar,.content{padding-left:24px;padding-right:24px}}@media screen and (max-width: 1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.settings-grid,.editor-grid,.msg-grid{grid-template-columns:minmax(0,1fr)}.span-2{grid-column:auto}.doc-layout{grid-template-columns:minmax(0,1fr)}.doc-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;align-items:start}.composer-body{grid-template-columns:minmax(0,1fr)}.composer-form{border-right:0}.composer-preview{display:none}}@media screen and (max-width: 860px){.sidebar{transform:translate(-100%);box-shadow:0 0 40px #00000026;width:min(300px,86vw)}.nav-open .sidebar{transform:none}.nav-open .sidebar-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;z-index:35}.main{margin-left:0}.menu-btn{display:inline-grid}.topbar{padding:0 16px;height:60px;gap:8px}.topbar-title{min-width:0}.topbar-title>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:20px 16px 32px}.footer-compact{padding:16px;flex-direction:column;align-items:flex-start;gap:8px}.banner-warn{margin:12px 16px 0}.hide-sm{display:none!important}.paper{padding:24px 18px}.paper-head,.paper-meta{flex-direction:column}.paper-title{align-items:flex-start;text-align:left}.paper-meta dd{text-align:left}.paper-notes{grid-template-columns:1fr}.paper-sign{flex-direction:column;gap:24px}.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-preview{grid-template-columns:1fr}.bp-side{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--line)}.preview-scale{position:static}.composer{border-radius:var(--radius)}.composer-head{padding:14px 16px}.c-section{padding:16px}}@media screen and (max-width: 860px){.table.stack thead{display:none}.table.stack,.table.stack tbody{display:block}.table.stack tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-auto-flow:row dense;column-gap:12px;row-gap:3px;padding:14px 16px;border-bottom:1px solid var(--line);align-items:center}.table.stack tr:last-child{border-bottom:0}.table.stack td{display:block;padding:0;border:0;text-align:left;min-width:0}.table.stack td.m-left,.table.stack td.m-full,.table.stack td.m-title{white-space:normal}.table.stack td.m-left{grid-column:1;overflow:hidden;text-overflow:ellipsis}.table.stack td.m-right{grid-column:2;text-align:right;justify-self:end}.table.stack td.m-full{grid-column:1 / -1;max-width:none;color:var(--text-2);font-size:13px}.table.stack td.m-title{font-weight:600}.table.stack td.m-sub{font-size:12.5px;color:var(--muted)}.table.stack td.m-sub .money{color:var(--text-2)}.table.stack td.m-strong{font-weight:650;font-size:15px}.table.stack td.m-hide{display:none}.table.stack td.m-actions{grid-column:2;display:flex;justify-content:flex-end;gap:2px;margin-right:-8px}.table.stack td[data-m]:before{content:attr(data-m);color:var(--muted)}.table.stack .row-link:hover td{background:none}.table.stack .row-link:active{background:var(--hover)}.page-head{align-items:stretch;flex-direction:column;margin-bottom:18px}.page-actions{width:100%}.page-actions>.btn,.page-actions>a.btn{flex:1 1 auto}.list-summary{margin-top:-8px}.list-toolbar{padding:12px}.search{min-width:0;flex:1 1 100%}.list-toolbar .chips,.msg-grid .chips{flex-wrap:nowrap;overflow-x:auto;margin:0 -12px;padding:0 12px 2px;scrollbar-width:none}.list-toolbar .chips::-webkit-scrollbar{display:none}.chip{flex-shrink:0}.doc-side{grid-template-columns:minmax(0,1fr)}.doc-view .page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.composer-head{flex-direction:column;align-items:stretch}.composer-actions{display:grid;grid-template-columns:auto minmax(0,1fr)}.split-btn{min-width:0}.split-btn>.btn:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.menu{left:0;right:0;min-width:0}.modal-backdrop{place-items:end center;padding:0}.modal{width:100%;max-height:92vh;border-radius:20px 20px 0 0;animation:sheet .22s ease-out}.modal-wide{width:100%}.modal-foot .btn{flex:1}.toaster{bottom:16px;width:calc(100% - 32px)}.toast{text-align:center}}@keyframes sheet{0%{transform:translateY(40px);opacity:0}}@media (min-width: 561px){@container (max-width: 660px){.items-head{display:none}.items-table:not(.no-price) .items-row{grid-template-columns:16px repeat(4,minmax(0,1fr)) 34px;row-gap:6px;padding:10px 8px;border-bottom:1px solid var(--line);border-radius:0}.items-table:not(.no-price) .items-row .drag{grid-row:1 / 3;grid-column:1}.items-table:not(.no-price) .items-row .item-cell{grid-column:2 / 6;grid-row:1}.items-table:not(.no-price) .items-row .item-del{grid-column:6;grid-row:1}.items-table:not(.no-price) .items-row .pill-wrap{grid-row:2}.items-table:not(.no-price) .items-row .item-amount{grid-row:2;grid-column:5;align-self:end;padding-bottom:8px}.items-table:not(.no-price) .m-only{display:block;font-size:11.5px;color:var(--muted);margin-bottom:4px;text-align:left}}}@media screen and (max-width: 560px){h1{font-size:22px}.page-head h1{flex-wrap:wrap}.card-head{padding:16px 16px 0}.card-body{padding:14px 16px 18px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}.stat{padding:14px}.stat-top{font-size:12.5px;gap:8px}.stat-icon{width:34px;height:34px;border-radius:10px}.stat-icon svg{width:20px;height:20px}.stat-value{font-size:18px;margin-top:2px}.count-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.count-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:12px}.count-card svg{grid-row:1 / 3;margin:0}.count-card strong{font-size:18px;line-height:1.1}.count-card span{font-size:12px}.dashboard .page-actions{flex-wrap:nowrap}.segmented,.segmented button{flex:1}.chart-legend{gap:6px 14px;font-size:12.5px}.status-list{grid-template-columns:1fr}.reminder-list li{flex-wrap:wrap}.form-grid,.form-grid.three{grid-template-columns:minmax(0,1fr)}.form-grid .span-2{grid-column:auto}.tabs{margin:0 -16px 18px;padding:0 12px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.upload{flex-wrap:wrap}.upload-actions{margin-left:0}.gst-example{grid-template-columns:1fr 1fr}.link-row{flex-wrap:wrap}.link-row .input{flex:1 1 140px}.link-row.indent{padding-left:0}.tile-grid{gap:10px}.tile{padding:16px}.auth-card{padding:24px 20px}.paper{padding:20px 14px;font-size:12.5px}.paper-name{font-size:16px!important}.paper-mark{width:40px;height:40px;font-size:14px}.paper-title h2{font-size:20px!important}.paper-lines th:first-child,.paper-lines td:first-child{display:none}.paper-lines th{padding:8px 6px;font-size:10px}.paper-lines th:nth-child(2){border-radius:8px 0 0 8px}.paper-lines td{padding:10px 6px}.paper-totals .totals{width:100%}.paper-modern .grand-total{margin:8px 0 0}.pay-grid{grid-template-columns:1fr 1fr}.composer-actions{grid-template-columns:minmax(0,1fr)}.composer-actions .split-btn{order:-1}.c-grid{grid-template-columns:minmax(0,1fr)}.c-grid .span-2{grid-column:auto}.seg-tabs{grid-template-columns:minmax(0,1fr)}.seg-tabs button{justify-content:flex-start;padding:10px 12px}.items-head{display:none}.items-row,.items-table.no-price .items-row{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:10px}.items-table.no-price .items-row{grid-template-columns:minmax(0,1fr)}.items-row .drag{display:none}.items-row .item-cell{grid-column:1 / -1;padding-right:34px}.items-row .item-del{position:absolute;top:10px;right:6px}.items-row .item-amount{grid-column:1 / -1;display:flex;justify-content:space-between;border-top:1px dashed var(--line);padding-top:8px}.m-only{display:block;font-size:11.5px;color:var(--muted);margin-bottom:4px;text-align:left}.item-amount .m-only{margin:0;font-size:13px}.totals-row{grid-template-columns:minmax(0,1fr)!important}.mini-total{flex-direction:row;justify-content:space-between;align-items:center}.c-foot{flex-direction:column;align-items:stretch}.template-grid{grid-template-columns:1fr}}@media screen and (max-width: 380px){.stat-grid,.count-grid{grid-template-columns:minmax(0,1fr)}.pay-grid{grid-template-columns:1fr}.user-chip{padding:0;border:0;background:none}}.sidebar{transition:transform .2s ease,width .2s ease}.main{transition:margin-left .2s ease}.collapse-btn{position:absolute;top:26px;right:-15px;z-index:5;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);cursor:pointer;box-shadow:var(--shadow);transition:color .15s,box-shadow .15s,border-color .15s}.collapse-btn:hover{color:var(--primary-ink);border-color:color-mix(in srgb,var(--primary) 45%,var(--line));box-shadow:var(--glow)}@media screen and (max-width: 860px){.collapse-btn{display:none}}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 2px 10px color-mix(in srgb,var(--primary) 22%,transparent)}.btn-primary:hover{background:var(--gradient);filter:brightness(1.12);box-shadow:var(--glow-strong)}.logo-mark,.paper-mark,.cust-avatar{background:var(--gradient)}.logo-mark{box-shadow:var(--glow)}.nav-link.active{box-shadow:inset 3px 0 0 var(--primary)}.switch.on{background:var(--gradient);box-shadow:var(--glow)}.chip.active{box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 25%,transparent)}.stat-icon.tone-primary{box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 12%,transparent)}.tone-good{background:var(--good-soft);color:var(--good)}.theme-btn{border:1px solid var(--line);background:var(--surface)}.theme-btn:hover{box-shadow:var(--glow);color:var(--primary-ink)}.auth-theme{position:fixed;top:16px;right:16px}.num-preview{font-size:12.5px;font-weight:600;color:var(--primary-ink);background:var(--primary-soft);padding:4px 10px;border-radius:99px}.pre-line{white-space:pre-line;color:var(--text-2)}.modal,.menu,.chart-tip,.user-chip,.search,.segmented,.chip,.btn-ghost,.icon-btn.bordered,.add-item,.template-card,.preset,.fbox,.input,.pill,.upload{background-color:var(--surface)}:root[data-theme=dark] .card,:root[data-theme=dark] .stat,:root[data-theme=dark] .count-card,:root[data-theme=dark] .tile,:root[data-theme=dark] .composer,:root[data-theme=dark] .feature{background:linear-gradient(180deg,#ffffff09,#fff0 60%),var(--card);border-color:var(--line)}:root[data-theme=dark] .nav-link.active{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 35%,transparent),transparent);color:#fff;box-shadow:inset 3px 0 0 var(--primary-ink),var(--glow)}:root[data-theme=dark] .nav-link.active svg{color:#fff;filter:drop-shadow(0 0 6px var(--primary-ink))}:root[data-theme=dark] .count-card:hover,:root[data-theme=dark] .tile:hover{box-shadow:var(--glow);border-color:color-mix(in srgb,var(--primary) 55%,transparent)}:root[data-theme=dark] .stat-icon{box-shadow:0 0 18px currentColor}:root[data-theme=dark] .stat-icon.tone-primary{color:var(--primary-ink)}:root[data-theme=dark] .btn-primary{box-shadow:var(--glow)}:root[data-theme=dark] .btn-dark{background:var(--gradient);box-shadow:var(--glow)}:root[data-theme=dark] .btn-dark:hover{filter:brightness(1.15)}:root[data-theme=dark] .topbar{background:color-mix(in srgb,var(--bg) 70%,transparent)}:root[data-theme=dark] .table th{background:#ffffff05}:root[data-theme=dark] .composer-preview{background:#0000002e}:root[data-theme=dark] .preview-modal{background:#00000040}:root[data-theme=dark] .btn-danger:hover{background:#f8717138}:root[data-theme=dark] .toast{background:var(--surface);border:1px solid var(--line);box-shadow:var(--glow)}:root[data-theme=dark] .item-tile{filter:saturate(1.2) brightness(.9)}:root[data-theme=dark] .tile-violet,:root[data-theme=dark] .tile-green,:root[data-theme=dark] .tile-orange,:root[data-theme=dark] .tile-blue,:root[data-theme=dark] .tile-pink{background-color:#ffffff12}:root[data-theme=dark] .auth{background:transparent}:root[data-theme=dark] .switch{background:#ffffff29}:root[data-theme=dark] .sig-pad canvas{background:#fff;border-radius:12px 12px 0 0}:root[data-theme=dark] .upload img{background:#fff;border-radius:6px;padding:4px}.paper{display:flex;flex-direction:column;width:100%;max-width:210mm;margin:0 auto;aspect-ratio:210 / 297;--text: #14162B;--text-2: #464A66;--muted: #7C80A0;--line: #E6E8F2;--hover: #F0F1F8;--primary-soft: color-mix(in srgb, var(--primary) 9%, white);--primary-strong: color-mix(in srgb, var(--primary) 78%, black);--primary-ink: var(--primary);--accent-soft: color-mix(in srgb, var(--accent) 12%, white);color:var(--text);background:#fff}.paper-modern .paper-lines th{background:var(--secondary)}.sign-block{position:relative}.paper-stamp{position:absolute;left:120px;bottom:10px;width:120px;height:120px;object-fit:contain;transform:rotate(-12deg);opacity:.88;mix-blend-mode:multiply;pointer-events:none}.print-btn .btn-ghost:first-child{gap:8px}.print-btn .split-caret{border-left:1px solid var(--line)}.menu-check{margin-left:auto;color:var(--primary-ink)}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-top:1px solid var(--line)}.pager{display:flex;align-items:center;gap:4px}.pg-btn{min-width:34px;height:34px;padding:0 8px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;transition:box-shadow .15s,border-color .15s,color .15s}.pg-btn:hover:not(:disabled){color:var(--primary-ink);border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}.pg-btn.active{background:var(--gradient);color:#fff;border-color:transparent;box-shadow:var(--glow)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.pg-gap{padding:0 4px;color:var(--muted)}.bulk-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bulk-grid>div{display:flex;flex-direction:column;gap:10px;min-width:0}.bulk-grid .search{min-width:0;flex:none}.bulk-side .form-grid{margin-top:6px}.bulk-total{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--primary-soft)}.bulk-total .strong{font-weight:700;font-size:16px}.design-toggles{display:flex;flex-direction:column;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.count-grid{grid-template-columns:repeat(9,minmax(0,1fr))}@media screen and (max-width: 1360px){.count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media screen and (max-width: 860px){.bulk-grid{grid-template-columns:minmax(0,1fr)}}@media screen and (max-width: 560px){.count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.count-card:last-child:nth-child(odd){grid-column:span 2}.pagination{justify-content:center}.paper-stamp{left:90px;width:96px;height:96px}}@media print{@page{size:A4 portrait;margin:0}html,body{background:#fff!important;color-scheme:light}.sidebar,.sidebar-scrim,.topbar,.footer-compact,.no-print,.toaster,.banner,.modal-backdrop{display:none!important}.shell,.main,.content,.doc-view,.doc-layout{display:block!important;margin:0!important;padding:0!important;max-width:none!important;width:auto!important;overflow:visible!important;background:none!important}.paper{width:210mm;min-height:296mm;max-width:none;aspect-ratio:auto;margin:0;padding:14mm 14mm 12mm;border:0;border-radius:0;box-shadow:none;font-size:12.5px}html[data-paper=a5] .paper{zoom:.7047}.paper{padding:12mm 13mm 10mm;font-size:11.5px}.paper-mark{width:40px;height:40px;font-size:14px}.paper-logo{max-height:52px}.paper-head{padding-bottom:14px;gap:16px}.paper-company{gap:6px}.paper-meta{padding:14px 0}.paper-lines th{padding:7px 8px}.paper-lines td{padding:8px}.paper-totals{padding-top:8px}.paper .totals div{padding:4px 0}.paper .totals .grand{padding-top:7px;margin-top:2px;font-size:14px}.paper-modern .grand-total{padding:7px 12px!important;margin-top:6px}.paper-pay{margin-top:14px;padding:12px 14px}.pay-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:6px}.paper-notes{margin-top:14px;gap:18px}.paper-sign{padding-top:18px}.paper-sign img{max-height:56px}.paper-sign>div:not(:has(img)) .sign-line{margin-top:36px}.paper-lines tr,.paper-totals,.paper-pay,.paper-notes,.paper-sign{break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
