/* ============ MANOLO'S — Black · Gold · Burgundy ============ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Jost:wght@300;400;500;600&display=swap');

:root{
  --black:#100d0c; --char:#1a1412; --burg:#6e1410; --burg-deep:#4a0d0b;
  --gold:#e8b84b; --gold-soft:#c9963a; --cream:#f5e6b8; --ink:#efe6d4;
  --font-d:'Cormorant Garamond',serif; --font-b:'Jost',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--black);color:var(--ink);font-family:var(--font-b);font-weight:300;min-height:100vh;overflow-x:hidden}
a{color:var(--gold);text-decoration:none}
h1,h2,h3{font-family:var(--font-d);font-weight:600;color:var(--cream);letter-spacing:.02em}

/* --- star shimmer field --- */
.stars{position:fixed;inset:0;pointer-events:none;z-index:0}
.stars span{position:absolute;width:2px;height:2px;border-radius:50%;background:var(--gold);opacity:0;animation:twinkle 6s infinite}
@keyframes twinkle{0%,100%{opacity:0}50%{opacity:.85;box-shadow:0 0 6px 1px rgba(232,184,75,.6)}}
@media (prefers-reduced-motion:reduce){.stars span{animation:none;opacity:.25}}

.wrap{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:0 20px}

/* --- top bar --- */
nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid rgba(232,184,75,.25)}
nav .brand{font-family:var(--font-d);font-size:1.5rem;color:var(--gold);font-weight:700;letter-spacing:.06em}
nav .links{display:flex;gap:18px;flex-wrap:wrap;font-size:.85rem;text-transform:uppercase;letter-spacing:.14em}
nav .links a{color:var(--ink);opacity:.85}
nav .links a.active,nav .links a:hover{color:var(--gold);opacity:1}
.lang-toggle{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:5px 14px;border-radius:20px;font-family:var(--font-b);font-size:.8rem;letter-spacing:.1em;cursor:pointer}
.lang-toggle:hover{background:var(--gold);color:var(--black)}

/* --- hero --- */
.hero{text-align:center;padding:56px 0 40px}
.hero .sign{max-width:520px;width:92%;border:1px solid rgba(232,184,75,.5);border-radius:6px;box-shadow:0 8px 60px rgba(110,20,16,.55)}
.hero h1{font-size:clamp(2.4rem,6vw,4rem);margin-top:26px}
.hero .tag{color:var(--gold);letter-spacing:.34em;text-transform:uppercase;font-size:.8rem;margin-top:10px}
.gold-rule{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:26px auto}

/* --- bot card --- */
.bot-card{display:flex;gap:22px;align-items:center;background:linear-gradient(160deg,var(--char),#231713);border:1px solid rgba(232,184,75,.35);border-radius:10px;padding:26px;margin:34px 0}
.bot-avatar{flex:0 0 96px;height:96px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--burg),var(--burg-deep));border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-size:2rem;color:var(--cream)}
.bot-card .speech{font-size:1.02rem;line-height:1.65}
.bot-card .bot-name{color:var(--gold);text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;margin-bottom:8px}

/* --- category arch doors --- */
.doors{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:22px;padding:30px 0 60px}
.door{position:relative;border:1px solid rgba(232,184,75,.5);border-radius:110px 110px 8px 8px;background:linear-gradient(180deg,var(--burg-deep),var(--char) 70%);padding:34px 16px 22px;text-align:center;cursor:pointer;transition:transform .35s,box-shadow .35s;overflow:hidden}
.door::before{content:"";position:absolute;inset:8px;border:1px solid rgba(232,184,75,.3);border-radius:100px 100px 4px 4px;pointer-events:none}
.door:hover{transform:translateY(-6px);box-shadow:0 14px 40px rgba(232,184,75,.18)}
.door img{width:120px;height:120px;object-fit:cover;border-radius:50%;border:2px solid var(--gold);margin-bottom:14px}
.door .cat-ph{width:120px;height:120px;border-radius:50%;border:2px solid var(--gold);margin:0 auto 14px;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--gold);background:rgba(232,184,75,.06)}
.door h3{font-size:1.35rem}
.door .count{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-soft);margin-top:6px}

/* --- menu items --- */
.cat-section{padding:26px 0}
.cat-section h2{font-size:2rem;text-align:center}
.cat-section .sub{text-align:center;color:var(--gold-soft);letter-spacing:.25em;text-transform:uppercase;font-size:.72rem;margin:6px 0 24px}
.item{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dotted rgba(232,184,75,.25);padding:15px 4px;align-items:flex-start}
.item .n{font-family:var(--font-d);font-size:1.22rem;color:var(--cream)}
.item .d{font-size:.86rem;opacity:.75;margin-top:3px;max-width:520px}
.item .p{color:var(--gold);font-weight:500;white-space:nowrap;font-size:1.05rem}
.item .variants div{margin-top:4px;font-size:.9rem}
.badge-id{display:inline-block;border:1px solid var(--gold);color:var(--gold);border-radius:4px;font-size:.62rem;letter-spacing:.12em;padding:2px 7px;margin-left:8px;vertical-align:middle}
.add-btn{background:transparent;border:1px solid var(--gold);color:var(--gold);border-radius:4px;padding:6px 14px;font-family:var(--font-b);letter-spacing:.08em;cursor:pointer;font-size:.8rem}
.add-btn:hover{background:var(--gold);color:var(--black)}

