@theme{--color-background:#ffffff;--color-foreground:#09090b;--color-muted:#f4f4f5;--color-muted-foreground:#71717a;--color-border:#e4e4e7;--color-input:#e4e4e7;--color-ring:#18181b;--color-primary:#18181b;--color-primary-foreground:#fafafa;--color-secondary:#f4f4f5;--color-secondary-foreground:#18181b;--color-accent:#f4f4f5;--color-accent-foreground:#18181b;--color-destructive:#ef4444;--color-destructive-foreground:#fafafa;--color-success:#16a34a;--color-success-foreground:#fafafa;--color-card:#ffffff;--color-card-foreground:#09090b;--color-sidebar:#fafafa;--color-sidebar-foreground:#3f3f46;--color-sidebar-border:#e4e4e7;--color-sidebar-accent:#f4f4f5;--color-sidebar-accent-foreground:#18181b;--color-sidebar-primary:#18181b;--color-sidebar-primary-foreground:#fafafa;--radius-default:0.5rem;--font-sans:"Inter",system-ui,-apple-system,sans-serif;--color-bg:#fafafa;--color-surface:#ffffff;--color-text:#09090b;--color-text-muted:#71717a;--color-primary-hover:#27272a;--color-danger:#ef4444;--color-accent-hover:#e4e4e7}@layer base{*,::after,::before{box-sizing:border-box}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}}@layer components{.btn,.field-input{font-size:.875rem;height:2.25rem}.btn,.btn-icon,.field-input{height:2.25rem}.card,.field-input{box-shadow:0 1px 2px rgb(0 0 0 / .04)}.field-input{display:block;width:100%;border-radius:calc(var(--radius-default) - 2px);border:1px solid var(--color-input);background:var(--color-background);padding:.5rem .75rem;color:var(--color-foreground);transition:border-color .15s,box-shadow .15s}.badge,.btn{display:inline-flex}textarea.field-input{height:auto;min-height:5rem}.field-input:focus{outline:0;border-color:var(--color-ring);box-shadow:0 0 0 3px rgb(24 24 27 / .08)}.btn{align-items:center;justify-content:center;gap:.5rem;border-radius:calc(var(--radius-default) - 2px);padding:0 1rem;font-weight:500;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.badge,.nav-link{align-items:center}.btn-primary{border:none;background:var(--color-primary);color:var(--color-primary-foreground)}.btn-primary:hover{background:#27272a}.btn-ghost:hover,.btn-icon:hover,.btn-outline:hover{background:var(--color-accent)}.btn-outline{border:1px solid var(--color-input);background:var(--color-background);color:var(--color-foreground)}.btn-ghost{border:none;background:0 0;color:var(--color-muted-foreground)}.btn-ghost:hover{color:var(--color-accent-foreground)}.btn-destructive{border:1px solid #fecaca;background:#fef2f2;color:#dc2626}.btn-destructive:hover{background:#fee2e2}.btn-icon{width:2.25rem;padding:0;border:1px solid var(--color-input);background:var(--color-background);color:var(--color-foreground);border-radius:calc(var(--radius-default) - 2px)}.card{border-radius:var(--radius-default);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-card-foreground)}.badge{border-radius:9999px;border:1px solid transparent;padding:.125rem .625rem;font-size:.75rem;font-weight:600}.badge-success{background:#dcfce7;color:#166534;border-color:#bbf7d0}.badge-muted,.data-table th{background:var(--color-muted)}.badge-muted{color:var(--color-muted-foreground)}.badge-outline{background:var(--color-background);color:var(--color-foreground);border-color:var(--color-border)}.data-table th,.nav-group-label{font-size:.75rem;color:var(--color-muted-foreground)}.data-table td,.data-table th{border-bottom:1px solid var(--color-border)}.nav-group-label{padding:0 .5rem;margin-bottom:.25rem;font-weight:500}.nav-link{display:flex;gap:.75rem;border-radius:calc(var(--radius-default) - 2px);padding:.5rem .75rem;font-size:.875rem;font-weight:500;color:var(--color-sidebar-foreground);transition:background .15s,color .15s}.nav-link-active,.nav-link:hover{background:var(--color-sidebar-accent);color:var(--color-sidebar-accent-foreground)}.nav-link-active{font-weight:600}.nav-link-sub{padding:.4rem .75rem;font-size:.8125rem;font-weight:500}.nav-icon{display:flex;height:1rem;width:1rem;shrink:0;align-items:center;justify-content:center}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{height:2.5rem;padding:0 1rem;text-align:left;font-weight:500}.data-table td{padding:.75rem 1rem;vertical-align:middle}.data-table tbody tr:hover{background:rgb(244 244 245 / .5)}.page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-title{font-size:1.875rem;font-weight:700;letter-spacing:-.025em;line-height:1.2;color:var(--color-foreground)}.page-description{margin-top:.25rem;font-size:.875rem;color:var(--color-muted-foreground)}}.htmx-indicator{display:none;opacity:0}.htmx-request .htmx-indicator,.htmx-request.htmx-indicator{display:flex;animation:.3s ease-out forwards erp-loader-overlay-in}@keyframes erp-loader-overlay-in{from{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(12px)}}@keyframes erp-loader-panel-in{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes erp-loader-nav{0%,100%{opacity:.35}50%{opacity:1}}@keyframes erp-loader-row{0%,100%{opacity:.4;transform:translateX(0)}50%{opacity:1;transform:translateX(2px)}}@keyframes erp-loader-scan{0%{transform:translateY(-120%);opacity:0}20%{opacity:1}100%{transform:translateY(420%);opacity:0}}@keyframes erp-loader-dot{0%,100%,80%{transform:scale(.65);opacity:.35}40%{transform:scale(1);opacity:1}}.erp-loader-overlay{background-color:rgb(9 9 11 / .32);background-image:radial-gradient(circle at 15% 10%,rgb(255 255 255 / .06) 0,transparent 40%),linear-gradient(rgb(255 255 255 / .03) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / .03) 1px,transparent 1px);background-size:100% 100%,40px 40px,40px 40px}.erp-loader-panel{animation:.38s cubic-bezier(.22,1,.36,1) 30ms both erp-loader-panel-in}.erp-loader-nav-item{animation:1.6s ease-in-out infinite erp-loader-nav}.erp-loader-nav-item:nth-child(2){animation-delay:.2s}.erp-loader-nav-item:nth-child(3){animation-delay:.4s}.erp-loader-row{animation:1.5s ease-in-out infinite erp-loader-row}.erp-loader-dot:nth-child(2),.erp-loader-row:nth-child(2){animation-delay:.15s}.erp-loader-dot:nth-child(3),.erp-loader-row:nth-child(3){animation-delay:.3s}.erp-loader-row:nth-child(4){animation-delay:.45s}.erp-loader-scan{animation:1.8s cubic-bezier(.45,.05,.25,1) infinite erp-loader-scan}.erp-loader-dot{animation:1.1s ease-in-out infinite erp-loader-dot}