*{box-sizing:border-box;margin:0;padding:0}#root{overflow-x:hidden}.skip-link{position:absolute;top:-100%;left:12px;z-index:9999;padding:8px 16px;border-radius:0 0 8px 8px;background:#1a4fa0;color:#fff;font-family:DM Sans,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:top .15s}.skip-link:focus{top:0}:root{color-scheme:light dark;scroll-behavior:smooth;scroll-padding-top:72px}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:#1a4fa0;border-radius:4px}*{scrollbar-width:thin;scrollbar-color:#1a4fa0 transparent}.pf{font-family:Playfair Display,serif}.dm{font-family:DM Sans,sans-serif}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(110%)}to{transform:translate(0)}}@keyframes popUp{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes bounceIn{0%{transform:scale(0)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes addPulse{0%{transform:scale(1);background:linear-gradient(135deg,#1a4fa0,#2060d0)}40%{transform:scale(.94);background:linear-gradient(135deg,#1a8a40,#2a5)}to{transform:scale(1);background:linear-gradient(135deg,#1a4fa0,#2060d0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeSlide{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes spin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.prod-card{border-radius:18px;overflow:hidden;cursor:pointer;min-width:0;transition:transform .28s cubic-bezier(.34,1.4,.64,1),box-shadow .28s ease,border-color .28s;border:2px solid transparent;content-visibility:auto;contain-intrinsic-size:0 300px}.prod-card:hover{transform:translateY(-4px);border-color:#2a6fd0;box-shadow:0 8px 20px #1a3c8c1f}.prod-card:focus-visible{outline:none;border-color:#2a6fd0;box-shadow:0 0 0 3px #1e5cb84d}.emoji-bg{padding:0;text-align:center;font-size:52px;display:flex;align-items:center;justify-content:center;transition:background .28s;position:relative;overflow:hidden;-moz-appearance:none;appearance:none;-webkit-appearance:none;outline:none}.emoji-bg:focus-visible{outline:3px solid rgba(30,92,184,.5);outline-offset:-3px}.emoji-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 60% 30%,rgba(255,255,255,.4) 0%,transparent 60%)}.btn-primary{background:linear-gradient(135deg,#1a4fa0,#2060d0);color:#fff;border:none;border-radius:10px;padding:10px 18px;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .2s;box-shadow:0 3px 12px #1a4fa04d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #1a4fa066}.btn-primary:active{transform:scale(.97)}.btn-primary:focus-visible{outline:3px solid rgba(30,92,184,.55);outline-offset:2px}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost{background:transparent;color:#154090;border:1.5px solid #b8cce0;border-radius:10px;padding:10px 18px;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.btn-ghost:hover{background:#1a4fa014;border-color:#1a4fa0}.btn-ghost:focus-visible{outline:3px solid rgba(30,92,184,.45);outline-offset:2px}.btn-danger{background:transparent;color:#c83a1a;border:1.5px solid #e8c0b0;border-radius:8px;padding:6px 12px;cursor:pointer;font-family:DM Sans,sans-serif;font-size:12px;transition:all .2s}.btn-danger:hover{background:#fef0ec}.btn-danger:focus-visible{outline:3px solid rgba(200,58,26,.45);outline-offset:2px}.chip{padding:7px 16px;border-radius:24px;cursor:pointer;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;border:1.5px solid;transition:all .18s;white-space:nowrap}.chip:focus-visible{outline:3px solid rgba(30,92,184,.5);outline-offset:2px}.chip-active{background:linear-gradient(135deg,#1a4fa0,#1e5cb8);color:#fff;border-color:transparent;box-shadow:0 3px 12px #1a4fa04d}.inp{padding:11px 16px;border-radius:10px;font-family:DM Sans,sans-serif;font-size:14px;outline:none;transition:border .2s,box-shadow .2s;width:100%}.inp:focus{border-color:#1e5cb8;box-shadow:0 0 0 3px #1e5cb81f}.qty-btn{width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:700;color:#154090;transition:all .15s;display:flex;align-items:center;justify-content:center;border:none;background:transparent}.qty-btn:hover{background:#1a4fa0;color:#fff}.qty-btn:focus-visible{outline:3px solid rgba(30,92,184,.5);outline-offset:1px}.qty-btn:before{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px}.qty-btn{position:relative}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0f2899;z-index:99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .25s ease}.drawer{position:fixed;right:0;top:0;height:100vh;height:100dvh;width:400px;max-width:96vw;z-index:100;display:flex;flex-direction:column;animation:slideIn .3s cubic-bezier(.34,1.2,.64,1);box-shadow:-16px 0 60px #0003;padding-bottom:env(safe-area-inset-bottom);padding-right:env(safe-area-inset-right);will-change:transform;overscroll-behavior:contain}.modal-center{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:101;padding:20px}.modal-box{width:460px;max-width:100%;max-height:92vh;overflow-y:auto;border-radius:20px;padding:32px;animation:popUp .3s cubic-bezier(.34,1.2,.64,1);will-change:transform,opacity;overscroll-behavior:contain}.modal-wide{width:680px}.cat-scroll{scrollbar-width:none}.cat-scroll::-webkit-scrollbar{display:none}.bottom-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;background:linear-gradient(135deg,#0f2860,#1a4fa0);color:#fff;padding:14px 24px;padding-bottom:max(14px,calc(14px + env(safe-area-inset-bottom)));padding-left:max(24px,calc(24px + env(safe-area-inset-left)));padding-right:max(24px,calc(24px + env(safe-area-inset-right)));display:flex;align-items:center;justify-content:space-between;animation:slideUp .4s cubic-bezier(.34,1.2,.64,1);box-shadow:0 -4px 20px #0003;font-family:DM Sans,sans-serif}.cart-item{display:flex;gap:12px;animation:fadeSlide .3s ease}.toggle{width:44px;height:24px;border-radius:12px;cursor:pointer;position:relative;transition:background .2s;border:none}.toggle:after{content:"";position:absolute;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .2s}.toggle.off:after{left:3px}.toggle.on:after{left:23px}.toggle:focus-visible{outline:3px solid rgba(30,92,184,.55);outline-offset:3px}.card-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.card-add-btn{padding:8px 14px;font-size:12px;white-space:nowrap;min-width:100px;transition:background .3s,transform .15s}.card-add-btn--adding{animation:addPulse .6s cubic-bezier(.34,1.4,.64,1) forwards;cursor:default}.footer-link{color:inherit;text-decoration:none;font-size:12px;font-family:DM Sans,sans-serif;transition:color .15s}.footer-link:hover{color:#1a4fa0}.hero-cta{background:#fff;color:#1a4fa0;border:none;border-radius:12px;padding:13px 32px;font-size:15px;font-weight:700;cursor:pointer;margin-bottom:28px;box-shadow:0 4px 16px #0000002e;transition:transform .15s,box-shadow .15s}.hero-cta:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0000003d}.hero-cta:focus-visible{outline:3px solid rgba(255,255,255,.9);outline-offset:3px;box-shadow:0 0 0 6px #1a4fa080,0 4px 16px #0000002e}.admin-row{display:flex;border-bottom:1px solid}[data-theme=dark] .btn-ghost{color:#7ab0f0;border-color:#2a3a5a}[data-theme=dark] .btn-ghost:hover{background:#5a96f01f;border-color:#4a70b8}[data-theme=dark] .btn-danger{color:#ff8060;border-color:#5a2a1a}[data-theme=dark] .btn-danger:hover{background:#c83c1e1f}[data-theme=dark] .qty-btn{color:#7ab0f0}[data-theme=dark] .qty-btn:hover{background:#1a4fa0;color:#fff}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{header,section,.bottom-bar,.overlay,.drawer,.modal-center,.cat-scroll,[role=search],[role=alert],nav{display:none!important}.card-add-btn,.qty-btn,.btn-primary,.btn-ghost,.hero-cta{display:none!important}body,#root{background:#fff!important;color:#000!important;font-size:11pt}.prod-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:12pt!important;padding:0!important}.prod-card{break-inside:avoid;border:1px solid #ccc!important;box-shadow:none!important;transform:none!important;border-radius:4pt!important;background:#fff!important;cursor:default!important}.emoji-bg{padding:10pt 0 8pt!important;background:#f5f5f5!important;cursor:default!important}.emoji-bg:after{display:none!important}.pf{font-family:serif!important}footer{display:block!important;padding:12pt 0 0!important;border-top:1pt solid #ccc!important;text-align:center!important;font-size:9pt!important;color:#555!important}a[href]:after{content:" (" attr(href) ")";font-size:8pt;color:#666}a[href^="https://wa.me"]:after{content:" (WhatsApp)"}@page{margin:1.5cm 1cm;size:A4 portrait}}@media(max-width:600px){.prod-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.prod-card:hover{transform:none;box-shadow:0 2px 8px #0000000f}.card-add-btn{width:100%;text-align:center}.hero-title{font-size:34px!important}.hide-mobile{display:none!important}.modal-box{padding:24px!important}}
