:root{
  --wine:#7b151d;
  --wine-dark:#560d13;
  --wine-deep:#3f090e;
  --gold:#caa768;
  --gold-soft:#e7c98f;
  --paper:#f7efe1;
  --paper-2:#fbf4e9;
  --paper-dark:#efe3cf;
  --line:#d8c2a2;
  --ink:#2b180f;
  --muted:#725a48;
  --shadow:0 10px 28px rgba(45,19,9,.12);
  --serif:'Cormorant Garamond', Georgia, serif;
  --display:'Cormorant Garamond', Georgia, serif;
  --sans:'Manrope', Arial, sans-serif;
}

*{box-sizing:border-box}
html{background:#26140c}
body{
  margin:0;
  color:var(--ink);
  font-family:var(--sans);
  background:
    radial-gradient(circle at top, rgba(164,109,67,.45), transparent 40%),
    linear-gradient(180deg,#5b351f 0%,#2b170f 55%,#1f120d 100%);
  min-height:100vh;
}
button,input,textarea,select{font:inherit}
a{text-decoration:none}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.app-shell{
  width:min(100%,460px);
  margin:0 auto;
  min-height:100vh;
  background:var(--paper);
  box-shadow:0 0 60px rgba(0,0,0,.38);
  overflow:hidden;
}

.view{
  display:none;
  min-height:100vh;
  background:var(--paper);
}
.view.active{display:block}

.etno-header{
  position:sticky;
  top:0;
  z-index:40;
  display:grid;
  grid-template-columns:74px minmax(0,1fr) 74px;
  align-items:center;
  gap:4px;
  min-height:94px;
  padding:calc(10px + env(safe-area-inset-top)) 14px 12px;
  color:#f9e7c4;
  background:
    linear-gradient(180deg, #8b1822 0%, #70131b 55%, #561016 100%),
    radial-gradient(circle at 18% 20%, rgba(255,210,145,.08), transparent 22%),
    radial-gradient(circle at 80% 75%, rgba(255,210,145,.08), transparent 20%);
  border-bottom:2px solid #c99a5c;
  box-shadow:0 8px 20px rgba(42,8,10,.22);
}
.etno-header::after{display:none}


.lang-switch{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  padding-left:2px;
}
.lang-switch button{
  border:0;
  background:transparent;
  color:#e5c9a0;
  font-size:14px;
  font-weight:700;
  letter-spacing:.6px;
  padding:2px 0;
}
.lang-switch button.active{color:#fff}
.lang-switch span{
  width:1px;
  height:16px;
  background:rgba(241,214,172,.75);
}

.brand-lockup{
  border:0;
  background:transparent;
  color:inherit;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:0;
  padding:0;
}
.brand-lockup img{
  width:34px;
  height:34px;
  object-fit:contain;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.25));
}
.brand-lockup b{
  display:block;
  font:800 20px/1 var(--serif);
  text-transform:none;
  letter-spacing:.2px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-shadow:0 1px 0 rgba(0,0,0,.28);
}
.brand-lockup small{
  display:block;
  margin-top:4px;
  font:700 7px/1.15 var(--serif);
  letter-spacing:.8px;
  color:#f1d4a1;
}
.compact-brand b{font-size:18px}

.cart-top,
.icon-btn{
  width:44px;
  height:44px;
  border:0;
  background:transparent;
  color:#faebcf;
  position:relative;
  display:grid;
  place-items:center;
}
.cart-top{justify-self:end}
.cart-top svg,.icon-btn svg{width:28px;height:28px}
.cart-badge{
  position:absolute;
  top:1px;
  right:0;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#da5d3d;
  color:#fff;
  border:1px solid #ffe0cb;
  display:grid;
  place-items:center;
  font-style:normal;
  font-size:11px;
  line-height:1;
}
.header-spacer{display:block;width:44px;height:44px;justify-self:end}

.hero-card{
  position:relative;
  height:430px;
  overflow:hidden;
  background:#3a1f12;
}
.hero-card img{width:100%;height:100%;object-fit:cover}
.hero-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(26,7,5,.06) 0%, rgba(26,7,5,.18) 42%, rgba(33,10,6,.86) 100%);
}
.hero-copy{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:28px 28px 30px;
  text-align:center;
  color:#fffaf1;
}
.hero-copy small{
  font:700 11px/1 var(--sans);
  letter-spacing:3px;
  color:#f0cb84;
  text-transform:uppercase;
}
.hero-copy h1{
  margin:10px 0 10px;
  font:700 36px/1.05 var(--serif);
  text-shadow:0 4px 20px rgba(0,0,0,.35);
}
.hero-copy p{
  max-width:340px;
  margin:0 auto;
  font:500 14px/1.45 var(--serif);
  color:#f6ead9;
}
.ornament,
.detail-divider{
  display:block;
  margin-top:16px;
  text-align:center;
  color:var(--gold-soft);
  font-style:normal;
  letter-spacing:6px;
  font-size:15px;
}

.home-section{padding:22px 16px}
.section-rule{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-bottom:16px;
  color:var(--wine);
}
.section-rule span{font-size:10px;color:#9e6b40}
.section-rule b{
  font:700 20px/1 var(--serif);
  letter-spacing:.3px;
}

.category-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.category-card{
  position:relative;
  border:1px solid #8d633d;
  border-radius:12px;
  overflow:hidden;
  height:106px;
  padding:8px;
  color:#fff;
  background:
    linear-gradient(180deg, rgba(104,54,26,.12) 0%, rgba(44,16,8,.66) 100%),
    var(--cat-bg) center/cover;
  box-shadow:inset 0 0 0 1px rgba(255,233,192,.28), 0 6px 18px rgba(57,27,14,.14);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  text-align:center;
}
.category-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 12%, rgba(23,8,3,.72) 100%);
}
.category-card svg,
.category-card b{position:relative;z-index:1}
.category-card svg{
  width:24px;
  height:24px;
  margin-bottom:8px;
  color:#f6e4bd;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.35));
}
.category-card b{
  font:700 13px/1.1 var(--serif);
  text-shadow:0 2px 8px rgba(0,0,0,.4);
}

.dual-section{padding-top:6px;display:flex;flex-direction:column;gap:14px}
.home-card{
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,253,248,.95), rgba(248,239,226,.97));
  box-shadow:var(--shadow);
  overflow:hidden;
}
.home-card-head{
  padding:16px 16px 12px;
  border-bottom:1px solid rgba(201,174,139,.65);
  text-align:center;
}
.mini-kicker{
  display:block;
  color:#9b603e;
  font-size:10px;
  letter-spacing:1.4px;
  margin-bottom:6px;
}
.home-card-head h3{
  margin:0 0 6px;
  font:700 26px/1.05 var(--serif);
  color:var(--wine);
}
.home-card-head p{
  margin:0;
  color:var(--muted);
  font:500 12px/1.5 var(--serif);
}

.home-form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
  padding:14px 14px 0;
}
.home-form-grid label,
.checkout-card label{
  display:block;
}
.home-form-grid label span,
.checkout-card label span{
  display:block;
  margin-bottom:6px;
  font-size:11px;
  font-weight:700;
  color:#644b38;
}
.home-form-grid label.full{grid-column:1/-1}
.home-form-grid input,
.home-form-grid textarea,
.checkout-card input,
.checkout-card textarea,
.search-box input{
  width:100%;
  border:1px solid #ccb495;
  border-radius:10px;
  background:#fffaf2;
  color:var(--ink);
  padding:12px 12px;
  outline:none;
}
.home-form-grid textarea,
.checkout-card textarea{
  min-height:84px;
  resize:vertical;
}
.home-form-grid input:focus,
.home-form-grid textarea:focus,
.checkout-card input:focus,
.checkout-card textarea:focus,
.search-box input:focus{
  border-color:#b7744a;
  box-shadow:0 0 0 3px rgba(183,116,74,.12);
}
.card-note{
  display:block;
  text-align:center;
  padding:10px 14px 16px;
  font-size:11px;
  color:#7b6350;
}

