:root{--color-1:#133f9f;--color-2:#00062d;--color-3:#90aec2;--color-4:#fdc316;--color-5:#d88a00;--color-6:#feeb98;--color-background:#fafafa;--color-surface:#fff;--color-surface-muted:#f9f9f9;--color-primary:#fdc316;--color-primary-hover:#d88a00;--color-on-primary:#00062d;--color-accent:#133f9f;--color-accent-hover:#90aec2;--color-text-primary:#00062d;--color-text-secondary:#03003d;--color-border:#90aec2;--color-success:#16a34a;--color-warning:#f5a700;--color-danger:#dc2626;--color-danger-hover:#8b0606;--color-info:#2563eb;--color-overlay:#0a0a0a7a;--color-sidebar-text:#feeb98;--color-sidebar-text-active:#00062d;--color-sidebar-divider:#ffffff29;--color-danger-surface:#dc262614;--color-danger-border:#dc26263d;--font-family-sans:Inter, ui-sans-serif, system-ui, "Segoe UI", Arial, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--space-1:.25rem;--space-2:.5rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-sm:.5rem;--radius-md:.5rem;--radius-full:999px;--shadow-elevated:0 1rem 2rem #0a0a0a14;--size-control-height:2.5rem;--size-sidebar-width:16.75rem;--size-brand-mark:2.5rem;--size-topbar-height:4.5rem;--size-page-header-max:48.75rem;--size-auth-panel-max:28.75rem;--size-card-min:15rem;--breakpoint-mobile-max:39.9375rem;--breakpoint-tablet-max:64rem}.ui-button{border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-weight-semibold);align-items:center;gap:var(--space-2);min-height:var(--size-control-height);padding:var(--space-2) var(--space-4);border:1px solid #0000;justify-content:center;transition:background-color .14s,border-color .14s,color .14s;display:inline-flex}.ui-button:disabled{cursor:not-allowed;opacity:.56}.ui-button--primary{background:var(--color-primary);color:var(--color-on-primary)}.ui-button--primary:hover:not(:disabled){background:var(--color-primary-hover);border:2px solid var(--color-4)}.ui-button--secondary{background:var(--color-surface);border:2px solid var(--color-2);color:var(--color-2)}.ui-button--secondary:hover:not(:disabled),.ui-button--ghost:hover:not(:disabled){background:var(--color-5);border:2px solid var(--color-4)}.ui-button--accent{background:var(--color-accent);color:var(--color-text-primary)}.ui-button--accent:hover:not(:disabled){background:var(--color-accent-hover)}.ui-button--danger{background:var(--color-danger);color:var(--color-6)}.ui-button--danger:hover{background:var(--color-danger-hover);color:var(--color-6);border:2px solid var(--color-danger)}.ui-button--ghost{color:var(--color-text-primary);background:0 0}.ui-button--full{width:100%}.ui-button--icon{min-width:var(--size-control-height);padding:var(--space-2);width:var(--size-control-height)}.ui-button--icon span{align-items:center;display:inline-flex}.button-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1.125rem;height:1.125rem}.ui-spinner{border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:1rem;height:1rem;animation:.75s linear infinite ui-spin}.ui-label{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:inline-flex}.ui-input,.ui-select,.ui-textarea{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);min-height:var(--size-control-height);padding:var(--space-2) var(--space-4);width:100%}.ui-textarea{resize:vertical;min-height:6rem}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--color-text-secondary)}.ui-input:focus,.ui-select:focus,.ui-textarea:focus{border-color:var(--color-primary);outline:2px solid #0000}.ui-input[aria-invalid=true],.ui-select[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:var(--color-danger)}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background:var(--color-surface-muted);color:var(--color-text-secondary);cursor:not-allowed}.ui-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);min-height:1.5rem;padding:var(--space-1) var(--space-2);align-items:center;display:inline-flex}.ui-badge--success{background:color-mix(in srgb, var(--color-success) 12%, var(--color-surface));color:var(--color-success)}.ui-badge--warning{background:color-mix(in srgb, var(--color-warning) 18%, var(--color-surface));color:var(--color-text-primary)}.ui-badge--danger{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-surface));color:var(--color-danger)}.ui-badge--info{background:color-mix(in srgb, var(--color-info) 12%, var(--color-surface));color:var(--color-info)}.ui-form-field{gap:var(--space-1);width:100%;display:grid}.ui-form-field__hint,.ui-form-field__error{font-size:var(--font-size-xs);min-height:1.125rem}.ui-form-field__hint{color:var(--color-text-secondary)}.ui-form-field__error{color:var(--color-danger)}.ui-form-group{gap:var(--space-4);display:grid}.ui-form-group__header{border-bottom:1px solid var(--color-border);gap:var(--space-1);padding-bottom:var(--space-2);display:grid}.ui-form-group__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.ui-form-group__description{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-form-group__grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}.ui-action-bar{gap:var(--space-2);justify-content:flex-end;display:flex}.ui-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md)}.ui-card__header,.ui-card__footer{align-items:center;gap:var(--space-2);padding:var(--space-4);justify-content:space-between;display:flex}.ui-card__header{border-bottom:1px solid var(--color-border)}.ui-card__footer{border-top:1px solid var(--color-border)}.ui-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.ui-card__description{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-card__body{padding:var(--space-4)}.ui-data-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-4);padding:var(--space-4);display:grid}.ui-data-card__title{font-weight:var(--font-weight-semibold)}.ui-key-value-list{gap:var(--space-2);display:grid}.ui-key-value-list__row{gap:var(--space-2);grid-template-columns:minmax(7.5rem,.7fr) 1fr;display:grid}.ui-key-value-list__key{color:var(--color-text-secondary)}.ui-key-value-list__value{color:var(--color-text-primary);font-weight:var(--font-weight-medium);min-width:0}.ui-section-header{align-items:center;gap:var(--space-4);justify-content:space-between;display:flex}.ui-section-header__text{gap:var(--space-1);display:grid}.ui-section-header__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.ui-section-header__subtitle{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-search-field{gap:var(--space-1);min-width:20rem;display:grid}.ui-search-field__control{position:relative}.ui-search-field__icon{fill:none;color:var(--color-text-secondary);height:1rem;left:var(--space-4);stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem;position:absolute;top:50%;transform:translateY(-50%)}.ui-search-field .ui-input{padding-left:var(--space-12)}.ui-table-toolbar,.ui-filter-bar{align-items:center;gap:var(--space-4);justify-content:space-between;display:flex}.ui-table-toolbar__left,.ui-table-toolbar__right,.ui-filter-bar__fields,.ui-filter-bar__actions{align-items:center;gap:var(--space-2);display:flex}.ui-data-table{gap:var(--space-4);display:grid}.ui-data-table__scroll{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.ui-data-table table{border-collapse:collapse;min-width:100%}.ui-data-table th,.ui-data-table td{border-bottom:1px solid var(--color-border);padding:var(--space-2) var(--space-4);text-align:left;white-space:nowrap}.ui-data-table th{background:var(--color-background);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ui-data-table td:last-child,.ui-data-table th:last-child{text-align:right}.ui-data-table tr:last-child td{border-bottom:0}.ui-data-table__cards{display:none}.ui-pagination{align-items:center;gap:var(--space-2);justify-content:flex-end;display:flex}.ui-pagination__meta{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-2);padding:var(--space-4);display:grid}.ui-stat-card__label{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-stat-card__value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.ui-stat-card__trend{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-alert{border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:flex-start;gap:var(--space-4);padding:var(--space-4);display:flex}.ui-alert__icon{border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex:0 0 1.75rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:inline-flex}.ui-alert__content{gap:var(--space-1);flex:1;display:grid}.ui-alert__title{font-weight:var(--font-weight-semibold)}.ui-alert__message{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ui-alert--success{background:color-mix(in srgb, var(--color-success) 8%, var(--color-surface));border-color:color-mix(in srgb, var(--color-success) 28%, var(--color-border))}.ui-alert--success .ui-alert__icon{background:var(--color-success);color:var(--color-on-primary)}.ui-alert--warning{background:color-mix(in srgb, var(--color-warning) 10%, var(--color-surface));border-color:color-mix(in srgb, var(--color-warning) 40%, var(--color-border))}.ui-alert--warning .ui-alert__icon{background:var(--color-warning);color:var(--color-text-primary)}.ui-alert--danger{background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface));border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border))}.ui-alert--danger .ui-alert__icon{background:var(--color-danger);color:var(--color-on-primary)}.ui-alert--info{background:color-mix(in srgb, var(--color-info) 8%, var(--color-surface));border-color:color-mix(in srgb, var(--color-info) 28%, var(--color-border))}.ui-alert--info .ui-alert__icon{background:var(--color-info);color:var(--color-on-primary)}.ui-empty-state{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:var(--space-2);padding:var(--space-8);text-align:center;justify-items:center;display:grid}.ui-empty-state__icon{color:var(--color-text-secondary)}.ui-empty-state__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.ui-empty-state__description{color:var(--color-text-secondary)}.ui-modal-backdrop{background:var(--color-overlay);padding:var(--space-4);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);width:100%;max-width:32rem;overflow:hidden}.ui-modal:has(.template-preview-frame){max-width:min(72rem, calc(100vw - var(--space-8)))}.template-preview-frame{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;height:min(72vh,52rem);display:block}.template-editor-toolbar{align-items:end;gap:var(--space-4);flex-wrap:wrap;justify-content:space-between;display:flex}.template-editor-toolbar .ui-form-field{max-width:12rem}.template-editor-shell{align-items:start;gap:var(--space-4);grid-template-columns:minmax(10rem,.55fr) minmax(22rem,1.6fr) minmax(16rem,.75fr);display:grid}.template-component-list,.template-property-grid{gap:var(--space-3);display:grid}.template-canvas-scroll{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-4);overflow:auto}.template-paper-canvas{background:linear-gradient(to right, color-mix(in srgb, var(--color-border) 45%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--color-border) 45%, transparent) 1px, transparent 1px), var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-card);background-size:10mm 10mm;min-width:16rem;max-width:100%;max-height:70vh;margin:0 auto;position:relative}.template-canvas-component{background:color-mix(in srgb, var(--color-primary) 7%, var(--color-surface));border:1px dashed var(--color-primary);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;min-height:1.5rem;padding:var(--space-1) var(--space-2);text-overflow:ellipsis;white-space:nowrap;position:absolute;overflow:hidden}.template-canvas-component.is-selected{box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 18%, transparent);border-style:solid}.template-canvas-component--divider{background:#111827;border:0;min-height:.125rem;padding:0}.template-canvas-component--spacer{background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--color-info) 10%, var(--color-surface)), color-mix(in srgb, var(--color-info) 10%, var(--color-surface)) .4rem, var(--color-surface) .4rem, var(--color-surface) .8rem)}.template-editor-empty{color:var(--color-text-secondary);margin:0}.ui-modal__header,.ui-modal__body,.ui-modal__footer{padding:var(--space-4)}.ui-modal__header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.ui-modal__footer{border-top:1px solid var(--color-border);gap:var(--space-2);justify-content:flex-end;display:flex}.ui-modal__close{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-lg);height:var(--size-control-height);width:var(--size-control-height);justify-content:center;align-items:center;display:inline-flex}.ui-modal__close:hover{background:var(--color-surface-muted);color:var(--color-text-primary)}.ui-form,.permission-groups{gap:var(--space-6);display:grid}.permission-group{gap:var(--space-4);display:grid}.permission-group__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.permission-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.permission-toggle{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;gap:var(--space-1);min-height:7.5rem;padding:var(--space-4) var(--space-12) var(--space-4) var(--space-4);text-align:left;display:grid;position:relative}.permission-toggle:hover:not(:disabled){border-color:var(--color-primary)}.permission-toggle:disabled{cursor:not-allowed;opacity:.68}.permission-toggle.is-active{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));border-color:var(--color-primary)}.permission-toggle__label{font-weight:var(--font-weight-semibold)}.permission-toggle__description{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.permission-toggle__state{background:var(--color-surface-muted);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-2);right:var(--space-4);top:var(--space-4);position:absolute}.permission-toggle.is-active .permission-toggle__state{background:var(--color-primary);color:var(--color-on-primary)}.ui-skeleton{background:var(--color-border);border-radius:var(--radius-sm);min-height:1rem;animation:1.2s ease-in-out infinite ui-pulse}.ui-skeleton--line{width:100%}.ui-skeleton--short{width:40%}.ui-skeleton--control{min-height:var(--size-control-height)}.ui-loading-stack{gap:var(--space-2);display:grid}.accounting-page{gap:var(--space-6);display:grid}.accounting-page__transactions{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.accounting-page__ledger-controls{align-items:end;gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(12rem,1fr)) auto;display:grid}.accounting-page__ledger-summary{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.module-tabs{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.workflow-stack{gap:var(--space-4);display:grid}.split-workspace{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1.45fr) minmax(20rem,.55fr);display:grid}.inline-form{align-items:end;gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:minmax(16rem,1fr) auto;display:grid}.form-grid-compact{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.subform-panel{border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-4);padding:var(--space-4);display:grid}.subform-panel__header{align-items:center;gap:var(--space-2);justify-content:space-between;display:flex}.checkbox-line{color:var(--color-text-primary);align-items:center;gap:var(--space-2);display:inline-flex}.checkbox-line input{accent-color:var(--color-primary);width:1rem;height:1rem}.detail-list{gap:var(--space-2);display:grid}.detail-list ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.detail-list li{border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-1);padding:var(--space-2) var(--space-4);display:grid}.detail-list li span{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.color-picker-field{gap:var(--space-2);display:grid}.color-picker-field__control{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:var(--space-2);min-height:var(--size-control-height);padding:var(--space-2);display:flex}.color-picker-field__control:focus-within{border-color:var(--color-primary)}.color-picker-field__preview{border:1px solid var(--color-border);border-radius:var(--radius-sm);flex:0 0 1.75rem;width:1.75rem;height:1.75rem}.color-picker-field__value{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex:1}.color-picker-field__control input{cursor:pointer;border:0;width:2rem;height:1.75rem;padding:0}.color-picker-field__palette{gap:var(--space-1);flex-wrap:wrap;display:flex}.color-picker-field__palette button{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:1.5rem;height:1.5rem;padding:0}.color-picker-field__palette button.is-active{outline:2px solid var(--color-primary);outline-offset:2px}@media (width>=40rem){.ui-form-group__grid--2,.ui-form-group__grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64.0625rem){.ui-form-group__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=39.9375rem){.template-editor-shell{grid-template-columns:1fr}.template-editor-toolbar{flex-direction:column;align-items:stretch}.template-editor-toolbar .ui-form-field{max-width:none}.ui-action-bar,.ui-modal__footer,.ui-table-toolbar,.ui-filter-bar,.ui-table-toolbar__left,.ui-table-toolbar__right,.ui-filter-bar__fields,.ui-filter-bar__actions,.ui-section-header{flex-direction:column;align-items:stretch}.ui-action-bar .ui-button,.ui-modal__footer .ui-button{width:100%}.ui-data-table__scroll{display:none}.ui-data-table__cards{gap:var(--space-4);display:grid}.ui-key-value-list__row{grid-template-columns:1fr}.ui-search-field{min-width:0}.accounting-page__transactions,.accounting-page__ledger-controls,.split-workspace,.inline-form,.form-grid-compact{grid-template-columns:1fr}.accounting-page__ledger-controls .ui-button,.inline-form .ui-button{width:100%}}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-pulse{50%{opacity:.45}}:root{color:var(--color-text-primary);background:var(--color-background);font-family:var(--font-family-sans);font-synthesis:none;line-height:var(--line-height-normal);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{background:var(--color-background);margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,p{margin:0}#root{min-height:100svh}.app-shell{min-height:100svh;padding-left:var(--size-sidebar-width)}.workspace{min-width:0;min-height:100svh}.sidebar{color:var(--color-4);gap:var(--space-4);height:100svh;padding:var(--space-6) var(--space-4);width:var(--size-sidebar-width);z-index:30;background:linear-gradient(#00062d 0%,#03003d 100%);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar-header,.sidebar-footer{flex:none}.sidebar-body{margin:0 calc(var(--space-4) * -1);min-height:0;padding:0 var(--space-4);scrollbar-color:color-mix(in srgb, var(--color-sidebar-text) 24%, transparent) transparent;scrollbar-width:thin;flex:auto;overflow-y:auto}.sidebar-body::-webkit-scrollbar{width:.375rem}.sidebar-body::-webkit-scrollbar-track{background:0 0}.sidebar-body::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-sidebar-text) 20%, transparent);border-radius:var(--radius-full)}.sidebar-body:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-sidebar-text) 36%, transparent)}.sidebar-footer{border-top:1px solid var(--color-sidebar-divider);color:var(--color-sidebar-text);font-size:var(--font-size-xs);padding-top:var(--space-4)}.brand{align-items:center;gap:var(--space-2);min-height:var(--size-control-height);display:flex}.brand strong,.brand span{display:block}.brand strong{font-weight:var(--font-weight-bold)}.brand span{color:var(--color-sidebar-text);font-size:var(--font-size-sm)}.brand-mark{background-color:var(--color-accent);border-radius:var(--radius-sm);color:var(--color-text-primary);font-weight:var(--font-weight-bold);height:var(--size-brand-mark);width:var(--size-brand-mark);background-image:url(/app_64.png);background-position:50%;background-repeat:no-repeat;background-size:1.75rem 1.75rem;justify-content:center;align-items:center;display:inline-flex}.sidebar-nav{gap:var(--space-4);display:grid}.nav-group{gap:var(--space-2);display:grid}.nav-group+.nav-group{border-top:1px solid var(--color-sidebar-divider);padding-top:var(--space-4)}.nav-group-label{color:var(--color-sidebar-text);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:0;padding:0 var(--space-4);text-transform:uppercase}.nav-list{gap:var(--space-1);display:grid}.nav-list a{border-radius:var(--radius-sm);color:var(--color-sidebar-text);font-size:var(--font-size-sm);align-items:center;gap:var(--space-2);min-height:var(--size-control-height);padding:var(--space-2) var(--space-4);display:flex}.nav-list a.active{background:var(--color-primary);color:var(--color-sidebar-text-active);font-weight:var(--font-weight-semibold)}.nav-list a:hover:not(.active){background:var(--color-primary-hover);color:var(--color-on-primary)}.nav-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex:0 0 1.25rem;width:1.25rem;height:1.25rem}.sidebar-backdrop{display:none}.topbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);min-height:var(--size-topbar-height);padding:0 var(--space-8);justify-content:space-between;align-items:center;display:flex}.topbar-main{align-items:center;gap:var(--space-4);display:flex}.topbar-menu-button{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;align-items:center;gap:var(--space-1);height:var(--size-control-height);padding:var(--space-2);width:var(--size-control-height);flex-direction:column;justify-content:center;display:none}.topbar-menu-button span{border-radius:var(--radius-full);background:currentColor;width:1rem;height:2px;display:block}.topbar strong{font-weight:var(--font-weight-semibold);display:block}.topbar-user,.status-pill{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-primary);min-height:var(--size-control-height);padding:var(--space-2) var(--space-4)}.topbar-user{cursor:pointer;align-items:center;gap:var(--space-2);max-width:min(18rem,45vw);display:inline-flex}.topbar-user:hover,.topbar-user[aria-expanded=true]{background:var(--color-surface);border-color:var(--color-primary)}.topbar-user-menu{position:relative}.topbar-user__avatar{background:var(--color-primary);border-radius:var(--radius-full);color:var(--color-on-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);flex:0 0 2rem;justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.topbar-user__identity{text-align:left;min-width:0;display:grid}.topbar-user__identity strong,.topbar-user__identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topbar-user__identity strong{font-size:var(--font-size-sm);line-height:1.2}.topbar-user__identity span{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.topbar-user__chevron{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.topbar-user-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);min-width:12rem;padding:var(--space-2);right:0;top:calc(100% + var(--space-2));z-index:30;display:grid;position:absolute}.topbar-user-dropdown button{border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;padding:var(--space-2) var(--space-4);text-align:left;background:0 0;border:0}.topbar-user-dropdown button:hover:not(:disabled){background:var(--color-surface-muted)}.topbar-user-dropdown button:disabled{color:var(--color-text-secondary);cursor:not-allowed}.workspace-content{padding:var(--space-8)}.page{gap:var(--space-6);display:grid}.muted{color:var(--color-text-secondary)}.page-header{gap:var(--space-2);max-width:var(--size-page-header-max);display:grid}.page-header h1,.auth-panel h1{font-size:var(--font-size-2xl);line-height:var(--line-height-tight)}.page-header p,.auth-panel p,.empty-state p,.module-card p{color:var(--color-text-secondary)}.eyebrow,.module-card span{color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}.module-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit, minmax(var(--size-card-min), 1fr));display:grid}.customer-management{gap:var(--space-4);display:grid}.row-actions{gap:var(--space-2);justify-content:flex-end;display:inline-flex}.module-card,.empty-state,.auth-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);gap:var(--space-2);padding:var(--space-4);display:grid}.auth-shell{min-height:100svh;padding:var(--space-6);place-items:center;display:grid}.auth-shell>.ui-card{max-width:var(--size-auth-panel-max);width:100%}.auth-form{gap:var(--space-4);display:grid}.auth-panel{max-width:var(--size-auth-panel-max);width:100%}.auth-panel-error{border-color:var(--color-danger-border)}.error-box{background:var(--color-danger-surface);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);color:var(--color-danger);padding:var(--space-2) var(--space-4)}.button{background:var(--color-primary);border-radius:var(--radius-md);color:var(--color-on-primary);font-weight:var(--font-weight-bold);min-height:var(--size-control-height);padding:var(--space-2) var(--space-4);justify-content:center;display:inline-flex}.button:hover{background:var(--color-primary-hover)}@media (width<=64rem){.app-shell{padding-left:0}.sidebar{box-shadow:var(--shadow-elevated);max-width:var(--size-sidebar-width);width:min(var(--size-sidebar-width), 100%);transition:transform .16s;top:0;bottom:0;left:0;transform:translate(-100%)}.app-shell.is-sidebar-open .sidebar{transform:translate(0)}.sidebar-backdrop{background:var(--color-overlay);cursor:pointer;z-index:20;border:0;padding:0;display:none;position:fixed;inset:0}.app-shell.is-sidebar-open .sidebar-backdrop{display:block}.topbar-menu-button{display:inline-flex}.topbar{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);flex-direction:row}.workspace-content{padding:var(--space-6)}}@media (width<=39.9375rem){.sidebar{padding:var(--space-4)}.topbar{flex-direction:column;align-items:stretch}.topbar-main{align-items:flex-start}.topbar-user,.topbar-user-menu{width:100%}.topbar-user{justify-content:space-between}.workspace-content,.auth-shell{padding:var(--space-4)}.page-header h1,.auth-panel h1{font-size:var(--font-size-xl)}.button{width:100%}.row-actions{width:100%;display:grid}}
