:root{--primary:#6366f1;--primary-hover:#4f46e5;--bg-color:#f8fafc;--card-bg:#fffc;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0cc;--danger:#ef4444;--danger-hover:#dc2626;--success:#10b981}@media (prefers-color-scheme:dark){:root{--primary:#818cf8;--primary-hover:#6366f1;--bg-color:#0f172a;--card-bg:#1e293bb3;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#334155cc}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);background-image:radial-gradient(at 0 0,#100f15 0,#0000 50%),radial-gradient(at 50% 0,#2f3e6a4d 0,#0000 50%),radial-gradient(at 100% 0,#7227414d 0,#0000 50%);background-attachment:fixed;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6}@media (prefers-color-scheme:light){body{background-image:radial-gradient(at 0 0,#f3f0ff 0,#0000 50%),radial-gradient(at 50% 0,#e0e8ff 0,#0000 50%),radial-gradient(at 100% 0,#ffebf2 0,#0000 50%)}}.app-container{max-width:800px;margin:0 auto;padding:2rem 1rem}.header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.header h1{background:-webkit-linear-gradient(45deg, var(--primary), #a855f7);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.8rem;font-weight:700}.card{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:16px;margin-bottom:1.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.category-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.category-title{font-size:1.25rem;font-weight:600}.product-list{list-style:none}.product-item{border-bottom:1px dashed var(--border-color);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.product-item:last-child{border-bottom:none}.product-info{flex-direction:column;display:flex}.product-name{font-weight:500}.product-price{color:var(--primary);font-size:.9rem;font-weight:600}.btn{cursor:pointer;border:none;border-radius:8px;outline:none;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 2px 4px #6366f14d}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 6px #6366f166}.btn-icon{color:var(--text-muted);background:0 0;border-radius:6px;padding:.4rem}.btn-icon:hover{color:var(--text-main);background:#0000000d}@media (prefers-color-scheme:dark){.btn-icon:hover{background:#ffffff1a}}.btn-danger{color:var(--danger)}.btn-danger:hover{color:#fff;background:var(--danger)}.form-group{margin-bottom:1rem}.form-label{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.form-input{border:1px solid var(--border-color);width:100%;color:var(--text-main);background:#ffffff80;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}@media (prefers-color-scheme:dark){.form-input{background:#0f172a80}}.form-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #6366f133}.flex-row{gap:1rem;display:flex}.save-bar{background:var(--card-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);z-index:100;border-radius:99px;align-items:center;gap:1rem;padding:1rem 2rem;animation:.3s ease-out slideUp;display:flex;position:fixed;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 10px 25px -5px #0003}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{width:100%;max-width:400px;animation:.2s ease-out scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