.info-list-card{padding:14px}
.info-row{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(202,179,146,.6);
}
.info-row:last-child{border-bottom:0}
.info-icon{
  width:42px;
  height:42px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#f2e6d4;
  color:var(--wine);
  flex:0 0 auto;
}
.info-icon svg{width:21px;height:21px}
.info-row small{
  display:block;
  margin-bottom:4px;
  font-size:11px;
  font-weight:700;
  color:#87694d;
}
.info-row strong{
  display:block;
  font:700 15px/1.35 var(--serif);
  color:#352117;
}
.info-actions{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
  padding:0 14px 16px;
}
.outline-btn,
.primary-btn{
  min-height:54px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font:700 12px var(--serif);
  letter-spacing:.35px;
}
.outline-btn{
  border:1px solid #bd9a72;
  background:#fff9ef;
  color:var(--wine);
}
.outline-btn svg,
.primary-btn svg{width:20px;height:20px}
.outline-btn.disabled{opacity:.45;pointer-events:none}
.primary-btn:disabled{opacity:.72;cursor:not-allowed}
.primary-btn{
  width:100%;
  border:0;
  background:linear-gradient(135deg,#6f1118 0%,#8b1822 100%), repeating-linear-gradient(45deg, rgba(255,255,255,.03) 0 8px, rgba(0,0,0,.03) 8px 16px);
  color:#fff7ec;
  box-shadow:0 10px 20px rgba(90,16,21,.18);
}
.reservation-btn{margin:2px 14px 0;width:calc(100% - 28px)}

.info-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
}
.info-link{
  color:#91745f;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  padding:10px 4px 0;
  text-align:center;
  font:700 11px/1.2 var(--serif);
}
.info-link svg{width:24px;height:24px;color:#c8ada3}
.info-link.disabled{opacity:.45;pointer-events:none}

.list-header,.detail-header{grid-template-columns:54px minmax(0,1fr) 54px}
.screen-title{text-align:center}
.screen-title h2{margin:0;font:700 25px/1 var(--serif)}
.screen-title i{display:block;margin-top:4px;color:#ebcf98;font-size:8px;letter-spacing:4px;font-style:normal}
.screen-intro{
  padding:18px 20px 16px;
  text-align:center;
  border-bottom:1px solid rgba(208,184,151,.72);
  background:linear-gradient(180deg, rgba(255,255,255,.35), rgba(255,255,255,0));
}
.screen-intro h3{margin:0 0 6px;font:700 24px/1 var(--serif);color:#6a1719}
.screen-intro p{margin:0;color:#6c5744;font:500 12px/1.45 var(--serif)}
.compact-intro{padding-top:14px;padding-bottom:14px}

.list-main{padding:12px 12px 92px}
.product-list{display:flex;flex-direction:column;gap:10px}
.product-card{
  position:relative;
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:10px;
  padding:8px;
  border:1px solid #dac4a6;
  border-radius:14px;
  background:rgba(255,251,245,.95);
  box-shadow:0 6px 18px rgba(71,38,20,.08);
  cursor:pointer;
}
.product-image-wrap{
  height:100px;
  border-radius:10px;
  overflow:hidden;
  background:#ddd;
}
.product-image-wrap img{width:100%;height:100%;object-fit:cover}
.product-copy{
  min-width:0;
  padding:4px 34px 4px 0;
}
.product-copy h3{
  margin:0 0 6px;
  font:700 19px/1.05 var(--serif);
  color:#29160e;
}
.product-copy p{
  margin:0;
  color:#645245;
  font:500 11px/1.4 var(--serif);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.product-price{
  display:block;
  margin-top:8px;
  color:#2c1910;
  font:700 18px/1 var(--serif);
}
.quick-add{
  position:absolute;
  right:10px;
  bottom:10px;
  width:34px;
  height:34px;
  border:1px solid #b89166;
  border-radius:50%;
  background:#fffaf1;
  color:var(--wine);
  font-size:22px;
  line-height:1;
}

.filter-bar{
  position:fixed;
  left:50%;
  bottom:calc(12px + env(safe-area-inset-bottom));
  transform:translateX(-50%);
  z-index:35;
  width:min(calc(100% - 32px),428px);
  min-height:54px;
  border:1px solid #9e5149;
  border-radius:12px;
  background:linear-gradient(135deg,#651017,#8b1822);
  color:#fff7ec;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font:700 13px var(--serif);
  letter-spacing:.35px;
  box-shadow:0 14px 24px rgba(74,12,17,.24);
}
.filter-bar svg{width:20px;height:20px}
.filter-bar small{position:absolute;right:14px;font-size:14px}

.detail-main{padding-bottom:96px}
.detail-image-wrap{
  height:330px;
  position:relative;
  overflow:hidden;
  background:#3e2317;
}
.detail-image-wrap img{width:100%;height:100%;object-fit:cover}
.detail-image-wrap span{position:absolute;inset:0;background:linear-gradient(0deg, rgba(26,9,5,.18), transparent 45%)}
.detail-content{padding:18px 18px 22px}
.detail-title-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
}
.detail-title-row small{
  display:block;
  color:var(--wine);
  margin-bottom:6px;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
}
.detail-title-row h1{
  margin:0;
  font:700 26px/1.08 var(--serif);
}
.detail-title-row strong{
  font:700 20px/1 var(--serif);
  white-space:nowrap;
}
.detail-divider{margin:18px 0 16px;color:#9d6943}
.detail-description{
  margin:0;
  color:#594739;
  font:500 13px/1.65 var(--serif);
  text-align:left;
}
.detail-action-wrap{
  position:fixed;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  z-index:30;
  width:min(100%,460px);
  padding:12px 14px calc(12px + env(safe-area-inset-bottom));
  background:#f5ebdd;
  border-top:1px solid #d8c3a7;
}
.single-action{display:block}

.cart-main{padding:12px 13px 38px}
.cart-list{display:flex;flex-direction:column;gap:10px}
.cart-item{
  position:relative;
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  gap:12px;
  padding:10px;
  border:1px solid #dac4a6;
  border-radius:14px;
  background:#fff9ef;
}
.cart-item img{width:84px;height:84px;object-fit:cover;border-radius:10px}
.cart-item h3{margin:2px 28px 6px 0;font:700 17px/1.15 var(--serif)}
.cart-item strong{font:700 14px/1 var(--serif);color:#2e1910}
.cart-qty{
  margin-top:10px;
  display:inline-grid;
  grid-template-columns:32px 36px 32px;
  height:34px;
  border:1px solid #cfb69a;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.cart-qty button{
  border:0;
  background:#f4e8d6;
  color:var(--wine);
  font-size:19px;
}
.cart-qty b{display:grid;place-items:center;font-size:12px}
.cart-remove{
  position:absolute;
  right:10px;
  top:6px;
  border:0;
  background:transparent;
  color:#a27d62;
  font-size:24px;
}

.checkout-card{
  margin-top:14px;
  padding:16px;
  border:1px solid #d0b391;
  border-radius:16px;
  background:#efe0ca;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);
}
.cart-total{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(178,143,109,.55);
}
.cart-total span{font:700 17px/1 var(--serif)}
.cart-total strong{font:700 20px/1 var(--serif);color:var(--wine)}
.checkout-card small{
  display:block;
  text-align:center;
  margin-top:10px;
  color:#725d4b;
  font-size:11px;
}

.empty-cart{
  text-align:center;
  padding:70px 22px;
}
.empty-cart svg{width:54px;height:54px;color:var(--wine)}
.empty-cart h3{margin:10px 0 6px;font:700 28px/1 var(--serif)}
.empty-cart p{margin:0 0 16px;color:#6f5a49;font:500 12px/1.4 var(--serif)}
.empty-cart button{
  border:0;
  background:var(--wine);
  color:#fff;
  border-radius:10px;
  padding:12px 18px;
  font:700 12px var(--serif);
}

.backdrop{
  position:fixed;
  inset:0;
  z-index:60;
  background:rgba(26,11,8,.52);
  opacity:0;
  pointer-events:none;
  transition:.2s;
}
.backdrop.open{opacity:1;pointer-events:auto}
.filter-sheet{
  position:fixed;
  left:50%;
  bottom:0;
  z-index:65;
  width:min(100%,460px);
  transform:translate(-50%,105%);
  transition:.25s;
  background:#f7eee1;
  border-radius:22px 22px 0 0;
  padding:12px 18px 24px;
  box-shadow:0 -20px 45px rgba(0,0,0,.18);
}
.filter-sheet.open{transform:translate(-50%,0)}
.sheet-handle{
  width:42px;
  height:4px;
  border-radius:99px;
  background:#cbb090;
  margin:0 auto 14px;
}
.filter-head{display:flex;justify-content:space-between;gap:10px}
.filter-head small{display:block;font-size:10px;color:#8a603f;letter-spacing:1px}
.filter-head h3{margin:3px 0 14px;font:700 26px/1 var(--serif);color:#5b1617}
.filter-head button{
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:#e9d7c0;
  color:#4d2e1f;
  font-size:22px;
}
.search-box{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  border:1px solid #cfb69a;
  border-radius:10px;
  background:#fff;
  padding:0 12px;
}
.search-box svg{width:18px;height:18px;color:#7f5a3f}
.search-box input{border:0;background:transparent;padding:0}
.sort-options{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-top:10px;
}
.sort-options button{
  min-height:44px;
  border:1px solid #d2b99d;
  border-radius:10px;
  background:#fff9ef;
  color:#513424;
  font-size:11px;
}
.sort-options button.active{background:#7b151d;color:#fff}
.text-btn{
  width:100%;
  margin-top:12px;
  border:0;
  background:transparent;
  color:#674734;
  text-decoration:underline;
}

.toast{
  position:fixed;
  left:50%;
  bottom:88px;
  z-index:100;
  transform:translate(-50%,20px);
  opacity:0;
  background:#2f1a12;
  color:#fff;
  border:1px solid #b28a5c;
  border-radius:999px;
  padding:10px 14px;
  font-size:11px;
  white-space:nowrap;
  transition:.2s;
}
.toast.show{opacity:1;transform:translate(-50%,0)}
.empty-state,.loading{
  text-align:center;
  padding:44px 20px;
  color:#6f5b49;
  font:600 13px var(--serif);
}

@media (max-width:380px){
  .hero-card{height:398px}
  .hero-copy h1{font-size:31px}
  .brand-lockup b{font-size:18px}
  .category-card{height:98px}
  .product-card{grid-template-columns:108px minmax(0,1fr)}
  .product-image-wrap{height:92px}
  .home-form-grid{grid-template-columns:1fr}
  .home-form-grid label.full{grid-column:auto}
}

@media (min-width:700px){
  body{padding:20px 0}
  .app-shell{border-radius:28px;min-height:calc(100vh - 40px)}
  .view{min-height:calc(100vh - 40px)}
  .detail-action-wrap{bottom:20px;border-radius:0 0 28px 28px}
  .filter-bar{bottom:30px}
}


.quick-panels{padding-top:8px}
.quick-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quick-panel-btn{border:1px solid #d2b494;background:linear-gradient(180deg,#fffdf8 0%,#f4e6d1 100%);border-radius:16px;min-height:132px;padding:18px 14px;text-align:left;color:var(--wine);box-shadow:var(--shadow)}
.quick-panel-kicker{display:block;margin-bottom:10px;color:#9f6d46;font-size:10px;letter-spacing:1.5px}
.quick-panel-btn strong{display:block;font:700 28px/1 var(--serif);margin-bottom:8px;color:var(--wine)}
.quick-panel-btn small{display:block;color:#6f5a48;font:600 12px/1.45 var(--sans)}
.popup-sheet{position:fixed;left:50%;bottom:0;z-index:70;width:min(100%,460px);transform:translate(-50%,105%);transition:.25s;background:#f7eee1;border-radius:24px 24px 0 0;padding:12px 18px 18px;box-shadow:0 -18px 45px rgba(0,0,0,.18);max-height:min(88vh,820px);overflow:auto}
.popup-sheet.open{transform:translate(-50%,0)}
.popup-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.popup-head small{display:block;font-size:10px;color:#9a6b45;letter-spacing:1.3px}
.popup-head h3{margin:3px 0 0;font:700 30px/1 var(--serif);color:var(--wine)}
.popup-head button{width:36px;height:36px;border:0;border-radius:50%;background:#ead8c0;color:#4d2e1f;font-size:22px;flex:0 0 auto}
.popup-lead{margin:6px 0 14px;color:#6c5744;font:500 13px/1.5 var(--serif)}
.popup-form-grid{padding:0}
.popup-btn{margin:12px 0 0;width:100%}
.popup-info-list{padding:0}
#homeWifiName{display:block;margin-top:4px;color:#86684e;font-style:normal;font-size:12px;font-weight:600}
.popup-actions{padding:8px 0 0}
@media (max-width:380px){.quick-panel-grid{grid-template-columns:1fr}.quick-panel-btn strong{font-size:24px}}


.info-section{padding-bottom:10px}
.cilim-strip{height:14px;border-radius:12px;background:
  linear-gradient(90deg,#8b1822 0 10%, #f3e6d2 10% 12%, #8b1822 12% 22%, #f3e6d2 22% 24%, #8b1822 24% 34%, #f3e6d2 34% 36%, #8b1822 36% 46%, #f3e6d2 46% 48%, #8b1822 48% 58%, #f3e6d2 58% 60%, #8b1822 60% 70%, #f3e6d2 70% 72%, #8b1822 72% 82%, #f3e6d2 82% 84%, #8b1822 84% 94%, #f3e6d2 94% 96%, #8b1822 96% 100%);
  position:relative;overflow:hidden}
.cilim-strip:before{content:"";position:absolute;inset:2px 0;background:repeating-linear-gradient(90deg,transparent 0 18px, rgba(245,229,205,.9) 18px 20px, transparent 20px 38px)}
.cilim-strip.top{margin-bottom:12px}
.cilim-strip.bottom{margin-top:12px}
.etno-scene-section{padding-top:6px;padding-bottom:22px}
.etno-scene-card{position:relative;overflow:hidden;border:1px solid #d3b593;border-radius:18px;background:linear-gradient(180deg,#fffaf2 0%, #f1e0c9 100%);box-shadow:var(--shadow)}
.etno-scene-image{height:118px;background:
  linear-gradient(180deg, rgba(24,8,4,.18), rgba(24,8,4,.25)),
  url('https://images.unsplash.com/photo-1512918728675-ed5a9ecdebfd?auto=format&fit=crop&w=1400&q=80') center/cover;position:relative}
.etno-scene-image:after{content:"";position:absolute;inset:auto 0 0 0;height:16px;background:linear-gradient(180deg,transparent,rgba(45,22,11,.35))}
.etno-scene-copy{padding:16px 16px 18px;background:
  linear-gradient(180deg, rgba(255,255,255,.4), rgba(255,255,255,0)),
  repeating-linear-gradient(0deg, transparent 0 24px, rgba(128,91,55,.05) 24px 25px),
  repeating-linear-gradient(90deg, transparent 0 24px, rgba(128,91,55,.04) 24px 25px)}
.etno-scene-copy h3{margin:0 0 8px;font:700 28px/1.03 var(--serif);color:var(--wine)}
.etno-scene-copy p{margin:0;font:600 13px/1.55 var(--serif);color:#644f3f}
.etno-scene-copy em{display:block;margin-top:12px;color:#93613f;font:600 italic 15px/1.2 var(--serif)}
.etno-footer-line{padding:14px 8px 0;text-align:center;color:#8b613f;font:600 italic 14px/1.2 var(--serif)}
.list-main:after,.detail-content:after,.cart-main:after{content:"";display:block;height:12px;margin-top:14px;border-radius:99px;background:linear-gradient(90deg,#8b1822 0 8%, #f3e6d2 8% 10%, #8b1822 10% 18%, #f3e6d2 18% 20%, #8b1822 20% 28%, #f3e6d2 28% 30%, #8b1822 30% 38%, #f3e6d2 38% 40%, #8b1822 40% 48%, #f3e6d2 48% 50%, #8b1822 50% 58%, #f3e6d2 58% 60%, #8b1822 60% 68%, #f3e6d2 68% 70%, #8b1822 70% 78%, #f3e6d2 78% 80%, #8b1822 80% 88%, #f3e6d2 88% 90%, #8b1822 90% 100%)}
.product-card,.checkout-card,.popup-sheet,.filter-sheet{background-image:linear-gradient(180deg, rgba(255,255,255,.45), rgba(255,255,255,0))}
.quick-panel-btn,.outline-btn{position:relative;overflow:hidden}
.quick-panel-btn:before,.outline-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(255,255,255,.22), transparent 55%);pointer-events:none}
@media (max-width:380px){.etno-scene-copy h3{font-size:24px}.etno-scene-image{height:100px}}


/* ===== Etno final polish v33 ===== */
body,button,input,textarea,select{font-family:var(--sans)}
.brand-lockup b{font-family:var(--display);font-weight:700;letter-spacing:.35px}
.brand-lockup small{font-family:var(--serif);font-weight:600;letter-spacing:.65px}
.hero-copy h1,.section-rule b,.screen-title h2,.screen-intro h3,.product-copy h3,.detail-title-row h1,.popup-head h3,.cart-item h3,.cart-total span,.cart-total strong{font-family:var(--serif)}
.hero-copy p,.screen-intro p,.detail-description,.popup-lead,.info-row strong{font-family:var(--serif)}
.ornament{display:none}
.screen-title i{display:none!important}

.etno-header{min-height:90px;padding-bottom:10px;border-bottom:0;box-shadow:0 7px 18px rgba(42,8,10,.2)}
.home-header{margin-bottom:0}
.list-header,.detail-header{margin-bottom:0}
.lang-switch{gap:7px}
.lang-switch button{font-family:var(--serif);font-size:15px;font-weight:600;color:#e7cfaa}
.lang-switch button.active{color:#fff7e9;text-decoration:none}
.lang-switch span{height:14px;background:#d5ac7a}
.cart-top svg,.icon-btn svg{stroke-width:1.65}

/* Stvarni ćilim koji je korisnik poslao */
.cilim-strip{height:54px;border-radius:0;background:url('assets/cilim-border.webp') center/auto 58px repeat-x!important;position:relative;overflow:visible}
.cilim-strip:before{display:none}
.cilim-strip.top{margin:0 -16px 4px}
.cilim-strip.bottom{margin:8px -16px 0}
.list-main:after,.detail-content:after,.cart-main:after{display:none!important}
.detail-content:after{margin-left:-18px;margin-right:-18px}
.cart-main:after{margin-left:-13px;margin-right:-13px}

/* Dva čista etno tastera */
.quick-panels{padding-top:4px;padding-bottom:12px}
.quick-panel-grid{gap:10px}
.quick-panel-btn{min-height:92px;padding:12px 10px;border:1px solid #87502b;border-radius:10px;text-align:center;color:#fff8e8;background:
  linear-gradient(rgba(62,26,12,.16),rgba(62,26,12,.28)),
  repeating-linear-gradient(0deg,#71401f 0 9px,#794725 9px 11px,#6d3a1d 11px 20px)!important;
  box-shadow:inset 0 0 0 1px rgba(250,220,174,.18),0 5px 12px rgba(58,29,13,.17)}
.quick-panel-btn:before{background:linear-gradient(90deg,rgba(255,255,255,.05),transparent 35%,rgba(255,255,255,.04));}
.quick-panel-icon{display:grid;place-items:center;width:36px;height:36px;margin:0 auto 7px;border:1px solid rgba(245,218,177,.55);border-radius:50%;background:rgba(62,21,9,.18);color:#f5dfb5}
.quick-panel-icon svg{width:20px;height:20px;stroke-width:1.75}
.quick-panel-btn strong{margin:0;color:#fff7e7;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.05;text-shadow:0 1px 3px rgba(0,0,0,.28)}

/* Lepše kategorijske ikonice */
.category-card{height:102px;border-color:#7f4b2a;border-radius:10px}
.category-card svg{width:26px;height:26px;margin-bottom:7px;color:#f8e4bd;stroke-width:1.6;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}
.category-card b{font-family:var(--serif);font-size:16px;font-weight:600}

/* Kucica koju je korisnik poslao */
.etno-scene-section{padding-top:0;padding-bottom:0;background:#f3e3ca}
.etno-house-card{position:relative;margin:0 -16px;background:#f4e2c6;overflow:hidden;border-top:1px solid rgba(130,84,44,.25);border-bottom:1px solid rgba(130,84,44,.25)}
.etno-house-card img{display:block;width:100%;height:210px;object-fit:cover;object-position:center 58%;mix-blend-mode:multiply}
.etno-house-card figcaption{position:absolute;right:18px;bottom:14px;max-width:210px;text-align:right;color:#72492e;font:600 italic 16px/1.08 var(--serif);text-shadow:0 1px rgba(255,244,224,.85)}
.etno-footer-line{padding:14px 8px 8px;color:#76482d;font:600 italic 15px/1.2 var(--serif)}
.etno-scene-card,.etno-scene-image,.etno-scene-copy{display:none!important}

/* Popup detalji da prate kafanski stil */
.popup-sheet,.filter-sheet{background:#f6ead8!important}
.popup-head h3{font-size:32px;font-weight:600}
.popup-head small,.filter-head small{font-family:var(--serif);font-size:11px;font-weight:600;letter-spacing:1.2px;color:#8b5738}
.home-form-grid label span,.checkout-card label span{font-family:var(--serif);font-size:13px;font-weight:600}
.home-form-grid input,.home-form-grid textarea,.checkout-card input,.checkout-card textarea{font-family:var(--serif);font-size:15px}
.info-row small{font-family:var(--serif);font-size:12px}
.info-row strong{font-size:17px;font-weight:600}
.info-icon{border:1px solid #dac3a4;background:#efe0c8}
.info-icon svg{stroke-width:1.65}

/* Tkanina kao završetak i na mobilnom */
@media(max-width:380px){
  .quick-panel-btn{min-height:84px}
  .quick-panel-btn strong{font-size:17px}
  .etno-house-card img{height:184px}
  .etno-house-card figcaption{font-size:14px;max-width:175px}
}


/* ===== Requested cleanup v6 ===== */
.etno-header::after{display:none!important}
.detail-divider{display:none!important}
.detail-content:after{display:none!important}
.cilim-strip.top{display:none!important}
.etno-house-card{margin-top:0;border-top:0;background:linear-gradient(180deg,#f3e6d2 0%, #eedac0 26%, #f4e2c6 100%)}
.etno-house-card::before{content:"";position:absolute;left:0;right:0;top:0;height:44px;background:linear-gradient(180deg,var(--paper) 0%, rgba(243,227,202,.88) 38%, rgba(243,227,202,0) 100%);z-index:2;pointer-events:none}
.etno-house-card img{position:relative;z-index:1;display:block;width:100%;height:220px;object-fit:cover;object-position:center 58%;mix-blend-mode:multiply}
.etno-house-card figcaption{z-index:3}
.detail-content{padding-top:20px;padding-bottom:10px}
.detail-description{margin-top:2px;font-size:16px;line-height:1.55}
.detail-title-row small{font-size:13px;letter-spacing:.6px}
.detail-title-row h1{font-size:31px;line-height:1.02}
.detail-title-row strong{font-size:24px}
.screen-intro{padding-top:18px;padding-bottom:14px}
.screen-intro h3{font-size:34px}
.screen-intro p{font-size:16px}
.product-copy p{font-size:14px;line-height:1.38}
.product-copy h3{font-size:22px}
.product-price{font-size:20px}
.category-card b{font-size:15px}
.quick-panel-btn strong{font-size:20px}
.quick-panel-icon svg,.category-card svg,.info-link svg,.info-icon svg,.cart-top svg,.icon-btn svg{stroke-width:1.45}
.quick-panel-kicker,.quick-panel-btn small{display:none!important}
.info-grid{padding-bottom:4px}
.info-link{color:#c9b4ac;font-size:13px}
.info-link svg{width:26px;height:26px;color:#d9c6bf}
.etno-scene-section{padding-top:0;background:linear-gradient(180deg,var(--paper) 0%, #f1e1c8 100%)}
.etno-footer-line{padding-top:12px;padding-bottom:10px;font-size:16px}
@media(max-width:380px){
  .screen-intro h3{font-size:30px}
  .product-copy h3{font-size:20px}
  .detail-title-row h1{font-size:28px}
}


/* ===== Requested cleanup v7 ===== */
.home-header{margin-bottom:0!important}
.hero-card{margin-top:0!important}
.view{
  background-color:var(--paper)!important;
  background-image:none!important;
}
.popup-sheet,.filter-sheet{
  background:#f6ead8!important;
  background-image:none!important;
}
/* ćilim samo na naslovnoj */
.list-main:after,
.detail-content:after,
.cart-main:after{display:none!important}
/* čistija, ravna papir pozadina na etno bloku */
.etno-scene-section{background:var(--paper)!important}
.etno-house-card{background:linear-gradient(180deg,#f2e2c9 0%,#f4e4cb 100%)!important}
/* normalniji font za brojeve i cene */
.product-price,
.detail-title-row strong,
.cart-total strong,
.cart-item strong,
.cart-badge,
.info-row strong,
.checkout-card input,
.checkout-card textarea,
.home-form-grid input,
.home-form-grid textarea{
  font-family:'Manrope', Arial, sans-serif!important;
  font-style:normal!important;
  font-variant-numeric:lining-nums tabular-nums;
}
.product-price,
.detail-title-row strong,
.cart-total strong,
.cart-item strong{font-weight:800!important;letter-spacing:-0.02em}
/* malo uredniji naslovi i kartice */
.screen-intro h3{font-size:32px!important}
.screen-intro p{font-size:15px!important}
.product-copy h3{line-height:1.04}
.product-copy p{font-family:var(--serif)!important;font-style:normal!important}


/* ===== Requested cleanup v8 ===== */
.category-card{justify-content:center!important}
.category-card svg,.quick-panel-icon{display:none!important}
.category-card b{margin:0!important}
.quick-panel-btn{display:flex;align-items:center;justify-content:center;text-align:center}
.quick-panel-btn strong{margin:0!important}


/* ===== Requested cleanup v9 ===== */
#categoryGrid .category-card svg{display:none!important;opacity:0!important;visibility:hidden!important;width:0!important;height:0!important;margin:0!important}
#categoryGrid .category-card{align-items:flex-start;justify-content:flex-end!important;padding:10px 12px 14px!important}
#categoryGrid .category-card b{display:block;width:100%;text-align:center!important;margin:0!important}


/* Social icons visibility fix v10 - only this section changed */
.info-section .info-link{color:#7b151d!important;opacity:1!important}
.info-section .info-link svg{color:#7b151d!important;opacity:1!important;stroke-width:1.8!important}
.info-section .info-link b{color:#7b151d!important;opacity:1!important}
.info-section .info-link.disabled{opacity:1!important;pointer-events:none}


/* ===== Pića organizacija v13 ===== */
.drinks-main-card{
  background:
    linear-gradient(180deg,rgba(43,14,7,.08),rgba(43,14,7,.65)),
    var(--cat-bg) center/cover!important;
  border-color:#7f4b2a!important;
  box-shadow:inset 0 0 0 1px rgba(255,235,200,.18),0 5px 12px rgba(58,29,13,.17)!important;
}
.drinks-main-card::after{display:none!important}
.drinks-main-card b{color:#fff7e7!important;text-shadow:0 2px 5px rgba(0,0,0,.55)!important;font-size:18px!important}

.drink-category-main{padding:16px 16px 34px}
.drink-category-grid{display:flex;flex-direction:column;gap:9px}
.drink-type-card{
  position:relative;
  width:100%;
  min-height:72px;
  border:1px solid #d0b18c;
  border-radius:12px;
  background:#fffaf1;
  color:#3d2618;
  padding:14px 46px 13px 15px;
  text-align:left;
  box-shadow:0 4px 12px rgba(65,34,18,.06);
}
.drink-type-card::after{
  content:'›';
  position:absolute;
  right:17px;
  top:50%;
  transform:translateY(-53%);
  color:#8a4e34;
  font:700 29px/1 var(--serif);
}
.drink-type-card strong{display:block;font:700 21px/1.05 var(--serif);color:#781820;margin:0 0 4px}
.drink-type-card small{display:block;font:600 12px/1.3 var(--sans);color:#806650}
.drink-type-card.all-drinks{background:linear-gradient(135deg,#74151c,#8a1c24);border-color:#8f403d;color:#fff}
.drink-type-card.all-drinks::after{color:#fff4df}
.drink-type-card.all-drinks strong,.drink-type-card.all-drinks small{color:#fff8eb}

/* Pića su potpuno bez fotografija. */
.drink-product-list{gap:8px}
.drink-product-card{
  display:block!important;
  grid-template-columns:1fr!important;
  min-height:0!important;
  padding:13px 58px 13px 14px!important;
  cursor:default!important;
}
.drink-product-card .product-image-wrap,.drink-product-card img{display:none!important}
.drink-product-card .product-copy{padding:0!important}
.drink-product-card .product-copy h3{margin:2px 0 3px!important;font-size:20px!important}
.drink-product-card .product-copy p{margin:0!important;font-size:12px!important;line-height:1.3!important;color:#755e4a!important}
.drink-product-card .product-price{margin-top:7px!important;font-size:18px!important}
.drink-item-category{display:block;color:#9a603f;font:700 10px/1 var(--sans);text-transform:uppercase;letter-spacing:.5px}
.drink-product-card .quick-add{right:13px;bottom:50%;transform:translateY(50%)}
.cart-item-no-image{grid-template-columns:1fr!important;padding-left:13px!important}
.cart-item-no-image>div{padding-right:28px}

/* No placeholder images on dishes without uploaded photos. */
.detail-image-wrap[hidden]{display:none!important}
.product-card:not(:has(.product-image-wrap)){grid-template-columns:minmax(0,1fr) auto!important}
.cart-item-no-image{grid-template-columns:minmax(0,1fr) auto!important}

/* Food entries use the same compact, text-first layout as beverages. */
.product-list{gap:8px}
.product-card.menu-food-card{
  display:block!important;
  grid-template-columns:1fr!important;
  min-height:0!important;
  padding:13px 58px 13px 14px!important;
  cursor:pointer;
}
.menu-food-card .product-copy{padding:0!important;min-width:0}
.menu-food-card .product-copy h3{margin:2px 0 3px!important;font-size:20px!important;line-height:1.12!important;overflow-wrap:anywhere}
.menu-food-card .product-copy p{margin:0!important;font-size:12px!important;line-height:1.3!important;color:#755e4a!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;overflow-wrap:anywhere}
.menu-food-card .product-price{margin-top:7px!important;font-size:18px!important;line-height:1.15!important;white-space:nowrap}
.menu-food-card .quick-add{right:13px;bottom:50%;transform:translateY(50%)}

/* SR / EN / RU prekidač */
.lang-switch{gap:6px;flex-shrink:0}
.lang-switch button{font-size:14px;min-width:22px;min-height:28px;cursor:pointer}
.lang-switch span{height:12px}
@media(max-width:390px){.home-header{gap:6px}.lang-switch{gap:4px}.lang-switch button{font-size:12px;min-width:19px}.brand-lockup b{font-size:clamp(11px,3vw,15px)}}

.home-header{grid-template-columns:100px minmax(0,1fr) 50px;padding-left:9px;padding-right:9px}
@media(max-width:360px){.home-header{grid-template-columns:92px minmax(0,1fr) 44px}.lang-switch{gap:3px}}

/* QR stolovi i potvrda osoblja (SR/EN/RU) */
.qr-table-display{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff7e8;border:1px solid #d9b98e;border-radius:12px;padding:13px 16px;margin:12px 0;font-size:17px}.qr-table-display strong{color:#671b23;font-size:19px}
.order-receipt[hidden]{display:none!important}.order-receipt{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);width:min(550px,calc(100% - 24px));padding:18px 20px;border:1px solid #d9b98e;border-radius:16px;box-shadow:0 14px 45px #160b0955;background:#fff9ec;z-index:10000;color:#541e1f;font-family:inherit}.receipt-head{display:flex;align-items:center;justify-content:space-between;font-size:20px}.receipt-head button{background:none;border:0;color:#561a20;font-size:28px;cursor:pointer}.order-receipt p{line-height:1.4;margin:8px 0 12px}.order-receipt #receiptRefresh{background:#691a24;color:#fff;border:0;padding:10px 15px;border-radius:9px;cursor:pointer;font-size:14px}

/* Cart: keep quantity controls aligned to the right edge of each item. */
.cart-item>div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:12px;
  min-width:0;
}
.cart-item>div>h3{grid-column:1 / -1;margin-right:28px;min-width:0}
.cart-item>div>strong{grid-column:1;grid-row:2;min-width:0;white-space:nowrap}
.cart-item>div>.cart-qty{grid-column:2;grid-row:2;margin-top:0;justify-self:end}
.cart-item-no-image{grid-template-columns:minmax(0,1fr)!important}
.cart-item-no-image>div{padding-right:0}


/* ============================================
   DAMJANOV ZALOGAJČIĆ — novi vizuelni identitet
   CSS only: naručivanje, korpa, statusi i Pusher netaknuti.
   ============================================ */
:root{
 --wine:#77171c; --wine-dark:#521114; --wine-deep:#3a1312;
 --gold:#a9763a; --gold-soft:#e7bd7a;
 --paper:#f9efe0; --paper-2:#fff9ee; --paper-dark:#e9d6b7;
 --line:#d9c4a4; --ink:#352018; --muted:#766250;
 --shadow:0 12px 32px rgba(91,48,22,.11);
 --serif:'Barlow Condensed', Impact, sans-serif;
 --display:'Great Vibes', cursive;
 --sans:'DM Sans', Arial, sans-serif;
}
html{background:#3a1d16}
body{font-family:var(--sans);background:linear-gradient(120deg,#3d1c19,#6a3528 45%,#27130f)}
.app-shell{width:min(100%,500px);background:var(--paper);box-shadow:0 20px 80px rgba(0,0,0,.34)}
.view,.view.active{background:var(--paper)!important}
.etno-header{
 min-height:80px;
 color:#ffefd6;
 background:#711b1f!important;
 border-bottom:3px solid #c39b65;
 box-shadow:0 7px 18px rgba(59,18,12,.12);
 padding:calc(9px + env(safe-area-inset-top)) 14px 10px;
}
.home-header{grid-template-columns:94px minmax(0,1fr) 46px!important;gap:6px!important;padding-left:11px!important;padding-right:11px!important}
.lang-switch{gap:5px}
.lang-switch button{font:700 12px/1 var(--sans);color:#e7cbb1;min-width:18px;padding:8px 0;min-height:34px}
.lang-switch button.active{color:#fff;background:rgba(255,255,255,.1);border-radius:4px}
.lang-switch span{background:rgba(255,224,189,.45)}
.brand-lockup{min-width:0}
.brand-lockup div{min-width:0}
.brand-lockup b{font-family:var(--serif)!important;font-size:clamp(15px,4.7vw,21px)!important;line-height:.94;font-weight:800;letter-spacing:.05em;white-space:normal;overflow:visible;text-overflow:clip;text-shadow:none}
.brand-lockup small{font:700 7px/1.25 var(--sans);letter-spacing:.14em;color:#efd4a5}
.cart-top{width:43px;height:43px;border:1px solid rgba(255,224,196,.22);border-radius:50%;background:rgba(255,255,255,.06)}
.cart-top svg{width:24px;height:24px}
.cart-badge{background:#ebbd71;color:#411b13;border-color:#fff2d7;font-weight:800}
/* Hero reminds of the supplied printed restaurant menu, not the previous ethnic-house design. */
.hero-card{height:340px!important;background:#f5e5cb!important;border-bottom:1px solid #debf90}
.hero-card img{display:block;object-fit:cover;object-position:center}
.hero-shade{background:linear-gradient(180deg,rgba(253,242,222,.15),rgba(255,244,223,.08) 30%,rgba(250,228,192,.14) 100%)!important}
.hero-copy{display:flex;align-items:center;justify-content:center;flex-direction:column;bottom:0;top:0;padding:17px 24px 19px;text-align:center;color:#411615}
.hero-copy small{color:#8b3b2f!important;font:800 10px/1.35 var(--sans);letter-spacing:.135em;background:rgba(255,246,227,.78);padding:6px 9px;border-radius:99px;text-shadow:none}
.hero-copy h1{display:flex;flex-direction:column;align-items:center;gap:0;margin:19px 0 5px;font-family:var(--sans)!important;font-weight:700;text-shadow:none!important;color:#261715}
.hero-copy h1 .hero-script{display:block;font-family:var(--display);font-size:76px;font-weight:400;letter-spacing:0;line-height:.95;transform:rotate(-5deg);margin-left:-10px}
.hero-copy h1 .hero-word{display:block;font:800 41px/.95 var(--serif);letter-spacing:.075em;color:#77171c;margin-top:4px;white-space:nowrap}
.hero-copy p{font:700 13px/1.4 var(--sans)!important;color:#543225!important;max-width:340px;background:rgba(255,245,229,.55);padding:5px 8px;border-radius:8px}
.hero-copy .ornament{font:700 10px/1 var(--sans);color:#8e2722;letter-spacing:1.6px;margin-top:18px}
.hero-card:after{content:'✦';position:absolute;bottom:14px;left:22px;color:#89332c;opacity:.45;font-size:18px;pointer-events:none}
/* Category index: paired artisanal menu tiles, legible even without photos. */
.home-section{padding:20px 16px}
.explore-section{padding-top:22px;padding-bottom:16px}
.section-rule{margin:0 0 17px;gap:12px;color:#701c1d}
.section-rule:before,.section-rule:after{content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,#c7a57b)}
.section-rule:after{transform:rotate(180deg)}
.section-rule span{display:none}
.section-rule b{font:800 25px/1 var(--serif);letter-spacing:.1em;white-space:nowrap}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
#categoryGrid .category-card{
 position:relative;display:flex;align-items:flex-start;justify-content:flex-end!important;
 min-width:0;height:140px!important;padding:12px 13px 13px!important;
 text-align:left!important;border-radius:13px!important;
 border:1px solid #8d6b49!important;overflow:hidden;
 background:linear-gradient(180deg,rgba(55,29,17,.02) 3%,rgba(30,17,12,.65) 85%),var(--cat-bg) center/cover!important;
 box-shadow:0 6px 16px rgba(61,29,12,.13)!important;
 transition:transform .18s ease,box-shadow .18s ease;
}
#categoryGrid .category-card:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(29,14,9,.65));z-index:0}
#categoryGrid .category-card:before{content:'✦';position:absolute;top:10px;right:11px;color:#fbe9c5;z-index:1;font-size:18px;text-shadow:0 2px 4px #341509}
#categoryGrid .category-card b{width:100%;position:relative;z-index:2;color:#fffaf1;text-align:left!important;font:800 clamp(19px,5.1vw,25px)/.95 var(--serif)!important;letter-spacing:.02em;text-shadow:0 2px 8px #29110a}
#categoryGrid .category-card:active{transform:scale(.985)}
#categoryGrid .category-card:first-child,#categoryGrid .category-card:nth-child(2){height:158px!important}
/* Soft parchment cards with bold burgundy brush-inspired accents. */
.screen-intro{background:linear-gradient(180deg,#fff7e9,#f7ebd9);padding:20px 16px 17px!important;border-bottom:1px solid #d9c1a3}
.screen-intro h3{font:800 30px/1 var(--serif)!important;color:#7a2220!important;letter-spacing:.025em}
.screen-intro p{font:500 13px/1.45 var(--sans)!important;color:#7b6151!important}
.list-header .screen-title h2{font:800 25px/1 var(--serif)!important;letter-spacing:.04em}
.list-main{padding:12px 13px 95px}
.product-list{gap:9px}
.product-card.menu-food-card,.product-card.drink-product-card{
 border:1px solid #e3d0b5!important;border-radius:13px!important;
 background:#fffaf1!important;
 box-shadow:0 3px 10px rgba(82,44,22,.045)!important;
 padding:15px 58px 15px 15px!important;
 min-height:84px;
}
.menu-food-card .product-copy h3,.drink-product-card .product-copy h3{font:800 20px/1.1 var(--serif)!important;color:#352018!important;letter-spacing:.015em;margin:0 0 5px!important}
.menu-food-card .product-copy p,.drink-product-card .product-copy p{font:500 12px/1.42 var(--sans)!important;color:#7b6252!important}
.menu-food-card .product-price,.drink-product-card .product-price{color:#7a1c1e!important;font:800 17px/1 var(--sans)!important;letter-spacing:0!important;margin-top:9px!important}
.menu-food-card .quick-add,.drink-product-card .quick-add{width:39px;height:39px;background:#7b1d20!important;color:white!important;border:0!important;border-radius:10px!important;right:13px;bottom:50%;font-size:25px;box-shadow:0 2px 5px rgba(65,19,18,.18)}
.filter-bar{background:#771b20!important;border:1px solid #a65b4c!important;border-radius:14px!important;font:800 12px/1 var(--sans)!important;letter-spacing:.04em}
.primary-btn{background:#771b20!important;color:#fff9ec!important;box-shadow:0 6px 14px rgba(105,27,30,.17)!important;font:800 13px/1.2 var(--sans)!important;border-radius:12px}
.cart-main{padding:15px 15px 30px}
.cart-item{background:#fffaf1;border-color:#dfc8a7;box-shadow:0 3px 10px rgba(72,35,15,.04)}
.checkout-card{background:#f1e1ca;border-color:#d8b992}
.cart-total strong,.detail-title-row strong{color:#7a1c1e!important}
.cart-qty button{background:#f0dcc0;color:#782421}
.detail-image-wrap{height:250px!important;background:#d9c4a6}
.detail-content{padding:24px 22px}
.detail-title-row h1{font:800 33px/1 var(--serif)!important}
.detail-title-row strong{font-size:20px!important}
.detail-description{font:500 14px/1.65 var(--sans)!important;color:#685447}
.detail-action-wrap{width:min(100%,500px);background:#fbf0df;border-color:#dcc4a5}
.empty-cart h3{font:800 31px/1 var(--serif)}
.empty-cart button{background:#771b20}
.popup-sheet,.filter-sheet{background:#fcf0de!important}
.popup-head h3,.filter-head h3{font:800 33px/1 var(--serif)!important;color:#771b20!important}
.info-row strong{font:700 14px/1.35 var(--sans)!important}
/* Quick utility actions — menu remains the first focus. */
.quick-panels{padding-top:3px;padding-bottom:18px}
.quick-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.quick-panel-btn{
 min-height:66px!important;text-align:center!important;border-radius:12px!important;
 background:#fff8e9!important;border:1px solid #d6b995!important;
 box-shadow:0 3px 10px rgba(81,46,20,.06)!important;color:#6a2926!important;padding:10px 8px!important;
}
.quick-panel-btn strong{font:800 19px/1.05 var(--serif)!important;color:#75201f!important;text-shadow:none!important;letter-spacing:.03em}
.quick-panel-btn:before{display:none}
.info-section{padding-top:8px;padding-bottom:18px}
.info-section .info-link,.info-section .info-link b,.info-section .info-link svg{color:#7a2923!important}
.info-grid{gap:4px}
.info-link{font:700 11px/1.2 var(--sans)!important}
.etno-scene-section{padding:0 16px 18px!important;background:var(--paper)!important}
.etno-house-card{margin:0!important;background:linear-gradient(135deg,#e7d2b2,#f6e9d1)!important;border-radius:12px!important;border:1px solid #dcc7a6!important}
.etno-house-card:before{display:none!important}
.etno-house-card img{height:135px!important;object-fit:cover;object-position:center 70%;mix-blend-mode:normal!important;opacity:.73}
.etno-house-card:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,236,215,.03),rgba(245,221,182,.6));z-index:1;pointer-events:none}
.etno-house-card figcaption{z-index:3;color:#571e19;right:12px;bottom:14px;max-width:220px;font:400 25px/1.03 var(--display);text-align:right;text-shadow:0 1px 4px #fff6e5}
.etno-footer-line{font:700 11px/1.3 var(--sans)!important;color:#7f5848;text-align:center;padding:16px 8px 2px!important;letter-spacing:.04em}
.cilim-strip.bottom{display:none!important}
@media(max-width:380px){
 .home-header{grid-template-columns:82px minmax(0,1fr) 43px!important}
 .brand-lockup b{font-size:16px!important}
 .hero-card{height:315px!important}
 .hero-copy h1 .hero-script{font-size:65px}
 .hero-copy h1 .hero-word{font-size:35px}
 #categoryGrid .category-card b{font-size:20px!important}
 .category-grid{gap:8px}
}
@media(min-width:500px){.hero-card{height:365px!important}.home-header{grid-template-columns:108px minmax(0,1fr) 50px!important}}

/* ====================================================
   DAMJANOV — korekcija naslovne strane (samo vizuelno)
   Fiksan header, stvarne fotografije, jasne brze akcije.
   ==================================================== */
.home-header{
  grid-template-columns:minmax(78px,88px) minmax(0,1fr) 46px!important;
  gap:10px!important;
  min-height:94px!important;
  padding:calc(13px + env(safe-area-inset-top)) 13px 14px!important;
  background:linear-gradient(120deg,#521718 0%,#711e24 52%,#461719 100%)!important;
  box-shadow:0 5px 22px rgba(48,20,15,.18)!important;
  border-bottom:2px solid #d6a868!important;
}
.home-header .lang-switch{
  min-width:0;width:100%;display:flex;align-items:center;justify-content:center;
  gap:0!important;padding:3px!important;border-radius:11px;
  background:rgba(255,245,224,.12);border:1px solid rgba(255,220,176,.18);
}
.home-header .lang-switch span{height:15px;flex:0 0 1px;background:rgba(255,234,210,.33)!important}
.home-header .lang-switch button{
  flex:1;min-width:0!important;min-height:30px!important;padding:0!important;
  background:none;color:#f0d0b2!important;border-radius:8px!important;
  font:800 12px/1 var(--sans)!important;
}
.home-header .lang-switch button.active{background:#f5debd!important;color:#551a20!important;box-shadow:0 2px 8px rgba(0,0,0,.11)}
.home-header .brand-lockup{justify-self:center;display:flex;align-items:center;justify-content:center;min-width:0;width:100%;overflow:hidden;text-align:center;color:#fff4df!important}
.home-header .brand-lockup div{width:100%;min-width:0}
.home-header .brand-lockup b{
  font:800 clamp(19px,4.6vw,25px)/.93 var(--serif)!important;
  letter-spacing:.015em!important;color:#fff5e8!important;
  text-align:center;white-space:normal;overflow-wrap:normal;
  text-wrap:balance;text-transform:none;
}
.home-header .brand-lockup small{
  margin-top:6px;font:700 8px/1.18 var(--sans)!important;
  letter-spacing:.10em!important;color:#e8be89!important;
  overflow-wrap:anywhere;text-align:center;
}
.home-header .cart-top{width:44px;height:44px;justify-self:end;background:#f6e2c5!important;border:1px solid #d7b27e!important;border-radius:14px;color:#692225!important;box-shadow:0 4px 10px rgba(35,9,9,.15)}
.home-header .cart-top svg{width:24px;height:24px}
.home-header .cart-badge{top:-6px;right:-6px;background:#a93d26;color:#fff7e8;border:2px solid #ffe9ce}

.hero-card{
  height:315px!important;min-height:0!important;margin:0!important;
  background:#3a221d!important;overflow:hidden;
}
.hero-card>img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 46%!important;filter:saturate(.96) contrast(1.03)}
.hero-card>.hero-shade{
  background:linear-gradient(180deg,rgba(29,13,9,.17) 0%,rgba(32,13,9,.33) 36%,rgba(31,10,11,.84) 100%)!important;
}
.hero-card .hero-copy{
  display:flex;flex-direction:column;align-items:center;justify-content:flex-end;
  top:0;bottom:0;left:0;right:0;padding:22px 18px 26px!important;
  color:#fff7ed!important;text-align:center;
}
.hero-card .hero-copy small{
  font:800 10px/1.3 var(--sans)!important;letter-spacing:.15em;
  padding:7px 13px;border:1px solid rgba(255,234,203,.43);
  background:rgba(91,27,23,.78)!important;color:#fff2df!important;border-radius:999px;
  max-width:100%;text-shadow:none!important;
}
.hero-card .hero-copy h1{margin:12px 0 8px!important;color:#fff8ea!important;text-shadow:0 3px 18px rgba(20,8,8,.58)!important;max-width:100%}
.hero-card .hero-copy h1 .hero-script{
  font:400 clamp(45px,11vw,65px)/.96 var(--display)!important;
  margin:0!important;transform:rotate(-3deg);
}
.hero-card .hero-copy h1 .hero-word{
  font:800 clamp(32px,8.2vw,43px)/.9 var(--serif)!important;
  color:#ffdfaa!important;letter-spacing:.09em;margin:7px 0 0!important;white-space:normal;
}
.hero-card .hero-copy p{
  color:#fff6e9!important;background:none!important;padding:0!important;
  font:600 12px/1.5 var(--sans)!important;text-shadow:0 2px 9px #2e1510;
}
.hero-card:after{display:none}

/* Fotografije kategorija se pravilno seku, a naslov je uvek čitljiv. */
#categoryGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
#categoryGrid .category-card{
  background:var(--cat-bg) center/cover no-repeat!important;
  height:145px!important;border-radius:15px!important;padding:13px!important;
  border:1px solid #c49b6c!important;box-shadow:0 5px 12px rgba(58,32,20,.13)!important;
  isolation:isolate;
}
#categoryGrid .category-card:first-child,#categoryGrid .category-card:nth-child(2){height:145px!important}
#categoryGrid .category-card .category-photo{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  z-index:0;pointer-events:none;border-radius:inherit;
}
#categoryGrid .category-card:before{display:none!important}
#categoryGrid .category-card:after{
  content:'';display:block!important;position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(25,10,6,.02) 0%,rgba(28,13,9,.23) 38%,rgba(24,10,9,.83) 100%);
  z-index:1;pointer-events:none;
}
#categoryGrid .category-card b{
  width:100%;position:relative;z-index:2;color:#fff9ef;
  text-align:left!important;font:800 clamp(20px,5vw,26px)/1.03 var(--serif)!important;
  text-shadow:0 2px 6px rgba(18,6,5,.9);letter-spacing:.03em;
}

/* Rezervacije i Info lokala — zasebni, jasno istaknuti CTA paneli. */
.quick-panels{padding-top:0!important;padding-bottom:24px!important}
.quick-panel-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:11px!important}
.quick-panel-grid .quick-panel-btn{
  display:flex!important;align-items:center;justify-content:flex-start;gap:14px;
  width:100%;min-height:81px!important;padding:13px 16px!important;text-align:left!important;
  border-radius:16px!important;overflow:hidden;
  transition:transform .15s ease, box-shadow .15s ease;
}
.quick-panel-grid .quick-panel-btn:before{display:none!important}
.quick-panel-grid .quick-panel-btn:active{transform:scale(.99)}
#openReservationSheet{
  background:linear-gradient(120deg,#872326,#671a20)!important;
  color:#fff9ee!important;border:1px solid #702127!important;
  box-shadow:0 9px 20px rgba(107,26,30,.18)!important;
}
#openInfoSheet{
  background:linear-gradient(120deg,#ecd2a9,#fff3df)!important;
  color:#48221e!important;border:1px solid #d0a66d!important;
  box-shadow:0 6px 14px rgba(93,52,24,.10)!important;
}
.quick-action-icon{
  flex:0 0 48px;width:48px;height:48px;border-radius:13px;
  display:grid;place-items:center;
  background:rgba(255,238,209,.18);border:1px solid rgba(255,231,200,.20);
}
#openInfoSheet .quick-action-icon{background:rgba(103,46,34,.09);border-color:rgba(103,46,34,.17)}
.quick-action-icon svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.8}
.quick-action-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.quick-action-copy strong{
  display:block;margin:0!important;color:inherit!important;
  font:800 24px/1.03 var(--serif)!important;text-shadow:none!important;letter-spacing:.025em;
}
.quick-action-copy small{display:block;font:600 12px/1.25 var(--sans);opacity:.82;color:inherit}
.quick-action-chevron{flex:0 0 auto;font:400 32px/1 var(--serif);opacity:.9}

/* Podnožje: fotografija hrane umesto isečka štampanog jelovnika. */
.etno-scene-section .etno-house-card img{filter:saturate(1.13) contrast(1.08);opacity:1!important}
.etno-scene-section .etno-house-card:after{background:linear-gradient(90deg,transparent,rgba(28,12,9,.65))!important}
.etno-scene-section .etno-house-card figcaption{color:#fff8e9!important;text-shadow:0 2px 8px #1f0a07!important}

@media(max-width:380px){
  .home-header{grid-template-columns:76px minmax(0,1fr) 42px!important;gap:7px!important;padding-left:10px!important;padding-right:10px!important}
  .home-header .brand-lockup b{font-size:clamp(17px,5vw,20px)!important}
  .home-header .brand-lockup small{font-size:7px!important;letter-spacing:.04em!important}
  .home-header .cart-top{width:42px;height:42px}
  .hero-card{height:305px!important}
  #categoryGrid .category-card,#categoryGrid .category-card:first-child,#categoryGrid .category-card:nth-child(2){height:137px!important}
  #categoryGrid .category-card b{font-size:20px!important}
}
@media(min-width:500px){.hero-card{height:330px!important}}


/* DAMJANOV — stare kompaktne dimenzije kategorija/dugmadi; samo prilagođene boje. */
#categoryGrid.category-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
}
#categoryGrid .category-card,
#categoryGrid .category-card:first-child,
#categoryGrid .category-card:nth-child(2){
  height:108px!important;
  min-height:108px!important;
  padding:10px 8px!important;
  border:1px solid #a9855b!important;
  border-radius:11px!important;
  background:var(--cat-bg) center/cover no-repeat!important;
  align-items:flex-end!important;
  justify-content:center!important;
  text-align:center!important;
  isolation:isolate;
  box-shadow:0 3px 9px rgba(67,40,20,.12)!important;
}
#categoryGrid .category-card:before{display:none!important}
#categoryGrid .category-card:after{
  content:'';position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(27,12,8,.02),rgba(32,15,13,.2) 37%,rgba(20,9,8,.88));
  pointer-events:none;
}
#categoryGrid .category-card .category-photo{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  border-radius:inherit;z-index:0;pointer-events:none;
}
#categoryGrid .category-card b{
  position:relative;z-index:2;width:100%;margin:0!important;
  text-align:center!important;color:#fff8e9!important;
  font:800 clamp(13px,3.3vw,16px)/1.1 var(--serif)!important;
  letter-spacing:0!important;text-shadow:0 2px 5px rgba(0,0,0,.85);
  overflow-wrap:break-word;
}
.quick-panels{padding:3px 16px 16px!important}
.quick-panel-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
.quick-panel-grid .quick-panel-btn{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:66px!important;height:66px!important;
  padding:10px 7px!important;border-radius:12px!important;
  text-align:center!important;box-shadow:0 3px 9px rgba(60,22,20,.11)!important;
  transition:none!important;
}
.quick-panel-grid .quick-panel-btn:before{display:none!important}
.quick-panel-grid #openReservationSheet{
  background:#79252b!important;border:1px solid #a65e51!important;color:#fff6e7!important;
}
.quick-panel-grid #openInfoSheet{
  background:#e9c995!important;border:1px solid #c69c61!important;color:#542922!important;
}
.quick-panel-grid .quick-panel-btn strong{
  margin:0!important;font:800 16px/1.08 var(--serif)!important;
  letter-spacing:0!important;color:inherit!important;text-shadow:none!important;
}
/* Fotografije samo kod hrane — male, u istom kompaktnom redu. */
.product-card.menu-food-card.has-food-photo{
  display:flex!important;align-items:center!important;gap:11px!important;
  padding:10px 52px 10px 10px!important;min-height:91px!important;
}
.menu-food-card .food-item-photo{
  display:block!important;flex:0 0 76px;width:76px;height:71px;
  border-radius:9px;object-fit:cover;object-position:center;
  background:#e4d4bd;border:1px solid #e3cba8;
  pointer-events:none;
}
.menu-food-card.has-food-photo .product-copy{min-width:0;flex:1}
.menu-food-card.has-food-photo .product-copy h3{font-size:18px!important}
.menu-food-card.has-food-photo .product-price{font-size:16px!important}
/* U pićima nema fotografija; njihov postojeći izgled se ne dira. */
@media(max-width:370px){
  #categoryGrid.category-grid{gap:7px!important}
  #categoryGrid .category-card,#categoryGrid .category-card:first-child,#categoryGrid .category-card:nth-child(2){height:100px!important;min-height:100px!important;padding:7px!important}
  #categoryGrid .category-card b{font-size:12px!important}
  .quick-panel-grid .quick-panel-btn strong{font-size:15px!important}
  .menu-food-card .food-item-photo{width:66px;flex-basis:66px;height:66px}
}

/* Ne prikazuj prazne društvene profile dok vlasnik ne unese sopstvene linkove. */
.info-section[hidden], .info-link[hidden] { display: none !important; }
