@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--green:#35471d;--green2:#607638;--lime:#dce8c4;--cream:#faf8f1;--paper:#fffefb;--ink:#26291f;--muted:#77796e;--line:#e9e7dd;--orange:#c7804b;--shadow:0 16px 44px #27341912}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{background:var(--green);color:#f6f5eb;text-align:center;padding:9px 16px;font-size:12px;letter-spacing:.04em}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px}.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%;background:#fff}.brand-name{font-family:'Playfair Display',serif;font-size:21px;color:var(--green);font-weight:700}.brand-tag{font-size:10px;color:var(--green2);letter-spacing:.11em;text-transform:uppercase}.navlinks{display:flex;gap:30px;font-size:13px;color:#55594c}.navlinks a:hover{color:var(--green)}.nav-actions{display:flex;align-items:center;gap:10px}.icon-btn,.btn{border:0;border-radius:999px;padding:12px 19px;background:var(--green);color:white;font-weight:600;font-size:13px;transition:.2s}.icon-btn{background:transparent;color:var(--green);border:1px solid var(--line);padding:10px 15px}.btn:hover{background:#273714;transform:translateY(-1px)}.hero{display:grid;grid-template-columns:1fr .9fr;gap:50px;align-items:center;padding:46px 0 65px}.eyebrow{color:var(--green2);font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.hero h1{font:600 clamp(42px,5.3vw,68px)/1.08 'Playfair Display',serif;color:var(--green);margin:18px 0}.hero h1 em{color:var(--orange);font-weight:500}.hero p{line-height:1.8;color:var(--muted);max-width:430px;font-size:15px}.hero-cta{display:flex;align-items:center;gap:20px;margin-top:28px}.text-link{font-size:13px;color:var(--green);font-weight:700}.hero-art{height:430px;border-radius:48% 48% 18px 18px;background:linear-gradient(145deg,#e9edda,#d0d9b8);position:relative;overflow:hidden;display:grid;place-items:center}.hero-art:before,.hero-art:after{content:'';position:absolute;border-radius:50%;background:#faf8f15c}.hero-art:before{width:320px;height:320px;top:25px;left:25px}.hero-art:after{width:210px;height:210px;bottom:-30px;right:-25px}.hero-logo{position:relative;z-index:1;width:75%;max-width:430px;mix-blend-mode:multiply}.hero-note{position:absolute;bottom:23px;left:25px;z-index:2;background:#fffdf0d9;border-radius:20px;padding:12px 16px;font-size:12px;color:var(--green);box-shadow:var(--shadow)}.hero-note b{display:block;font-size:14px;margin-bottom:3px}.section{padding:55px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px;gap:20px}.section h2{font:600 36px 'Playfair Display',serif;color:var(--green);margin:8px 0}.section-sub{font-size:13px;color:var(--muted)}.categories{display:flex;gap:9px;overflow:auto;padding-bottom:18px}.chip{white-space:nowrap;border:1px solid var(--line);padding:10px 17px;background:transparent;color:#65685c;border-radius:30px;font-size:12px}.chip.active{background:var(--green);border-color:var(--green);color:white}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product{background:var(--paper);border:1px solid #eeece3;border-radius:18px;overflow:hidden;transition:.25s}.product:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.product-image{height:190px;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,#e7e9d4,#cbd4ae)}.product:nth-child(4n+2) .product-image{background:linear-gradient(135deg,#eee2cb,#d7b891)}.product:nth-child(4n+3) .product-image{background:linear-gradient(135deg,#e6dccf,#c4a790)}.product:nth-child(4n+4) .product-image{background:linear-gradient(135deg,#e6e8d9,#bdc99e)}.cup{width:93px;height:112px;border-radius:12px 12px 27px 27px;border:4px solid #ffffffb8;box-shadow:0 13px 23px #3332;position:relative;background:linear-gradient(to bottom,var(--drink,#cba46e) 0 75%,#fbf5df 75%);transform:rotate(-5deg)}.cup:before{content:'';position:absolute;top:-12px;left:-7px;width:99px;height:17px;background:#faf8ef;border-radius:50%;border:3px solid #fff}.cup:after{content:'';position:absolute;top:-43px;left:42px;width:7px;height:42px;border-radius:5px;background:#fff;border:1px solid #ffffff}.bean{position:absolute;font-size:22px;opacity:.35}.badge{position:absolute;top:12px;left:12px;background:#fffdf0d9;border-radius:20px;padding:6px 10px;font-size:10px;color:var(--green);font-weight:700}.product-body{padding:15px}.product h3{font:600 18px 'Playfair Display',serif;color:var(--green);margin:0 0 6px}.product-desc{color:var(--muted);font-size:11px;line-height:1.5;min-height:34px}.product-foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.price{font-size:14px;font-weight:700;color:var(--green)}.add-btn{width:34px;height:34px;border:0;border-radius:50%;background:var(--lime);font-size:20px;color:var(--green)}.story{background:#eef0e4;border-radius:26px;padding:36px 42px;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.story h2{font:600 34px 'Playfair Display',serif;color:var(--green);margin:10px 0}.story p{font-size:13px;color:#6e7264;line-height:1.8}.story-stats{display:flex;gap:32px;margin-top:22px}.stat b{display:block;color:var(--green);font:600 22px 'Playfair Display',serif}.stat span{font-size:10px;color:var(--muted)}.story-art{min-height:220px;border-radius:20px;background:radial-gradient(circle at 50% 48%,#fff9 0 25%,transparent 26%),linear-gradient(135deg,#cbd4ae,#e9e9d6);display:grid;place-items:center;font-size:72px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:25px}.info-card{background:white;border:1px solid var(--line);border-radius:18px;padding:24px}.info-card h3{font:600 21px 'Playfair Display',serif;color:var(--green);margin:0 0 14px}.info-row{display:flex;gap:13px;padding:11px 0;color:#64675d;font-size:13px;line-height:1.6;border-bottom:1px solid #f1f0e9}.info-row:last-child{border:0}.info-icon{font-size:18px}footer{background:var(--green);color:#f4f3eb;margin-top:55px;padding:35px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-inner small{color:#d2d8c4}.cart-fab{position:fixed;right:22px;bottom:22px;z-index:5;border:0;border-radius:40px;background:var(--green);color:white;padding:15px 20px;box-shadow:0 10px 30px #20301245;font-weight:700}.count{display:inline-grid;place-items:center;background:#d8e7bc;color:var(--green);width:23px;height:23px;border-radius:50%;margin-left:7px}.overlay{position:fixed;inset:0;background:#17200f78;z-index:10;display:grid;place-items:center;padding:15px}.panel{background:var(--paper);border-radius:22px;width:min(600px,100%);max-height:90vh;overflow:auto;padding:25px;box-shadow:0 22px 70px #1114}.panel.wide{width:min(920px,100%)}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.panel-head h2{font:600 27px 'Playfair Display',serif;color:var(--green);margin:0}.close{border:0;background:#f0f1e9;border-radius:50%;width:36px;height:36px;font-size:20px}.empty{text-align:center;color:var(--muted);padding:30px}.cart-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.cart-row small{display:block;color:var(--muted);margin-top:5px}.qty{display:flex;align-items:center;gap:10px}.qty button{border:1px solid var(--line);background:white;border-radius:50%;width:28px;height:28px}.total{display:flex;justify-content:space-between;padding:17px 0;font-weight:700;color:var(--green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px;margin:10px 0}.field.full{grid-column:1/-1}.field label{font-size:11px;color:#686c60;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:10px;padding:11px;background:white;outline-color:#a8b78b}.field textarea{min-height:72px;resize:vertical}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.btn.secondary{background:#edf0e5;color:var(--green)}.payment{background:#f0f2e9;border-radius:16px;padding:18px;margin:15px 0}.payment-inner{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center}.qr-placeholder{height:130px;background:white;border:1px dashed #a3ae88;border-radius:10px;display:grid;place-items:center;text-align:center;color:var(--green);font-size:11px;padding:8px}.payment p{font-size:12px;line-height:1.65;color:#62675a;margin:4px 0}.admin-login{max-width:400px;margin:auto}.admin-table{width:100%;border-collapse:collapse;font-size:12px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 8px;vertical-align:top}.admin-table th{color:var(--muted);font-size:10px;text-transform:uppercase}.status{border:0;border-radius:20px;background:#eef0e5;padding:7px 10px;color:var(--green);font-size:11px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.order-detail{background:#f7f6f0;padding:10px;border-radius:9px;line-height:1.6}.toast{position:fixed;z-index:30;top:18px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:12px 18px;border-radius:30px;font-size:13px;box-shadow:var(--shadow)}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.hero{gap:22px}.hero-art{height:350px}.navlinks{gap:15px}.story{padding:28px}}
@media(max-width:620px){.container{width:min(100% - 28px,520px)}.topbar{font-size:10px}.nav{height:70px}.brand img{width:48px;height:48px}.brand-name{font-size:18px}.brand-tag{font-size:8px}.navlinks{display:none}.nav-actions .icon-btn{padding:9px 12px;font-size:11px}.nav-actions .btn{padding:10px 13px;font-size:11px}.hero{grid-template-columns:1fr;padding:27px 0 42px;gap:22px}.hero h1{font-size:48px;margin:13px 0}.hero p{font-size:13px}.hero-art{height:250px;border-radius:42% 42% 16px 16px}.hero-logo{width:67%}.hero-note{font-size:10px;left:15px;bottom:13px}.section{padding:38px 0}.section h2{font-size:30px}.section-head{align-items:start;flex-direction:column;gap:6px}.grid{gap:11px}.product-image{height:145px}.product{border-radius:14px}.product-body{padding:11px}.product h3{font-size:16px}.product-desc{font-size:10px}.story{grid-template-columns:1fr;padding:23px}.story h2{font-size:29px}.story-art{min-height:150px}.visit{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.payment-inner{grid-template-columns:105px 1fr}.qr-placeholder{height:105px}.panel{padding:19px}.admin-table{font-size:10px}.admin-table th,.admin-table td{padding:9px 4px}.cart-fab{right:13px;bottom:13px}}
/* Mobile comfort and responsive layouts */
[hidden] { display: none !important; }
.size-price { display: block; font-size: 12px; line-height: 1.7; }
button:disabled { cursor: not-allowed; opacity: .55; }
.delivery-line { display: flex; justify-content: space-between; gap: 16px; padding-top: 12px; font-size: 14px; }
.delivery-summary .total { padding-bottom: 8px; }
.delivery-order p { margin: 8px 0; overflow-wrap: anywhere; }
:root { --muted: #626759; }
html { scroll-padding-top: 24px; }
body { padding-bottom: env(safe-area-inset-bottom); }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button { touch-action: manipulation; }
button:focus-visible, a:focus-visible { outline: 3px solid #b07b45; outline-offset: 4px; }
button, .btn, .chip, .status { min-height: 44px; }
.btn { display: inline-flex; align-items: center; justify-content: center; text-align: center; line-height: 1.4; }
.brand > span { display: flex; flex-direction: column; gap: 3px; }
.brand-tag { letter-spacing: .08em; }
.nav { gap: 14px; }
.hero > *, .story > *, .visit > *, .grid > * { min-width: 0; }
.hero-art { border: 1px solid #cbd4b3; }
.hero p { color: #626759; }
.section-sub { line-height: 1.65; }
.categories { scrollbar-width: none; }
.categories::-webkit-scrollbar { display: none; }
.chip { font-size: 13px; }
.product { display: flex; flex-direction: column; }
.product-body { flex: 1; display: flex; flex-direction: column; }
.product-desc { font-size: 13px; line-height: 1.6; margin-bottom: 8px; }
.product-foot { margin-top: auto; padding-top: 12px; }
.add-btn { width: 44px; height: 44px; flex-shrink: 0; font-size: 25px; }
.product h3 { line-height: 1.3; }
.badge { z-index: 1; }
.info-row { font-size: 14px; }
.info-card > .btn { margin-top: 18px; }
.cart-fab { display: flex; align-items: center; gap: 28px; min-height: 56px; font-size: 14px; bottom: calc(22px + env(safe-area-inset-bottom)); }
#fabTotal { font-size: 12px; font-weight: 500; }
.count { width: 25px; height: 25px; }
footer { padding-bottom: 110px; }
.modal-open { overflow: hidden; }
.overlay { padding: 24px; overscroll-behavior: contain; backdrop-filter: blur(5px); }
.panel { width: min(600px, 100%); max-height: calc(100dvh - 48px); padding: 0 26px 24px; overscroll-behavior: contain; scrollbar-width: thin; overflow-wrap: anywhere; }
.panel:focus { outline: none; }
.panel-head { position: sticky; top: 0; z-index: 2; background: var(--paper); padding: 24px 0 17px; border-bottom: 1px solid var(--line); gap: 16px; }
.panel-head .eyebrow { margin-bottom: 7px; }
.panel-head h2 { font-size: 28px; line-height: 1.2; }
.close { flex: 0 0 44px; width: 44px; height: 44px; color: var(--green); }
.form-grid { gap: 12px 16px; }
.field { min-width: 0; margin: 7px 0; }
.field label { font-size: 11px; letter-spacing: .04em; }
.field input, .field select, .field textarea { width: 100%; min-width: 0; min-height: 48px; font-size: 16px; color: var(--ink); padding: 12px; }
.field textarea { min-height: 96px; }
.modal-actions { position: sticky; bottom: -24px; background: var(--paper); padding: 16px 0 24px; margin-bottom: -24px; border-top: 1px solid var(--line); z-index: 1; }
.modal-actions .btn { min-height: 48px; }
.cart-row { grid-template-columns: minmax(0, 1fr) auto; align-items: center; padding: 20px 0; gap: 16px; }
.cart-item { min-width: 0; }
.cart-item b { font-size: 16px; }
.cart-item small { font-size: 13px; line-height: 1.6; }
.cart-item .price { display: block; margin-top: 10px; font-size: 13px; }
.qty { gap: 8px; }
.qty button { width: 44px; height: 44px; color: var(--green); font-size: 21px; }
.qty span { min-width: 20px; text-align: center; font-weight: 600; }
.cart-summary { position: sticky; bottom: -24px; background: var(--paper); padding-bottom: 14px; margin-bottom: -24px; border-top: 1px solid var(--line); }
.total { font-size: 16px; gap: 16px; }
.full-width { width: 100%; min-height: 50px; }
.centered { text-align: center; }
.demo-notice { padding: 13px 16px; border-radius: 12px; background: #eef0e4; color: #526139; font-size: 13px; line-height: 1.65; }
.form-error { color: #a03a22; font-size: 14px; line-height: 1.5; }
.empty { padding: 24px 0 36px; }
.empty-icon { display: block; font-size: 42px; margin-bottom: 14px; }
.empty h3 { color: var(--green); font-size: 20px; }
.empty p { font-size: 14px; line-height: 1.65; }
.order-code { overflow-wrap: anywhere; font-size: 12px; line-height: 1.6; }
.payment-inner { grid-template-columns: 130px minmax(0, 1fr); }
.payment-qr { width: 130px; height: 130px; object-fit: contain; }
.payment p { font-size: 14px; }
.admin-toolbar { gap: 16px; }
.admin-toolbar .icon-btn { flex-shrink: 0; }
.order-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.order-card { padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: white; min-width: 0; }
.order-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.order-head > div { min-width: 0; }
.order-head .price { white-space: nowrap; }
.order-head small, .order-detail small { display: block; color: var(--muted); font-size: 12px; line-height: 1.65; margin-top: 4px; }
.order-customer { display: flex; flex-direction: column; gap: 6px; padding: 14px 0; font-size: 14px; }
.order-customer span { color: var(--muted); }
.order-detail { padding: 12px; font-size: 14px; }
.order-detail > div + div { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.order-status { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; font-size: 13px; }
.status { max-width: 65%; font-size: 14px; border: 1px solid #dce3cc; }
.toast { top: calc(16px + env(safe-area-inset-top)); max-width: calc(100% - 32px); width: max-content; text-align: center; line-height: 1.5; }
@media (hover: none) {
  .product:hover, .btn:hover { transform: none; }
}
@media (max-width: 900px) {
  .navlinks { gap: 16px; }
  .hero { grid-template-columns: 1fr 1fr; }
  .hero h1 { font-size: clamp(40px, 5.6vw, 52px); }
}
@media (max-width: 720px) {
  .navlinks, .admin-nav { display: none; }
  .hero { grid-template-columns: 1fr; gap: 28px; padding: 34px 0 32px; }
  .hero > div:first-child { max-width: 530px; }
  .hero h1 { font-size: clamp(36px, 9.7vw, 54px); line-height: 1.12; letter-spacing: -.025em; }
  .hero p { font-size: 14px; line-height: 1.8; max-width: 100%; }
  .hero-art { height: 280px; border-radius: 100px 100px 22px 22px; }
  .hero-logo { width: 68%; max-width: 270px; }
  .hero-note { max-width: calc(100% - 32px); left: 16px; bottom: 16px; font-size: 11px; }
  .hero-cta { gap: 20px; flex-wrap: wrap; margin-top: 22px; }
  .hero-cta .btn { min-height: 48px; }
  .story { grid-template-columns: 1fr; }
  .story-art { min-height: 170px; }
  .visit { grid-template-columns: 1fr; }
  .order-list { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  body { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
  .container { width: calc(100% - 32px); }
  .topbar { font-size: 10px; line-height: 1.6; padding: calc(8px + env(safe-area-inset-top)) 12px 8px; letter-spacing: .02em; }
  .nav { height: 80px; gap: 12px; }
  .brand { gap: 9px; min-width: 0; }
  .brand img { width: 44px; height: 44px; }
  .brand-name { font-size: 20px; }
  .brand-tag { font-size: 8px; letter-spacing: .04em; }
  .nav-actions .btn { min-height: 44px; padding: 10px 15px; font-size: 12px; white-space: nowrap; }
  .hero { padding-top: 24px; }
  .hero-art { height: 240px; }
  .section { padding: 30px 0; }
  .section h2 { font-size: 30px; line-height: 1.2; }
  .section-head { gap: 8px; margin-bottom: 20px; }
  .section-sub { font-size: 13px; }
  .categories { gap: 8px; padding-bottom: 16px; }
  .chip { padding: 10px 16px; }
  .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .product-image { height: 154px; }
  .badge { font-size: 10px; max-width: calc(100% - 16px); top: 8px; left: 8px; padding: 6px 8px; }
  .cup { width: 77px; height: 94px; }
  .cup:before { width: 83px; }
  .cup:after { left: 34px; }
  .product-body { padding: 13px 12px; }
  .product h3 { font-size: 18px; }
  .product-desc { font-size: 12px; min-height: 0; }
  .product-foot { gap: 4px; }
  .price { font-size: 14px; }
  .story { padding: 24px; border-radius: 22px; }
  .story-stats { gap: 24px; flex-wrap: wrap; }
  .story p { font-size: 14px; }
  .stat span { font-size: 12px; }
  .info-card { padding: 22px; }
  .info-row { font-size: 14px; }
  .cart-fab { left: 16px; right: 16px; bottom: calc(12px + env(safe-area-inset-bottom)); border-radius: 18px; justify-content: space-between; gap: 12px; padding: 13px 18px; min-height: 60px; }
  #fabTotal { font-size: 12px; }
  footer { margin-top: 28px; padding: 32px 0; }
  .footer-inner { gap: 20px; }
  .footer-inner > button { min-height: 44px; padding: 0; }
  .overlay { padding: 0; align-items: end; }
  .panel, .panel.wide { width: 100%; max-height: calc(100dvh - 12px - env(safe-area-inset-top)); border-radius: 24px 24px 0 0; padding: 0 20px calc(22px + env(safe-area-inset-bottom)); }
  .panel-head { padding-top: 22px; margin-bottom: 16px; }
  .panel-head h2 { font-size: 25px; }
  .panel-head .eyebrow { font-size: 10px; }
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .field.full, #checkoutForm .field { grid-column: 1 / -1; }
  .field.option-field { grid-column: 1 / -1; }
  .modal-actions { bottom: calc(-22px - env(safe-area-inset-bottom)); padding: 14px 0 calc(22px + env(safe-area-inset-bottom)); margin-bottom: calc(-22px - env(safe-area-inset-bottom)); gap: 10px; }
  .modal-actions .btn { flex: 1; padding: 12px 14px; font-size: 14px; }
  .modal-actions .btn:not(.secondary) { flex: 1.4; }
  .cart-row { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .qty { justify-self: end; }
  .cart-summary { bottom: calc(-22px - env(safe-area-inset-bottom)); padding-bottom: calc(14px + env(safe-area-inset-bottom)); margin-bottom: calc(-22px - env(safe-area-inset-bottom)); }
  .payment-inner { grid-template-columns: 1fr; justify-items: center; gap: 16px; }
  .payment-inner > div:last-child { width: 100%; }
  .qr-placeholder { width: 130px; height: 130px; }
  .order-card { padding: 16px; }
}
@media (max-width: 359px) {
  .brand img { width: 36px; height: 36px; }
  .brand-name { font-size: 18px; }
  .brand-tag { font-size: 7px; }
  .nav-actions .btn { padding: 10px 12px; }
  .container { width: calc(100% - 24px); }
  .product-body { padding: 12px 10px; }
  .product-image { height: 135px; }
  .product h3 { font-size: 17px; }
  .hero-cta { gap: 14px; }
  .panel, .panel.wide { padding-left: 16px; padding-right: 16px; }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: 1 / -1; }
  .cart-fab { left: 12px; right: 12px; padding: 12px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *:before, *:after { transition: none !important; }
}
.shipping-reference { width: 100%; border-collapse: collapse; font-size: 14px; }
.shipping-reference td { padding: 10px 0; border-bottom: 1px solid var(--line, #e5e7dc); }
.shipping-reference td:last-child { text-align: right; padding-left: 12px; }
#orderCopyText { width: 100%; font-size: 16px; padding: 12px; }
.qr-payment-card { background: #fff; border: 1px solid var(--line, #e5e7dc); padding: 24px 18px; box-shadow: 0 8px 24px rgba(52, 70, 32, .08); text-align: center; }
.qr-payment-card h3 { color: var(--green); font-size: 20px; margin: 0 0 20px; }
.qr-scan-space { width: min(100%, 360px); margin: 0 auto 20px; padding: 18px; background: #fff; }
.qr-payment-card .payment-qr { display: block; width: 100%; height: auto; max-width: 324px; object-fit: contain; margin: auto; }
.qr-payment-card .qr-placeholder { width: 100%; height: auto; min-height: 240px; }
.payment-bank { border-top: 1px solid var(--line, #e5e7dc); padding-top: 16px; overflow-wrap: anywhere; }
.qr-payment-card .payment-bank p { font-size: 14px; }
@media (max-width: 380px) { .qr-payment-card { padding: 20px 12px; } .qr-scan-space { padding: 12px; } }
.product-image { flex-shrink: 0; overflow: hidden; }
.product-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.product-photo[hidden], .product-fallback[hidden] { display: none; }
.product-fallback { position: absolute; inset: 0; display: grid; place-items: center; }
.product-image .badge { z-index: 1; }
.admin-toolbar { flex-wrap: wrap; }
.admin-buttons { display: flex; flex-wrap: wrap; gap: 8px; }

/* Menu-only static site */
footer { padding-bottom: 36px; }
