/* Sanni18 — "18 Sanni & Sittara" theme
   Ebony temple night · vermilion fresco · turmeric & brass · clay · ola-leaf parchment */
:root{
  --ebony:#0F0D0E; --ebony-2:#171213; --ebony-3:#221A1B; --ebony-4:#2C2223;
  --vermilion:#A8201A; --vermilion-hi:#C22D24; --ember:#E0461F;
  --turmeric:#E08700; --gold:#D4AF37; --gold-soft:#E7CF86;
  --terracotta:#8B4513; --clay:#5C2C16;
  --parchment:#F5EBE0; --parchment-2:#EADBC8;
  --text:#F5EBE0; --muted:#C9B8A6; --faint:#9A8878;
  --ink:#1B1213; --ink-muted:#5C4636;
  --line:rgba(212,175,55,.22); --line-strong:rgba(212,175,55,.55);
  --ok:#6F9B55; --ok-bg:rgba(111,155,85,.16);
  --f-display:'Abhaya Libre','Noto Serif Sinhala',Georgia,serif;
  --f-body:'Manrope',system-ui,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
.s18{font-family:var(--f-body);color:var(--text);background:var(--ebony);-webkit-font-smoothing:antialiased}
.s18 a{color:var(--gold);text-decoration:none}
.s18 a:focus-visible,.s18 button:focus-visible,.s18 input:focus-visible,.s18 select:focus-visible,.s18 textarea:focus-visible{outline:2px solid var(--turmeric);outline-offset:2px}

/* type */
.d-xl{font-family:var(--f-display);font-weight:800;font-size:84px;line-height:.95;letter-spacing:-.01em;margin:0}
.d-l{font-family:var(--f-display);font-weight:800;font-size:56px;line-height:1;margin:0}
.d-m{font-family:var(--f-display);font-weight:700;font-size:38px;line-height:1.05;margin:0}
.d-s{font-family:var(--f-display);font-weight:700;font-size:26px;line-height:1.1;margin:0}
.sinhala{font-family:var(--f-display);color:var(--gold)}
.kicker{font:700 12px/1.2 var(--f-body);letter-spacing:.3em;text-transform:uppercase;color:var(--turmeric);margin:0}
.body-l{font-size:18px;line-height:1.65;color:var(--muted);margin:0}
.body{font-size:15px;line-height:1.6;color:var(--muted);margin:0}
.small{font-size:13px;line-height:1.5;color:var(--faint);margin:0}
.mono{font-family:var(--f-mono)}
.price{font:600 16px/1 var(--f-mono);color:var(--gold)}

/* motifs */
.palapethi{height:26px;width:100%;background:url(../assets/palapethi-band.webp) repeat-x left center/auto 100%}
.palapethi.thin{height:16px}
.palapethi.flip{transform:scaleY(-1)}
.palapethi.red{filter:saturate(1.1)}
.gok{background-image:repeating-linear-gradient(45deg,rgba(212,175,55,.05) 0 2px,transparent 2px 11px),repeating-linear-gradient(-45deg,rgba(212,175,55,.04) 0 2px,transparent 2px 11px)}
.ola{background-color:var(--parchment);color:var(--ink);
  background-image:repeating-linear-gradient(0deg,rgba(92,44,22,.055) 0 1px,transparent 1px 28px)}
.timber{background:linear-gradient(100deg,#2b1409,#5C2C16 18%,#44200f 38%,#5C2C16 62%,#331809 84%,#5C2C16)}
.brass-frame{padding:3px;border-radius:18px;background:linear-gradient(135deg,#7a5a14,#D4AF37 35%,#f3dc8a 50%,#D4AF37 65%,#7a5a14)}

/* generated-asset slot (Higgsfield art pending download) */
.gen{display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;
  border:1px dashed rgba(212,175,55,.55);border-radius:10px;color:var(--gold);
  background:repeating-linear-gradient(45deg,rgba(212,175,55,.07) 0 6px,transparent 6px 12px);
  font:600 10px/1.35 var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.ico{width:28px;height:28px;flex:none;border-radius:50%;border:1.5px solid var(--gold);display:inline-flex;align-items:center;justify-content:center;
  font:700 9px/1 var(--f-mono);color:var(--gold);letter-spacing:0}

/* controls */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:0;
  font:700 14px/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none}
.btn-primary{background:var(--vermilion);color:var(--parchment)}
.btn-gold{background:var(--gold);color:var(--ebony)}
.btn-ghost{background:transparent;color:var(--gold);border:1.5px solid var(--line-strong)}
.btn-dark{background:var(--ebony);color:var(--parchment)}
.btn-sm{min-height:40px;padding:0 16px;font-size:12px}
.chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font:600 13px/1 var(--f-body);background:transparent}
.chip.on{background:var(--turmeric);border-color:var(--turmeric);color:var(--ebony)}
.badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:6px;font:800 10px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase}
.b-sig{background:var(--vermilion);color:var(--parchment)}
.b-veg{background:rgba(111,155,85,.2);color:#B9D7A2}
.b-ar{background:transparent;border:1px solid var(--gold);color:var(--gold)}
.b-heat{background:rgba(224,70,31,.16);color:#FF8A5C}
.b-gold{background:rgba(212,175,55,.16);color:var(--gold)}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font:700 11px/1 var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.input{height:48px;border-radius:8px;border:1px solid var(--line-strong);background:var(--ebony-2);color:var(--text);padding:0 14px;font:500 15px var(--f-body)}
.ola .input{background:#FBF5EE;color:var(--ink);border-color:rgba(92,44,22,.35)}
.ola .field label{color:var(--ink-muted)}

/* surfaces */
.card{background:var(--ebony-2);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.panel{background:var(--ebony-2);border:1px solid var(--line);border-radius:14px}
.divider{height:1px;background:var(--line);width:100%}
.photo{display:block;width:100%;height:100%;object-fit:cover}

/* site nav */
.nav{display:flex;align-items:center;justify-content:space-between;height:84px;padding:0 64px;border-bottom:1px solid var(--line);background:rgba(15,13,14,.92)}
.nav-links{display:flex;gap:32px;font:600 14px/1 var(--f-body);letter-spacing:.06em}
.nav-links a{color:var(--muted)} .nav-links a.on{color:var(--parchment)}

/* staff console */
.side{width:240px;flex:none;background:var(--ebony-2);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px;padding:20px 14px}
.side a{display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;border-radius:8px;color:var(--muted);font:600 14px var(--f-body)}
.side a.on{background:rgba(212,175,55,.14);color:var(--parchment)}
.side .grp{font:700 10px/1 var(--f-body);letter-spacing:.24em;text-transform:uppercase;color:var(--faint);padding:16px 12px 6px}
.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:left;font:700 11px/1 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--faint);padding:12px;border-bottom:1px solid var(--line)}
.tbl td{padding:14px 12px;border-bottom:1px solid rgba(212,175,55,.1);color:var(--text)}
.st{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font:700 11px/1 var(--f-body);letter-spacing:.06em}
.st-free{background:rgba(245,235,224,.08);color:var(--muted)}
.st-open{background:var(--ok-bg);color:#B9D7A2}
.st-wait{background:rgba(224,135,0,.18);color:var(--turmeric)}
.st-alert{background:rgba(168,32,26,.28);color:#FF9C8F}
.st-off{background:rgba(245,235,224,.05);color:var(--faint)}

/* cultural frames */
.arch{border-radius:999px 999px 18px 18px;overflow:hidden}
.corners{position:relative}
.corners::before,.corners::after{content:"";position:absolute;width:78px;height:78px;background:url(../assets/corner.webp) no-repeat center/contain;pointer-events:none;z-index:2}
.corners::before{top:8px;left:8px}
.corners::after{bottom:8px;right:8px;transform:rotate(180deg)}
.medal{width:88px;height:88px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:url(../assets/medallion.webp) no-repeat center/contain}
.medal img{width:44px;height:44px;object-fit:contain;border-radius:50%}
.icon{width:36px;height:36px;object-fit:contain;flex:none}
.liya{display:block;height:44px;width:auto;margin:0 auto}
/* lettering plate: generated hand-painted type; text fallback until the plate image lands */
.plate{margin:0;font-family:var(--f-display);font-weight:800;color:var(--gold);text-shadow:0 2px 0 var(--vermilion),0 0 22px rgba(224,135,0,.35);letter-spacing:.02em;line-height:1}
.plate-img{display:block;height:auto;max-width:100%}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pillar{background:linear-gradient(180deg,#2a1710,#1a0f0b);border:1px solid rgba(212,175,55,.35);border-radius:999px 999px 16px 16px}
.glow{position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none}

/* buttons that are links keep their own text colour (beats .s18 a) */
.s18 a.btn-primary,.s18 button.btn-primary{color:var(--parchment)}
.s18 a.btn-gold,.s18 button.btn-gold{color:var(--ebony)}
.s18 a.btn-dark,.s18 button.btn-dark{color:var(--parchment)}
.s18 a.btn-ghost,.s18 button.btn-ghost{color:var(--gold)}
.s18 a.btn:hover{filter:brightness(1.08)}
