:root{font-family:system-ui,sans-serif;color:#f3e9d4;background:#0d0b08;--gold:#cba354;--ink:#15110b;--line:#332b1c;--muted:#b8ab92;--panel:#191510}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.2em}a:hover{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(2.5rem,5vw,4rem);line-height:1.04;margin-bottom:.4em}h2{font-size:clamp(1.7rem,3vw,2.8rem);margin-bottom:.55em}h3{font-size:1.45rem;margin-bottom:.4em}p{line-height:1.55}button,.button{display:inline-block;border:1px solid var(--gold);border-radius:7px;background:var(--gold);color:var(--ink);padding:.8rem 1rem;font:600 .9rem system-ui;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#dfbb77;color:var(--ink)}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #f6cf7b;outline-offset:3px}input,textarea{border:1px solid #55482e;border-radius:6px;background:#100e0b;color:inherit;padding:.65rem .75rem;font:inherit;min-width:0;width:100%;color-scheme:dark}textarea{min-height:6rem;resize:vertical}label{display:grid;gap:.4rem;font-size:.87rem}nav{display:flex;align-items:center;gap:1.3rem}nav a,.cartlink{text-decoration:none}.logo{display:block;width:68px;height:68px;object-fit:contain}.notice{font-size:.78rem;text-align:center;padding:.7rem;border-bottom:1px solid var(--line)}.shopbar,footer{padding:.75rem clamp(1rem,3vw,3rem);display:flex;align-items:center;gap:1.6rem;flex-wrap:wrap}.shopbar nav{flex:1;font-size:.9rem}.cartlink{margin-left:auto}.hero{min-height:clamp(340px,34vw,510px);display:flex;align-items:center;padding:2rem clamp(1.3rem,4vw,4rem);margin:0 1rem;background:#100d08 url('/portada.webp') center/cover no-repeat;border:1px solid #2c2313}.hero h1{font-size:clamp(2.25rem,4.2vw,3.65rem);max-width:13ch;text-shadow:0 2px 16px #000}.section{max-width:1440px;margin:auto;padding:clamp(2rem,5vw,4rem) clamp(1.2rem,4vw,4rem)}.row{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;flex-wrap:wrap}.search,.inline,.filters,.actions{display:flex;align-items:end;gap:.6rem;flex-wrap:wrap}.inline{display:inline-flex;margin:.15rem}.inline input{width:8rem}.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),280px));gap:1.2rem}.product{border:1px solid var(--line);padding:1rem;border-radius:8px;background:var(--panel)}.product a{text-decoration:none}.product-photo{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;background:#ebe2ca;color:#332713;margin-bottom:1rem;border-radius:5px}.placeholder{display:grid;place-items:center;font:3rem Georgia}.empty,.muted{color:var(--muted)}.products .empty{grid-column:1/-1}.split,.detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.detail{align-items:start;max-width:980px}.detail p{white-space:pre-line}.shopinfo article,.special{border:1px solid var(--line);background:var(--panel);padding:1.5rem}.special{margin:1rem clamp(1.2rem,4vw,4rem) 3rem;text-align:center;max-width:none}footer{border-top:1px solid var(--line);justify-content:space-between}.cart-row{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.cart-row input{width:6rem}#checkout{max-width:32rem;margin-top:2rem}#checkout form,.login form{display:grid;gap:1rem;margin-bottom:1rem}
.admin{background:#110f0c}.layout{min-height:100vh;display:grid;grid-template-columns:235px minmax(0,1fr)}aside{border-right:1px solid var(--line);background:#18140e;padding:1.25rem;display:flex;flex-direction:column;gap:2rem}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-weight:650}.brand .logo{width:44px;height:44px}.brand small{display:block;color:var(--muted);font-weight:400;margin-top:.2rem}aside nav{display:grid;gap:.25rem}aside nav a{padding:.7rem .8rem;border-radius:6px}aside [aria-current]{background:#332817;color:#f5d389}.aside-bottom{margin-top:auto;display:grid;gap:.75rem}.aside-bottom button{background:transparent;color:var(--gold);border-color:var(--line)}.dashboard{padding:clamp(1rem,4vw,3rem);width:100%;max-width:1550px}.dashboard h1{font-size:2.9rem}.dashboard h2{font-size:1.55rem}.lead{margin-bottom:1.25rem}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));gap:1rem;margin:1.2rem 0}.metrics article,.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1.15rem}.metrics article{display:flex;flex-direction:column;gap:.75rem}.metrics span,th{color:var(--muted);font-size:.82rem}.metrics strong{font:1.65rem Georgia;color:#f5d389}.panel{margin-bottom:1.2rem}.panel p:last-child{margin-bottom:0}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}th,td{padding:.7rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}td small{color:var(--muted)}.status{color:#f5d389}.editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem}.wide{grid-column:1/-1}.checkbox{display:flex;align-items:center}.checkbox input{width:1rem}.login{margin:12vh auto 0;width:min(92%,420px);padding:2rem}.login h1{font-size:2.3rem}.login .logo{margin-bottom:1rem}
@media(max-width:780px){.layout{grid-template-columns:1fr}aside{gap:.7rem;border-right:0;border-bottom:1px solid var(--line)}aside nav,.aside-bottom{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}aside nav a{padding:.55rem}.shopbar{gap:.8rem}.shopbar nav{order:3;flex-basis:100%;gap:.8rem;flex-wrap:wrap}.hero{margin:0;background-position:60% center;background-image:linear-gradient(90deg,#100d08 0%,#100d08a0 55%,transparent),url('/portada.webp')}.split,.detail{grid-template-columns:1fr}}
.stock-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem;border-top:1px solid var(--line);padding:1rem 0}.stock-card p{margin:0}.stock-form{display:flex;flex-wrap:wrap;gap:.55rem;align-items:end}.stock-form input{width:6rem;font-size:16px;min-height:44px}.stock-form button{min-height:44px}.stock-form .secondary{color:var(--gold);background:transparent}.stock-form button:disabled{cursor:default}.saved{padding:.8rem 1rem;border:1px solid #647a43;border-radius:7px;color:#d7e8bd;background:#242f1b}@media(max-width:780px){.admin input,.admin textarea{font-size:16px}.stock-form{width:100%}.stock-form button{flex:1}.stock-form input{width:5rem}.stock-card h3{font-size:1.25rem}}
