:root{--color-success: #28a745;--color-success-bg: #d4edda;--color-success-text: #155724;--color-warning: #f39c12;--color-warning-bg: #fff3cd;--color-warning-text: #856404;--color-danger: #e74c3c;--color-danger-bg: #fee2e2;--color-danger-text: #991b1b;--color-info: #3498db;--color-info-bg: #e8f4f8;--color-info-text: #1a5276;--color-debit: #c0392b;--color-credit: #27ae60;--badge-open: #E8A832;--badge-pending: #3498db;--badge-completed: #27ae60;--badge-voided: #e74c3c;--badge-draft: #95a5a6;--badge-posted: #27ae60;--badge-closed: #34495e}:root,[data-theme=forest]{--color-primary: #2D4A3E;--color-primary-hover: #1A3A2A;--color-primary-light: #E8F4F8;--color-primary-rgb: 45, 74, 62;--color-accent: #E8A832;--color-accent-hover: #D4A84B;--color-bg-page: #F0F7FA;--color-bg-surface: #ffffff;--color-bg-surface-raised: #ffffff;--color-bg-muted: #E8F4F8;--color-bg-hover: #F0F7FA;--color-bg-section: #f8f9fa;--color-text: #2D3748;--color-text-secondary: #4A5568;--color-text-muted: #718096;--color-text-inverse: #ffffff;--color-border: #C5D8E3;--color-border-light: #E8F4F8;--color-border-dark: #dee2e6;--color-sidebar-bg: #2D3748;--color-sidebar-text: #F7FAFC;--color-sidebar-text-muted: #718096;--color-sidebar-hover: rgba(59, 91, 122, .25);--color-sidebar-active: rgba(59, 91, 122, .4);--color-sidebar-accent: #3B5B7A;--color-sidebar-border: rgba(255, 255, 255, .1);--color-logo-peak: #d4edda;--color-logo-mist: #a8d5a2;--color-logo-text: #ffffff;--color-logo-tagline: rgba(255, 255, 255, .6);--gradient-header: linear-gradient(135deg, #2D4A3E 0%, #1A3A2A 100%);--gradient-header-alt: linear-gradient(135deg, #3B5B7A 0%, #2D4A3E 100%);--color-admin-bg: linear-gradient(135deg, #2D3748 0%, #1a202c 100%);--color-admin-accent: #E8A832;--color-focus-ring: rgba(45, 74, 62, .2);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .15);--shadow-focus: 0 0 0 3px var(--color-focus-ring)}[data-theme=mountain]{--color-primary: #3B5B7A;--color-primary-hover: #2d4a5f;--color-primary-light: #B8D4E3;--color-primary-rgb: 59, 91, 122;--color-accent: #E8A832;--color-accent-hover: #D4A84B;--color-bg-page: #F0F7FA;--color-bg-surface: #ffffff;--color-bg-surface-raised: #ffffff;--color-bg-muted: #E8F4F8;--color-bg-hover: #F0F7FA;--color-bg-section: #f8f9fa;--color-text: #2D3748;--color-text-secondary: #4A5568;--color-text-muted: #718096;--color-text-inverse: #ffffff;--color-border: #C5D8E3;--color-border-light: #E8F4F8;--color-border-dark: #dee2e6;--color-sidebar-bg: #3B5B7A;--color-sidebar-text: #F7FAFC;--color-sidebar-text-muted: #B8D4E3;--color-sidebar-hover: rgba(255, 255, 255, .1);--color-sidebar-active: rgba(255, 255, 255, .2);--color-sidebar-accent: #89C4DC;--color-sidebar-border: rgba(255, 255, 255, .15);--color-logo-peak: #b8d4e8;--color-logo-mist: #7eb8da;--color-logo-text: #ffffff;--color-logo-tagline: rgba(255, 255, 255, .6);--gradient-header: linear-gradient(135deg, #3B5B7A 0%, #2d4a5f 100%);--gradient-header-alt: linear-gradient(135deg, #89C4DC 0%, #3B5B7A 100%);--color-admin-bg: linear-gradient(135deg, #3B5B7A 0%, #2d4a5f 100%);--color-admin-accent: #E8A832;--color-focus-ring: rgba(59, 91, 122, .2)}[data-theme=winter]{--color-primary: #4a6572;--color-primary-hover: #3a5562;--color-primary-light: #e8f4f8;--color-primary-rgb: 74, 101, 114;--color-accent: #7eb8da;--color-accent-hover: #5ca8d0;--color-bg-page: #f0f5f7;--color-bg-surface: #ffffff;--color-bg-surface-raised: #ffffff;--color-bg-muted: #e8f0f3;--color-bg-hover: #dce8ed;--color-bg-section: #f5f9fb;--color-text: #2d3e47;--color-text-secondary: #4a6572;--color-text-muted: #6b8a99;--color-text-inverse: #ffffff;--color-border: #c5d5dc;--color-border-light: #dce8ed;--color-border-dark: #b0c4ce;--color-sidebar-bg: #3a5565;--color-sidebar-text: #f0f5f7;--color-sidebar-text-muted: #a8c4d0;--color-sidebar-hover: rgba(126, 184, 218, .15);--color-sidebar-active: rgba(126, 184, 218, .25);--color-sidebar-accent: #7eb8da;--color-sidebar-border: rgba(255, 255, 255, .1);--color-logo-peak: #e8f4f8;--color-logo-mist: #a8c4d0;--color-logo-text: #ffffff;--color-logo-tagline: rgba(255, 255, 255, .6);--gradient-header: linear-gradient(135deg, #4a6572 0%, #3a5565 100%);--gradient-header-alt: linear-gradient(135deg, #5a7a8a 0%, #4a6572 100%);--color-admin-bg: linear-gradient(135deg, #3a5565 0%, #2d4450 100%);--color-admin-accent: #7eb8da;--color-focus-ring: rgba(74, 101, 114, .2)}[data-theme=twilight]{--color-primary: #89C4DC;--color-primary-hover: #B8D4E3;--color-primary-light: #3B5B7A;--color-primary-rgb: 137, 196, 220;--color-accent: #E8A832;--color-accent-hover: #D4A84B;--color-bg-page: #1a1f2e;--color-bg-surface: #2D3748;--color-bg-surface-raised: #3d4556;--color-bg-muted: #252b3b;--color-bg-hover: #353d4f;--color-bg-section: #252b3b;--color-text: #F7FAFC;--color-text-secondary: #C5D8E3;--color-text-muted: #718096;--color-text-inverse: #2D3748;--color-border: #404859;--color-border-light: #353d4f;--color-border-dark: #4a5568;--color-sidebar-bg: #151922;--color-sidebar-text: #F7FAFC;--color-sidebar-text-muted: #718096;--color-sidebar-hover: rgba(137, 196, 220, .15);--color-sidebar-active: rgba(137, 196, 220, .25);--color-sidebar-accent: #89C4DC;--color-sidebar-border: rgba(255, 255, 255, .08);--color-logo-peak: #c9b8d4;--color-logo-mist: #9b8aa6;--color-logo-text: #e8e6e3;--color-logo-tagline: rgba(255, 255, 255, .5);--gradient-header: linear-gradient(135deg, #252b3b 0%, #1a1f2e 100%);--gradient-header-alt: linear-gradient(135deg, #3B5B7A 0%, #252b3b 100%);--color-admin-bg: linear-gradient(135deg, #151922 0%, #0d1117 100%);--color-admin-accent: #E8A832;--color-focus-ring: rgba(137, 196, 220, .3);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .5);--color-success-bg: rgba(40, 167, 69, .15);--color-success-text: #6ee7b7;--color-warning-bg: rgba(243, 156, 18, .15);--color-warning-text: #fcd34d;--color-danger-bg: rgba(231, 76, 60, .15);--color-danger-text: #fca5a5;--color-info-bg: rgba(52, 152, 219, .15);--color-info-text: #93c5fd}html{transition:background-color .3s ease,color .3s ease}html.theme-transitioning,html.theme-transitioning *,html.theme-transitioning *:before,html.theme-transitioning *:after{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease!important}.detail-container,.list-container{background:var(--color-bg-surface);border-radius:8px;box-shadow:var(--shadow-sm);padding:2rem;max-width:1200px;margin:0 auto}.detail-container>.btn-back,.list-container>.btn-back{margin-bottom:12px}.detail-container{max-width:900px}.detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--color-border-light)}.detail-header h2{margin:0;color:var(--color-text);font-size:1.4rem;font-weight:600}.btn-back{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:0;font-size:.875rem;font-weight:500;display:inline-flex;align-items:center;gap:4px;transition:color .15s}.btn-back:hover{color:var(--color-primary-hover);text-decoration:underline}.btn-back:focus{outline:none;text-decoration:underline}.page-header-with-back{margin-bottom:16px}.page-header-with-back .btn-back{margin-bottom:8px}.page-header-with-back h1,.page-header-with-back h2{margin:0;color:var(--color-text);font-size:1.4rem;font-weight:600}.page-header-with-back .subtitle{margin:4px 0 0;color:var(--color-text-muted);font-size:.95rem}.section-header{margin-top:8px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between}.section-header h3{color:var(--color-text);font-size:1.1rem;font-weight:600;margin:0}.success{background:var(--color-success-bg);color:var(--color-success-text);padding:12px;border-radius:4px;margin-bottom:12px;border-left:4px solid var(--color-success);font-weight:500}.error{background:var(--color-danger-bg);color:var(--color-danger-text);padding:12px;border-radius:4px;margin-bottom:12px;border-left:4px solid var(--color-danger);font-weight:500}.warning{background:var(--color-warning-bg);color:var(--color-warning-text);padding:12px;border-radius:4px;margin-bottom:12px;border-left:4px solid var(--color-warning);font-weight:500}.info{background:var(--color-info-bg);color:var(--color-info-text);padding:12px;border-radius:4px;margin-bottom:12px;border-left:4px solid var(--color-info);font-weight:500}.loading{align-items:center;justify-content:center;display:flex;flex-direction:column;padding:3rem;color:var(--color-text-secondary);gap:12px}.loading .spinner{border:4px solid var(--color-border-light);border-top:4px solid var(--color-primary);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-section{display:flex;flex-direction:column}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:8px}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:0}.form-group label{font-weight:600;color:var(--color-text);font-size:.875rem;margin-bottom:4px}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group input[type=time],.form-group input[type=email],.form-group input[type=url],.form-group input[type=password],.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--color-bg-surface);color:var(--color-text);transition:border-color .2s,box-shadow .2s}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group input[type=date]:focus,.form-group input[type=time]:focus,.form-group input[type=email]:focus,.form-group input[type=url]:focus,.form-group input[type=password]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-group input[type=text]::placeholder,.form-group input[type=number]::placeholder,.form-group input[type=date]::placeholder,.form-group input[type=time]::placeholder,.form-group input[type=email]::placeholder,.form-group input[type=url]::placeholder,.form-group input[type=password]::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted)}.form-group input[type=text]:disabled,.form-group input[type=number]:disabled,.form-group input[type=date]:disabled,.form-group input[type=time]:disabled,.form-group input[type=email]:disabled,.form-group input[type=url]:disabled,.form-group input[type=password]:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--color-bg-muted);cursor:not-allowed;opacity:.6}.form-group select{cursor:pointer}.form-group textarea{resize:vertical;min-height:80px}.form-group .hint{font-size:.875rem;color:var(--color-text-muted);margin-top:4px}.full-width{grid-column:1/-1}.form-actions,.form-actions-inline{display:flex;gap:12px;padding-top:16px;flex-wrap:wrap}.form-actions{border-top:2px solid var(--color-border-light)}.form-actions-inline{align-items:center}.btn-primary,.btn-secondary,.btn-success,.btn-danger,.btn-accent{padding:.875rem 1.75rem;border:none;border-radius:4px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;text-align:center}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-success:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-accent:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled,.btn-secondary:disabled,.btn-success:disabled,.btn-danger:disabled,.btn-accent:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:.875rem 1.75rem;border:none;border-radius:4px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block;text-align:center;padding:.5rem 1rem;font-size:.875rem}.btn-small:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-small:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-bg-surface);color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-primary);color:var(--color-text-inverse)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(.9)}.btn-success:disabled{background:var(--color-text-muted)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.9)}.btn-accent{background:var(--color-accent);color:var(--color-text)}.btn-accent:hover:not(:disabled){background:var(--color-accent-hover)}.btn-icon{padding:.5rem;border:none;background:transparent;cursor:pointer;border-radius:4px;transition:background-color .2s;font-size:1.1rem}.btn-icon:hover:not(:disabled){background-color:var(--color-bg-hover)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-icon.btn-edit{color:var(--color-primary)}.btn-icon.btn-delete{color:var(--color-danger)}.btn-link{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:4px 8px;font-size:.875rem;text-decoration:underline}.btn-link:hover{color:var(--color-primary-hover)}.badge{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background-color:var(--color-primary)}.badge-open{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-open)}.badge-pending{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-pending)}.badge-completed{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-completed)}.badge-voided{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-voided)}.badge-draft{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-draft)}.badge-posted{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-posted)}.badge-closed{display:inline-block;padding:.35rem .65rem;font-size:.75rem;font-weight:600;border-radius:4px;color:#fff;background:var(--badge-closed)}.table-container{overflow-x:auto;margin-top:12px;border-radius:8px;border:1px solid var(--color-border-dark)}.table-container table{width:100%;border-collapse:collapse;background:var(--color-bg-surface)}.table-container table thead{background-color:var(--color-bg-muted)}.table-container table thead th{padding:12px;text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border-dark);font-size:.95rem}.table-container table tbody tr{border-bottom:1px solid var(--color-border-dark);transition:background-color .2s}.table-container table tbody tr:hover{background-color:var(--color-bg-hover)}.table-container table tbody td{padding:12px;vertical-align:top;color:var(--color-text);font-size:.95rem}.table-container table tbody td.number-cell{text-align:right;font-variant-numeric:tabular-nums}.table-container table tbody td.actions-cell{text-align:right;white-space:nowrap}.filter-bar{display:flex;gap:12px;margin-bottom:16px;align-items:flex-end;flex-wrap:wrap}.filter-bar .form-group{min-width:150px;margin-bottom:0}.inline-form{background:var(--color-bg-muted);border:2px solid var(--color-border-light);border-radius:4px;padding:16px;margin-bottom:16px}.inline-form h4{margin:0 0 12px;color:var(--color-text)}.inline-form .form-group{margin-bottom:8px}.inline-form .form-group.flex-grow{flex:1;min-width:200px}.empty-state{text-align:center;padding:20px;color:var(--color-text-muted);background:var(--color-bg-muted);border-radius:8px}.empty-state p{margin-bottom:12px}.inline-input{width:100px;padding:4px 8px;border:1px solid var(--color-border-dark);border-radius:4px;background:var(--color-bg-surface);color:var(--color-text)}.inline-input-wide{width:100%;padding:4px 8px;border:1px solid var(--color-border-dark);border-radius:4px;background:var(--color-bg-surface);color:var(--color-text)}.inline-select{padding:4px 8px;border:1px solid var(--color-border-dark);border-radius:4px;background:var(--color-bg-surface);color:var(--color-text)}code{background:var(--color-bg-muted);padding:2px 6px;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:.875rem;color:var(--color-text)}.account-display{font-family:Consolas,Monaco,monospace;background:var(--color-bg-muted);padding:4px 8px;border-radius:4px}.account-display .account-number{font-weight:600;color:var(--color-primary);margin-right:8px}.account-display .account-name{color:var(--color-text)}.amount-debit{color:var(--color-debit);font-weight:500;font-variant-numeric:tabular-nums}.amount-credit{color:var(--color-credit);font-weight:500;font-variant-numeric:tabular-nums}.amount{font-variant-numeric:tabular-nums;text-align:right}.detail-overlay{position:fixed;inset:0;background:#0000004d;display:flex;justify-content:flex-end;z-index:1050}.detail-panel{width:400px;max-width:90vw;height:100%;background:var(--color-bg-surface);box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column}.detail-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--color-border-light)}.detail-panel-header h3{margin:0;color:var(--color-text)}.detail-panel-content{flex:1;padding:16px;overflow-y:auto}.detail-field{margin-bottom:12px}.detail-field label{display:block;font-size:.875rem;color:var(--color-text-muted);margin-bottom:4px}.detail-field span{color:var(--color-text)}.detail-panel-actions{padding:16px;border-top:1px solid var(--color-border-light);display:flex;gap:8px}.header-right{display:flex;align-items:center;gap:12px}.header-actions{display:flex;gap:8px}.flex-grow{flex:1}.action-group-left,.action-group-right{display:flex;gap:8px;flex-wrap:wrap}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-warning{color:var(--color-warning)}.mt-sm{margin-top:8px}.mt-md{margin-top:12px}.mt-lg{margin-top:16px}.mb-sm{margin-bottom:8px}.mb-md{margin-bottom:12px}.mb-lg{margin-bottom:16px}.gap-sm{gap:8px}.gap-md{gap:12px}.gap-lg{gap:16px}.document-lines{background:var(--color-bg-surface);border:1px solid var(--color-border-dark);border-radius:6px;overflow:hidden;margin-top:12px}.document-lines table{width:100%;border-collapse:collapse}.document-lines thead{background:var(--color-bg-muted)}.document-lines thead th{padding:12px 16px;text-align:left;font-weight:600;font-size:.95rem;color:var(--color-text);border-bottom:2px solid var(--color-border-dark)}.document-lines thead th.col-amount{text-align:right}.document-lines thead th.col-actions{text-align:center;width:60px}.document-lines tbody tr{border-bottom:1px solid var(--color-border-light);transition:background-color .2s}.document-lines tbody tr:hover{background:var(--color-bg-hover)}.document-lines tbody tr:last-child{border-bottom:none}.document-lines tbody td{padding:12px 16px;vertical-align:middle;font-size:.95rem;color:var(--color-text)}.document-lines tbody td.col-amount{text-align:right}.document-lines tbody td.col-actions{text-align:center}.document-lines tfoot tr{border-top:2px solid var(--color-border-dark)}.document-lines tfoot td{padding:12px 16px;font-size:.95rem}.document-lines .line-input,.document-lines .line-input-description,.document-lines .line-input-amount,.document-lines .line-select{width:100%;padding:8px 12px;border:1px solid var(--color-border-dark);border-radius:4px;font-size:.95rem;color:var(--color-text);background:var(--color-bg-surface);transition:border-color .2s,box-shadow .2s}.document-lines .line-input:focus,.document-lines .line-input-description:focus,.document-lines .line-input-amount:focus,.document-lines .line-select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.document-lines .line-input:disabled,.document-lines .line-input-description:disabled,.document-lines .line-input-amount:disabled,.document-lines .line-select:disabled{background:var(--color-bg-muted);color:var(--color-text-secondary);cursor:not-allowed}.document-lines .line-input-amount{text-align:right;font-variant-numeric:tabular-nums;min-width:120px}.document-lines .line-input-description{min-width:200px}.document-lines .account-field{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-muted);border:1px solid var(--color-border-light);border-radius:4px;font-size:.95rem}.document-lines .account-field span{flex:1;color:var(--color-text)}.document-lines .account-field .btn-clear{padding:2px 6px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:4px;font-size:.875rem}.document-lines .account-field .btn-clear:hover{background:var(--color-border-light);color:var(--color-danger)}.document-lines-totals{background:var(--color-bg-section);font-weight:600}.document-lines-totals .totals-label{text-align:right;padding-right:20px!important;color:var(--color-text)}.document-lines-totals .totals-amount{text-align:right;font-variant-numeric:tabular-nums}.document-lines-difference{background:var(--color-warning-bg)}.document-lines-difference td{color:var(--color-warning-text);font-weight:600}.document-lines-difference .difference-label{text-align:right;padding-right:20px!important}.document-lines-difference .difference-amount{text-align:center}.document-lines-difference .difference-amount.negative{color:var(--color-danger-text)}.document-lines .col-account{width:35%;min-width:250px}.document-lines .col-description{width:30%;min-width:180px}.document-lines .col-amount{width:15%;min-width:130px}.document-lines .col-actions{width:60px}.admin-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-admin-bg);color:var(--color-admin-accent);text-decoration:none;border-radius:4px;font-size:.875rem;font-weight:500}.admin-link:hover{opacity:.9}.user-menu{position:relative;display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:4px;cursor:pointer;transition:background .15s}.user-menu:hover{background:var(--color-bg-hover)}.user-menu .user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.user-menu .user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.user-menu .user-name{font-weight:500;color:var(--color-text);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu .dropdown-arrow{font-size:.625rem;color:var(--color-text-muted)}.user-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--color-bg-surface);border-radius:6px;box-shadow:var(--shadow-md);min-width:220px;z-index:1050;overflow:hidden;border:1px solid var(--color-border)}.user-dropdown .dropdown-header{padding:12px;background:var(--color-bg-section)}.user-dropdown .dropdown-header .dropdown-email{font-size:.875rem;color:var(--color-text-muted)}.user-dropdown .dropdown-divider{height:1px;background:var(--color-border-light)}.user-dropdown .dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 12px;color:var(--color-text);text-decoration:none;font-size:.875rem;transition:background .15s;border:none;background:none;width:100%;text-align:left;cursor:pointer}.user-dropdown .dropdown-item:hover{background:var(--color-bg-hover)}.user-dropdown .dropdown-item.logout{color:var(--color-danger)}.theme-picker{position:relative;display:flex;align-items:center}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:var(--color-text-secondary);font-size:1.25rem;transition:all .15s}.theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text)}.theme-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--color-bg-surface);border-radius:6px;box-shadow:var(--shadow-md);min-width:180px;z-index:1000;overflow:hidden;border:1px solid var(--color-border)}.theme-dropdown .theme-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 12px;color:var(--color-text);font-size:.875rem;cursor:pointer;transition:background .15s;border:none;background:none;width:100%;text-align:left}.theme-dropdown .theme-option:hover{background:var(--color-bg-hover)}.theme-dropdown .theme-option.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.theme-dropdown .theme-option .theme-icon{font-size:1rem}.theme-dropdown .theme-option .theme-check{margin-left:auto;color:var(--color-primary)}.modal-backdrop,.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1050}.modal,.modal-container{background:var(--color-bg-surface);border-radius:8px;box-shadow:var(--shadow-lg);width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border-light)}.modal-header h3{margin:0;font-size:1.1rem;color:var(--color-text)}.modal-header .btn-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.modal-header .btn-close:hover{color:var(--color-text)}.modal-body{padding:20px;overflow-y:auto}.modal-body .confirm-text{margin:0 0 16px;color:var(--color-text)}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid var(--color-border-light)}.admin-page,.page-container{background:var(--color-bg-surface);border-radius:8px;box-shadow:var(--shadow-sm);padding:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{margin:0;font-size:1.25rem;color:var(--color-text)}.alert{padding:12px;border-radius:6px;margin-bottom:12px}.alert-success{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success)}.alert-error{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger)}.alert-warning{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning)}.alert-info{background:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info)}.role-badge{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.role-badge.admin{background:var(--color-info-bg);color:var(--color-info-text)}.role-badge.manager{background:var(--color-success-bg);color:var(--color-success-text)}.role-badge.user{background:var(--color-warning-bg);color:var(--color-warning-text)}.role-badge.viewer{background:var(--color-bg-muted);color:var(--color-text-secondary)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-badge.pending{background:var(--badge-pending);color:#fff}.status-badge.approved{background:var(--color-success);color:#fff}.status-badge.denied{background:var(--color-danger);color:#fff}.status-badge.active{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.inactive{background:var(--color-danger-bg);color:var(--color-danger-text)}.contact-field,.entity-field{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-hover);border:1px solid var(--color-border-light);border-radius:4px}.contact-field span,.entity-field span{flex:1;color:var(--color-text)}.contact-field .btn-clear,.entity-field .btn-clear{padding:2px 6px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:4px;font-size:.875rem}.contact-field .btn-clear:hover,.entity-field .btn-clear:hover{background:var(--color-border-light);color:var(--color-danger)}.section-title{margin-top:16px;margin-bottom:12px;font-size:1.1rem;font-weight:600;color:var(--color-text);padding-bottom:8px;border-bottom:1px solid var(--color-border-light)}.search-sort-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;align-items:center;justify-content:space-between}.search-sort-bar .search-group{display:flex;gap:8px;flex:1;min-width:300px}.search-sort-bar .search-group input{flex:1;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--color-bg-surface);color:var(--color-text);transition:border-color .2s,box-shadow .2s}.search-sort-bar .search-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.search-sort-bar .search-group input::placeholder{color:var(--color-text-muted)}.search-sort-bar .search-group input:disabled{background:var(--color-bg-muted);cursor:not-allowed;opacity:.6}.search-sort-bar .sort-group{display:flex;align-items:center;gap:8px}.search-sort-bar .sort-group label{font-weight:500;color:var(--color-text)}.search-sort-bar .sort-group select{padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background:var(--color-bg-surface);color:var(--color-text);transition:border-color .2s,box-shadow .2s;cursor:pointer}.search-sort-bar .sort-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.search-sort-bar .sort-group select::placeholder{color:var(--color-text-muted)}.search-sort-bar .sort-group select:disabled{background:var(--color-bg-muted);cursor:not-allowed;opacity:.6}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:16px}.pagination .page-info{font-weight:500;color:var(--color-text)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gradient-header);padding:2rem}.auth-card{background:var(--color-bg-surface);border-radius:12px;box-shadow:var(--shadow-lg);width:100%;overflow:hidden}.auth-card.auth-card-sm{max-width:440px}.auth-card.auth-card-md{max-width:600px}.auth-card.auth-card-lg{max-width:700px}.auth-header{background:var(--gradient-header-alt);color:var(--color-text-inverse);padding:2rem;text-align:center}.auth-header h1{margin:0;font-size:2rem;font-weight:700}.auth-header .tagline,.auth-header .subtitle,.auth-header p{margin:.5rem 0 0;opacity:.9;font-size:.95rem}.auth-content{padding:2rem}.auth-content h2{margin:0 0 .5rem;font-size:1.5rem;color:var(--color-text)}.auth-content .subtitle{margin:0 0 2rem;color:var(--color-text-muted);font-size:.95rem}.auth-footer{padding:1.5rem 2rem;background:var(--color-bg-muted);text-align:center;border-top:1px solid var(--color-border)}.auth-footer p{margin:0;font-size:.875rem;color:var(--color-text-muted)}.auth-actions{display:flex;gap:1rem;padding:0 2rem 2rem}.auth-actions button{flex:1}.divider{display:flex;align-items:center;margin:1.5rem 0;color:var(--color-text-muted);font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.divider span{padding:0 1rem}.auth-content button.btn-full,.auth-form button.btn-full{width:100%}.auth-content .btn-primary:hover:not(:disabled),.auth-form .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.auth-content .btn-primary:active:not(:disabled),.auth-form .btn-primary:active:not(:disabled){transform:translateY(0)}.auth-form .form-group{margin-bottom:1.5rem}.auth-form .form-group input{padding:.875rem 1rem;border-width:2px;border-radius:8px;font-size:1rem}@media (max-width: 480px){.auth-page{padding:1rem}.auth-card{border-radius:8px}.auth-header{padding:1.5rem}.auth-header h1{font-size:1.75rem}.auth-content{padding:1.5rem}}*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:light dark}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-page);color:var(--color-text);font-size:.95rem;line-height:1.5;transition:background-color .3s,color .3s}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--color-text)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-muted)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}::selection{background:rgba(var(--color-primary-rgb),.2);color:var(--color-text)}@media (max-width: 768px){.detail-container,.list-container{padding:12px}.detail-header{flex-direction:column;align-items:flex-start;gap:12px}.detail-header h2{font-size:1.25rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.table-container{font-size:.875rem}.table-container table thead th,.table-container table tbody td{padding:.75rem .5rem}}
