@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Spectral:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Special+Elite&display=swap";:root{--primary: #c9966a;--primary-dark: #a8794d;--secondary: #f0e1c5;--accent: #8b4513;--stamp: #b03a2e;--stamp-ink: rgba(176, 58, 46, .78);--bg-white: #ffffff;--bg-paper: #faf3e7;--bg-paper-2: #f5ead4;--bg-kraft: #e8d6b5;--bg-card: #fffcf5;--bg-main: var(--bg-paper);--bg-dark: #2a1d12;--ink: #2c1810;--ink-soft: #6b4423;--ink-faded: #a08770;--text-primary: #2c1810;--text-secondary: #6b4423;--text-light: #a08770;--border: #e0cfb0;--border-faint: rgba(107, 68, 35, .12);--border-soft: rgba(107, 68, 35, .22);--border-dashed: 1px dashed rgba(107, 68, 35, .32);--font-display: "Spectral", Georgia, "Times New Roman", serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Special Elite", "Courier New", monospace;--shadow-soft: 0 1px 2px rgba(58, 40, 23, .04), 0 8px 20px -12px rgba(58, 40, 23, .18);--shadow-card: 0 1px 0 rgba(58, 40, 23, .04), 0 14px 28px -18px rgba(58, 40, 23, .28);--shadow-stamp: 0 1px 0 rgba(176, 58, 46, .1), 0 6px 14px -6px rgba(176, 58, 46, .25);--pattern-scallop: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 50'><path d='M0,0 A50,50 0 0 1 100,0 L100,50 L0,50 Z' fill='%23ffffff'/></svg>")}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;height:100%}body{font-family:var(--font-body);color:var(--ink);line-height:1.6;overflow-x:hidden;min-height:100vh;background-color:var(--bg-paper);background-image:radial-gradient(rgba(107,68,35,.04) 1px,transparent 1px),radial-gradient(rgba(107,68,35,.03) 1px,transparent 1px);background-size:32px 32px,20px 20px;background-position:0 0,10px 10px;height:100%}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.015em;color:var(--ink)}h1{font-size:clamp(1.9rem,4vw,2.75rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}p{font-family:var(--font-body);line-height:1.7;font-size:clamp(.9rem,1.5vw,1rem);color:var(--ink-soft)}a{text-decoration:none;color:inherit}button{font-family:var(--font-body);cursor:pointer;border:none}img{max-width:100%;display:block}small{font-size:.875rem;line-height:1.5}.dot-leaders{flex:1;margin:0 .5rem;align-self:end;border-bottom:2px dotted rgba(107,68,35,.35);transform:translateY(-.35em);min-width:24px}.stamp-mark{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--stamp-ink);color:var(--stamp);background:#faf3e7d9;border-radius:50%;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;box-shadow:var(--shadow-stamp)}@media(max-width:768px){html{font-size:15px}}@media(max-width:480px){html{font-size:14px}body{line-height:1.5}}.cart-overlay{position:fixed;inset:0;background-color:#2c18108c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease;z-index:998}.cart-overlay.active{opacity:1;visibility:visible}.cart-sidebar{position:fixed;top:0;right:0;width:100%;max-width:440px;height:100vh;background:var(--bg-paper);background-image:radial-gradient(rgba(107,68,35,.06) 1px,transparent 1px),radial-gradient(rgba(107,68,35,.04) 1px,transparent 1px);background-size:28px 28px,18px 18px;background-position:0 0,9px 9px;box-shadow:-8px 0 32px #2c181033;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:999;display:flex;flex-direction:column}.cart-sidebar.open{transform:translate(0)}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1.25rem;border-bottom:1px dashed rgba(107,68,35,.25);background:var(--bg-paper);background-image:inherit;background-attachment:local}.cart-header .title{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--ink);margin:0;letter-spacing:-.01em}.cart-header .title:before{content:"tu bolsa ";display:inline;font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-faded);margin-right:.4rem;vertical-align:middle}.cart-close{background:transparent;border:1px solid var(--border-soft);color:var(--ink-soft);width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.cart-close:hover{background:var(--ink);color:var(--bg-paper);border-color:var(--ink)}.cart-close svg{width:18px;height:18px}.cart-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.cart-items{flex:1;padding:.5rem 1.5rem;overflow-y:auto}.cart-item{display:flex;gap:1rem;padding:1.25rem 0;border-bottom:1px dashed rgba(107,68,35,.22);min-height:auto}.cart-item:last-child{border-bottom:none}.cart-item img{width:72px;height:72px;object-fit:cover;border-radius:2px;border:1px solid var(--border-faint);flex-shrink:0}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:.35rem;min-width:0}.cart-item-info h3{font-family:var(--font-display);font-size:1.05rem;font-weight:600;margin:0;color:var(--ink);line-height:1.25;letter-spacing:-.01em}.cart-item-price{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-faded);letter-spacing:.04em;margin:0}.cart-item-controls{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;gap:.85rem}.quantity-controls{display:inline-flex;align-items:center;background:transparent;border:1px solid var(--border-soft);border-radius:2px;padding:0}.qty-btn{background:transparent;border:none;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:background .15s ease,color .15s ease}.qty-btn:hover{background:var(--ink);color:var(--bg-paper)}.qty-btn svg{width:14px;height:14px}.quantity{min-width:28px;text-align:center;font-family:var(--font-mono);font-size:.85rem;color:var(--ink);padding:0 .25rem}.btn-remove{background:transparent;border:none;cursor:pointer;padding:.4rem;display:flex;align-items:center;justify-content:center;color:var(--ink-faded);transition:color .15s ease}.btn-remove:hover{color:var(--stamp)}.btn-remove svg{width:15px;height:15px}.cart-item-subtotal{font-family:var(--font-mono);font-size:.76rem;color:var(--ink-soft);letter-spacing:.04em;margin:.35rem 0 0;padding-top:.35rem;line-height:1.3}.cart-footer{padding:1.5rem;border-top:1px dashed rgba(107,68,35,.28);background:var(--bg-paper-2);background-image:radial-gradient(rgba(107,68,35,.07) 1px,transparent 1px);background-size:18px 18px}.cart-total{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--ink);gap:.5rem}.cart-total>span:first-child{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-soft)}.cart-total-amount{font-family:var(--font-display);font-size:1.75rem;color:var(--ink);font-weight:700;letter-spacing:-.015em}.btn-checkout,.btn-clear-cart{width:100%;padding:.95rem;border-radius:2px;font-family:var(--font-mono);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid}.btn-checkout{background:var(--ink);color:var(--bg-paper);border-color:var(--ink);margin-bottom:.6rem}.btn-checkout:hover{background:var(--stamp);border-color:var(--stamp);transform:translateY(-1px)}.btn-clear-cart{background:transparent;color:var(--ink-faded);border-color:transparent;font-size:.7rem;padding:.65rem}.btn-clear-cart:hover{color:var(--stamp)}.btn-checkout svg,.btn-clear-cart svg{width:15px;height:15px}.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;gap:1.25rem}.empty-icon{width:56px;height:56px;color:var(--ink-faded);opacity:.6}.cart-empty p{font-family:var(--font-display);font-style:italic;font-size:1.15rem;color:var(--ink-soft);margin:0}.btn-continue{background:var(--ink);color:var(--bg-paper);padding:.85rem 1.75rem;border:1px solid var(--ink);border-radius:2px;font-family:var(--font-mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .2s ease}.btn-continue:hover{background:var(--stamp);border-color:var(--stamp)}@media(max-width:480px){.cart-sidebar{max-width:100%}.cart-item img{width:60px;height:60px}.cart-total-amount{font-size:1.5rem}.cart-header{padding:1.25rem 1.1rem 1rem}.cart-items{padding:.5rem 1.1rem}.cart-footer{padding:1.25rem 1.1rem}}.nav{background:transparent;box-shadow:none;position:fixed;top:0;left:0;width:100%;z-index:50;transition:background .3s ease,box-shadow .3s ease}.nav--scrolled{background:#fff;box-shadow:0 4px 12px #00000014}.nav--scrolled .nav-links a{color:#363534}.nav--scrolled .cart-btn{color:#333}.nav--scrolled .burger span{background:#333}.nav-inner{max-width:1200px;margin:0 auto;width:100%;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:center;position:relative}.nav-left{display:flex;align-items:center}.logo-img{height:72px;width:auto}.nav-links{display:flex;align-items:stretch;gap:2rem;list-style:none;height:100%}.nav-links a{display:flex;align-items:center;height:100%;padding:0 1.6rem;text-decoration:none;color:#fff;font-weight:500;border-bottom:3px solid transparent;transition:border-color .25s ease}.nav-links a:hover{border-bottom:3px solid #d4a574}.nav-right{display:flex;align-items:center;gap:1rem;position:absolute;right:2rem}.cart-btn{position:relative;background:none;border:none;font-size:1.6rem;cursor:pointer;margin-right:1.5rem;display:flex;align-items:center;color:#fff;transition:color .3s ease}.cart-btn:hover{color:#d4a574}.cart-badge{position:absolute;top:-8px;right:-8px;background:linear-gradient(135deg,#d4a574,#c69963);color:#fff;font-size:.7rem;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;box-shadow:0 2px 6px #ef444466;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.logout-btn{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#d4a574,#c69963);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #d4a5744d;margin-right:1rem}.logout-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #d4a57466}.logout-btn:active{transform:translateY(0)}.logout-btn svg{font-size:1.3rem}.logout-text{font-size:.9rem}.burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer}.burger span{width:24px;height:3px;background:#fff;border-radius:2px}.mobile-overlay{position:fixed;inset:0;background:#fff;z-index:200;display:flex;flex-direction:column;padding:1.25rem 1.75rem 2rem;transform:translate(-100%);transition:transform .35s cubic-bezier(.4,0,.2,1);overflow-y:auto}.mobile-overlay.open{transform:translate(0)}.mo-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem}.mo-logo img{height:44px;width:auto;border-radius:6px}.mo-close{background:#f5f5f5;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:#222;cursor:pointer;transition:background .2s ease}.mo-close:hover{background:#ebebeb}.mo-nav{display:flex;flex-direction:column}.mo-link{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0;border-bottom:1px solid #f0f0f0;color:#111;font-size:1.15rem;font-weight:500;text-decoration:none;background:none;border-top:none;border-left:none;border-right:none;width:100%;text-align:left;cursor:pointer;transition:color .2s ease}.mo-link:first-child{border-top:1px solid #f0f0f0}.mo-link svg{color:#bbb;font-size:1rem;flex-shrink:0}.mo-link:hover{color:#d4a574}.mo-link:hover svg{color:#d4a574}.mo-logout-link{color:#888}.mo-cta{display:block;background:#111;color:#fff;text-align:center;padding:1rem;border-radius:10px;font-weight:600;font-size:1rem;margin-top:2rem;transition:background .2s ease}.mo-cta:hover{background:#333}.mo-social{display:flex;justify-content:center;gap:2rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f0f0f0}.mo-social a{color:#aaa;font-size:1.3rem;transition:color .2s ease}.mo-social a:hover{color:#d4a574}@media(max-width:1024px){.logout-text{display:none}.logout-btn{padding:.6rem}}@media(max-width:768px){.nav-inner{justify-content:space-between;padding:.6rem 1.25rem}.nav-right{position:static}.nav-links{display:none}.burger{display:flex;padding:8px}.cart-btn{margin-right:0;width:44px;height:44px;justify-content:center;font-size:1.5rem}.logout-btn{display:none}}.footer{position:relative;margin-top:4rem;background:radial-gradient(circle at 10% 20%,rgba(255,244,220,.04),transparent 45%),radial-gradient(circle at 90% 90%,rgba(255,244,220,.03),transparent 50%),var(--bg-dark);color:#efe1ca;padding:3.5rem 1.5rem 2rem}.footer__scallop{position:absolute;top:-1px;left:0;right:0;height:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 32'><path d='M0,32 L0,0 A50,32 0 0 0 100,0 L100,32 Z' fill='%232a1d12'/></svg>");background-size:80px 32px;background-repeat:repeat-x;background-position:top center;transform:translateY(-31px);pointer-events:none}.footer__inner{max-width:1100px;margin:0 auto}.footer__brand{display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center;margin-bottom:2.75rem;padding-bottom:2rem;border-bottom:1px dashed rgba(239,225,202,.18)}.footer__seal{width:118px;height:118px;border:2px solid rgba(212,165,116,.85);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-display);color:#efe1ca;position:relative;transform:rotate(-3deg);box-shadow:inset 0 0 0 4px #d4a57414}.footer__seal:before{content:"";position:absolute;inset:7px;border:1px solid rgba(212,165,116,.35);border-radius:50%}.footer__seal-l1{font-style:italic;font-size:1rem;color:#efe1cabf;line-height:1;margin-bottom:.1rem}.footer__seal-l2{font-size:1.4rem;font-weight:600;letter-spacing:.01em;line-height:1}.footer__seal-l3{font-family:var(--font-mono);font-size:.6rem;color:#d4a574d9;letter-spacing:.12em;text-transform:uppercase;margin-top:.45rem}.footer__tagline{font-family:var(--font-display);font-style:italic;font-size:1.05rem;color:#efe1cac7;max-width:22ch;margin:0;line-height:1.4}.footer__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;margin-bottom:2.25rem}.footer__col{min-width:0}.footer__h{display:flex;align-items:center;gap:.85rem;font-family:var(--font-mono);font-size:.74rem;font-weight:400;text-transform:uppercase;letter-spacing:.22em;color:var(--primary);margin-bottom:1.1rem}.footer__h-line{flex:1;height:1px;background:linear-gradient(to right,rgba(212,165,116,.45),transparent)}.footer__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.7rem}.footer__list li{display:flex;align-items:baseline;gap:.5rem;font-size:.92rem;color:#d8c6a8;line-height:1.4}.footer__list--icons li{align-items:center;gap:.65rem}.footer__list--icons svg{flex-shrink:0;color:var(--primary);font-size:.95rem}.footer__dots{flex:1;border-bottom:1px dotted rgba(239,225,202,.28);transform:translateY(-4px);min-width:18px}.footer__list-faint{font-style:italic;color:#efe1ca8c}.footer__social{display:flex;gap:.5rem;margin-bottom:1rem}.footer__social a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(212,165,116,.35);display:inline-flex;align-items:center;justify-content:center;color:var(--primary);font-size:1rem;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.footer__social a:hover{background:var(--primary);border-color:var(--primary);color:var(--bg-dark);transform:translateY(-2px)}.footer__note{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;color:#efe1ca8c;margin:.5rem 0 0;line-height:1.5;max-width:24ch}.footer__rule{height:1px;background-image:radial-gradient(circle,rgba(239,225,202,.4) 1px,transparent 1px);background-size:8px 1px;background-repeat:repeat-x;margin-bottom:1.5rem}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.72rem;color:#efe1ca80;letter-spacing:.06em;text-transform:lowercase;text-align:center}.footer__bottom-sep{opacity:.4}@media(max-width:768px){.footer{padding:3rem 1.1rem 1.75rem}.footer__scallop{height:22px;background-size:56px 22px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 32'><path d='M0,32 L0,0 A50,32 0 0 0 100,0 L100,32 Z' fill='%232a1d12'/></svg>");transform:translateY(-21px)}.footer__brand{margin-bottom:2rem;padding-bottom:1.5rem}.footer__seal{width:96px;height:96px}.footer__seal-l1{font-size:.85rem}.footer__seal-l2{font-size:1.15rem}.footer__seal-l3{font-size:.55rem}.footer__tagline{font-size:.95rem}.footer__grid{grid-template-columns:1fr;gap:2rem}.footer__h{font-size:.7rem}.footer__bottom{flex-direction:column;gap:.25rem}.footer__bottom-sep{display:none}}@media(max-width:480px){.footer{padding:2.5rem 1rem 1.5rem}.footer__list li{font-size:.88rem}.footer__note{font-size:.68rem}}.ficha{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.ficha__back{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;font-family:var(--font-mono);font-size:.8rem;color:var(--ink-soft);text-transform:lowercase;letter-spacing:.04em;padding:.4rem 0;margin-bottom:1.5rem;cursor:pointer;border-bottom:1px dotted transparent;transition:color .2s ease,border-color .2s ease}.ficha__back:hover{color:var(--ink);border-bottom-color:var(--ink-soft)}.ficha__back svg{font-size:1rem}.ficha__container{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;box-shadow:var(--shadow-card);display:grid;grid-template-columns:1.05fr .95fr;gap:0;overflow:hidden}.ficha__media{position:relative;background:var(--bg-paper-2);min-height:480px}.ficha__media img{width:100%;height:100%;object-fit:cover;display:block}.ficha__seal{position:absolute;bottom:1.25rem;left:1.25rem;width:110px;height:110px;border:2px solid var(--stamp-ink);border-radius:50%;background:#faf3e7eb;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-9deg);color:var(--stamp);font-family:var(--font-mono);text-transform:uppercase;box-shadow:var(--shadow-stamp);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ficha__seal:before{content:"";position:absolute;inset:6px;border:1px solid rgba(176,58,46,.35);border-radius:50%}.ficha__seal-l1{font-size:.6rem;letter-spacing:.18em;opacity:.75;line-height:1}.ficha__seal-l2{font-size:.95rem;font-weight:700;margin:4px 0 6px;line-height:1}.ficha__seal-l3{font-size:.52rem;letter-spacing:.16em;color:#b03a2ebf;line-height:1}.ficha__info{padding:3rem 2.5rem;display:flex;flex-direction:column;gap:1.25rem;border-left:1px dashed rgba(107,68,35,.18)}.ficha__meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.ficha__cat{display:inline-flex;align-items:center;gap:.4rem;background:var(--bg-paper-2);color:var(--ink-soft);padding:.35rem .8rem;border-radius:999px;font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border:1px solid rgba(107,68,35,.18)}.ficha__cat svg{font-size:.9rem}.ficha__cat--dulce{background:#d4a57426;border-color:#d4a5744d;color:var(--primary-dark)}.ficha__cat--salado{background:#8b451314;border-color:#8b45132e;color:var(--accent)}.ficha__rule{flex:1;height:1px;background-image:radial-gradient(circle,rgba(107,68,35,.32) 1px,transparent 1px);background-size:6px 1px;background-repeat:repeat-x}.ficha__lot{font-family:var(--font-mono);font-size:.7rem;color:var(--ink-faded);letter-spacing:.1em;text-transform:lowercase}.ficha__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.6rem);font-weight:600;color:var(--ink);margin:0;line-height:1.1;letter-spacing:-.015em}.ficha__desc{font-family:var(--font-body);font-size:1rem;color:var(--ink-soft);line-height:1.7;margin:0;padding-left:1rem;border-left:2px solid var(--primary)}.ficha__specs{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;padding:1rem 0;border-top:1px dashed rgba(107,68,35,.22);border-bottom:1px dashed rgba(107,68,35,.22);margin:.5rem 0}.ficha__specs>div{display:flex;flex-direction:column;gap:.2rem}.ficha__specs dt{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faded)}.ficha__specs dd{font-family:var(--font-body);font-size:.85rem;color:var(--ink);font-weight:500;line-height:1.3;margin:0}.ficha__buy{display:flex;align-items:baseline;gap:.5rem;padding-top:.5rem}.ficha__price-label{font-family:var(--font-mono);font-size:.74rem;color:var(--ink-faded);text-transform:uppercase;letter-spacing:.14em}.ficha__dots{flex:1;border-bottom:2px dotted rgba(107,68,35,.35);transform:translateY(-6px);min-width:30px}.ficha__price{font-family:var(--font-display);font-size:2.2rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;line-height:1}.ficha__cta{margin-top:.5rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--ink);color:var(--bg-paper);border:1px solid var(--ink);padding:1.1rem 1.5rem;font-family:var(--font-mono);font-size:.88rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;border-radius:2px}.ficha__cta:hover{background:var(--stamp);border-color:var(--stamp);transform:translateY(-1px)}.ficha__cta.is-added{background:transparent;color:var(--ink);border-color:var(--ink-soft)}.ficha__cta svg{font-size:1.05rem}.ficha__cta span{font-size:1.05rem;font-weight:700;transition:transform .2s ease}.ficha__cta:hover span{transform:translate(3px)}@media(max-width:968px){.ficha{padding:1.5rem 1.25rem 3rem}.ficha__container{grid-template-columns:1fr}.ficha__media{min-height:360px}.ficha__info{padding:2rem 1.75rem;border-left:none;border-top:1px dashed rgba(107,68,35,.18)}.ficha__seal{width:90px;height:90px;bottom:1rem;left:1rem}.ficha__seal-l1{font-size:.5rem}.ficha__seal-l2{font-size:.8rem}.ficha__seal-l3{font-size:.45rem}}@media(max-width:640px){.ficha__media{min-height:280px}.ficha__info{padding:1.5rem 1.25rem;gap:1rem}.ficha__desc{font-size:.95rem;padding-left:.85rem}.ficha__specs{grid-template-columns:1fr;gap:.65rem;padding:.85rem 0}.ficha__specs>div{flex-direction:row;justify-content:space-between;align-items:baseline;gap:1rem}.ficha__price{font-size:1.85rem}.ficha__cta{padding:1rem 1.25rem;font-size:.82rem}}@media(max-width:480px){.ficha{padding:1.25rem .85rem 2.5rem}.ficha__back{font-size:.75rem;margin-bottom:1rem}.ficha__seal{width:76px;height:76px}.ficha__title,.ficha__price{font-size:1.6rem}}.skeleton-detail-image{width:100%;height:480px;background:var(--bg-kraft);border-radius:2px;position:relative;overflow:hidden}.skeleton-category{width:100px;height:26px;background:var(--bg-kraft);border-radius:999px;position:relative;overflow:hidden}.skeleton-detail-title{width:70%;height:38px;background:var(--bg-kraft);border-radius:2px;margin-top:1rem;position:relative;overflow:hidden}.skeleton-detail-description{display:flex;flex-direction:column;gap:.6rem;margin:1rem 0}.skeleton-line{width:100%;height:14px;background:var(--bg-kraft);border-radius:2px;position:relative;overflow:hidden}.skeleton-line.short{width:80%}.skeleton-detail-price{width:160px;height:32px;background:var(--bg-kraft);border-radius:2px;margin:1rem 0;position:relative;overflow:hidden}.skeleton-detail-actions{display:flex;gap:1rem;margin-top:3rem}.skeleton-btn{height:48px;background:var(--bg-kraft);border-radius:2px;position:relative;overflow:hidden}.skeleton-btn-back{flex:1}.skeleton-btn-add{flex:2}.skeleton-detail-image:after,.skeleton-category:after,.skeleton-detail-title:after,.skeleton-line:after,.skeleton-detail-price:after,.skeleton-btn:after{content:"";position:absolute;inset:0 0 0 -100%;background:linear-gradient(90deg,transparent,rgba(255,244,220,.55),transparent);animation:shimmer-warm 1.6s infinite}.skeleton-category:after{animation-delay:.05s}.skeleton-detail-title:after{animation-delay:.1s}.skeleton-line:after{animation-delay:.15s}.skeleton-detail-price:after{animation-delay:.2s}.skeleton-btn:after{animation-delay:.25s}@media(max-width:768px){.skeleton-detail-image{height:340px}.skeleton-detail-title{height:30px}.skeleton-detail-actions{flex-direction:column;margin-top:2rem}.skeleton-btn{width:100%}}@media(max-width:480px){.skeleton-detail-image{height:260px}.skeleton-detail-title{height:26px;width:80%}.skeleton-detail-actions{margin-top:1.5rem}}.loading-detail{text-align:center;padding:6rem 2rem;min-height:60vh;display:flex;align-items:center;justify-content:center}.loading-detail p{font-family:var(--font-mono);font-size:.95rem;color:var(--ink-faded);letter-spacing:.04em;animation:pulse 1.5s ease-in-out infinite}.product-not-found{text-align:center;padding:5rem 2rem;min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;max-width:460px;margin:0 auto}.product-not-found p{font-family:var(--font-display);font-style:italic;font-size:1.3rem;color:var(--ink-soft)}.product-not-found button{background:var(--ink);color:var(--bg-paper);border:1px solid var(--ink);padding:.9rem 1.75rem;border-radius:2px;font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.product-not-found button:hover{background:var(--stamp);border-color:var(--stamp);transform:translateY(-1px)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@media(max-width:768px){.loading-detail,.product-not-found{min-height:50vh;padding:4rem 1rem}.loading-detail p{font-size:.85rem}.product-not-found p{font-size:1.1rem}}.card-link{text-decoration:none;color:inherit;display:block;width:100%;max-width:320px;transition:transform .25s ease}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-soft);transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column;height:100%;position:relative}.card-link:hover .card{box-shadow:var(--shadow-card);transform:translateY(-4px)}.card__media{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-paper-2)}.card__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.card-link:hover .card__media img{transform:scale(1.04)}.card__seal{position:absolute;top:.85rem;right:.85rem;width:62px;height:62px;border:1.5px solid var(--stamp-ink);border-radius:50%;background:#faf3e7eb;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-8deg);color:var(--stamp);font-family:var(--font-mono);box-shadow:var(--shadow-stamp);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.card__seal:before{content:"";position:absolute;inset:4px;border:1px solid rgba(176,58,46,.3);border-radius:50%}.card__seal-top{font-size:.52rem;text-transform:uppercase;letter-spacing:.18em;opacity:.7;line-height:1}.card__seal-num{font-size:.78rem;font-weight:700;letter-spacing:.04em;margin-top:2px;line-height:1}.card__body{padding:1.1rem 1.2rem 1.2rem;display:flex;flex-direction:column;flex:1;gap:.55rem;position:relative}.card__body:before{content:"";position:absolute;top:0;left:1.2rem;right:1.2rem;height:1px;background-image:radial-gradient(circle,rgba(107,68,35,.35) 1px,transparent 1px);background-size:6px 1px;background-repeat:repeat-x}.card__title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--ink);margin:.5rem 0 0;line-height:1.2;letter-spacing:-.01em}.card__desc{font-family:var(--font-body);color:var(--ink-soft);font-size:.88rem;line-height:1.55;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__foot{display:flex;align-items:baseline;gap:.5rem;padding-top:.85rem;margin-top:.35rem;border-top:1px dashed rgba(107,68,35,.18)}.card__price{font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:var(--ink);letter-spacing:-.01em;line-height:1}.card__dots{flex:1;border-bottom:2px dotted rgba(107,68,35,.32);transform:translateY(-5px);min-width:16px}.card__cta{font-family:var(--font-mono);font-size:.72rem;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;transition:color .2s ease,transform .2s ease;line-height:1;white-space:nowrap}.card-link:hover .card__cta{color:var(--stamp)}.card__actions{margin-top:.9rem}.btn-add{width:100%;background:var(--ink);color:var(--bg-paper);padding:.85rem 1.5rem;border-radius:4px;font-weight:600;font-size:.9rem;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink);transition:background .2s ease,color .2s ease;cursor:pointer}.btn-add:hover{background:var(--stamp);border-color:var(--stamp)}@media(max-width:768px){.card__seal{width:52px;height:52px;top:.7rem;right:.7rem}.card__seal-top{font-size:.46rem}.card__seal-num{font-size:.7rem}.card__body{padding:1rem}.card__title{font-size:1.2rem}.card__desc{font-size:.85rem}.card__price{font-size:1.25rem}}@media(max-width:480px){.card-link{max-width:100%}.card__media{aspect-ratio:1 / 1}.card__seal{width:44px;height:44px;top:.5rem;right:.5rem;border-width:1px}.card__seal:before{inset:3px}.card__seal-top{font-size:.4rem}.card__seal-num{font-size:.6rem}.card__body{padding:.75rem .75rem .85rem;gap:.4rem}.card__body:before{left:.75rem;right:.75rem}.card__title{font-size:.98rem;margin-top:.35rem}.card__desc{font-size:.78rem;-webkit-line-clamp:2}.card__foot{padding-top:.6rem}.card__price{font-size:1rem}.card__cta{font-size:.6rem}}.item-list-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.75rem 1.5rem;padding:1.5rem 1.5rem 2rem;max-width:1180px;width:100%;justify-items:stretch;min-height:300px}.no-products{grid-column:1 / -1;text-align:center;padding:4rem 2rem;font-family:var(--font-display);font-style:italic;font-size:1.1rem;color:var(--ink-soft);background:var(--bg-card);border:1px dashed rgba(107,68,35,.32);border-radius:4px}@media(max-width:1200px){.item-list-container{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding:1.5rem 1.5rem 2rem}}@media(max-width:768px){.item-list-container{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));padding:1.25rem 1rem 1.5rem;gap:1.25rem 1rem}.no-products{font-size:1rem;padding:3rem 1.5rem}}@media(max-width:480px){.item-list-container{grid-template-columns:repeat(2,1fr);padding:1rem .75rem;gap:.85rem .75rem}}.skeleton-card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;position:relative}.skeleton-image{width:100%;aspect-ratio:4 / 3;background:var(--bg-kraft);position:relative;overflow:hidden}.skeleton-content{padding:1.1rem 1.2rem 1.2rem;display:flex;flex-direction:column;gap:.7rem;position:relative}.skeleton-content:before{content:"";position:absolute;top:0;left:1.2rem;right:1.2rem;height:1px;background-image:radial-gradient(circle,rgba(107,68,35,.25) 1px,transparent 1px);background-size:6px 1px;background-repeat:repeat-x}.skeleton-title{height:22px;width:65%;background:var(--bg-kraft);border-radius:2px;position:relative;overflow:hidden;margin-top:.4rem}.skeleton-description{height:14px;width:90%;background:var(--bg-kraft);border-radius:2px;position:relative;overflow:hidden}.skeleton-price{height:26px;width:35%;background:var(--bg-kraft);border-radius:2px;margin-top:.6rem;position:relative;overflow:hidden}.skeleton-image:after,.skeleton-title:after,.skeleton-description:after,.skeleton-price:after{content:"";position:absolute;inset:0 0 0 -100%;background:linear-gradient(90deg,transparent,rgba(255,244,220,.55),transparent);animation:shimmer-warm 1.6s infinite}.skeleton-description:after{animation-delay:.1s}.skeleton-price:after{animation-delay:.2s}@keyframes shimmer-warm{0%{left:-100%}to{left:100%}}@media(max-width:480px){.skeleton-image{aspect-ratio:1 / 1}.skeleton-content{padding:.75rem .75rem .85rem;gap:.5rem}.skeleton-content:before{left:.75rem;right:.75rem}.skeleton-title{height:18px}.skeleton-description{height:12px}.skeleton-price{height:20px}}.skeleton-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.75rem 1.5rem;max-width:1180px;width:100%;padding:1.5rem 1.5rem 2rem}@media(max-width:1200px){.skeleton-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media(max-width:768px){.skeleton-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem 1rem;padding:1.25rem 1rem 1.5rem}}@media(max-width:480px){.skeleton-list{grid-template-columns:repeat(2,1fr);gap:.85rem .75rem;padding:1rem .75rem}}.hero-section{width:100%;height:440px;position:relative;overflow:hidden;margin-top:-82px;margin-bottom:0;background:var(--bg-dark)}.hero-section:after{content:"";position:absolute;left:0;right:0;bottom:-1px;width:100%;height:50px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 50'><path d='M0,0 A50,50 0 0 1 100,0 L100,50 L0,50 Z' fill='%23faf3e7'/></svg>");background-size:100px 50px;background-repeat:repeat-x;background-position:bottom center;pointer-events:none;z-index:3;filter:drop-shadow(0 -1px 0 rgba(139,69,19,.06))}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center 38%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#2c181073,#2c181033,#2c181080)}.hero-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-54%);text-align:center;color:#fff8e7;z-index:2;width:92%;max-width:760px;padding:0 1rem}.hero-content:before{content:"panadería · est. 2018 · buenos aires";display:block;font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.32em;color:#fff8e7bf;margin-bottom:1.4rem;padding-bottom:1rem;border-bottom:1px dashed rgba(255,248,231,.25);width:fit-content;margin-left:auto;margin-right:auto}.hero-title{font-family:var(--font-display);font-style:italic;font-size:clamp(2.6rem,6vw,4.4rem);font-weight:500;margin-bottom:1rem;line-height:1.05;letter-spacing:-.02em;color:#fff8e7;text-shadow:0 2px 16px rgba(0,0,0,.35)}.hero-subtitle{font-family:var(--font-body);font-size:clamp(.95rem,1.6vw,1.1rem);font-weight:400;color:#fff8e7e0;line-height:1.6;max-width:50ch;margin:0 auto;text-shadow:0 1px 8px rgba(0,0,0,.3)}.products-header{text-align:center;margin:3.5rem auto 1.5rem;padding:0 1rem;max-width:720px}.products-header:before{content:"la vidriera del día";display:inline-block;font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.32em;color:var(--stamp);margin-bottom:.85rem;padding:.35rem .85rem;border:1px dashed rgba(176,58,46,.35);border-radius:999px}.products-title{font-family:var(--font-display);font-style:italic;font-size:clamp(1.8rem,4vw,2.6rem);color:var(--ink);margin:0 0 .35rem;font-weight:500;letter-spacing:-.01em}.products-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--ink-soft);font-weight:400;line-height:1.5;max-width:48ch;margin:0 auto}.item-list-section{padding:1rem 0 5rem;display:flex;flex-direction:column;align-items:center}.section-header{text-align:center;margin:1.5rem auto;padding:0 1rem;max-width:720px}.section-header:before{content:"categoría";display:inline-block;font-family:var(--font-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.3em;color:var(--stamp);margin-bottom:.75rem;padding:.3rem .75rem;border:1px dashed rgba(176,58,46,.35);border-radius:999px}.section-title{font-family:var(--font-display);font-style:italic;font-size:clamp(1.6rem,3.5vw,2.2rem);color:var(--ink);margin-bottom:.4rem;font-weight:500;letter-spacing:-.01em}.section-subtitle{font-family:var(--font-body);font-size:.98rem;color:var(--ink-soft);font-weight:400;line-height:1.5}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:968px){.hero-section{height:460px}.hero-content:before{font-size:.65rem;letter-spacing:.28em;margin-bottom:1.1rem;padding-bottom:.85rem}}@media(max-width:768px){.hero-section{height:420px}.hero-section:after{height:32px;background-size:64px 32px}.hero-image{object-position:center}.hero-content:before{font-size:.6rem;letter-spacing:.24em;margin-bottom:.9rem}.products-header{margin:2.5rem auto 1.25rem}.products-header:before,.section-header:before{font-size:.6rem;letter-spacing:.24em}.item-list-section{padding-bottom:3rem}}@media(max-width:480px){.hero-section{height:380px}.hero-content{transform:translate(-50%,-52%)}.hero-content:before{font-size:.55rem;letter-spacing:.2em;margin-bottom:.75rem;padding-bottom:.7rem}.hero-subtitle{font-size:.92rem;padding:0 .5rem}}.admin-section{min-height:calc(100vh - 500px);display:flex;align-items:center;justify-content:center;padding:4rem 1rem;background-color:var(--bg-white)}.admin-container{max-width:640px;width:100%;background:var(--bg-white);border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 12px #2c18100f;padding:3rem 2.5rem;animation:fadeInUp .5s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.admin-header{text-align:center;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.admin-title{font-family:var(--font-display);font-size:1.5rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:500}.admin-subtitle{font-family:var(--font-body);color:var(--text-light);font-size:.95rem;font-weight:400}.product-form{display:flex;flex-direction:column;gap:1.75rem}.form-group{display:flex;flex-direction:column;gap:.6rem}.form-group label{font-family:var(--font-body);font-weight:600;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:.9rem 1.1rem;border:2px solid var(--border);border-radius:8px;font-size:1rem;font-family:var(--font-body);color:var(--text-primary);transition:all .3s ease;background-color:var(--bg-white)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #d4a57414}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0a0a0;font-weight:400}.form-group textarea{resize:vertical;min-height:100px;line-height:1.6}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:20px;padding-right:3rem}.form-group select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23d4a574' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}.form-group input[type=number]::-webkit-outer-spin-button,.form-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-error{border-color:#e8b4b4!important;background-color:#fef5f5!important}.error-message{color:#c53030;font-size:.85rem;font-weight:500;margin:0}.error-general{background-color:#fef5f5;border:1px solid #e8b4b4;border-radius:8px;padding:.85rem;color:#c53030;text-align:center;font-size:.9rem;font-weight:500;animation:shake .4s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}.submit-btn{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all .3s ease;margin-top:.75rem;box-shadow:0 4px 12px #d4a57440;letter-spacing:.3px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #d4a57459}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{background:#ccc;cursor:not-allowed;box-shadow:none;opacity:.6}.file-dropzone{border:2px dashed var(--border);border-radius:8px;padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:all .3s ease;background-color:var(--bg-white)}.file-dropzone:hover{border-color:var(--primary);background-color:#d4a57405}.file-dropzone.dragging{border-color:var(--primary);background-color:#d4a5740d;border-style:solid}.file-dropzone.error{border-color:#e8b4b4;background-color:#fef5f5}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:.75rem}.upload-icon{width:48px;height:48px;color:var(--primary);margin-bottom:.5rem}.dropzone-text{font-family:var(--font-body);font-size:1rem;color:var(--text-primary);font-weight:500;margin:0}.dropzone-hint{font-size:.85rem;color:var(--text-light)}.file-input-hidden{display:none}.file-preview{position:relative;border:2px solid var(--border);border-radius:8px;padding:1rem;background-color:var(--bg-white)}.preview-image{width:100%;height:200px;object-fit:cover;border-radius:6px;margin-bottom:1rem}.remove-file-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background-color:#f5f5f5;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.remove-file-btn:hover{background-color:#e8e8e8;border-color:var(--primary);color:var(--text-primary)}.remove-file-btn svg{width:18px;height:18px}@media(max-width:640px){.admin-section{padding:3rem 1rem}.admin-container{padding:2.5rem 1.75rem}.admin-title{font-size:1.5rem}.admin-subtitle{font-size:.9rem}.product-form{gap:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.8rem 1rem}.submit-btn{padding:.9rem}.file-dropzone{padding:2rem 1rem}.upload-icon{width:40px;height:40px}.dropzone-text{font-size:.95rem}.preview-image{height:160px}}@media(max-width:480px){.admin-container{padding:2rem 1.5rem}.admin-header{margin-bottom:2rem;padding-bottom:1.25rem}}.login-container{min-height:calc(100vh - 220px);display:flex;align-items:center;justify-content:center;padding:5rem 1rem 4rem}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;box-shadow:var(--shadow-card);padding:3rem 2.5rem 2.75rem;width:100%;max-width:420px;animation:fadeInUp .45s ease;position:relative}.login-card:before,.login-card:after{content:"";position:absolute;width:14px;height:14px;border:1px dashed rgba(107,68,35,.3)}.login-card:before{top:12px;left:12px;border-right:none;border-bottom:none}.login-card:after{bottom:12px;right:12px;border-left:none;border-top:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px dashed rgba(107,68,35,.25);position:relative}.login-header:before{content:"acceso restringido";display:block;font-family:var(--font-mono);font-size:.65rem;text-transform:uppercase;letter-spacing:.22em;color:var(--stamp);margin-bottom:.85rem}.login-title{font-family:var(--font-display);font-style:italic;font-size:1.6rem;color:var(--ink);margin:0;font-weight:500;letter-spacing:-.01em}.login-form{display:flex;flex-direction:column;gap:1.4rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-soft)}.form-group input{padding:.85rem 0;border:none;border-bottom:1px solid var(--border-soft);border-radius:0;font-size:1rem;font-family:var(--font-body);color:var(--ink);background:transparent;transition:border-color .2s ease}.form-group input:focus{outline:none;border-bottom-color:var(--ink)}.form-group input::placeholder{color:var(--ink-faded);font-style:italic}.login-btn{background:var(--ink);color:var(--bg-paper);border:1px solid var(--ink);padding:.95rem;border-radius:2px;font-family:var(--font-mono);font-size:.85rem;text-transform:uppercase;letter-spacing:.14em;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease;margin-top:.5rem}.login-btn:hover{background:var(--stamp);border-color:var(--stamp);transform:translateY(-1px)}.login-btn:active{transform:translateY(0)}.login-error{background:#b03a2e14;border:1px dashed rgba(176,58,46,.35);border-radius:2px;padding:.75rem;color:var(--stamp);text-align:center;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.04em;margin-top:-.4rem;animation:shake .4s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@media(max-width:640px){.login-container{min-height:calc(100vh - 180px);padding:3rem 1rem}.login-card{padding:2.5rem 1.75rem 2.25rem}.login-title{font-size:1.4rem}}@media(max-width:480px){.login-card{padding:2rem 1.5rem 1.75rem}.login-header{margin-bottom:1.75rem;padding-bottom:1.25rem}.login-form{gap:1.2rem}}.app-container{min-height:100vh;display:flex;flex-direction:column}main{flex:1 0 auto;width:100%;max-width:100vw;padding-top:82px}footer{flex-shrink:0}
