:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#78716c;--color-primary-text:#57534e;--color-on-primary:#fff;--color-secondary:#a8a29e;--color-accent:#d97706;--color-background:#faf5f2;--color-surface:#fff;--color-foreground:#0f172a;--color-muted:#f6f6f6;--color-border:#eeeded;--color-destructive:#dc2626;--color-ring:#78716c;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 4px 10px #0f172a14;--shadow-lg:0 10px 22px #0f172a1f;--font-heading:"Prata", Georgia, "Times New Roman", serif;--font-body:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease}*{box-sizing:border-box}body{font-family:var(--font-body);background:var(--color-background);color:var(--color-foreground);margin:0}h1,h2{font-family:var(--font-heading);color:var(--color-foreground)}a:focus-visible,button:focus-visible,input:focus-visible,.card:focus-visible,.variant-card:focus-within{outline:2px solid var(--color-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes step-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.app-shell{max-width:960px;margin:0 auto;padding:24px 16px 64px}.login-screen{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-form{background:var(--color-surface);border:1px solid var(--color-border);width:100%;max-width:360px;box-shadow:var(--shadow-md);animation:step-in var(--transition-slow);border-radius:12px;flex-direction:column;gap:12px;padding:32px;display:flex}.login-form h1{margin:0 0 8px;font-size:22px;line-height:1.3}.wizard-progress{justify-content:space-between;gap:8px;margin-bottom:32px;display:flex}.progress-step{flex-direction:column;flex:1;align-items:center;gap:6px;display:flex;position:relative}.progress-step:not(:first-child):before{content:"";background:var(--color-border);z-index:0;width:100%;height:2px;transition:background-color var(--transition-slow);position:absolute;top:15px;left:-50%}.progress-step.progress-done:not(:first-child):before,.progress-step.progress-active:not(:first-child):before{background:var(--color-primary)}.progress-number{z-index:1;border:2px solid var(--color-border);background:var(--color-muted);width:32px;height:32px;color:var(--color-secondary);transition:border-color var(--transition-slow), background-color var(--transition-slow), color var(--transition-slow);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex;position:relative}.progress-step.progress-active .progress-number{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-surface)}.progress-step.progress-done .progress-number{border-color:var(--color-primary);color:var(--color-on-primary);background:var(--color-primary)}button.progress-number{font-size:16px;font-family:var(--font-body);min-height:0;padding:0}.progress-step.progress-clickable .progress-number{cursor:pointer;transition:border-color var(--transition-base), background-color var(--transition-base), color var(--transition-base), transform var(--transition-base)}.progress-step.progress-clickable:hover .progress-number{border-color:var(--color-accent);transform:translateY(-2px)}.progress-step.progress-clickable .progress-number:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.progress-step.progress-clickable:hover .progress-title{color:var(--color-accent)}.progress-title{text-align:center;color:var(--color-secondary);transition:color var(--transition-slow);font-size:13px}.progress-step.progress-active .progress-title{color:var(--color-accent);font-weight:600}.progress-step.progress-done .progress-title{color:var(--color-primary)}.step{background:var(--color-surface);border:1px solid var(--color-border);animation:step-in var(--transition-slow);border-radius:12px;padding:24px}.step h2{margin-top:0;font-size:22px}.field-label{color:var(--color-foreground);margin:20px 0 8px;font-weight:600}label{color:var(--color-foreground);margin-top:16px;margin-bottom:6px;font-weight:600;display:block}input[type=text],input[type=password],input[type=number]{width:100%;font-size:16px;font-family:var(--font-body);color:var(--color-foreground);background:var(--color-surface);border:1px solid var(--color-border);transition:border-color var(--transition-base), box-shadow var(--transition-base);border-radius:8px;padding:12px 16px}input[type=text]:focus-visible,input[type=password]:focus-visible,input[type=number]:focus-visible{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #78716c33}.card-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.card-grid-3{grid-template-columns:repeat(3,1fr)}.card-grid-4{grid-template-columns:repeat(4,1fr)}.card-full{grid-column:1/-1}.card{border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;min-height:88px;font-size:16px;font-family:var(--font-body);text-align:center;color:var(--color-foreground);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:16px;display:flex}.card:hover{border-color:var(--color-secondary);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.card-selected,.card-selected:hover{border-color:var(--color-accent);background:var(--color-surface);box-shadow:var(--shadow-sm)}.card-title{font-weight:600}.card-sub{color:var(--color-primary-text);font-size:13px}.badge{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-demo{background:var(--color-accent);color:var(--color-on-primary);margin-left:8px}.badge-gray{background:var(--color-muted);color:var(--color-primary);white-space:normal}.variant-list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.variant-card{border:2px solid var(--color-border);cursor:pointer;background:var(--color-surface);transition:border-color var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);border-radius:12px;padding:16px;display:block}.variant-card:hover{box-shadow:var(--shadow-sm)}.variant-selected{border-color:var(--color-accent);background:#d977060d}.variant-header{align-items:center;gap:8px;font-size:16px;display:flex}.variant-header input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-accent)}.variant-supplier{color:var(--color-foreground);font-weight:600}.variant-body{color:var(--color-foreground);margin-top:8px;font-size:14px}.variant-parts{margin:8px 0;padding-left:20px}.variant-total{color:var(--color-foreground);margin-top:8px;font-size:16px;font-weight:700}.selected-count{color:var(--color-foreground);margin-top:16px;font-weight:600}.kp-summary{margin:16px 0;padding:0;list-style:none}.kp-summary li{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;margin-bottom:8px;padding:12px}.actions{gap:12px;margin-top:24px;display:flex}button{font-size:16px;font-family:var(--font-body);background:var(--color-accent);min-height:44px;color:var(--color-on-primary);cursor:pointer;transition:opacity var(--transition-base), transform var(--transition-base), background-color var(--transition-base), border-color var(--transition-base);border:2px solid #0000;border-radius:8px;padding:14px 20px;font-weight:600}button:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}button:disabled{background:var(--color-border);color:var(--color-secondary);cursor:not-allowed;opacity:1;transform:none}button.secondary{color:var(--color-primary);border:2px solid var(--color-primary);background:0 0}button.secondary:hover:not(:disabled){background:var(--color-muted);opacity:1}.card.card-select{color:inherit}.error{color:var(--color-destructive);margin-top:12px;font-weight:600}.field-error{color:var(--color-destructive);margin:6px 0 0;font-size:13px;font-weight:600}@media (prefers-reduced-motion:reduce){.step,.login-form{animation:none}}@media (width<=480px){.card-grid,.card-grid-3,.card-grid-4{grid-template-columns:1fr}.actions{flex-direction:column}.actions button{width:100%}.login-form{padding:24px}}
