*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-tertiary: #f7fafc;--text-primary: #2d3748;--text-secondary: #4a5568;--text-muted: #718096;--border-color: #e1e8ed;--border-light: #e2e8f0;--hover-bg: #f7fafc;--hover-bg-active: #edf2f7;--hover-border: #cbd5e0;--shadow: rgba(0, 0, 0, .05);--shadow-lg: rgba(0, 0, 0, .1);--primary-color: #4299e1;--primary-hover: #3182ce;--primary-active: #2c5282;--error-bg: #fed7d7;--error-border: #fc8181;--error-text: #c53030;--disabled-bg: #f7fafc;--disabled-color: #cbd5e0;--scrollbar-thumb: #cbd5e0;--scrollbar-thumb-hover: #a0aec0;--overlay: rgba(0, 0, 0, .5);--avatar-bg: #e2e8f0;--active-indicator: #3182ce}[data-theme=dark]{--bg-primary: #1a202c;--bg-secondary: #2d3748;--bg-tertiary: #374151;--text-primary: #f7fafc;--text-secondary: #cbd5e0;--text-muted: #9ca3af;--border-color: #4a5568;--border-light: #4a5568;--hover-bg: #374151;--hover-bg-active: #4a5568;--hover-border: #6b7280;--shadow: rgba(0, 0, 0, .3);--shadow-lg: rgba(0, 0, 0, .4);--primary-color: #4299e1;--primary-hover: #3182ce;--primary-active: #2c5282;--error-bg: #742a2a;--error-border: #9b2c2c;--error-text: #fc8181;--disabled-bg: #374151;--disabled-color: #6b7280;--scrollbar-thumb: #4a5568;--scrollbar-thumb-hover: #6b7280;--overlay: rgba(0, 0, 0, .7);--avatar-bg: #4a5568;--active-indicator: #4299e1}body{margin:0;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-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{height:100vh;overflow:hidden}.col-resize-handle{position:absolute;top:0;right:0;bottom:0;width:5px;cursor:col-resize;z-index:1}.col-resize-handle:after{content:"";position:absolute;top:20%;right:1px;bottom:20%;left:1px;width:2px;background:var(--border-color);opacity:0;transition:opacity .15s}.col-resize-handle:hover:after{opacity:1}.App{height:100vh;overflow:hidden}.page-container{width:100%}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.page-container h1{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.page-container p{font-size:1rem;color:var(--text-secondary);line-height:1.6}.language-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-light);background-color:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.language-toggle:hover{background-color:var(--hover-bg);border-color:var(--hover-border);transform:scale(1.05)}.language-toggle:active{transform:scale(.95)}.flag-icon{font-size:1.25rem;line-height:1;display:block}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-light);background-color:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;flex-shrink:0;color:var(--text-secondary)}.theme-toggle:hover{background-color:var(--hover-bg);border-color:var(--hover-border);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{display:block}.user-dropdown{position:relative}.user-dropdown-trigger{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;border:none;background-color:transparent;border-radius:8px;cursor:pointer;transition:background-color .2s ease;font-family:inherit;font-size:.875rem;color:var(--text-secondary)}.user-dropdown-trigger:hover{background-color:var(--hover-bg)}.user-dropdown-trigger-info{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.user-dropdown-name{font-weight:500;color:var(--text-secondary);line-height:1.2}.user-dropdown-company{font-size:.7rem;color:var(--text-muted);line-height:1.2;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--avatar-bg);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.user-dropdown-arrow{color:var(--text-secondary);transition:transform .2s ease;flex-shrink:0}.user-dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:220px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 6px var(--shadow-lg),0 2px 4px var(--shadow);z-index:1000;overflow:hidden;animation:dropdownFadeIn .15s ease-out;transition:background-color .3s ease,border-color .3s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-dropdown-info{padding:.75rem 1rem}.user-dropdown-info-name{font-weight:600;color:var(--text-primary);font-size:.875rem;margin-bottom:.25rem}.user-dropdown-info-email{font-size:.75rem;color:var(--text-muted)}.user-dropdown-divider{height:1px;background-color:var(--border-color)}.user-dropdown-section-label{padding:.4rem 1rem .25rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.user-dropdown-company-row{display:flex;align-items:stretch;width:100%}.user-dropdown-company-item{display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0;padding:.55rem 1rem;border:none;background:transparent;text-align:left;cursor:pointer;font-size:.875rem;color:var(--text-secondary);transition:background-color .15s ease;font-family:inherit;gap:.5rem}.user-dropdown-company-item:hover:not(:disabled){background-color:var(--hover-bg);color:var(--text-primary)}.user-dropdown-company-item.active{color:var(--text-primary);font-weight:500;cursor:default}.user-dropdown-company-item.active svg{color:var(--color-primary, #3b82f6);flex-shrink:0}.user-dropdown-copy-company-id{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2.25rem;margin:0;padding:0;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:background-color .15s ease,color .15s ease}.user-dropdown-copy-company-id:hover{background-color:var(--hover-bg);color:var(--text-secondary)}.user-dropdown-copy-company-id:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:-2px}.user-dropdown-company-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-company-id{font-weight:400;color:var(--text-muted);font-variant-numeric:tabular-nums}.user-dropdown-company-add{display:block;padding:.55rem 1rem;font-size:.8rem;color:var(--color-primary, #3b82f6);text-decoration:none;transition:background-color .15s ease}.user-dropdown-company-add:hover{background-color:var(--hover-bg)}.user-dropdown-switch-form{padding:.75rem 1rem}.user-dropdown-switch-target{font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.user-dropdown-switch-input{width:100%;padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-primary, var(--bg-secondary));color:var(--text-primary);font-size:.875rem;font-family:inherit;box-sizing:border-box}.user-dropdown-switch-input:focus{outline:none;border-color:var(--color-primary, #3b82f6)}.user-dropdown-switch-error{margin-top:.35rem;font-size:.75rem;color:var(--color-danger, #ef4444)}.user-dropdown-switch-actions{display:flex;gap:.5rem;margin-top:.5rem}.user-dropdown-switch-confirm{flex:1;padding:.35rem .6rem;border:none;border-radius:5px;background:var(--color-primary, #3b82f6);color:#fff;font-size:.8rem;font-family:inherit;cursor:pointer}.user-dropdown-switch-confirm:disabled{opacity:.6;cursor:not-allowed}.user-dropdown-switch-cancel{padding:.35rem .6rem;border:1px solid var(--border-color);border-radius:5px;background:transparent;color:var(--text-secondary);font-size:.8rem;font-family:inherit;cursor:pointer}.user-dropdown-switch-cancel:hover{background:var(--hover-bg)}.user-dropdown-item{display:block;width:100%;padding:.75rem 1rem;border:none;background-color:transparent;text-align:left;cursor:pointer;font-size:.875rem;color:var(--text-secondary);transition:background-color .2s ease,color .2s ease;font-family:inherit;text-decoration:none}.user-dropdown-item:hover{background-color:var(--hover-bg);color:var(--text-primary)}.user-dropdown-item:active{background-color:var(--hover-bg-active)}@media(max-width:767px){.user-dropdown-trigger-info{display:none}}.header{display:flex;align-items:center;justify-content:space-between;height:56px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:0 1rem;box-shadow:0 1px 3px var(--shadow);z-index:1000;position:relative;transition:background-color .3s ease,border-color .3s ease}.header-left{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}.header-menu-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background-color:transparent;border-radius:8px;cursor:pointer;color:var(--text-secondary);transition:all .2s ease;flex-shrink:0}.header-menu-button:hover{background-color:var(--hover-bg);color:var(--text-primary)}.header-menu-button:active{transform:scale(.95)}.header-logo{min-width:0}.header-logo h1{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary);letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.footer{background-color:var(--bg-secondary);border-top:1px solid var(--border-color);padding:.5rem 1rem;margin-top:auto;transition:background-color .3s ease,border-color .3s ease}.footer-content{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.25rem .5rem;max-width:100%;text-align:center}.footer-line{margin:0;font-size:.75rem;color:var(--text-muted);line-height:1.4}.footer-sep{color:var(--text-muted);-webkit-user-select:none;user-select:none}.footer-link{font-size:inherit;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.footer-link:hover{color:var(--text-primary)}.sidebar{position:fixed;left:0;top:56px;bottom:0;width:250px;background-color:var(--bg-secondary);border-right:1px solid var(--border-color);transition:width .3s ease,transform .3s ease,background-color .3s ease,border-color .3s ease;z-index:999;overflow-y:auto;overflow-x:hidden}.sidebar.collapsed{width:64px}.sidebar.resizing{transition:none}.sidebar-resizer{position:absolute;top:0;right:0;width:4px;height:100%;cursor:col-resize;z-index:10}.sidebar-resizer:hover,.sidebar.resizing .sidebar-resizer{background-color:var(--active-indicator)}.sidebar-nav{padding:1rem 0;display:flex;flex-direction:column;height:100%}.sidebar-nav-list-bottom{margin-top:auto;border-top:1px solid var(--border-color);padding-top:.5rem}.sidebar-nav-list{list-style:none;margin:0;padding:0}.sidebar-nav-item{margin:.25rem 0}.sidebar-nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;color:var(--text-secondary);text-decoration:none;transition:all .2s ease;position:relative;white-space:nowrap}.sidebar-nav-link:hover{background-color:var(--hover-bg);color:var(--text-primary)}.sidebar-nav-link.active{background-color:var(--hover-bg-active);color:var(--text-primary);font-weight:500}.sidebar-nav-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background-color:var(--active-indicator)}.sidebar-nav-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px}.sidebar-nav-label{font-size:.875rem;transition:opacity .2s ease}.sidebar.collapsed .sidebar-nav-link{justify-content:center;padding:.75rem}.sidebar.collapsed .sidebar-nav-label{opacity:0;width:0;overflow:hidden}@media(max-width:767px){.sidebar{transform:translate(-100%);width:250px}.sidebar:not(.collapsed){transform:translate(0);box-shadow:2px 0 8px #00000026}.sidebar.collapsed{transform:translate(-100%)}.sidebar-resizer{display:none}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.layout-body{display:flex;flex:1;overflow:hidden;position:relative}.sidebar-overlay{position:fixed;top:56px;left:0;right:0;bottom:0;background-color:#00000080;z-index:998;display:none}@media(max-width:767px){.sidebar-overlay{display:block}}.layout-main{flex:1;display:flex;flex-direction:column;overflow:hidden;margin-left:0;transition:margin-left .3s ease;width:100%}.layout-main.layout-main--with-sidebar{margin-left:var(--layout-sidebar-width, 64px)}@media(max-width:767px){.layout-main.layout-main--with-sidebar{margin-left:0}}.layout-main.auth-page-layout{margin-left:0!important}.layout-content{flex:1;overflow-y:auto;padding:2rem;background-color:var(--bg-primary);min-height:0;transition:background-color .3s ease}@media(max-width:767px){.layout-content{padding:.75rem 1rem}}@media(min-width:768px)and (max-width:1023px){.layout-content{padding:1.25rem 1.5rem}}@media(min-width:768px){.layout-main.no-sidebar{margin-left:0}}.public-home{min-height:calc(100vh - 200px);display:flex;flex-direction:column}.public-home-hero{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6rem 2rem;display:flex;justify-content:center;align-items:center;text-align:center}.public-home-content{max-width:800px;margin:0 auto}.public-home-title{font-size:3.5rem;font-weight:700;margin-bottom:1.5rem;line-height:1.2}.public-home-subtitle{font-size:1.5rem;margin-bottom:2.5rem;opacity:.95;line-height:1.6}.public-home-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.public-home-button{display:inline-block;padding:1rem 2.5rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:1.1rem;transition:all .3s ease;border:2px solid transparent}.public-home-button-primary{background-color:#fff;color:#667eea}.public-home-button-primary:hover{background-color:var(--hover-bg);transform:translateY(-2px);box-shadow:0 10px 20px #0003}.public-home-button-secondary{background-color:transparent;color:#fff;border-color:#fff}.public-home-button-secondary:hover{background-color:#ffffff1a;transform:translateY(-2px);box-shadow:0 10px 20px #0003}.public-home-features{padding:5rem 2rem;background-color:var(--bg-tertiary);transition:background-color .3s ease}.public-home-container{max-width:1200px;margin:0 auto}.public-home-features-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;color:var(--text-primary)}.public-home-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.public-home-feature{background:var(--bg-secondary);padding:2.5rem;border-radius:12px;text-align:center;box-shadow:0 4px 6px var(--shadow);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease}.public-home-feature:hover{transform:translateY(-5px);box-shadow:0 10px 25px var(--shadow-lg)}.public-home-feature-icon{color:#667eea;margin-bottom:1.5rem;display:flex;justify-content:center}.public-home-feature-title{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.public-home-feature-description{font-size:1rem;color:var(--text-muted);line-height:1.6}@media(max-width:768px){.public-home-title{font-size:2.5rem}.public-home-subtitle{font-size:1.25rem}.public-home-hero{padding:4rem 1.5rem}.public-home-features{padding:3rem 1.5rem}.public-home-features-grid{grid-template-columns:1fr}}.page-not-found{text-align:center;padding:4rem 2rem}.page-not-found h1{font-size:4rem;margin-bottom:1rem;color:var(--text-primary)}.page-not-found h2{margin-bottom:1rem;color:var(--text-secondary)}.page-not-found p{margin-bottom:2rem;color:var(--text-muted)}.page-not-found-link{display:inline-block;padding:.75rem 1.5rem;background-color:var(--primary-color);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:background-color .2s ease}.page-not-found-link:hover{background-color:var(--primary-hover)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.auth-page-container{background-color:var(--bg-secondary);border-radius:12px;width:100%;max-width:400px;box-shadow:0 20px 25px -5px var(--shadow-lg),0 10px 10px -5px var(--shadow);padding:2.5rem;transition:background-color .3s ease}.auth-page-header{text-align:center;margin-bottom:2rem}.auth-page-logo{margin:0 0 1rem;font-size:2rem;font-weight:600;color:var(--text-primary);letter-spacing:-.5px}.auth-page-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.auth-page-form{margin-bottom:1.5rem}.auth-page-field{margin-bottom:1.25rem}.auth-page-field label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.auth-page-field input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:.875rem;font-family:inherit;color:var(--text-primary);background-color:var(--bg-secondary);transition:border-color .2s ease,box-shadow .2s ease,background-color .3s ease;box-sizing:border-box}.auth-page-field input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4299e11a}.auth-page-field input:disabled{background-color:var(--disabled-bg);cursor:not-allowed}.auth-page-error{padding:.75rem;margin-bottom:1rem;background-color:var(--error-bg);border:1px solid var(--error-border);border-radius:6px;color:var(--error-text);font-size:.875rem}.auth-page-submit{width:100%;padding:.75rem;background-color:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease;font-family:inherit;margin-top:.5rem}.auth-page-submit:hover:not(:disabled){background-color:var(--primary-hover)}.auth-page-submit:active:not(:disabled){background-color:var(--primary-active)}.auth-page-submit:disabled{background-color:var(--disabled-color);cursor:not-allowed}.auth-page-footer{text-align:center;font-size:.875rem;color:var(--text-muted);padding-top:1.5rem;border-top:1px solid var(--border-color)}.auth-page-link{color:var(--primary-color);text-decoration:none;font-weight:500;margin-left:.25rem}.auth-page-link:hover{color:var(--primary-hover);text-decoration:underline}@media(max-width:480px){.auth-page{padding:1rem}.auth-page-container{padding:1.5rem}.auth-page-logo{font-size:1.5rem}.auth-page-title{font-size:1.25rem}}.suppliers-page{display:flex;flex-direction:column;gap:1rem}.suppliers-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.suppliers-page-header h1,.supplier-form-page-header h1,.supplier-details-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.suppliers-page-header p,.supplier-form-page-header p{margin-top:.25rem;color:var(--text-secondary)}.suppliers-page-primary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--primary-color);color:#fff}.suppliers-page-secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);white-space:nowrap}.suppliers-page-secondary-button:hover:not(:disabled){background:var(--bg-tertiary)}.suppliers-page-secondary-button:disabled{opacity:.5;cursor:not-allowed}.suppliers-page-filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.suppliers-page-filters input,.suppliers-page-filters select,.supplier-form-page-form input,.supplier-form-page-form select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.suppliers-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.suppliers-page-table{border-collapse:collapse}.suppliers-page-table th,.suppliers-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suppliers-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);position:relative}.suppliers-page-empty,.suppliers-page-state,.suppliers-page-error,.supplier-details-error,.supplier-form-page-error{padding:1rem}.suppliers-page-error,.supplier-details-error,.supplier-form-page-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:10px}.suppliers-page-actions{display:flex;gap:.5rem}.suppliers-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:.45rem .75rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font:inherit;cursor:pointer}.suppliers-page-pagination{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.suppliers-page-pagination span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-secondary);font-size:.875rem}.suppliers-page-pagination button{flex-shrink:0;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:.875rem;cursor:pointer}.supplier-form-page,.supplier-details-page,.supplier-form-page-form{display:flex;flex-direction:column;gap:1rem}.supplier-form-grid,.supplier-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.supplier-form-grid label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary)}.supplier-form-full,.supplier-details-full{grid-column:1 / -1}.supplier-form-type-toggle{display:flex;gap:0;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;width:fit-content}.supplier-form-type-btn{padding:.45rem 1.1rem;font-size:.875rem;font-weight:500;border:none;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.supplier-form-type-btn:first-child{border-right:1px solid var(--border-color)}.supplier-form-type-btn.active{background:var(--primary-color);color:#fff}.supplier-form-cui-row{display:flex;gap:.5rem}.supplier-form-cui-row input{flex:1;min-width:0}.supplier-form-lookup-success,.supplier-form-lookup-error{padding:.4rem .75rem;border-radius:8px;font-size:.875rem}.supplier-form-lookup-success{background:var(--success-bg, #f0fff4);color:var(--success-text, #276749);border:1px solid var(--success-border, #9ae6b4)}.supplier-form-lookup-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.supplier-form-page-actions,.supplier-details-page-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:767px){.suppliers-page-table th,.suppliers-page-table td{padding:.5rem .65rem;font-size:.875rem}.suppliers-page-table th{font-size:.8125rem}.suppliers-page-pagination{gap:.35rem}.suppliers-page-pagination button{padding:.4rem .5rem;font-size:.8125rem}.suppliers-page-pagination span{font-size:.75rem}}@media(max-width:900px){.suppliers-page-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-form-grid,.supplier-details-grid{grid-template-columns:1fr}.suppliers-page-header,.supplier-details-page-header{flex-direction:column;align-items:stretch}}.suppliers-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.suppliers-page-table th.sortable-th:hover{color:var(--text-primary)}.suppliers-page-table .sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.suppliers-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.suppliers-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.suppliers-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.suppliers-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.suppliers-export-trigger:disabled{opacity:.4;cursor:not-allowed}.suppliers-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:suppliers-export-spin .7s linear infinite}@keyframes suppliers-export-spin{to{transform:rotate(360deg)}}.suppliers-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));overflow:hidden}.suppliers-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.suppliers-export-menu button:last-child{border-bottom:none}.suppliers-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.suppliers-export-menu button:disabled{opacity:.5;cursor:not-allowed}.suppliers-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.companies-page{display:flex;flex-direction:column;gap:1rem}.companies-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.companies-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.companies-page-header p{margin-top:.25rem;color:var(--text-secondary)}.companies-page-kind-badge{display:inline-block;padding:.15rem .45rem;font-size:.75rem;font-weight:600;border-radius:.25rem;background:var(--bg-tertiary, rgba(100, 116, 139, .15));color:var(--text-secondary)}@media(max-width:900px){.companies-page-header{flex-direction:column;align-items:stretch}}.companies-page-th-default,.companies-page-td-default{width:1%;text-align:center;vertical-align:middle;white-space:nowrap}.companies-page-default-checkbox{width:1.125rem;height:1.125rem;cursor:pointer;accent-color:var(--accent-primary, #2563eb)}.companies-page-default-checkbox:disabled{cursor:wait;opacity:.6}.companies-page-th-id,.companies-page-td-id{width:1%;text-align:end;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.companies-page .customers-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.companies-page .customers-page-table th.sortable-th:hover{color:var(--text-primary)}.companies-page .sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.companies-page-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.companies-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.companies-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.companies-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.companies-export-trigger:disabled{opacity:.4;cursor:not-allowed}.companies-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:companies-export-spin .7s linear infinite}@keyframes companies-export-spin{to{transform:rotate(360deg)}}.companies-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));overflow:hidden}.companies-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.companies-export-menu button:last-child{border-bottom:none}.companies-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.companies-export-menu button:disabled{opacity:.5;cursor:not-allowed}.companies-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.customers-page{display:flex;flex-direction:column;gap:1rem}.customers-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.customers-page-header h1,.customer-form-page-header h1,.customer-details-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.customers-page-header p,.customer-form-page-header p{margin-top:.25rem;color:var(--text-secondary)}.customers-page-secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);white-space:nowrap}.customers-page-secondary-button:hover:not(:disabled){background:var(--bg-tertiary)}.customers-page-secondary-button:disabled{opacity:.5;cursor:not-allowed}.customers-page-primary-button,.primary-button,.secondary-button,.danger-button,.customers-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none}.customers-page-primary-button,.primary-button{background:var(--primary-color);color:#fff}.customers-page-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.customers-page-filters input,.customers-page-filters select,.customer-form-page-form input{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.customers-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.customers-page-table{border-collapse:collapse}.customers-page-table th,.customers-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customers-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);position:relative}.customers-page-empty,.customers-page-state,.customers-page-error,.customer-details-error,.customer-form-page-error{padding:1rem}.customers-page-error,.customer-details-error,.customer-form-page-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:10px}.customers-page-actions{display:flex;gap:.5rem}.customers-page-link{padding:.45rem .75rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary)}.customers-page-pagination{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.customers-page-pagination span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-secondary);font-size:.875rem}.customers-page-pagination button{flex-shrink:0;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:.875rem;cursor:pointer}.customer-form-page,.customer-details-page,.customer-form-page-form{display:flex;flex-direction:column;gap:1rem}.customer-form-grid,.customer-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.customer-form-grid label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary)}.customer-form-full,.customer-details-full{grid-column:1 / -1}.customer-form-type-toggle{display:flex;gap:0;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;width:fit-content}.customer-form-type-btn{padding:.45rem 1.1rem;font-size:.875rem;font-weight:500;border:none;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.customer-form-type-btn:first-child{border-right:1px solid var(--border-color)}.customer-form-type-btn.active{background:var(--primary-color);color:#fff}.customer-form-cui-row{display:flex;gap:.5rem}.customer-form-cui-row input{flex:1;min-width:0}.customer-form-lookup-success,.customer-form-lookup-error{padding:.4rem .75rem;border-radius:8px;font-size:.875rem}.customer-form-lookup-success{background:var(--success-bg, #f0fff4);color:var(--success-text, #276749);border:1px solid var(--success-border, #9ae6b4)}.customer-form-lookup-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.customer-form-lookup-meta{display:block;margin-top:.35rem;font-size:.8125rem;color:var(--text-secondary, #64748b)}.customer-form-page-actions,.customer-details-page-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:767px){.customers-page-table th,.customers-page-table td{padding:.5rem .65rem;font-size:.875rem}.customers-page-table th{font-size:.8125rem}.customers-page-pagination{gap:.35rem}.customers-page-pagination button{padding:.4rem .5rem;font-size:.8125rem}.customers-page-pagination span{font-size:.75rem}}@media(max-width:900px){.customers-page-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-form-grid,.customer-details-grid{grid-template-columns:1fr}.customers-page-header,.customer-details-page-header{flex-direction:column;align-items:stretch}}.customers-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.customers-page-table th.sortable-th:hover{color:var(--text-primary)}.customers-page-table .sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.customers-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.customers-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.customers-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.customers-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.customers-export-trigger:disabled{opacity:.4;cursor:not-allowed}.customers-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:customers-export-spin .7s linear infinite}@keyframes customers-export-spin{to{transform:rotate(360deg)}}.customers-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));overflow:hidden}.customers-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.customers-export-menu button:last-child{border-bottom:none}.customers-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.customers-export-menu button:disabled{opacity:.5;cursor:not-allowed}.customers-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.company-form-lookup-meta{display:block;margin-top:.35rem;font-size:.8125rem;color:var(--text-secondary, #64748b)}.company-form-readonly-kind{margin-bottom:.25rem}.company-form-kind-value{margin:.25rem 0 0;font-size:1rem;font-weight:500;color:var(--text-primary)}.company-form-registration-code-only input{width:100%;max-width:100%}.company-form-checkbox-row{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer}.company-form-checkbox-row input{margin-top:.2rem;flex-shrink:0}.company-form-checkbox-label{font-size:.9375rem;line-height:1.45;color:var(--text-primary)}.company-form-advanced{margin-top:.5rem;margin-bottom:.25rem;border:1px solid var(--color-border, var(--border-color, #e2e8f0));border-radius:8px;background:var(--color-surface, var(--bg-secondary, #f8fafc));overflow:hidden}.company-form-advanced-summary{padding:.75rem 1rem;font-size:.9375rem;font-weight:600;color:var(--text-primary);cursor:pointer;list-style:none}.company-form-advanced-summary::-webkit-details-marker{display:none}.company-form-advanced-summary:before{content:"";display:inline-block;width:.35em;height:.35em;margin-right:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);vertical-align:.15em;transition:transform .15s ease}.company-form-advanced[open] .company-form-advanced-summary:before{transform:rotate(45deg);vertical-align:.05em}.company-form-advanced-body{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:.75rem}.company-form-advanced-hint{margin:0;font-size:.8125rem;line-height:1.45;color:var(--text-secondary, #64748b)}.company-form-page{display:flex;flex-direction:column;gap:1.5rem;max-width:880px}.company-form-page-header{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.company-form-page-back{font-size:.875rem;font-weight:500;color:var(--primary-color);text-decoration:none;margin-bottom:.15rem}.company-form-page-back:hover{color:var(--primary-hover);text-decoration:underline}.company-form-page-header h1{margin:0;font-size:2rem;font-weight:600;color:var(--text-primary);letter-spacing:-.02em}.company-form-page-header p{margin:0;font-size:1rem;color:var(--text-secondary);line-height:1.5;max-width:42rem}.company-form-page-form{display:flex;flex-direction:column;gap:1rem}.company-form-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 2px var(--shadow),0 6px 24px var(--shadow-lg);overflow:hidden}.company-form-section{padding:1.35rem 1.5rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.company-form-section:nth-child(2n){background:var(--bg-tertiary)}.company-form-section:last-of-type{border-bottom:none}.company-form-section-head{display:flex;align-items:center;gap:.65rem;margin-bottom:1.15rem}.company-form-section-head:before{content:"";width:4px;height:1.15rem;border-radius:4px;background:linear-gradient(180deg,var(--primary-color),var(--primary-hover));flex-shrink:0}.company-form-section-title{margin:0;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary)}.company-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem 1.25rem}.company-form-full{grid-column:1 / -1}.company-form-grid label{display:flex;flex-direction:column;gap:.45rem}.company-form-label-text{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.company-form-label-text abbr{text-decoration:none;color:var(--error-text);font-weight:700}.company-form-grid input{padding:.65rem .85rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font-size:.9375rem;transition:border-color .15s ease,box-shadow .15s ease}.company-form-section:nth-child(2n) .company-form-grid input{background:var(--bg-secondary);box-shadow:inset 0 1px 2px var(--shadow)}.company-form-grid input:hover{border-color:var(--hover-border)}.company-form-grid input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4299e140}[data-theme=dark] .company-form-grid input:focus{box-shadow:0 0 0 3px #4299e133}.company-form-page-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.15rem 1.5rem;margin-top:0;border-top:1px solid var(--border-color);background:linear-gradient(180deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%)}.company-form-page-error{padding:.85rem 1rem;background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:10px;font-size:.9rem}@media(max-width:767px){.company-form-page.page-container{max-width:none;margin-left:-1rem;margin-right:-1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));gap:1rem}.company-form-page-header{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;row-gap:.35rem}.company-form-page-back{margin-bottom:0;flex-shrink:0}.company-form-page-header h1{flex:1;min-width:0;font-size:1.25rem;line-height:1.25;letter-spacing:-.02em}.company-form-page-header p{flex-basis:100%;font-size:.875rem;line-height:1.45;max-width:none}.company-form-page-card{border-radius:0;box-shadow:none;border-left:none;border-right:none}.company-form-section:nth-child(2n){background:var(--bg-secondary)}.company-form-section:nth-child(2n) .company-form-grid input{box-shadow:none}.company-form-grid{grid-template-columns:1fr}.company-form-page-actions{position:sticky;bottom:0;z-index:1;flex-direction:column-reverse;justify-content:stretch;gap:.65rem;padding:1rem max(1rem,env(safe-area-inset-left)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-right));background:linear-gradient(180deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);box-shadow:0 -6px 20px var(--shadow-lg);border-top:1px solid var(--border-color)}.company-form-page-actions .primary-button,.company-form-page-actions .secondary-button{width:100%;justify-content:center;padding-top:.85rem;padding-bottom:.85rem}.company-form-page-error{margin-left:0;margin-right:0;border-radius:8px}}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:var(--overlay);animation:confirmDialogOverlayIn .2s ease-out}@keyframes confirmDialogOverlayIn{0%{opacity:0}to{opacity:1}}.confirm-dialog-panel{width:100%;max-width:400px;background:var(--bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:1.5rem 1.5rem 1.25rem;box-shadow:0 20px 25px -5px var(--shadow-lg),0 10px 10px -5px var(--shadow);animation:confirmDialogPanelIn .2s ease-out}@keyframes confirmDialogPanelIn{0%{opacity:0;transform:scale(.98) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-dialog-title{margin:0 0 .75rem;font-size:1.2rem;font-weight:600;color:var(--text-primary)}.confirm-dialog-message{margin:0 0 1rem;font-size:.95rem;line-height:1.5;color:var(--text-primary)}.confirm-dialog-error{margin:0 0 1rem;padding:.65rem .75rem;font-size:.875rem;color:var(--color-danger);background:var(--color-danger-bg);border-radius:6px}.confirm-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.company-details-page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.company-details-page-header h1{margin:0 0 .25rem;font-size:1.75rem}.company-details-page-header p{margin:0;color:var(--color-text-muted)}.company-details-page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.company-details-error{color:var(--color-danger);padding:.75rem 1rem;background:var(--color-danger-bg);border-radius:6px;margin-bottom:1rem}.company-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;margin-bottom:2rem}.company-details-full{grid-column:1 / -1}.company-details-users{margin-top:1rem}.company-details-users h2{font-size:1.2rem;margin:0 0 1rem}.company-details-users-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden;margin-bottom:1.5rem}.company-details-users-table{width:100%;border-collapse:collapse}.company-details-users-table th,.company-details-users-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}.company-details-users-table th{font-weight:600;background:var(--color-surface-raised);font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted)}.company-details-users-table tbody tr:last-child td{border-bottom:none}.company-details-users-table tbody tr:hover{background:var(--color-surface-raised)}.company-details-row-actions{display:flex;gap:.5rem}.company-details-link{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:0;font-size:.875rem;text-decoration:none}.company-details-link:hover{text-decoration:underline}.company-details-link.danger{color:var(--color-danger)}.company-details-inline-input{padding:.25rem .5rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-background);color:var(--color-text);font-size:.875rem;width:100%}.company-details-add-user{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem}.company-details-add-user h3{margin:0 0 1rem;font-size:1rem}.company-details-add-form{display:flex;gap:.75rem;flex-wrap:wrap;align-items:flex-end}.company-details-add-form input{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text);flex:1;min-width:120px}.company-details-muted{margin:0 0 1rem;color:var(--color-text-muted);font-size:.9375rem}.company-details-firm-clients{margin-bottom:2rem}.company-details-firm-clients h2{font-size:1.2rem;margin:0 0 1rem}.company-details-firm-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-top:1rem}.company-details-attach-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.company-details-attach-form input{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text);min-width:140px}.products-page{display:flex;flex-direction:column;gap:1rem}.products-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.products-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.products-page-header p{margin-top:.25rem;color:var(--text-secondary)}.products-page-primary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--primary-color);color:#fff}.products-page-secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);transition:background-color .2s}.products-page-secondary-button:hover:not(:disabled){background:var(--bg-tertiary)}.products-page-secondary-button:disabled{opacity:.6;cursor:not-allowed}.products-page-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.products-page-filters input,.products-page-filters select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.products-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.products-page-table{border-collapse:collapse}.products-page-table th,.products-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.products-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);position:relative}.products-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.products-page-table th.sortable-th:hover{color:var(--text-primary)}.sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.products-page-table tbody tr:hover{background-color:var(--bg-tertiary)}.products-page-empty{text-align:center;color:var(--text-secondary);padding:2rem}.products-page-error{padding:1rem;background:#fed7d7;border:1px solid #f5b7b1;border-radius:8px;color:#c53030}.products-page-state{padding:2rem;text-align:center;color:var(--text-secondary)}.products-page-actions{display:flex;gap:.5rem;justify-content:flex-end}.products-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);padding:.5rem .75rem;font-size:.875rem;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);transition:background-color .2s}.products-page-link:hover{background:var(--bg-tertiary)}.products-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.products-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.products-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.products-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.products-export-trigger:disabled{opacity:.4;cursor:not-allowed}.products-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:products-spin .7s linear infinite}@keyframes products-spin{to{transform:rotate(360deg)}}.products-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0,0,0,.15));overflow:hidden}.products-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.products-export-menu button:last-child{border-bottom:none}.products-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.products-export-menu button:disabled{opacity:.5;cursor:not-allowed}.products-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.products-page-pagination{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 0;min-width:0}.products-page-pagination button{flex-shrink:0;padding:.45rem .65rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:6px;cursor:pointer;font:inherit;font-size:.875rem}.products-page-pagination button:disabled{opacity:.5;cursor:not-allowed}.products-page-pagination span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-secondary);font-size:.875rem}@media(max-width:767px){.products-page-table th,.products-page-table td{padding:.5rem .65rem;font-size:.875rem}.products-page-table th{font-size:.8125rem}.products-page-pagination{gap:.35rem;padding:.5rem 0}.products-page-pagination button{padding:.4rem .5rem;font-size:.8125rem}.products-page-pagination span{font-size:.75rem}}.product-details-page{display:flex;flex-direction:column;gap:1.5rem}.product-details-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.product-details-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.product-details-page-header p{margin:.25rem 0 0;color:var(--text-secondary)}.product-details-page-actions{display:flex;gap:.75rem}.product-details-page-actions .secondary-button,.product-details-page-actions .danger-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none}.danger-button{background:#e53e3e;color:#fff}.product-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.product-details-grid div{display:flex;flex-direction:column;gap:.25rem}.product-details-grid strong{color:var(--text-primary);font-weight:600}.product-details-grid div:not(strong){color:var(--text-secondary)}.product-details-full{grid-column:1 / -1}.product-details-error{padding:1rem;background:#fed7d7;border:1px solid #f5b7b1;border-radius:8px;color:#c53030}.product-form-page{display:flex;flex-direction:column;gap:1.5rem}.product-form-page-header{display:flex;flex-direction:column;gap:.5rem}.product-form-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.product-form-page-header p{margin:0;color:var(--text-secondary)}.product-form-page-form{display:flex;flex-direction:column;gap:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.product-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.product-form-grid label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-primary);font-weight:500}.product-form-grid input,.product-form-grid textarea,.product-form-grid select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font:inherit}.product-form-grid textarea{resize:vertical;font-family:inherit}.product-form-grid input:focus,.product-form-grid textarea:focus,.product-form-grid select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.product-form-full{grid-column:1 / -1}.product-form-page-error{padding:1rem;background:#fed7d7;border:1px solid #f5b7b1;border-radius:8px;color:#c53030}.product-form-page-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid var(--border-color)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;font-weight:500}.primary-button{background:var(--primary-color);color:#fff}.secondary-button{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:not-allowed}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled){opacity:.9}.invoices-page{display:flex;flex-direction:column;gap:1rem}.invoices-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.invoices-page-header h1,.invoice-form-page-header h1,.invoice-details-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.invoices-page-header p,.invoice-form-page-header p{margin-top:.25rem;color:var(--text-secondary)}.invoices-page-primary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--primary-color);color:#fff;white-space:nowrap}.invoices-page-secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);white-space:nowrap}.invoices-page-secondary-button:hover:not(:disabled){background:var(--bg-tertiary)}.invoices-page-secondary-button:disabled{opacity:.5;cursor:not-allowed}.invoices-page-filters{display:flex;gap:.75rem;flex-wrap:wrap}.invoices-page-filters input,.invoices-page-filters select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.invoice-status-badge{display:inline-block;padding:.25rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600}.invoice-status-draft{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.invoice-status-sent{background:#ebf8ff;color:#2b6cb0;border:1px solid #bee3f8}.invoice-status-partiallypaid{background:#fffbeb;color:#92400e;border:1px solid #fcd34d}.invoice-status-paid{background:#f0fff4;color:#276749;border:1px solid #9ae6b4}.invoice-status-overdue{background:#fff5f5;color:#c53030;border:1px solid #feb2b2}.invoice-status-cancelled{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color);text-decoration:line-through}[data-theme=dark] .invoice-status-sent{background:#1a365d;color:#90cdf4;border-color:#2a4a7f}[data-theme=dark] .invoice-status-partiallypaid{background:#451a03;color:#fcd34d;border-color:#92400e}[data-theme=dark] .invoice-status-paid{background:#1c4532;color:#9ae6b4;border-color:#276749}[data-theme=dark] .invoice-status-overdue{background:#742a2a;color:#fc8181;border-color:#9b2c2c}.invoices-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.invoices-page-table{border-collapse:collapse}.invoices-page-table th,.invoices-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoices-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);position:relative}.invoices-page-empty,.invoices-page-state,.invoices-page-error,.invoice-details-error,.invoice-form-page-error,.invoice-form-warning{padding:1rem;border-radius:10px}.invoices-page-error,.invoice-details-error,.invoice-form-page-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.invoice-form-warning{background:#fffbeb;color:#92400e;border:1px solid #fcd34d}[data-theme=dark] .invoice-form-warning{background:#451a03;color:#fcd34d;border-color:#92400e}.invoices-page-actions{display:flex;gap:.5rem}.invoices-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:.4rem .7rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font:inherit;cursor:pointer;font-size:.875rem}.invoices-page-pagination{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.invoices-page-pagination span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-secondary);font-size:.875rem}.invoices-page-pagination button{flex-shrink:0;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:.875rem;cursor:pointer}.invoice-details-page{display:flex;flex-direction:column;gap:1.25rem}.invoice-details-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.invoice-details-page-header h1{margin-bottom:.5rem}.invoice-details-total{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-top:.25rem}.invoice-details-page-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.invoice-layout-select{padding:.6rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font:inherit}.invoice-preview-container{border:1px solid var(--border-color);border-radius:12px;overflow:hidden;background:#fff}.invoice-preview-frame{width:100%;height:60vh;border:none;display:block}.invoice-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}.invoice-details-full{grid-column:1 / -1}.invoice-lines-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:1rem}.invoice-lines-card h2,.invoice-lines-section h2,.invoice-receipts-section h2{margin:0;font-size:1.1rem;color:var(--text-primary)}.invoice-lines-table{width:100%;border-collapse:collapse;font-size:.9rem}.invoice-lines-table th,.invoice-lines-table td{text-align:right;padding:.6rem .75rem;border-bottom:1px solid var(--border-color)}.invoice-lines-table th:first-child,.invoice-lines-table td:first-child,.invoice-lines-table th:nth-child(2),.invoice-lines-table td:nth-child(2),.invoice-lines-table th:nth-child(3),.invoice-lines-table td:nth-child(3){text-align:left}.invoice-lines-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary)}.invoice-totals{display:flex;flex-direction:column;gap:.35rem;align-items:flex-end}.invoice-totals>div{display:flex;gap:2rem;min-width:280px;justify-content:space-between}.invoice-totals-grand{font-size:1.1rem;font-weight:700;border-top:2px solid var(--border-color);padding-top:.35rem;margin-top:.15rem}.invoice-receipts-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.invoice-receipts-header{display:flex;justify-content:space-between;align-items:center}.invoice-receipts-empty{color:var(--text-secondary);font-size:.9rem}.invoice-form-page{display:flex;flex-direction:column;gap:1rem}.invoice-form-page-form{display:flex;flex-direction:column;gap:1.25rem}.invoice-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}.invoice-form-grid label,.receipt-form-grid label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary);font-size:.9rem}.invoice-form-grid input,.invoice-form-grid select,.invoice-form-grid textarea,.receipt-form-grid input,.receipt-form-grid select,.receipt-form-grid textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font:inherit}.invoice-form-full,.receipt-form-full{grid-column:1 / -1}.invoice-lines-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.invoice-lines-scroll{overflow-x:auto}.invoice-lines-edit-table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:900px}.invoice-lines-edit-table th,.invoice-lines-edit-table td{padding:.4rem .5rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.invoice-lines-edit-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);white-space:nowrap}.invoice-lines-edit-table input{width:100%;padding:.4rem .5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font:inherit;font-size:.875rem}.invoice-line-calc{text-align:right;white-space:nowrap;color:var(--text-secondary)}.invoice-line-remove{background:none;border:none;color:var(--error-text);font-size:1.1rem;cursor:pointer;padding:.2rem .5rem;border-radius:4px}.invoice-line-remove:hover:not(:disabled){background:var(--error-bg)}.invoice-line-remove:disabled{opacity:.3;cursor:default}.invoice-add-line{align-self:flex-start}.invoice-form-page-actions,.receipt-form-page-actions{display:flex;justify-content:flex-end;gap:.75rem}.invoice-payment-form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.invoice-payment-form input,.invoice-payment-form select{padding:.6rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font:inherit;min-width:150px}.invoice-payment-form button{padding:.6rem 1rem;border-radius:8px;border:1px solid transparent;font:inherit;cursor:pointer}.invoice-payment-history-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.invoice-payment-history-section h2{margin:0;font-size:1.1rem;color:var(--text-primary)}.invoice-anaf-card{margin-top:1rem;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.invoice-anaf-card h2{margin:0;font-size:1.15rem;color:var(--text-primary)}.invoice-anaf-card h3{margin:.5rem 0 0;font-size:1rem;color:var(--text-secondary)}.invoice-anaf-muted{margin:0;color:var(--text-secondary);font-size:.95rem}.invoice-anaf-toggle{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-primary);font-size:.95rem}.invoice-anaf-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.invoice-anaf-submission{border-top:1px solid var(--border-color);padding-top:.75rem;margin-top:.25rem}@media(max-width:767px){.invoices-page-table th,.invoices-page-table td{padding:.5rem .65rem;font-size:.875rem}.invoices-page-table th{font-size:.8125rem}.invoices-page-pagination{gap:.35rem}.invoices-page-pagination button{padding:.4rem .5rem;font-size:.8125rem}.invoices-page-pagination span{font-size:.75rem}}@media(max-width:900px){.invoice-form-grid,.invoice-details-grid,.receipt-form-grid{grid-template-columns:1fr}.invoices-page-header,.invoice-details-page-header,.invoice-details-page-actions{flex-direction:column;align-items:stretch}}.invoices-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.invoices-page-table th.sortable-th:hover{color:var(--text-primary)}.invoices-page-table .sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.invoices-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.invoices-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.invoices-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.invoices-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.invoices-export-trigger:disabled{opacity:.4;cursor:not-allowed}.invoices-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:invoices-export-spin .7s linear infinite}@keyframes invoices-export-spin{to{transform:rotate(360deg)}}.invoices-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));overflow:hidden}.invoices-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.invoices-export-menu button:last-child{border-bottom:none}.invoices-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.invoices-export-menu button:disabled{opacity:.5;cursor:not-allowed}.invoices-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.receipts-page{display:flex;flex-direction:column;gap:1rem}.receipts-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.receipts-page-header h1,.receipt-form-page-header h1,.receipt-details-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.receipts-page-primary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--primary-color);color:#fff;white-space:nowrap}.receipts-page-secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--bg-secondary);color:var(--text-primary);white-space:nowrap}.receipts-page-secondary-button:hover:not(:disabled){background:var(--bg-tertiary)}.receipts-page-secondary-button:disabled{opacity:.5;cursor:not-allowed}.receipts-page-filters{display:flex;gap:.75rem;flex-wrap:wrap}.receipts-page-filters input,.receipts-page-filters select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.receipts-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.receipts-page-table{border-collapse:collapse}.receipts-page-table th,.receipts-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.receipts-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary);position:relative}.receipts-page-empty,.receipts-page-state,.receipts-page-error,.receipt-details-error,.receipt-form-page-error{padding:1rem;border-radius:10px}.receipts-page-error,.receipt-details-error,.receipt-form-page-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.receipts-page-actions{display:flex;gap:.5rem}.receipts-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:.4rem .7rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font:inherit;cursor:pointer;font-size:.875rem}.receipts-page-pagination{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:.5rem;min-width:0}.receipts-page-pagination span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;color:var(--text-secondary);font-size:.875rem}.receipts-page-pagination button{flex-shrink:0;padding:.45rem .65rem;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:.875rem;cursor:pointer}.receipt-details-page{display:flex;flex-direction:column;gap:1.25rem}.receipt-details-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.receipt-details-amount{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-top:.25rem}.receipt-details-page-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.receipt-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}.receipt-details-full{grid-column:1 / -1}.receipt-form-page{display:flex;flex-direction:column;gap:1rem}.receipt-form-page-form{display:flex;flex-direction:column;gap:1.25rem}.receipt-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}@media(max-width:767px){.receipts-page-table th,.receipts-page-table td{padding:.5rem .65rem;font-size:.875rem}.receipts-page-table th{font-size:.8125rem}.receipts-page-pagination{gap:.35rem}.receipts-page-pagination button{padding:.4rem .5rem;font-size:.8125rem}.receipts-page-pagination span{font-size:.75rem}}@media(max-width:900px){.receipt-form-grid,.receipt-details-grid{grid-template-columns:1fr}.receipts-page-header,.receipt-details-page-header{flex-direction:column;align-items:stretch}}.receipts-page-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.receipts-page-table th.sortable-th:hover{color:var(--text-primary)}.receipts-page-table .sort-indicator{font-size:.75rem;opacity:.6;margin-left:.25rem}.receipts-actions-th{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;white-space:nowrap}.receipts-export-trigger{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid var(--border-color);border-radius:5px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s,border-color .15s}.receipts-export-trigger:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-secondary)}.receipts-export-trigger.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.receipts-export-trigger:disabled{opacity:.4;cursor:not-allowed}.receipts-export-spinner{display:inline-block;width:10px;height:10px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:receipts-export-spin .7s linear infinite}@keyframes receipts-export-spin{to{transform:rotate(360deg)}}.receipts-export-menu{position:fixed;z-index:200;min-width:200px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .15));overflow:hidden}.receipts-export-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);font:inherit;font-size:.875rem;text-align:left}.receipts-export-menu button:last-child{border-bottom:none}.receipts-export-menu button:hover:not(:disabled){background:var(--bg-tertiary)}.receipts-export-menu button:disabled{opacity:.5;cursor:not-allowed}.receipts-export-count{margin-left:auto;color:var(--text-secondary);font-size:.8125rem}.layouts-page{display:flex;flex-direction:column;gap:1rem}.layouts-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.layouts-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.layouts-page-header p{margin-top:.25rem;color:var(--text-secondary)}.layouts-page-primary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.75rem 1rem;font:inherit;cursor:pointer;text-decoration:none;background:var(--primary-color);color:#fff;white-space:nowrap}.layouts-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border-color);padding-bottom:0}.layouts-tab-btn{padding:.6rem 1.25rem;border:none;background:none;color:var(--text-secondary);font:inherit;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:6px 6px 0 0}.layouts-tab-btn.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.layouts-page-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.layouts-page-table{width:100%;border-collapse:collapse;min-width:640px}.layouts-page-table th,.layouts-page-table td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--border-color)}.layouts-page-table th{color:var(--text-secondary);font-weight:600;background:var(--bg-tertiary)}.layouts-row-inactive td{opacity:.5}.layouts-page-empty,.layouts-page-state,.layouts-page-error{padding:1rem;border-radius:10px}.layouts-page-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.layouts-page-actions{display:flex;gap:.5rem;flex-wrap:wrap}.layouts-page-link{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:.4rem .7rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font:inherit;cursor:pointer;font-size:.875rem}.layouts-link-danger{color:var(--error-text);border-color:var(--error-border)}.layouts-link-danger:hover{background:var(--error-bg)}@media(max-width:767px){.layouts-page-table th,.layouts-page-table td{padding:.5rem .65rem;font-size:.875rem}.layouts-page-table th{font-size:.8125rem}}.layout-form-page{display:flex;flex-direction:column;gap:1rem}.layout-form-page-header h1{margin:0;font-size:2rem;color:var(--text-primary)}.layout-form-page-form{display:flex;flex-direction:column;gap:1.25rem}.layout-form-meta{display:flex;flex-wrap:wrap;gap:1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem}.layout-form-meta label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary);font-size:.9rem;min-width:180px}.layout-form-meta input,.layout-form-meta select{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);font:inherit}.layout-toggle-row{display:flex!important;flex-direction:row!important;align-items:center;gap:.5rem!important;cursor:pointer;color:var(--text-primary)!important;font-size:.9rem}.layout-toggle-row input[type=checkbox]{width:16px;height:16px;cursor:pointer;flex-shrink:0}.layout-form-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border-color)}.layout-tab-btn{padding:.6rem 1.25rem;border:none;background:none;color:var(--text-secondary);font:inherit;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:6px 6px 0 0}.layout-tab-btn.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.layout-config-sections{display:flex;flex-wrap:wrap;gap:1rem}.layout-config-sections section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.6rem;min-width:220px;flex:1}.layout-config-sections h3{margin:0 0 .25rem;font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.layout-field-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--text-primary);font-size:.9rem}.layout-field-row select,.layout-field-row input[type=number]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font:inherit;font-size:.875rem}.layout-template-section{display:flex;gap:1rem;align-items:flex-start}.layout-template-editor{flex:1;display:flex;flex-direction:column;gap:.5rem}.layout-template-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem}.layout-template-toolbar-actions{display:flex;gap:.5rem}.layout-template-label{color:var(--text-secondary);font-size:.9rem}.layout-load-default-btn{font-size:.8rem;padding:.35rem .75rem;white-space:nowrap}.layout-preview-btn-active{background:var(--primary-color);color:#fff;border-color:transparent}.layout-editor-preview-split{display:flex;gap:.75rem}.layout-editor-preview-split .layout-template-textarea{flex:1;min-width:0}.layout-preview-iframe{flex:1;min-width:0;border:1px solid var(--border-color);border-radius:8px;background:#fff;height:500px}.layout-template-editor label{display:flex;flex-direction:column;gap:.5rem;color:var(--text-secondary);font-size:.9rem}.layout-template-textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-family:monospace;font-size:.85rem;resize:vertical}.layout-template-hint{margin:0;font-size:.8rem;color:var(--text-secondary)}.layout-placeholders-panel{width:260px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;flex-shrink:0}.layout-placeholders-panel h4{margin:0 0 .75rem;font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.layout-placeholders-panel ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem;font-size:.8rem}.layout-placeholders-panel li{color:var(--text-secondary)}.layout-placeholders-panel code{font-size:.8rem;background:var(--bg-tertiary);padding:.1rem .35rem;border-radius:4px;color:var(--text-primary)}.layout-form-page-error{padding:1rem;border-radius:10px;background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.layout-form-page-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:900px){.layout-template-section{flex-direction:column}.layout-placeholders-panel{width:100%}}
