/* Restoran: vinska i krem paleta; sajt restorana sa jelovnikom i mapom stolova. */
.dv-rest{--ink:#2A1810;--mu:#7A6B5E;--line:#EADFD2;--bg2:#FAF5EE;--ac:#8E2B3C;--sw-ac:#E8B77A}
.dv-rest .dv-bar{background:#2A1810}
.dv-rest .dv-sw button[aria-selected=true]{background:#FAF5EE;color:#2A1810}
.dv-rest .bt.p,.dv-rest .cl-go{background:var(--ac);border-color:var(--ac);color:#fff}
.dv-rest .bt.p:hover,.dv-rest .cl-go:hover{background:#6F1F2D}
.dv-rest .cl-go{border-radius:999px}
.dv-rest .ok-i{background:#F8E6E8;color:#8E2B3C}

.rw-site{background:#fff;color:var(--ink)}
.rw-w{width:100%;max-width:1160px;margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.rw-hd{position:sticky;top:var(--bar-h);z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}
.rw-hd-in{display:flex;align-items:center;gap:24px;min-height:64px}
.rw-logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:600;letter-spacing:-.03em}
.rw-logo i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ac);color:#fff;font-size:16px;font-style:normal}
.rw-nv{display:flex;gap:4px;margin-left:auto}
.rw-nv a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;font-size:15px;font-weight:500;color:var(--mu);text-decoration:none}
.rw-nv a:hover{color:var(--ink);background:var(--bg2)}
.rw-btn,.rw-btn2{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none}
.rw-btn{background:var(--ac);color:#fff}
.rw-btn:hover{background:#6F1F2D}
.rw-btn.big,.rw-btn2{min-height:50px;padding:0 28px;font-size:16px}
.rw-btn2{border:1px solid rgba(255,255,255,.38);color:#fff}
.rw-btn2:hover{background:rgba(255,255,255,.1)}

.rw-hero{background:radial-gradient(900px 420px at 80% 0,rgba(232,183,122,.28),transparent 70%),linear-gradient(160deg,#2A1810,#4A2418)}
.rw-hero-in{padding-top:clamp(56px,9vw,110px);padding-bottom:clamp(56px,9vw,110px)}
.rw-eb{margin:0 0 14px;font-size:14px;font-weight:600;color:#E8B77A}
.rw-hero h1{margin:0;max-width:760px;font-size:clamp(36px,6vw,68px);font-weight:600;letter-spacing:-.045em;line-height:1.03;color:#fff}
.rw-lead{margin:20px 0 0;max-width:560px;font-size:18px;line-height:1.55;color:#E7D6C6}
.rw-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

.rw-sec{padding:clamp(48px,7vw,88px) 0;scroll-margin-top:calc(var(--bar-h) + 64px)}
.rw-alt{background:var(--bg2)}
.rw-sec h2{margin:0 0 14px;font-size:clamp(26px,3.4vw,38px);font-weight:600;letter-spacing:-.04em}
.rw-sub{margin:0 0 28px;font-size:17px;line-height:1.5;color:var(--mu)}
.rw-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,56px);margin-top:28px}
.rw-mcol h3{margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--ink);font-size:18px;font-weight:600;letter-spacing:-.02em}
.rw-mcol ul{margin:0;padding:0;list-style:none}
.rw-mcol li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:16px}
.rw-mcol b{flex:none;font-weight:600;color:var(--ac)}
.rw-ab{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start}
.rw-txt{margin:0;font-size:18px;line-height:1.6;color:#4A3C31}
.rw-info{display:grid;gap:14px;margin:0;padding:22px;list-style:none;border:1px solid var(--line);border-radius:20px;background:#fff;font-size:17px;font-weight:500}
.rw-info small{display:block;margin-bottom:2px;font-size:13px;font-weight:400;color:var(--mu)}

/* rezervacija */
.rw-bk{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:clamp(20px,4vw,48px);align-items:start}
.rw-bl{min-width:0}
.rw-br{position:sticky;top:calc(var(--bar-h) + 80px);scroll-margin-top:calc(var(--bar-h) + 80px)}
.rw-row{margin-bottom:22px}
.rw-row h3,.rw-map h3{margin:0 0 10px;font-size:14px;font-weight:600;color:var(--mu)}
.rw-days{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.rw-days button{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;min-height:56px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:16px;font-weight:600;color:var(--ink);cursor:pointer}
.rw-days small{font-size:11px;font-weight:400;color:var(--mu)}
.rw-days button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.rw-days button[aria-pressed=true] small{color:rgba(255,255,255,.7)}
.rw-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}
.rw-times button{min-height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:15px;color:var(--ink);cursor:pointer}
.rw-times button:hover:not(:disabled){border-color:#BFAE9C}
.rw-times button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.rw-times button:disabled{opacity:.35;text-decoration:line-through;cursor:default}
.rw-map{margin-top:6px}
.rw-hint{margin:-4px 0 12px;font-size:14px;color:var(--mu)}
.rw-lg i.rl-f{background:#E7F3E8;border:2px solid #2F7D45}
.rw-lg i.rl-b{background:#F7DCDD;border:2px solid #A8383F}
.rw-lg i.rl-s{background:#F1EEE9;border:2px dashed #C9C0B5}
.rw-ph{margin:0;padding:22px;border:1px dashed #D5C7B6;border-radius:16px;font-size:15px;line-height:1.5;color:var(--mu)}
.rw-br .sm{max-width:none;margin-top:0;background:var(--bg2);border-radius:16px}
.rw-form{max-width:none;margin-top:14px;border-radius:18px;background:#fff}
.rw-form>div{margin-bottom:12px}
.rw-ok{max-width:520px}
.rw-ok h3{margin:20px 0 0;font-size:24px;font-weight:600;letter-spacing:-.03em}
.rw-ok p{margin:16px 0 0;font-size:15px;line-height:1.5;color:var(--mu)}
.rw-foot{padding:24px 0;background:var(--ink);color:#BFAE9C;font-size:14px}

/* mapa stolova (nacrt prostora) */
.rp-scroll{overflow-x:auto;border-radius:16px}
.rp-plan{position:relative;width:100%;min-width:620px;aspect-ratio:100/72;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.rp-svg{position:absolute;inset:0;width:100%;height:100%}
.rp-t{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border:1.5px solid #2A1810;border-radius:6px;background:#fff;color:#2A1810;line-height:1.1;cursor:pointer;touch-action:manipulation;transition:background .15s}
.rp-t b{font-size:15px;font-weight:600}
.rp-t small{max-width:100%;padding:0 2px;overflow:hidden;font-size:10px;white-space:nowrap;text-overflow:ellipsis;opacity:.85}
.rp-t:disabled{opacity:1}
.rp-t.free{background:#E7F3E8;border-color:#2F7D45}
.rp-t.free:hover:not(:disabled){background:#CFE8D3}
.rp-t.busy{background:#F7DCDD;border-color:#A8383F;cursor:default}
.rp-t.small{background:#F1EEE9;border:1.5px dashed #C9C0B5;color:#A0968A;cursor:default}
.rp-t.idle{border-color:#B9AEA0;color:#7A6F63;cursor:default}
.rp-t.sel{background:#2A1810;border-color:#2A1810;color:#fff}
.rp-t:focus-visible{outline:3px solid #E8B77A;outline-offset:2px}

/* vlasnik */
.dv-rest .rs-mapc .rp-t.free{background:#fff;border-color:#B9AEA0;cursor:default}
.dv-rest .rs-mapc .rp-t.busy{background:#F8E6E8;border-color:#8E2B3C;cursor:pointer}
.dv-rest .rs-mapc .rp-t.busy.arr{background:#E7F3E8;border-color:#2F7D45}
.dv-rest .rs-mapc .rp-t.busy.sel{color:#2A1810;box-shadow:0 0 0 3px rgba(142,43,60,.35)}
.dv-rest .rs-mapc .rp-t.busy.nw{animation:nw 1.4s ease-in-out 3}
.dv-rest .rs-bar.arr{--bar:#2F7D45 !important;--bg:#E7F3E8 !important;--fg:#1D5A30 !important}
.dv-rest .ad-brand i{background:var(--ac)}
.dv-rest .ad-nav.on{background:#F8E6E8;color:#8E2B3C}
.dv-rest .ad-nt{background:#FBEFD9;color:#6B4A12}
.dv-rest .ad-nt button{background:rgba(107,74,18,.12)}
.dv-rest .st>div.hl{border-color:#E3B2BA;background:#FDF4F5}
.dv-rest .tl-d.tdy{color:#8E2B3C}
.dv-rest .bd.nw{background:#F8E6E8;color:#8E2B3C}
.dv-rest .rs-bar .nb{background:#8E2B3C}
.dv-rest .bar.sel{box-shadow:0 0 0 2px var(--bar)}
.dv-rest .rs-lg-f{background:#fff !important;border:2px solid #B9AEA0}
.dv-rest .rs-lg-b{background:#F8E6E8;border:2px solid #8E2B3C}
@media (prefers-reduced-motion:reduce){.dv-rest .rs-mapc .rp-t.busy.nw{animation:none}}

@media (max-width:1000px){
 .rw-bk,.rw-ab{grid-template-columns:minmax(0,1fr)}
 .rw-br{position:static}
 .rw-menu{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
 .rw-nv{display:none}
 .rw-btn{margin-left:auto}
 .rw-hd-in{min-height:58px}
 .rw-cta .rw-btn,.rw-cta .rw-btn2{flex:1}
 .rp-t small{display:none}
}
.rw-swipe{display:none;margin:8px 0 0;font-size:13px;color:var(--mu)}
@media (max-width:1000px){.rw-swipe{display:block}}
.dv-app .rs-main{grid-template-columns:minmax(0,1fr)}
.dv-app .ad-b>*,.dv-app .rs-main>*{min-width:0}
