.login-page{background:linear-gradient(145deg,#0f172a 0%,#1e293b 100%);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-box{background:#1e293b;border:1px solid #334155;border-radius:16px;width:100%;max-width:360px;padding:2rem;box-shadow:0 25px 50px -12px #0006}.login-box h1{color:#f8fafc;text-align:center;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.login-subtitle{color:#94a3b8;text-align:center;margin:0 0 1.5rem;font-size:.95rem}.login-form .form-group{margin-bottom:1.25rem}.login-form .form-group label{color:#cbd5e1;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.login-form .form-group input{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:8px;width:100%;padding:.65rem .75rem;font-size:1rem}.login-form .form-group input:focus{border-color:#3b82f6;outline:none}.login-error{color:#f87171;margin:0 0 1rem;font-size:.875rem}.btn-block{width:100%;margin-top:.25rem;padding:.75rem}.app{max-width:960px;min-height:100vh;margin:0 auto;padding:1.5rem}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.app-header-actions{align-items:center;gap:.75rem;display:flex}.app-header h1{color:#f8fafc;margin:0;font-size:1.5rem;font-weight:700}.app-main{min-height:200px}.loading{color:#94a3b8}.product-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.product-card{background:#1e293b;border:1px solid #334155;border-radius:12px;gap:1rem;display:flex;overflow:hidden}.product-card-image{background:#0f172a;flex-shrink:0;width:120px;min-height:100px}.product-card-image img{object-fit:cover;width:100%;height:100%;display:block}.product-card-image .no-image{color:#64748b;justify-content:center;align-items:center;width:100%;height:100%;font-size:.875rem;display:flex}.product-card-body{flex:1;min-width:0;padding:1rem}.product-name{margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.product-price{color:#94a3b8;margin:0 0 .5rem;font-size:.95rem}.product-desc{color:#94a3b8;margin:0 0 .75rem;font-size:.875rem;line-height:1.4}.product-actions{gap:.5rem;display:flex}.product-category{color:#64748b;margin:0 0 .25rem;font-size:.8rem}.category-section{margin-bottom:2rem}.category-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.category-section-header h2{color:#f8fafc;margin:0;font-size:1.2rem;font-weight:600}.category-list{flex-wrap:wrap;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.category-card{background:#1e293b;border:1px solid #334155;border-radius:8px;align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex}.category-name{color:#e2e8f0;font-weight:500}.category-actions{gap:.5rem;display:flex}.category-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.modal.modal-sm{max-width:360px}.btn{border:none;border-radius:8px;padding:.5rem 1rem;font-weight:500;transition:background .2s}.btn-primary{color:#fff;background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover{background:#b91c1c}.btn-ghost{color:#e2e8f0;background:#334155}.btn-ghost:hover{background:#475569}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:#1e293b;border-radius:12px;width:100%;max-width:420px;max-height:90vh;overflow:auto;box-shadow:0 25px 50px -12px #00000080}.modal-header{border-bottom:1px solid #334155;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.btn-close{color:#94a3b8;background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1}.btn-close:hover{color:#f8fafc}.modal-body{padding:1.25rem}.form-group{margin-bottom:1.25rem}.form-group label{color:#cbd5e1;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.form-group input,.form-group textarea{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:8px;width:100%;padding:.6rem .75rem}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;outline:none}.form-group textarea{resize:vertical;min-height:80px}.image-upload{text-align:center;cursor:pointer;border:2px dashed #475569;border-radius:8px;padding:1.5rem;transition:border-color .2s}.image-upload:hover{border-color:#64748b}.image-upload input{display:none}.image-preview{border-radius:8px;max-width:100%;max-height:200px;margin-top:.5rem}.form-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.form-actions .btn{flex:1;min-width:100px}.status{margin-top:.5rem;font-size:.875rem}.status.uploading,.status.saving{color:#fbbf24}.status.done{color:#22c55e}.status.error{color:#ef4444}.step-nav{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.step-nav button{color:#94a3b8;background:#334155;border:1px solid #475569;border-radius:6px;padding:.35rem .75rem;font-size:.875rem}.step-nav button.active{color:#fff;background:#3b82f6;border-color:#3b82f6}.step-nav button:not(.active):hover{color:#e2e8f0;background:#475569}*{box-sizing:border-box}body{color:#e2e8f0;background:#0f172a;min-height:100vh;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}#root{min-height:100vh}input,textarea,button{font:inherit}button{cursor:pointer}
