.eshop .shop__intro{text-align:center;max-width:620px;margin:-1rem auto 2.5rem;color:var(--text);font-size:.98rem}.eshop .shop__status{text-align:center;color:var(--text-soft);padding:2rem 0}.eshop .products{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:1.4rem}.eshop .pcard{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}.eshop .pcard:hover{box-shadow:0 8px 22px #00000017;transform:translateY(-3px);border-color:#d6dcc9}.eshop .pcard--out{opacity:.75}.eshop .pcard__media{position:relative;cursor:pointer;aspect-ratio:1 / 1;background:#f4f4f1}.eshop .pcard__img{width:100%;height:100%;object-fit:cover;display:block}.eshop .pcard__img--empty{display:flex;align-items:center;justify-content:center;font-size:3rem}.eshop .pcard__badge{position:absolute;top:.6rem;left:.6rem;background:#c0392b;color:#fff;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.32rem .7rem;border-radius:4px;box-shadow:0 2px 6px #0003}.eshop .pcard__info{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.25rem;flex:1}.eshop .pcard__cat{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft)}.eshop .pcard__name{font-family:var(--font-sans);font-size:1rem;font-weight:600;color:var(--heading);margin:0;cursor:pointer;line-height:1.3}.eshop .pcard__name:hover{color:var(--green)}.eshop .pcard__price{font-size:1.1rem;font-weight:700;color:var(--green);margin-top:.15rem}.eshop .pcard__add{margin-top:.7rem;padding:.55rem 1rem;font-size:.8rem;width:100%}.eshop .pcard__soldout{margin-top:.7rem;font-size:.82rem;color:var(--text-soft);text-align:center;padding:.55rem;background:#f4f4f1;border-radius:4px}.eshop .cart-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:60;width:60px;height:60px;border-radius:50%;border:none;background:var(--green);color:#fff;box-shadow:0 6px 18px #00000038;cursor:pointer;display:none;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}.eshop .cart-fab.is-visible{display:flex}.eshop .cart-fab:hover{background:var(--green-dark)}.eshop .cart-fab.pulse{animation:fabpulse .4s ease}@keyframes fabpulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.eshop .cart-fab__count{position:absolute;top:-4px;right:-4px;background:#d9534f;color:#fff;font-size:.72rem;font-weight:700;min-width:22px;height:22px;border-radius:11px;display:flex;align-items:center;justify-content:center;padding:0 5px}.eshop .backdrop{position:fixed;inset:0;background:#00000073;z-index:65;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.eshop .backdrop.is-on{opacity:1;visibility:visible}.eshop .drawer{position:fixed;top:0;right:0;height:100%;width:min(380px,100%);background:#fff;z-index:70;box-shadow:-4px 0 24px #00000026;transform:translate(100%);transition:transform .25s ease;overflow-y:auto;padding:1.4rem}.eshop .drawer.is-open{transform:translate(0)}.eshop .drawer__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.eshop .drawer__head h2{font-size:1.4rem;color:var(--heading);margin:0}.eshop .iconbtn{border:none;background:none;font-size:1.2rem;color:var(--text-soft);cursor:pointer;line-height:1;padding:.3rem}.eshop .iconbtn:hover{color:var(--heading)}.eshop .cline{border-bottom:1px solid var(--border);padding:.7rem 0}.eshop .cline__top{display:flex;justify-content:space-between;align-items:start;gap:.5rem}.eshop .cline__name{font-size:.95rem;color:var(--heading)}.eshop .cline__rm{border:none;background:none;color:#b55;cursor:pointer;font-size:.95rem;padding:0 .2rem}.eshop .cline__bot{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.eshop .cline__price{font-weight:700;color:var(--green);font-size:.95rem}.eshop .cart__empty{color:var(--text-soft)}.eshop .cart__total{display:flex;justify-content:space-between;align-items:center;font-size:1.1rem;padding:1rem 0;margin-top:.3rem;border-top:2px solid var(--border)}.eshop .cart__total strong{color:var(--green);font-size:1.3rem}.eshop .qty{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:5px;overflow:hidden}.eshop .qty__btn{border:none;background:#f4f4f1;color:var(--heading);width:30px;height:32px;font-size:1.1rem;cursor:pointer}.eshop .qty__btn:hover{background:var(--green);color:#fff}.eshop .qty__val{width:42px;height:32px;border:none;text-align:center;font-size:1rem;-moz-appearance:textfield}.eshop .qty__val::-webkit-outer-spin-button,.eshop .qty__val::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.eshop .qty--sm .qty__num{min-width:30px;text-align:center;font-size:.95rem}.eshop .form{margin-top:.5rem}.eshop .form__row{margin-bottom:.7rem}.eshop .form label{display:block;font-size:.82rem;color:var(--heading)}.eshop .form input,.eshop .form textarea{width:100%;margin-top:.2rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:5px;font:inherit;font-size:.9rem;background:#fff}.eshop .form input:focus,.eshop .form textarea:focus{outline:2px solid var(--green);border-color:var(--green)}.eshop .form .btn{width:100%;margin-top:.3rem}.eshop .form__msg{margin-top:.7rem;padding:.55rem .7rem;border-radius:5px;font-size:.88rem}.eshop .form__msg--ok{background:#e8f2da;color:var(--green-dark)}.eshop .form__msg--err{background:#fbeaea;color:#a33}.eshop .payment{margin-top:1.2rem;border-top:2px solid var(--border);padding-top:1rem;text-align:center}.eshop .payment h3{color:var(--heading);font-size:1.15rem;margin:0 0 .4rem}.eshop .payment__intro{font-size:.88rem;color:var(--text)}.eshop .payment__qr{border:1px solid var(--border);border-radius:6px;margin:.5rem auto}.eshop .payment__details{text-align:left;max-width:240px;margin:.5rem auto 0}.eshop .payment__details dt{font-size:.74rem;color:var(--text-soft);text-transform:uppercase;margin-top:.4rem}.eshop .payment__details dd{margin:0;font-weight:600;color:var(--heading)}.eshop .modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-46%) scale(.97);z-index:80;background:#fff;border-radius:12px;width:92%;max-width:480px;max-height:88vh;overflow-y:auto;padding:1.6rem;box-shadow:0 20px 60px #0000004d;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.eshop .modal.is-open{opacity:1;visibility:visible;transform:translate(-50%,-50%) scale(1)}.eshop .modal__close{position:absolute;top:.8rem;right:.9rem;font-size:1.3rem}.eshop .modal__img{width:100%;max-height:300px;object-fit:cover;border-radius:8px;margin-bottom:1rem}.eshop .modal__cat{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-soft)}.eshop .modal__name{font-family:var(--font-serif);font-size:1.6rem;color:var(--heading);margin:.2rem 0 .3rem}.eshop .modal__price{font-size:1.4rem;font-weight:700;color:var(--green);margin-bottom:.8rem}.eshop .modal__desc{color:var(--text);line-height:1.65;margin-bottom:1.2rem}.eshop .modal__buy{display:flex;gap:.8rem;align-items:center}.eshop .modal__buy .btn{flex:1}.eshop .modal__soldout{display:inline-block}body.modal-open{overflow:hidden}@media(max-width:520px){.eshop .products{grid-template-columns:repeat(2,1fr);gap:1rem}}
