:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#fff7f9;color:#30242a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#f7f4efeb,#f7f4ef),url("data:image/svg+xml,%3Csvg width='160' height='160' viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23d8d1c5' stroke-opacity='.35'%3E%3Cpath d='M0 80h160M80 0v160'/%3E%3C/g%3E%3C/svg%3E")}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}label{display:grid;gap:.45rem;color:#5f5058;font-size:.9rem;font-weight:650}input,select,textarea{width:100%;border:1px solid #ead3dc;border-radius:8px;background:#fffafb;color:#30242a;padding:.72rem .82rem;outline:none}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#b86b88;box-shadow:0 0 0 3px #b86b8829}.app-shell{min-height:100vh}.topbar,.admin-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(31,37,35,.08);background:#fffdf9e6;padding:.9rem clamp(1rem,3vw,2rem);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:grid;gap:.1rem}.brand span,.admin-topbar strong{font-family:Georgia,Times New Roman,serif;font-size:1.55rem;letter-spacing:0}.brand small,.admin-topbar span{color:#8a7680;font-size:.78rem}.icon-button,.qty button{display:inline-grid;width:2.55rem;height:2.55rem;place-items:center;border:1px solid #ead3dc;border-radius:8px;background:#fffafb;color:#4b3740}.icon-button:hover,.qty button:hover,.secondary-button:hover,.text-button:hover{border-color:#b86b88;color:#b86b88}.cart-button{position:relative}.cart-count{position:absolute;right:-.4rem;top:-.45rem;min-width:1.25rem;height:1.25rem;border-radius:999px;background:#d46a8c;color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:800}.store-layout{width:min(1240px,100%);margin:0 auto;padding:clamp(1rem,3vw,2rem)}.store-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);align-items:end;gap:1.25rem;padding:clamp(1rem,3vw,2.2rem) 0}.eyebrow,.category{margin:0 0 .4rem;color:#c06c8d;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.store-intro h1{max-width:720px;margin:0;color:#30242a;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,6vw,5.1rem);font-weight:500;line-height:.96;letter-spacing:0}.search-box{display:flex;align-items:center;gap:.65rem;border:1px solid #ead3dc;border-radius:8px;background:#fffafb;padding:0 .85rem}.search-box input{border:0;box-shadow:none;padding-left:0}.shop-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.2rem;align-items:start}.filters,.admin-list,.admin-editor,.order-card,.login-box{border:1px solid rgba(31,37,35,.1);border-radius:8px;background:#fffdf9eb;box-shadow:0 16px 45px #1f25230f}.filters{position:sticky;top:5.2rem;display:grid;gap:1rem;padding:1rem}.filter-head,.section-head,.drawer-head,.order-head,.order-actions,.total-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.filter-head h2,.section-head h1,.section-head h2,.drawer-head h2{margin:0;color:#30242a}.filter-head h2,.section-head h2,.drawer-head h2{font-size:1.05rem}.text-button{border:0;background:transparent;color:#c06c8d;font-weight:800;padding:.2rem}.price-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.check-row{display:flex;align-items:center;gap:.55rem}.check-row input{width:1rem;height:1rem}.catalog{min-width:0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.product-card{overflow:hidden;border:1px solid rgba(31,37,35,.1);border-radius:8px;background:#fffafb}.product-photo{position:relative;aspect-ratio:4 / 5;background:#e5ded2}.product-photo img,.photo-placeholder{width:100%;height:100%;object-fit:cover}.photo-placeholder,.cart-thumb,.admin-thumb{display:grid;place-items:center;background:#e5ded2;color:#8a7680}.sold-out{position:absolute;left:.75rem;top:.75rem;border-radius:999px;background:#1f2523e0;color:#fff;padding:.35rem .65rem;font-size:.78rem;font-weight:800}.product-info{display:grid;gap:.9rem;padding:1rem}.product-info h2{margin:0;font-size:1.18rem;line-height:1.2}.description{margin:.45rem 0 0;color:#8a7680;display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.variant-list{display:flex;flex-wrap:wrap;gap:.45rem}.variant{min-height:2rem;border:1px solid #ead3dc;border-radius:999px;background:#fffafb;color:#5f5058;padding:.35rem .62rem;font-size:.82rem;font-weight:750}.variant.active{border-color:#b86b88;background:#b86b88;color:#fff}.primary-button,.secondary-button{display:inline-flex;min-height:2.65rem;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-weight:850}.primary-button{width:100%;border:1px solid #b86b88;background:#b86b88;color:#fff;padding:.75rem 1rem}.secondary-button{border:1px solid #ead3dc;background:#fffafb;color:#4b3740;padding:.6rem .85rem}.danger,.secondary-button.danger{color:#d46a8c}.notice{border:1px solid #ead3dc;border-radius:8px;background:#fffafb;color:#5f5058;padding:.85rem}.notice.error{border-color:#b3433259;background:#fff5f2;color:#8f2f22}.notice.success{border-color:#34514559;background:#f0f7f3;color:#b86b88}.drawer{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.drawer.open{pointer-events:auto}.drawer-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#1f252300;transition:background .18s ease}.drawer.open .drawer-backdrop{background:#1f252357}.drawer-panel{position:absolute;right:0;top:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(440px,100%);height:100%;background:#fffafb;box-shadow:-18px 0 45px #1f252329;transform:translate(105%);transition:transform .18s ease}.drawer.open .drawer-panel{transform:translate(0)}.drawer-head,.checkout-form{padding:1rem}.cart-items{overflow:auto;display:grid;align-content:start;gap:.85rem;padding:0 1rem 1rem}.cart-item{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:.75rem;align-items:center;border-bottom:1px solid #eee8de;padding-bottom:.85rem}.cart-item img,.cart-thumb{width:72px;height:88px;border-radius:8px;object-fit:cover}.cart-item strong,.cart-item span{display:block}.cart-item span{color:#8a7680;font-size:.84rem}.qty{display:grid;grid-template-columns:2rem 3rem 2rem;gap:.25rem}.qty button{width:2rem;height:2rem}.qty input{height:2rem;padding:.2rem;text-align:center}.checkout-form{display:grid;gap:.75rem;border-top:1px solid #eee8de;background:#fffafb}.total-row{font-size:1.15rem}.login-page,.admin-shell{min-height:100vh}.login-page{display:grid;place-items:center;padding:1rem}.login-box{display:grid;width:min(390px,100%);gap:1rem;padding:1.3rem}.login-box h1{margin:0;font-family:Georgia,Times New Roman,serif}.admin-topbar{display:grid;grid-template-columns:minmax(120px,1fr) auto auto}.tabs{display:flex;gap:.35rem;border:1px solid #ead3dc;border-radius:8px;background:#fff7f9;padding:.2rem}.tabs button{min-height:2.15rem;border:0;border-radius:6px;background:transparent;color:#5f5058;padding:0 .8rem;font-weight:800}.tabs button.active{background:#fffafb;color:#30242a;box-shadow:0 4px 14px #1f252314}.admin-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:1rem;width:min(1240px,100%);margin:0 auto;padding:1rem}.admin-list,.admin-editor,.orders-page{padding:1rem}.admin-list{display:grid;align-content:start;gap:.75rem}.admin-product{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:.75rem;align-items:center;width:100%;border:1px solid #eee8de;border-radius:8px;background:#fffafb;color:inherit;padding:.55rem;text-align:left}.admin-product.active{border-color:#b86b88}.admin-product img,.admin-thumb{width:58px;height:72px;border-radius:6px;object-fit:cover}.admin-product span{min-width:0}.admin-product strong,.admin-product small{display:block}.admin-product small{color:#8a7680}.product-form{display:grid;gap:1rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.admin-check{align-self:end;min-height:2.8rem}.file-field{display:flex;min-height:3rem;align-items:center;justify-content:center;gap:.55rem;border:1px dashed #b8aea0;border-radius:8px;background:#fbf8f2;color:#5f5058;cursor:pointer}.file-field input{display:none}.variants-editor{display:grid;gap:.75rem}.variant-row{display:grid;grid-template-columns:minmax(80px,1fr) minmax(100px,1fr) 110px 70px auto;gap:.55rem;align-items:center}.variant-row span{color:#c06c8d;font-size:.82rem;font-weight:800}.orders-page{width:min(1040px,100%);margin:0 auto}.orders-list{display:grid;gap:.9rem;margin-top:1rem}.order-card{display:grid;gap:.9rem;padding:1rem}.order-head span,.order-comment{color:#8a7680}.status{border-radius:999px;padding:.28rem .65rem;font-size:.78rem;font-weight:850;text-transform:capitalize}.status.pendiente{background:#fff2d6;color:#885d06}.status.confirmado{background:#e9f6ef;color:#2f684b}.status.cancelado{background:#ffece8;color:#9a3326}.status.entregado{background:#e9eef7;color:#365a91}.order-items{display:grid;gap:.45rem}.order-items div{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,auto) auto;gap:.75rem;border-top:1px solid #eee8de;padding-top:.45rem}.order-items span:nth-child(2){color:#8a7680}.order-actions{flex-wrap:wrap;justify-content:flex-end}.order-actions strong{margin-right:auto;font-size:1.15rem}@media(max-width:1020px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}}@media(max-width:760px){.topbar,.admin-topbar{grid-template-columns:1fr auto}.tabs{grid-column:1 / -1;order:3;justify-content:center}.store-intro,.shop-grid{grid-template-columns:1fr}.filters{position:static}.product-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:64px minmax(0,1fr) auto}.cart-item .danger{grid-column:3}.qty{grid-column:2 / -1;justify-self:start}.form-grid,.variant-row,.order-items div{grid-template-columns:1fr}.variant-row .icon-button{justify-self:start}.order-actions{justify-content:stretch}.order-actions strong{width:100%}}
