@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,600;1,9..144,300&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;width:100%}body{height:100%;width:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%;width:100%;display:flex;flex-direction:column}button{cursor:pointer}:root{--sidebar-bg: #1a1f2e;--sidebar-width: 240px;--sidebar-text: #8892a4;--sidebar-hover: rgba(255,255,255,.06);--sidebar-active: rgba(232,112,90,.15);--sidebar-border: rgba(255,255,255,.06);--coral: #e8705a;--coral-light: #f0876f;--coral-dim: rgba(232,112,90,.12);--content-bg: #f7f6f3;--card-bg: #ffffff;--text-primary: #1a1f2e;--text-secondary: #6b7280;--text-muted: #9ca3af;--border: #e5e7eb;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 24px rgba(0,0,0,.08);--radius: 10px;--font: "Plus Jakarta Sans", sans-serif;--header-height: 56px}.app-shell{display:flex;height:100vh;overflow:hidden;font-family:var(--font);background:var(--content-bg)}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--sidebar-bg);display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:width .25s ease;z-index:100}.sidebar.collapsed{width:60px}.sidebar__brand{display:flex;align-items:center;gap:.75rem;padding:0 1rem;height:var(--header-height);border-bottom:1px solid var(--sidebar-border);flex-shrink:0;overflow:hidden}.sidebar__brand-icon{width:30px;height:30px;background:var(--coral);border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar__brand-icon svg{width:16px;height:16px;color:#fff}.sidebar__brand-text{overflow:hidden;white-space:nowrap}.sidebar__brand-name{display:block;font-size:.9375rem;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.1}.sidebar__brand-sub{display:block;font-size:.6rem;color:var(--sidebar-text);letter-spacing:.1em;text-transform:uppercase;margin-top:2px}.sidebar__nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:.75rem 0;scrollbar-width:none}.sidebar__nav::-webkit-scrollbar{display:none}.nav-section{margin-bottom:.25rem}.nav-section__label{font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#3d4559;padding:.75rem 1rem .375rem;white-space:nowrap;overflow:hidden}.sidebar.collapsed .nav-section__label{opacity:0}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;cursor:pointer;transition:background .15s ease;text-decoration:none;color:var(--sidebar-text);font-size:.8125rem;font-weight:500;white-space:nowrap;overflow:hidden;position:relative;margin:1px .5rem;border-radius:7px}.nav-item:hover{background:var(--sidebar-hover);color:#c8d0dc}.nav-item.active{background:var(--sidebar-active);color:var(--coral-light)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--coral);border-radius:0 2px 2px 0;margin-left:-.5rem}.nav-item__icon{width:16px;height:16px;flex-shrink:0;opacity:.7}.nav-item.active .nav-item__icon{opacity:1}.nav-item__label{overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .nav-item__label,.sidebar.collapsed .nav-section__label{opacity:0;pointer-events:none}.sidebar__footer{border-top:1px solid var(--sidebar-border);padding:.75rem .5rem;flex-shrink:0}.sidebar__user{display:flex;align-items:center;gap:.625rem;padding:.5rem;border-radius:7px;cursor:pointer;transition:background .15s ease;overflow:hidden}.sidebar__user:hover{background:var(--sidebar-hover)}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--coral-dim);border:1.5px solid rgba(232,112,90,.3);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;color:var(--coral-light);flex-shrink:0}.user-info{overflow:hidden;flex:1;white-space:nowrap}.user-name{display:block;font-size:.75rem;font-weight:600;color:#c8d0dc;overflow:hidden;text-overflow:ellipsis}.user-role{display:block;font-size:.6rem;color:var(--sidebar-text);text-transform:uppercase;letter-spacing:.08em;margin-top:1px}.sidebar.collapsed .user-info{opacity:0}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.main-header{height:var(--header-height);background:var(--card-bg);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 1.5rem;gap:1rem;flex-shrink:0}.main-header__toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:background .15s ease,color .15s ease;flex-shrink:0}.main-header__toggle:hover{background:var(--content-bg);color:var(--text-primary)}.main-header__breadcrumb{flex:1;display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary);min-width:0}.breadcrumb-current{font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb-sep{color:var(--text-muted);flex-shrink:0}.main-header__actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.header-company-badge{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--coral-dim);color:var(--coral);border:1px solid rgba(232,112,90,.2);border-radius:100px;padding:.25rem .625rem}.main-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:2rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.75rem;gap:1rem}.page-header__title{font-size:1.375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.025em;line-height:1.2}.page-header__subtitle{font-size:.8125rem;color:var(--text-secondary);margin-top:.25rem}.page-header__actions{display:flex;align-items:center;gap:.625rem;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:7px;font-family:var(--font);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;text-decoration:none;white-space:nowrap}.btn svg{width:14px;height:14px}.btn-primary{background:var(--coral);color:#fff;box-shadow:0 1px 3px #e8705a40}.btn-primary:hover{background:var(--coral-light);box-shadow:0 4px 12px #e8705a4d}.btn-secondary{background:#fff;color:var(--text-primary);border:1.5px solid var(--border)}.btn-secondary:hover{background:var(--content-bg);border-color:#d1d5db}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--content-bg);color:var(--text-primary)}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.card-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem}.stat-card__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.5rem}.stat-card__value{font-size:1.75rem;font-weight:700;color:var(--text-primary);letter-spacing:-.03em;line-height:1}.stat-card__sub{font-size:.75rem;color:var(--text-secondary);margin-top:.375rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-muted)}.empty-state__icon{width:48px;height:48px;margin-bottom:1rem;opacity:.4}.empty-state__title{font-size:.9375rem;font-weight:600;color:var(--text-secondary);margin-bottom:.375rem}.empty-state__desc{font-size:.8125rem;max-width:280px;line-height:1.6;margin-bottom:1.5rem}.input{background:var(--input-bg, #fafafa);border:1.5px solid var(--border);border-radius:7px;color:var(--text-primary);padding:.6rem .75rem;font-family:var(--font);font-size:.875rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%;-webkit-appearance:none;appearance:none}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--coral);background:#fff;box-shadow:0 0 0 3px var(--coral-dim)}.card__title{font-size:.9375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.card__subtitle{font-size:.75rem;color:var(--text-secondary);margin-top:.2rem}.card__header{padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}:root{--sidebar-bg: #1a1f2e;--sidebar-text: #8892a4;--coral: #e8705a;--coral-light: #f0876f;--coral-dim: rgba(232, 112, 90, .12);--content-bg: #f7f6f3;--card-bg: #ffffff;--text-primary: #1a1f2e;--text-secondary:#6b7280;--text-muted: #9ca3af;--border: #e5e7eb;--border-focus: #e8705a;--input-bg: #fafafa;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 24px rgba(0,0,0,.08), 0 1px 4px rgba(0,0,0,.04);--radius: 10px;--font-sans: "Plus Jakarta Sans", sans-serif;--font-display: "Fraunces", serif}*{box-sizing:border-box;margin:0;padding:0}.login-root{min-height:100vh;display:flex;font-family:var(--font-sans)}.login-sidebar{width:420px;flex-shrink:0;background:var(--sidebar-bg);display:flex;flex-direction:column;padding:3rem;position:relative;overflow:hidden}.login-sidebar:after{content:"";position:absolute;bottom:-80px;left:-80px;width:320px;height:320px;background:radial-gradient(circle,rgba(232,112,90,.18) 0%,transparent 70%);pointer-events:none}.login-sidebar__brand{display:flex;align-items:center;gap:.75rem;margin-bottom:auto}.brand-icon{width:36px;height:36px;background:var(--coral);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand-icon svg{width:20px;height:20px;color:#fff}.brand-label{display:flex;flex-direction:column}.brand-name{font-family:var(--font-sans);font-size:1.125rem;font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1}.brand-sub{font-size:.65rem;color:var(--sidebar-text);letter-spacing:.1em;text-transform:uppercase;margin-top:3px}.login-sidebar__content{margin-top:auto;padding-bottom:1rem}.login-sidebar__headline{font-family:var(--font-display);font-size:2.25rem;font-weight:300;color:#fff;line-height:1.2;margin-bottom:1rem;font-style:italic}.login-sidebar__headline strong{font-weight:600;font-style:normal;color:var(--coral-light)}.login-sidebar__desc{font-size:.8125rem;color:var(--sidebar-text);line-height:1.7;margin-bottom:2rem}.login-sidebar__entities{display:flex;gap:.5rem}.entity-pill{font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-text);border:1px solid #2d3448;border-radius:100px;padding:.3rem .75rem}.login-main{flex:1;background:var(--content-bg);display:flex;align-items:center;justify-content:center;padding:3rem 2rem}.login-card{background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:2.5rem;width:100%;max-width:400px;border:1px solid var(--border);opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.login-root.mounted .login-card{opacity:1;transform:translateY(0)}.login-card__header{margin-bottom:2rem}.login-card__header h1{font-size:1.375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.025em;margin-bottom:.375rem}.login-card__header p{font-size:.8125rem;color:var(--text-secondary)}.login-form{display:flex;flex-direction:column;gap:1.125rem}.field label{font-size:.75rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.field input{background:var(--input-bg);border:1.5px solid var(--border);border-radius:7px;color:var(--text-primary);padding:.6875rem .875rem;font-family:var(--font-sans);font-size:.875rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%;-webkit-appearance:none;appearance:none}.field input::placeholder{color:var(--text-muted)}.field input:focus{border-color:var(--border-focus);background:#fff;box-shadow:0 0 0 3px var(--coral-dim)}.field input:disabled{opacity:.6;cursor:not-allowed}.login-error{display:flex;align-items:center;gap:.5rem;background:#fef2f0;border:1.5px solid #fbd0c8;border-radius:7px;color:#c0392b;padding:.625rem .875rem;font-size:.8125rem;font-weight:500}.login-error svg{width:14px;height:14px;flex-shrink:0}.login-btn{background:var(--coral);color:#fff;border:none;border-radius:7px;padding:.75rem 1.25rem;font-family:var(--font-sans);font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;margin-top:.5rem;width:100%;box-shadow:0 1px 3px #e8705a4d}.login-btn:hover:not(:disabled){background:var(--coral-light);box-shadow:0 4px 12px #e8705a59}.login-btn:active:not(:disabled){transform:scale(.99)}.login-btn:disabled{opacity:.65;cursor:not-allowed}.login-btn svg{width:14px;height:14px}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.loading-screen{min-height:100vh;background:var(--content-bg);display:flex;align-items:center;justify-content:center}@media(max-width:768px){.login-sidebar{display:none}.login-main{background:var(--content-bg)}}.toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.5rem;background:var(--card-bg);border:1.5px solid var(--border);border-radius:7px;padding:.5rem .75rem;flex:1;max-width:360px;transition:border-color .15s ease}.search-box:focus-within{border-color:var(--coral);box-shadow:0 0 0 3px var(--coral-dim)}.search-box svg{width:14px;height:14px;color:var(--text-muted);flex-shrink:0}.search-box input{border:none;outline:none;background:transparent;font-family:var(--font);font-size:.8125rem;color:var(--text-primary);flex:1;min-width:0}.search-box input::placeholder{color:var(--text-muted)}.search-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;padding:0;display:flex;align-items:center}.search-clear:hover{color:var(--text-primary)}.toggle-label{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-label input{accent-color:var(--coral)}.data-table{width:100%;border-collapse:collapse;font-size:.8125rem}.data-table thead tr{border-bottom:1px solid var(--border)}.data-table th{text-align:left;padding:.75rem 1.25rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);white-space:nowrap}.data-table td{padding:.875rem 1.25rem;border-bottom:1px solid #f3f4f6;color:var(--text-primary);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.clickable-row{cursor:pointer;transition:background .1s ease}.clickable-row:hover{background:#fafafa}.clickable-row:hover td{border-bottom-color:#efefef}.table-loading{display:flex;justify-content:center;padding:3rem}.customer-name{font-weight:600;color:var(--text-primary)}.code-badge{font-size:.7rem;font-weight:700;letter-spacing:.08em;background:#f3f4f6;color:var(--text-secondary);border-radius:4px;padding:.2rem .5rem;font-family:DM Mono,monospace}.text-secondary{color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;letter-spacing:.04em;border-radius:100px;padding:.2rem .625rem}.status-active{background:#ecfdf5;color:#059669}.status-inactive{background:#f9fafb;color:var(--text-muted)}.row-action{text-align:right;width:60px}.btn-sm{padding:.3rem .625rem;font-size:.75rem}.form-grid{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.form-section{display:flex;flex-direction:column;gap:1rem}.form-section__title{font-size:.8125rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;padding-bottom:.75rem;border-bottom:1px solid var(--border);margin-bottom:.25rem}.field{display:flex;flex-direction:column;gap:.375rem}.field label{font-size:.75rem;font-weight:600;color:var(--text-primary)}.field input,.field select,.field textarea{background:var(--input-bg, #fafafa);border:1.5px solid var(--border);border-radius:7px;color:var(--text-primary);padding:.6rem .75rem;font-family:var(--font);font-size:.875rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease;width:100%;-webkit-appearance:none;appearance:none}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--coral);background:#fff;box-shadow:0 0 0 3px var(--coral-dim)}.field textarea{resize:vertical;min-height:80px}.field--short{max-width:200px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.field-hint{font-size:.7rem;color:var(--text-muted);margin-top:.125rem}.required{color:var(--coral)}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary);cursor:pointer;font-weight:400}.checkbox-label input{width:auto;accent-color:var(--coral)}.form-error{display:flex;align-items:center;gap:.5rem;background:#fef2f0;border:1.5px solid #fbd0c8;border-radius:7px;color:#c0392b;padding:.625rem .875rem;font-size:.8125rem;font-weight:500;margin-bottom:1rem}.form-actions{display:flex;align-items:center;gap:.625rem;padding-top:.5rem}.btn-danger{background:#fef2f0;color:#c0392b;border:1.5px solid #fbd0c8}.btn-danger:hover{background:#fde8e4}.loading-spinner{width:28px;height:28px;border:2px solid var(--border);border-top-color:var(--coral);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.logo-upload{display:flex;flex-direction:column;gap:.75rem}.logo-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border:2px dashed var(--border);border-radius:8px;padding:2rem;cursor:pointer;color:var(--text-muted);font-size:.8125rem;transition:border-color .15s ease,background .15s ease}.logo-dropzone:hover{border-color:var(--coral);background:var(--coral-dim);color:var(--coral)}.logo-preview{display:flex;align-items:center;gap:1rem}.logo-preview img{max-height:80px;max-width:200px;object-fit:contain;border:1px solid var(--border);border-radius:6px;padding:.5rem;background:#fff}input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--coral);-webkit-appearance:checkbox;appearance:checkbox}input[type=checkbox]:checked{background-color:var(--coral);border-color:var(--coral)}input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center}