/* --- cart / order --- */
.cart-bar{position:fixed;bottom:0;left:0;right:0;background:var(--burg-deep);border-top:1px solid var(--gold);padding:12px 20px;display:flex;justify-content:space-between;align-items:center;z-index:50}
.cart-bar strong{color:var(--gold)}
.btn-gold{background:var(--gold);color:var(--black);border:none;padding:12px 28px;border-radius:4px;font-family:var(--font-b);font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem;cursor:pointer}
.btn-line{background:transparent;color:var(--gold);border:1px solid var(--gold);padding:11px 24px;border-radius:4px;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;cursor:pointer}
.cart-list .row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dotted rgba(232,184,75,.25);gap:10px;align-items:center}
.qty{display:flex;gap:8px;align-items:center}
.qty button{width:26px;height:26px;border-radius:50%;border:1px solid var(--gold);background:none;color:var(--gold);cursor:pointer}
.totals{margin-top:18px;text-align:right;line-height:2}
.totals .grand{font-family:var(--font-d);font-size:1.6rem;color:var(--gold)}
.note{font-size:.8rem;opacity:.7;margin-top:10px}
input,select,textarea{width:100%;background:var(--char);border:1px solid rgba(232,184,75,.4);color:var(--ink);padding:11px;border-radius:4px;font-family:var(--font-b);margin:6px 0 14px}
label{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft)}

/* --- receipt --- */
.receipt{background:var(--cream);color:#2a1c10;max-width:420px;margin:30px auto;padding:28px;border-radius:6px;font-family:var(--font-b)}
.receipt h2{color:var(--burg);text-align:center;font-size:1.7rem}
.receipt .rrow{display:flex;justify-content:space-between;padding:4px 0;font-size:.9rem}
.receipt hr{border:none;border-top:1px dashed #8a6a3a;margin:12px 0}
@media print{body *{visibility:hidden}.receipt,.receipt *{visibility:visible}.receipt{position:absolute;top:0;left:0;margin:0;width:100%}}

/* --- events --- */
.event-card{position:relative;border:1px solid var(--gold);border-radius:10px;overflow:hidden;margin:34px 0;background:linear-gradient(150deg,var(--burg-deep),var(--char) 65%)}
.event-card .inner{padding:40px 34px}
.event-card .eyebrow{letter-spacing:.35em;text-transform:uppercase;color:var(--gold-soft);font-size:.7rem}
.event-card h2{font-size:clamp(2rem,5vw,3rem);margin:10px 0 4px}
.event-card .detail{display:flex;gap:26px;flex-wrap:wrap;margin-top:20px;font-size:.92rem}
.event-card .detail span b{color:var(--gold);display:block;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:3px}
.photo-slot{height:230px;background:repeating-linear-gradient(45deg,rgba(232,184,75,.06),rgba(232,184,75,.06) 12px,transparent 12px,transparent 24px);border-bottom:1px solid rgba(232,184,75,.4);display:flex;align-items:center;justify-content:center;color:var(--gold-soft);letter-spacing:.2em;font-size:.72rem;text-transform:uppercase;text-align:center;padding:10px}
.photo-slot img{width:100%;height:100%;object-fit:cover}

/* --- footer --- */
footer{border-top:1px solid rgba(232,184,75,.25);margin-top:70px;padding:34px 0 90px;text-align:center;font-size:.85rem;opacity:.85;line-height:1.9}
footer .gold{color:var(--gold)}

/* --- admin --- */
table{width:100%;border-collapse:collapse;font-size:.85rem}
th,td{border-bottom:1px solid rgba(232,184,75,.25);padding:10px 8px;text-align:left}
th{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem}
.status{padding:3px 10px;border-radius:12px;font-size:.72rem;cursor:pointer;border:1px solid var(--gold);color:var(--gold);background:none}
.status.s1{background:var(--burg);border-color:var(--burg);color:var(--cream)}
.status.s2{background:var(--gold);color:var(--black);border-color:var(--gold)}
.status.s3{opacity:.5}

@media(max-width:640px){
  .bot-card{flex-direction:column;text-align:center}
  nav{flex-direction:column;gap:12px}
  .doors{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
}

/* --- flyer poster layout --- */
.event-card.with-flyer{display:flex;align-items:stretch}
.event-card.with-flyer .flyer{flex:0 0 340px;background:#000}
.event-card.with-flyer .flyer img{width:100%;height:100%;object-fit:contain;display:block}
.event-card.with-flyer .inner{flex:1;display:flex;flex-direction:column;justify-content:center}
@media(max-width:720px){
  .event-card.with-flyer{flex-direction:column}
  .event-card.with-flyer .flyer{flex:none}
}
