:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f7f7f8;--color-surface:#fff;--color-surface-elevated:#fff;--color-border:#e2e2e6;--color-text:#1c1c1f;--color-text-muted:#6b6b73;--color-primary:#2f6f4f;--color-primary-hover:#255a40;--color-primary-contrast:#fff;--color-focus-ring:#2f6f4f;--color-success:#1c6b3f;--color-success-bg:#e3f3ea;--color-warning:#8a6d1f;--color-danger:#b3261e;--color-danger-bg:#f8e3e1;--color-table-row-hover:#1414180a;--port-color-blue:#2563eb;--port-color-purple:#7c3aed;--port-color-green:#16a34a;--port-color-orange:#c2410c;--port-color-gray:#52525b;--port-color-yellow:#ca8a04;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, Tahoma, Arial, sans-serif;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--radius:8px;--header-height:56px;--nav-width:220px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#101113;--color-surface:#1a1b1e;--color-surface-elevated:#202226;--color-border:#34363b;--color-text:#edeef0;--color-text-muted:#a1a4aa;--color-primary:#4fd196;--color-primary-hover:#3ab97e;--color-primary-contrast:#06140d;--color-focus-ring:#4fd196;--color-success:#59d38f;--color-success-bg:#16301f;--color-warning:#e3bd5a;--color-danger:#ff6f64;--color-danger-bg:#40201d;--color-table-row-hover:#ffffff0d;--port-color-blue:#60a5fa;--port-color-purple:#a78bfa;--port-color-green:#4ade80;--port-color-orange:#fb923c;--port-color-gray:#a1a1aa;--port-color-yellow:#fbbf24}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);margin:0;transition:background-color .15s,color .15s}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}h1{font-size:1.25rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{align-items:center;gap:var(--space-3);padding-inline:var(--space-3);height:var(--header-height);background:var(--color-surface);border-block-end:1px solid var(--color-border);z-index:10;display:flex;position:sticky;inset-block-start:0}.app-header__title{flex:1;margin:0;font-size:1rem;font-weight:600}.app-header__nav-toggle{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}@media (width>=900px){.app-header__nav-toggle{display:none}}.app-body{flex:1;min-height:0;display:flex}.app-nav{gap:var(--space-1);width:var(--nav-width);padding:var(--space-3);background:var(--color-surface);border-inline-end:1px solid var(--color-border);flex-direction:column;display:none}.app-nav.is-open{z-index:9;display:flex;position:fixed;inset-block-start:var(--header-height);inset-block-end:0;inset-inline-start:0;overflow-y:auto}@media (width>=900px){.app-nav{display:flex;position:static}}.app-nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--color-text);font-size:.9rem;text-decoration:none}.app-nav a.is-active,.app-nav a:hover{background:var(--color-bg);color:var(--color-primary)}.app-main{min-width:0;padding:var(--space-4);flex:1}.language-switcher{gap:var(--space-1);display:flex}.language-switcher button{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:.8rem}.language-switcher button.is-active{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.theme-switcher{gap:var(--space-1);display:flex}.theme-switcher button{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:.85rem}.theme-switcher button.is-active{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.loading-spinner{align-items:center;gap:var(--space-2);padding:var(--space-4);color:var(--color-text-muted);display:flex}.loading-spinner__circle{border:2px solid var(--color-border);border-block-start-color:var(--color-primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{min-height:100vh;padding:var(--space-4);background:var(--color-bg);justify-content:center;align-items:center;display:flex}.auth-card{gap:var(--space-3);width:100%;max-width:360px;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;display:flex}.auth-card__title{margin:0 0 var(--space-2);font-size:1.1rem}.auth-field{gap:var(--space-1);flex-direction:column;font-size:.85rem;display:flex}.auth-field input,.auth-field select,.auth-field textarea{padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);font:inherit;background:var(--color-surface);color:var(--color-text)}.auth-field input:disabled{color:var(--color-text-muted);background:var(--color-bg)}.auth-field textarea{resize:vertical}.auth-card button[type=submit]{padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--color-primary);color:var(--color-primary-contrast);cursor:pointer;border:none;font-weight:600}.auth-card button[type=submit]:hover:not(:disabled){background:var(--color-primary-hover)}.auth-card button[type=submit]:disabled{opacity:.6;cursor:default}.auth-card__error{color:var(--color-danger);margin:0;font-size:.85rem}.auth-card__notice{padding:var(--space-2);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-muted);margin:0;font-size:.85rem}.app-header__account{align-items:center;gap:var(--space-2);display:flex}.app-header__account-label{color:var(--color-text-muted);white-space:nowrap;font-size:.8rem}.app-header__signout{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;font-size:.8rem}@media (width<=640px){.app-header__account-label{display:none}}.settings-section{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);margin-block-start:var(--space-4)}.settings-section__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block-end:var(--space-3);display:flex}.settings-section__title{margin:0;font-size:1rem}.settings-section__empty{color:var(--color-text-muted);font-size:.9rem}.settings-section__header-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.settings-section__success{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--color-success-bg);color:var(--color-success);font-size:.85rem}.button-primary{padding:var(--space-2) var(--space-3);border-radius:var(--radius);background:var(--color-primary);color:var(--color-primary-contrast);cursor:pointer;border:none;font-size:.85rem;font-weight:600}.button-primary:hover:not(:disabled){background:var(--color-primary-hover)}.button-primary:disabled{opacity:.6;cursor:default}.button-secondary{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-size:.85rem}.button-secondary:hover:not(:disabled){background:var(--color-bg)}.button-secondary:disabled{opacity:.6;cursor:default}.button-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem}.button-link:hover:not(:disabled){text-decoration:underline}.button-link:disabled{opacity:.5;cursor:default}.button-link+.button-link{margin-inline-start:var(--space-3)}.port-form{gap:var(--space-3);max-width:360px;padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;margin-block-end:var(--space-3);display:flex}.port-form__title{margin:0;font-size:.95rem}.port-form__code-input{text-transform:uppercase}.port-form__color-row{align-items:center;gap:var(--space-2);display:flex}.port-form__actions{gap:var(--space-2);justify-content:flex-end;display:flex}.import-wizard{gap:var(--space-3);padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;margin-block-end:var(--space-3);display:flex}.import-wizard__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.import-wizard__upload{gap:var(--space-2);flex-direction:column;max-width:480px;display:flex}.import-wizard__loading{padding-block:var(--space-4)}.import-wizard__preview,.import-wizard__done{gap:var(--space-3);flex-direction:column;display:flex}.import-wizard__summary{align-items:center;gap:var(--space-3);color:var(--color-text-muted);flex-wrap:wrap;font-size:.85rem;display:flex}.import-wizard__filename{color:var(--color-text);font-weight:600}.import-wizard__summary-errors{color:var(--color-danger)}.import-wizard__summary-warnings{color:var(--color-warning)}.import-wizard__row--error td{background:var(--color-danger-bg)}.import-wizard__issue{margin:0;font-size:.8rem}.import-wizard__issue--error{color:var(--color-danger)}.import-wizard__issue--warning{color:var(--color-warning)}.data-table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.9rem}.data-table th,.data-table td{padding:var(--space-2) var(--space-3);text-align:start;border-block-end:1px solid var(--color-border)}.data-table th{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;font-size:.8rem;font-weight:600}.data-table tbody tr:hover{background:var(--color-table-row-hover)}[data-port-color=blue]{--row-port:var(--port-color-blue)}[data-port-color=purple]{--row-port:var(--port-color-purple)}[data-port-color=green]{--row-port:var(--port-color-green)}[data-port-color=orange]{--row-port:var(--port-color-orange)}[data-port-color=gray]{--row-port:var(--port-color-gray)}[data-port-color=yellow]{--row-port:var(--port-color-yellow)}.data-table tbody tr[data-port-color]>td{transition:background-color .15s,box-shadow .15s}.data-table tbody tr[data-port-color]:hover{background:0 0}.data-table tbody tr[data-port-color]:hover>td{background:color-mix(in srgb, var(--row-port) 13%, transparent)}.data-table tbody tr[data-port-color]:hover>td:first-child{box-shadow:inset 4px 0 0 var(--row-port)}[dir=rtl] .data-table tbody tr[data-port-color]:hover>td:first-child{box-shadow:inset -4px 0 0 var(--row-port)}[data-port-color] .port-code-badge{background:color-mix(in srgb, var(--row-port) 16%, var(--color-bg));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--row-port) 45%, transparent)}.port-label{align-items:center;gap:6px;display:inline-flex}.table-search{align-items:center;gap:var(--space-2);max-width:460px;margin-block:var(--space-2);display:flex;position:relative}.table-search__icon{opacity:.6;pointer-events:none;font-size:.85rem;position:absolute;inset-inline-start:10px}.table-search input{padding:8px 12px;border:1px solid var(--color-border);background:var(--color-surface);min-width:0;color:var(--color-text);font:inherit;border-radius:999px;flex:1;padding-inline-start:32px;transition:border-color .15s,box-shadow .15s}.table-search input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent);outline:none}.table-search input::-webkit-search-cancel-button{display:none}.table-search__count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;font-size:.8rem}.table-search__clear{background:var(--color-bg);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:50%;flex:none}.table-search__clear:hover{color:var(--color-text)}.app-main>*{animation:.22s cubic-bezier(.2,.8,.2,1) both page-enter}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.app-main>*{animation:none}.data-table tbody tr[data-port-color]>td{transition:none}}@media print{.app-main>*{animation:none}}.data-table__actions-col{white-space:nowrap}.port-code-badge{background:var(--color-bg);border-radius:4px;padding:2px 6px;font-size:.85em}.status-badge{border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:500;display:inline-block}.status-badge--active{background:var(--color-success-bg);color:var(--color-success)}.status-badge--inactive,.status-badge--draft{background:var(--color-bg);color:var(--color-text-muted)}.status-badge--posted{background:var(--color-success-bg);color:var(--color-success)}.status-badge--void{background:var(--color-danger-bg);color:var(--color-danger)}.status-badge--deleted{background:var(--color-bg);color:var(--color-warning)}.identity-marker{white-space:nowrap;vertical-align:middle;border:1px solid;border-radius:999px;margin-inline-start:6px;padding:1px 6px;font-size:.72rem;font-weight:500;display:inline-block}.identity-marker--recorded{color:var(--color-success)}.identity-marker--current{color:var(--color-warning)}.port-color-dot{border:1px solid var(--color-border);vertical-align:middle;border-radius:50%;width:12px;height:12px;display:inline-block}.port-color-dot--none{background:0 0}.port-color-dot--blue{background:var(--port-color-blue);border-color:var(--port-color-blue)}.port-color-dot--purple{background:var(--port-color-purple);border-color:var(--port-color-purple)}.port-color-dot--green{background:var(--port-color-green);border-color:var(--port-color-green)}.port-color-dot--orange{background:var(--port-color-orange);border-color:var(--port-color-orange)}.port-color-dot--gray{background:var(--port-color-gray);border-color:var(--port-color-gray)}.port-color-dot--yellow{background:var(--port-color-yellow);border-color:var(--port-color-yellow)}.order-filters{align-items:end;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);flex-wrap:wrap;margin-block-end:var(--space-3);display:flex}.order-filters .auth-field{min-width:160px}.order-filters__clear{display:flex}.order-form{gap:var(--space-3);max-width:640px;padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;margin-block-end:var(--space-3);display:flex}.order-form__grid-2{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.order-form__grid-2{grid-template-columns:1fr}}.order-form__section-title{margin:0 0 var(--space-2);font-size:.9rem}.order-form__qty-input{width:90px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);font:inherit;background:var(--color-surface);color:var(--color-text)}.order-form__group-row td{padding-block:var(--space-1);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em;border-block-end:none;font-size:.75rem;font-weight:600}.order-form__main-customer-row{background:var(--color-bg)}.order-form__main-customer-row td:first-child{border-inline-start:3px solid var(--color-primary);font-weight:600}.order-form__inactive-tag{margin-inline-start:var(--space-2)}.order-form__max-hint{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:.8rem}.order-confirm{align-items:center;gap:var(--space-1);color:var(--color-text-muted);white-space:nowrap;font-size:.85rem;display:inline-flex}.order-confirm__yes{color:var(--color-danger);font-weight:600}.order-form__totals{gap:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.9rem;display:flex}.payment-confirm-panel{gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;display:flex}.payment-confirm-panel__row{justify-content:space-between;gap:var(--space-3);font-size:.9rem;display:flex}.payment-confirm-panel__label{color:var(--color-text-muted)}.statement-customer-list{margin-block:var(--space-3)}.statement-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.statement-payment-panel{margin-block:var(--space-3);padding:var(--space-3);border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface);animation:.2s cubic-bezier(.2,.8,.2,1) both statement-panel-in;box-shadow:0 4px 16px #2f6f4f1f}.statement-payment-panel__hint{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:.8rem}@keyframes statement-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.statement-payment-panel{animation:none}}.bulk-toolbar{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-2);display:flex}.bulk-check{width:36px;text-align:center!important}.bulk-check input{cursor:pointer;width:18px;height:18px}.bulk-download{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-inline-start:auto;display:inline-flex}.bulk-download__progress{align-items:center;gap:var(--space-2);font-variant-numeric:tabular-nums;font-size:.85rem;display:inline-flex}.bulk-download__bar{background:var(--color-border);border-radius:4px;width:140px;height:8px;overflow:hidden}.bulk-download__bar span{background:var(--color-primary);height:100%;transition:width .2s;display:block}.bulk-download__result{font-size:.85rem}.bulk-download__host{pointer-events:none;position:fixed;top:0;left:-100000px}.statement-show-deleted{align-items:center;gap:var(--space-2);color:var(--color-text-muted);align-self:end;font-size:.85rem;display:inline-flex}.statement-customer-list__row{cursor:pointer}.statement-customer-list__row.is-selected td{background:var(--color-success-bg)}.statement-status{padding:2px var(--space-2);border-radius:var(--radius);flex-direction:column;gap:2px;font-size:.85rem;font-weight:600;display:inline-flex}.statement-status--due{background:var(--color-danger-bg);color:var(--color-danger)}.statement-status--paid{background:var(--color-success-bg);color:var(--color-success)}.statement-status__credit{font-size:.8rem;font-weight:400}@media print{:root,[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#fff;--color-surface:#fff;--color-surface-elevated:#fff;--color-border:#d7d7db;--color-text:#1c1c1f;--color-text-muted:#55555c;--color-primary:#2f6f4f;--color-primary-contrast:#fff;--color-success:#1c6b3f;--color-success-bg:#e3f3ea;--color-warning:#8a6d1f;--color-danger:#b3261e;--color-danger-bg:#f8e3e1}.app-header,.app-nav{display:none!important}.app-main{padding:0}.statements-page .no-print,.statements-page>h1,.statements-page .settings-section__header{display:none!important}.statements-page .settings-section{border:none;margin:0;padding:0}.statement-status{-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1px solid}}.error-boundary{padding:var(--space-5);text-align:center}.error-boundary__details{white-space:pre-wrap;color:var(--color-text-muted);font-size:.8rem}
