:root{color:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f1f5f9;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font-family:inherit}#root,.app-shell{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:24px;padding:20px 5%;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{color:#fff;letter-spacing:1px;background:#17365d;border-radius:10px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.brand h1{margin:0;font-size:18px}.brand p,.subtitle{color:#64748b;margin:5px 0 0;font-size:14px}.environment-label{color:#475569;font-size:13px}.page-content{max-width:1200px;margin:0 auto;padding:40px 28px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.eyebrow{color:#64748b;letter-spacing:1.4px;margin:0 0 8px;font-size:12px;font-weight:700}.page-heading h2{margin:0;font-size:32px}.record-count{text-align:right;flex-direction:column;gap:4px;display:flex}.record-count strong{font-size:24px}.record-count span{color:#64748b;font-size:13px}.panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 3px 12px #0f172a0a}.search-form{border-bottom:1px solid #e2e8f0;align-items:flex-end;gap:12px;padding:22px;display:flex}.search-field{color:#334155;flex-direction:column;flex:1;gap:8px;max-width:480px;font-size:13px;font-weight:600;display:flex}.search-field input{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:11px 13px;font-weight:400}.search-field input:focus{border-color:#2563eb;outline:2px solid #93c5fd}.primary-button,.secondary-button{font:inherit;cursor:pointer;border:1px solid #cbd5e1;border-radius:7px;padding:10px 16px;font-size:13px;font-weight:600}.primary-button{color:#fff;background:#17365d;border-color:#17365d}.secondary-button{color:#334155;background:#fff}.primary-button:hover{background:#244b7a}.secondary-button:hover:not(:disabled){background:#f1f5f9}button:disabled{cursor:not-allowed;opacity:.45}.search-summary{color:#475569;margin:0;padding:16px 22px 0;font-size:13px}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{white-space:nowrap;border-bottom:1px solid #edf2f7;padding:16px 22px}th{color:#64748b;letter-spacing:.8px;text-transform:uppercase;background:#f8fafc;font-size:11px;font-weight:700}td{color:#334155;font-size:14px}tbody tr:hover{background:#f8fafc}.customer-name{color:#0f172a;font-weight:600}.customer-id{color:#94a3b8;margin-top:4px;font-size:12px}.status{border-radius:20px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-block}.status-active{color:#166534;background:#dcfce7}.status-inactive{color:#475569;background:#f1f5f9}.pagination{color:#64748b;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-size:13px;display:flex}.pagination-actions{gap:8px;display:flex}.empty-state{color:#64748b;text-align:center;padding:48px 20px}.empty-state strong{color:#0f172a}.error-message{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:20px;padding:18px}.error-message p{font-size:14px}@media (width<=640px){.topbar,.page-heading,.search-form,.pagination{flex-direction:column;align-items:stretch}.environment-label{display:none}.page-content{padding:26px 14px}.page-heading h2{font-size:27px}.record-count{text-align:left}.search-field{max-width:none}.pagination-actions{justify-content:space-between}}.user-menu{align-items:center;gap:16px;display:flex}.user-details{text-align:right;flex-direction:column;gap:4px;display:flex}.user-details strong{color:#0f172a;font-size:13px}.user-details span{color:#64748b;font-size:12px}@media (width<=640px){.user-menu{flex-wrap:wrap;align-items:flex-start}.user-details{text-align:left}}.app-body{min-height:calc(100vh - 89px);display:flex}.sidebar{color:#e2e8f0;background:#172b43;flex-direction:column;flex:0 0 248px;justify-content:space-between;width:248px;padding:20px 12px;transition:width .18s,flex-basis .18s;display:flex}.sidebar-navigation{flex-direction:column;gap:26px;display:flex}.nav-group{flex-direction:column;gap:5px;display:flex}.nav-section-label{color:#94a9bf;letter-spacing:1.2px;padding:0 12px 8px;font-size:10px;font-weight:700}.nav-item,.sidebar-collapse-button,.sidebar-toggle{color:#d8e2ed;width:100%;min-height:43px;font:inherit;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.nav-item{cursor:pointer}.nav-item:hover:not(:disabled){background:#263f5a}.nav-item:disabled{cursor:default;opacity:.65}.nav-item-active{color:#fff;background:#315578;font-weight:600}.nav-icon{flex:0 0 22px;justify-content:center;align-items:center;width:22px;font-size:20px;display:inline-flex}.nav-label{white-space:nowrap;overflow:hidden}.sidebar-collapse-button{cursor:pointer;border-top:1px solid #30445b;border-radius:0;margin-top:24px}.sidebar-collapse-button:hover{color:#fff}.main-content{flex:1;min-width:0}.sidebar-collapsed .sidebar{flex-basis:72px;width:72px;padding-left:8px;padding-right:8px}.sidebar-collapsed .nav-item,.sidebar-collapsed .sidebar-collapse-button{justify-content:center;padding-left:8px;padding-right:8px}.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-section-label{display:none}.sidebar-collapsed .nav-icon{flex-basis:30px;font-size:22px}.mobile-toggle,.sidebar-overlay{display:none}@media (width<=760px){.app-body{min-height:calc(100vh - 75px)}.topbar{gap:12px;padding:14px}.brand-text h1{font-size:15px}.brand-text p{display:none}.brand-mark{width:40px;height:40px}.mobile-toggle{color:#17365d;cursor:pointer;background:#f1f5f9;justify-content:center;width:40px;min-width:40px;padding:8px;display:inline-flex}.sidebar{z-index:1001;width:248px;max-width:85vw;transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.sidebar-mobile-open{transform:translate(0)}.sidebar-collapsed .sidebar{flex-basis:248px;width:248px}.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-section-label{display:initial}.sidebar-overlay{z-index:1000;background:#0f172a73;border:0;display:block;position:fixed;inset:0}.user-menu{gap:8px}.user-details{display:none}}.users-toolbar{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:16px;padding:22px;display:flex}.users-toolbar h3{color:#0f172a;margin:0;font-size:16px}.users-toolbar p{color:#64748b;margin:6px 0 0;font-size:13px}.user-role{color:#334155;text-transform:capitalize;border:1px solid #cbd5e1;border-radius:6px;padding:5px 9px;font-size:12px;display:inline-block}.user-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin:20px 0;padding:14px 18px;font-size:14px}@media (width<=640px){.users-toolbar{align-items:flex-start}}.users-toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}.user-form{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;display:flex}.user-form h3{margin:0;font-size:17px}.user-form .search-field{width:100%;max-width:560px}.user-form-notice{color:#475569;background:#fff;border:1px solid #cbd5e1;border-radius:7px;max-width:650px;margin:0;padding:12px 14px;font-size:13px;line-height:1.6}@media (width<=640px){.users-toolbar{flex-direction:column}.user-form{padding:18px}}.login-page{background:#f3f5f8;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{text-align:center;background:#fff;border:1px solid #e2e6ec;border-radius:16px;width:100%;max-width:420px;padding:40px;box-shadow:0 12px 35px #14233c14}.login-brand{color:#fff;background:#183b63;border-radius:14px;place-items:center;width:64px;height:64px;margin-bottom:16px;font-size:24px;font-weight:800;display:inline-grid}.login-card h1{margin:0 0 12px;font-size:24px}.login-card p{color:#64748b;line-height:1.5}.login-error{color:#b42318!important}.login-button{color:#fff;cursor:pointer;background:#183b63;border:0;border-radius:8px;width:100%;margin-top:20px;padding:12px 16px;font-size:16px;font-weight:600}.login-button:disabled{opacity:.6;cursor:wait}
