:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg-gradient-start: #fdfbfb;--bg-gradient-mid: #ebedee;--bg-gradient-end: #f5f7fa;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .5);--glass-highlight: rgba(255, 255, 255, .9);--text-primary: #2d3436;--text-secondary: #636e72;--accent-color: #6c5ce7;--accent-hover: #a29bfe;--danger-color: #d63031;--success-color: #00b894;--font-family: "Inter", system-ui, -apple-system, sans-serif;--shadow-color: rgba(0, 0, 0, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background:linear-gradient(135deg,var(--bg-gradient-start),var(--bg-gradient-mid),var(--bg-gradient-end));color:var(--text-primary);min-height:100vh;overflow-x:hidden}.app-container{min-height:100vh;padding:2rem;width:100%}.main-content{width:100%;max-width:100%;margin:0 auto}.app-header{text-align:center;margin-bottom:2rem}.app-header h1{font-size:2.5rem;font-weight:700;color:var(--accent-color);margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.05)}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 8px 32px 0 var(--shadow-color);padding:2.5rem;transition:transform .3s ease}.form-container h2{margin-bottom:1.5rem;color:var(--text-primary)}.form-group{margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.95rem;font-weight:500}input,select,textarea{width:100%;padding:.8rem 1rem;background:#fffc;border:1px solid #dfe6e9;border-radius:10px;color:var(--text-primary);font-family:var(--font-family);transition:all .3s ease;font-size:1rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #6c5ce71a;background:#fff}button{cursor:pointer;border:none;border-radius:10px;font-weight:600;transition:all .2s ease;padding:.8rem 1.5rem;font-family:var(--font-family);font-size:1rem}.btn-primary{background:var(--accent-color);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 4px 15px #6c5ce74d}.btn-secondary{background:#fff;color:var(--text-secondary);border:1px solid #dfe6e9}.btn-secondary:hover{background:#f5f6fa;color:var(--text-primary)}.btn-delete{background:#d630311a;color:var(--danger-color);border:1px solid rgba(214,48,49,.2)}.btn-delete:hover{background:#d6303133}.product-list-container .list-header{margin-bottom:2rem}.search-filter-bar{display:flex;gap:1rem;align-items:center;background:#fff9;padding:1rem;border-radius:16px;border:1px solid var(--glass-border);box-shadow:0 4px 12px #00000008}.search-input-wrapper{position:relative;flex:3}.category-filter{flex:1;min-width:200px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.4;pointer-events:none}.search-input{padding-left:2.5rem;background:#fff}.create-btn{white-space:nowrap}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:2rem}.product-card{padding:0;overflow:hidden;height:100%;display:flex;flex-direction:column;background:#fffc;border-radius:16px;border:1px solid white}.product-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #00000014}.card-image{height:220px;width:100%;position:relative;overflow:hidden;background:#f1f2f6}.card-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s ease;padding:1rem}.card-image:hover img{transform:scale(1.05)}.card-overlay{position:absolute;top:10px;right:10px}.price-tag{background:#ffffffe6;color:var(--text-primary);padding:6px 10px;border-radius:8px;font-weight:700;box-shadow:0 2px 8px #0000001a;font-size:.9rem}.card-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.card-content h3{font-size:1.15rem;margin-bottom:.5rem;color:var(--text-primary)}.category-label{font-size:.8rem;color:var(--accent-color);background:#6c5ce71a;display:inline-block;padding:4px 10px;border-radius:6px;margin-bottom:1rem;font-weight:500}.card-actions{margin-top:auto;display:flex;justify-content:flex-end;gap:.5rem}.btn-icon{padding:0;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:transform .2s;font-size:1.2rem}.btn-icon:hover{transform:scale(1.1)}.btn-icon.edit{background:#6c5ce71a;color:var(--accent-color)}.btn-icon.delete{background:#d630311a;color:var(--danger-color)}.upload-area{border:2px dashed #b2bec3;border-radius:12px;padding:2rem;text-align:center;transition:border-color .3s;background:#ffffff80}.upload-area:hover{border-color:var(--accent-color);background:#fffc}.file-input-hidden{display:none}.file-upload-label{cursor:pointer;display:block;font-size:1.1rem;color:var(--text-secondary)}.previews-container{display:flex;gap:12px;margin-top:1.5rem;flex-wrap:wrap}.preview-item{width:90px;height:90px;position:relative;border-radius:10px;overflow:hidden;border:1px solid #dfe6e9;background:#fff;box-shadow:0 2px 5px #0000000d}.preview-img{width:100%;height:100%;object-fit:cover}.remove-btn{position:absolute;top:4px;right:4px;background:#ffffffe6;color:var(--danger-color);border-radius:50%;width:24px;height:24px;font-size:16px;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 5px #0000001a}.remove-btn:hover{background:var(--danger-color);color:#fff}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{width:90%;max-width:400px;text-align:center;background:#fff;border:1px solid white}.modal-content h3{margin-bottom:1rem;color:var(--text-primary)}.modal-actions{margin-top:2rem;display:flex;justify-content:center;gap:1rem}.message-banner{padding:1rem;border-radius:10px;margin-bottom:1.5rem;text-align:center;font-weight:500}.message-banner.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message-banner.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.form-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}@media(max-width:768px){.app-container{padding:1rem;width:100%}.app-header h1{font-size:1.8rem;margin-top:2rem}.app-header button.btn-secondary{position:relative!important;transform:none!important;top:auto!important;right:auto!important;margin-top:1rem;width:100%;display:block}.search-filter-bar{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem}.search-input-wrapper,.category-filter,.create-btn{width:100%;min-width:0}.create-btn{margin-right:0!important;margin-bottom:.5rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.product-card{border-radius:12px}.card-image{height:180px}.card-content{padding:1rem}.card-content h3{font-size:1rem}.form-row{grid-template-columns:1fr}.form-header-row{flex-direction:column-reverse;align-items:flex-start;gap:1rem}.form-header-row .close{align-self:flex-end}.form-actions{flex-direction:column}.form-actions button{width:100%}.admin-table th,.admin-table td{padding:.75rem .5rem;font-size:.9rem}.usage-badge{font-size:.7rem;padding:2px 8px}}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card{width:100%;max-width:400px;padding:3rem}
