/* Mysuru Dasara 2026 Visitor Guide - design system ("Silk & Ambari").
   Built on the mysoredasara.gov.in language (Marcellus, Jost, Anek, maroon and foil gold), tuned for a phone
   held in sunlight and crowds: light sandalwood ground, one silk-maroon action colour, gold only as accent.
   Signature: the zari border, the woven gold edge of a Mysore silk sari, on the hero, the tab bar and the gate. */
:root{
  --onyx:#1F150D;       /* always-dark surfaces (independent of the text colour) */
  /* palette */
  --sandal:#F7F1E6;      /* page: sandalwood ivory */
  --silk:#FFFDF8;        /* cards */
  --maroon:#6B0F22;      /* Mysore silk: the one action colour */
  --maroon-dk:#4A0A18;
  --maroon-lt:#F7E7E9;
  --ambari:#C8952F;      /* gold accent */
  --ambari-dk:#8E6416;
  --ambari-lt:#F6E8C9;
  --night:#170B20;       /* illuminated palace at night */
  --marigold:#E89A2C;    /* live / now only */
  --ink:#1F150D; --ink-2:#4F4234; --ink-3:#85796B;
  --line:#EADFCB; --line-2:#F2EADB;
  --gold:var(--ambari-dk); --gold-lt:var(--ambari-lt);
  --paper:var(--sandal); --card:var(--silk);
  --foil:linear-gradient(120deg,#FBE9B7 0%,#E8B44A 38%,#B8862B 62%,#F5D27E 100%);
  /* type */
  --display:'Marcellus','Anek Kannada','Anek Devanagari',Georgia,serif;
  --font:'Jost','Anek Kannada','Anek Devanagari','Noto Sans','Noto Sans Kannada','Noto Sans Devanagari',system-ui,-apple-system,'Segoe UI',sans-serif;
  /* shape & depth */
  --r:18px; --r-s:12px;
  --sh:0 1px 1px rgba(74,10,24,.04),0 8px 24px -10px rgba(74,10,24,.18);
  --sh-lg:0 2px 4px rgba(74,10,24,.06),0 22px 44px -18px rgba(74,10,24,.35);
  --zari:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='10' viewBox='0 0 22 10'%3E%3Crect width='22' height='10' fill='%236B0F22'/%3E%3Crect y='0' width='22' height='1.2' fill='%23E8B44A'/%3E%3Crect y='8.8' width='22' height='1.2' fill='%23E8B44A'/%3E%3Cpath d='M11 2.2l2.8 2.8L11 7.8 8.2 5z' fill='%23E8B44A'/%3E%3Ccircle cx='0' cy='5' r='1.1' fill='%23F5D27E'/%3E%3Ccircle cx='22' cy='5' r='1.1' fill='%23F5D27E'/%3E%3C/svg%3E");
}
html{background:#EDE4D3}
body{font-family:var(--font);background:#EDE4D3;font-feature-settings:"tnum" 0;letter-spacing:.005em;-webkit-font-smoothing:antialiased}
#app{background:var(--sandal)}
:lang(kn) body,html[lang=kn] body{line-height:1.55}
.num .nn,.mins b,.cd b,.tkt .tp b,.sos-big .n{font-feature-settings:"tnum" 1}

/* ---- type scale: Marcellus for titles only ---- */
.hero h1,.d-hero h1,.p-body h1,.sec-h h2,.yatri b,.closure .ch b,.gate h1,.top .bt b,.top .title{font-family:var(--display);font-weight:400;letter-spacing:.005em}
html[lang=kn] .hero h1,html[lang=kn] .d-hero h1,html[lang=kn] .p-body h1,html[lang=kn] .sec-h h2,html[lang=kn] .yatri b,html[lang=kn] .top .bt b,html[lang=kn] .top .title,
html[lang=hi] .hero h1,html[lang=hi] .d-hero h1,html[lang=hi] .p-body h1,html[lang=hi] .sec-h h2,html[lang=hi] .yatri b,html[lang=hi] .top .bt b,html[lang=hi] .top .title{font-weight:600;letter-spacing:0}
.sec-h h2{font-size:20px;line-height:1.2}
.sec-h a{font-size:13px;font-weight:500;color:var(--maroon);letter-spacing:.01em}
.hero h1{font-size:27px;line-height:1.12}
.p-body h1{font-size:27px;line-height:1.15}
.d-hero h1{font-size:28px}
.hero small,.d-hero small{letter-spacing:.12em}
.pcard .pc small,.row small,.locbar small,.ccard small{letter-spacing:0}
.hero small,.d-hero small,.yatri small,.finale .fl,.nn small,.ann small{font-weight:600}

/* ---- header ---- */
.top{background:rgba(247,241,230,.86);border-bottom:0;box-shadow:0 1px 0 var(--line)}
.top .bt b{font-size:19px;line-height:1.05}
.top .bt small{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ambari-dk);font-weight:500;margin-top:2px}
.top .mark.logo{width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:0 0 0 1.5px var(--ambari-lt),0 2px 6px rgba(74,10,24,.12);overflow:hidden}
.top .mark.logo img{width:100%;height:100%;object-fit:contain}
.top .back{border-radius:50%;background:var(--silk);border-color:var(--line)}
.top .title{font-size:19px}
.pill{height:34px;border-radius:17px;background:var(--silk);border-color:var(--line);font-weight:500;color:var(--ink-2)}
.sos{height:34px;border-radius:17px;background:var(--maroon);box-shadow:inset 0 0 0 1px rgba(232,180,74,.35);letter-spacing:.06em;font-weight:600}

/* ---- tab bar with zari edge ---- */
.tabs{background:rgba(255,253,248,.94);border-top:0;box-shadow:0 -10px 30px -18px rgba(74,10,24,.35)}
.tabs::before{content:"";position:absolute;left:0;right:0;top:-5px;height:5px;background:var(--zari) 0 0/22px 10px repeat-x;background-position:0 -2.5px;opacity:.95}
.tabs a{font-weight:500;color:var(--ink-3);letter-spacing:.01em}
.tabs a.on{color:var(--maroon);font-weight:600}
.tabs a.on .ic{background:var(--maroon-lt);color:var(--maroon)}
.tabs .ic{width:48px;height:30px;border-radius:15px;transition:background .2s}

/* ---- buttons: one system ---- */
.btn{height:52px;border-radius:16px;font-weight:600;font-size:16px;letter-spacing:.01em}
.btn.pri,.btn.pri.sm{background:var(--maroon);color:#fff;box-shadow:inset 0 0 0 1px rgba(232,180,74,.28),0 6px 16px -8px rgba(107,15,34,.7)}
.btn.pri:active{background:var(--maroon-dk)}
.btn.sec{background:var(--silk);border:1px solid var(--line);color:var(--maroon);box-shadow:var(--sh)}
.btn.sm{height:38px;border-radius:12px;font-size:13.5px;padding:0 14px}
.icon-btn,.row .go-ic,.lot .go-ic{background:var(--maroon);color:#fff;border-radius:50%}
.row .go-ic{width:42px;height:42px;box-shadow:0 4px 12px -6px rgba(107,15,34,.8)}
.row .go-ic.call{background:#1E7A4C;box-shadow:0 4px 12px -6px rgba(30,122,76,.8)}
.icon-btn.light{background:var(--silk);color:var(--maroon);border:1px solid var(--line)}
.yatri .btn{background:#1F3F8F;box-shadow:0 6px 16px -8px rgba(31,63,143,.8)}
.pushcard button{background:var(--maroon);border-radius:12px;font-weight:600}
.tklink{background:var(--ambari-lt);color:var(--ambari-dk);border-radius:10px;font-weight:600}

/* ---- surfaces ---- */
.row,.ev,.lot,.num,.tkt,.pcard,.tile,.nn,.fact,.facts,.now,.pushcard,.dd,.install,.ccard,.yatri,.closure{background:var(--silk);border-color:var(--line)}
.row,.ev,.lot,.num,.tkt,.nn,.pushcard,.install{border-radius:var(--r);box-shadow:var(--sh)}
.pcard{border-radius:20px;box-shadow:var(--sh);overflow:hidden}
.pcard .pc b{font-weight:600}
.chip{height:26px;border-radius:13px;font-weight:500;background:var(--line-2);color:var(--ink-2)}
.chip.gold{background:var(--ambari-lt);color:var(--ambari-dk)}
.filters button{border-radius:18px;font-weight:500;background:var(--silk);border-color:var(--line)}
.filters button.on{background:var(--maroon);border-color:var(--maroon);color:#fff}
.search{border-radius:16px;background:var(--silk);border-color:var(--line);box-shadow:var(--sh)}
.days button{border-radius:16px;background:var(--silk);border-color:var(--line)}
.days button b{font-family:var(--display);font-weight:400;font-size:22px}
.days button.on{background:var(--maroon);border-color:var(--maroon);box-shadow:0 8px 18px -10px rgba(107,15,34,.9)}
.days button.on small{color:var(--ambari-lt)}
.ev.star{border-color:rgba(200,149,47,.55);background:linear-gradient(180deg,var(--silk),#FBF1E2)}
.ev.star .eb{border-left-color:var(--ambari)}
.ev .tm b{font-weight:600}

/* ---- quick tiles ---- */
.grid{gap:10px}
.tile{border-radius:20px;font-weight:500;color:var(--ink);padding:14px 4px 12px;box-shadow:var(--sh)}
.tile .ti{width:48px;height:48px;border-radius:50%}
.tile.t-dasara{background:linear-gradient(165deg,#7A1529,#4A0A18);border-color:#4A0A18;color:#fff}
.tile.t-dasara .ti{background:rgba(255,255,255,.12);color:#F5D27E;box-shadow:inset 0 0 0 1px rgba(245,210,126,.45)}
.tile.t-places .ti{background:var(--ambari-lt);color:var(--ambari-dk)}
.tile.t-park .ti{background:#E5EFEA;color:#215B44}
.tile.t-tick .ti{background:#FBEBD5;color:#9A5A0B}
.tile.t-near .ti{background:#E4ECF6;color:#1F4E79}
.tile.t-amen .ti,.tile.t-sos .ti{background:var(--maroon-lt);color:var(--maroon)}

/* ---- hero with zari edge ---- */
.hero.grand{border:0;border-radius:24px;box-shadow:var(--sh-lg);background:var(--night)}
.hero.grand::before{inset:0;border:0;border-radius:0;top:auto;height:8px;background:var(--zari) 0 0/22px 10px repeat-x;background-position:0 -1px;z-index:2}
.hero.grand::after{background:linear-gradient(0deg,rgba(23,11,32,.96) 6%,rgba(58,13,30,.55) 52%,rgba(23,11,32,.05))}
.hero.grand .hc{padding:20px 18px 26px}
.hero.grand small{color:#F5D27E}
.hero.grand h1{font-size:30px}
.finale{background:rgba(255,253,248,.08);border-color:rgba(245,210,126,.35);border-radius:16px}
.finale .fl{color:#F5D27E}
.finale .fl svg{color:#F5D27E}
.finale .cd span{background:rgba(255,253,248,.1);border-color:rgba(245,210,126,.25);border-radius:12px}
.finale .cd b{font-family:var(--display);font-weight:400;font-size:24px}
.d-hero{border-radius:24px;background:var(--night);box-shadow:var(--sh-lg)}
.d-hero::after{background:linear-gradient(0deg,rgba(23,11,32,.95),rgba(58,13,30,.25))}
.d-hero small{color:#F5D27E}
.p-hero{position:relative}
.p-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(0deg,rgba(23,11,32,.35),transparent);pointer-events:none}

/* ---- alerts ---- */
.ann{border-radius:16px;border:1px solid transparent}
.ann.info{background:#FBF2DD;color:#5C3E06;border-color:#F0DFB5}
.ann.traffic{background:#FCEBD7;color:#6B3A04;border-color:#F3D3AC}
.ann.crit{background:#FBE6E8;color:#6B0F22;border-color:#F0BCC3}
.critbar{background:linear-gradient(135deg,#B3202B,#7A0F1E);border-radius:16px}
.nn small.live{color:#B3202B}
.nn small.live::before{background:#D9362F}

/* ---- Yatri Mitra ---- */
.yatri{border-radius:22px;box-shadow:var(--sh)}
.yatri b{font-size:24px}

/* ---- language gate: the first thing a visitor sees after scanning ---- */
.gate{background:var(--night)}
.gate::after{background:linear-gradient(180deg,rgba(23,11,32,.25) 0%,rgba(23,11,32,.78) 52%,#170B20 100%)}
.gate::before{opacity:.42}
.gate .g-brand b{font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.01em}
.gate .g-brand small{color:#F5D27E;opacity:.9;letter-spacing:.04em}
.gate h1{font-family:var(--font);font-weight:500;font-size:15px}
.gate h1 span:nth-child(2){font-family:var(--display);font-size:24px;font-weight:400;margin:2px 0}
.gate .langs button{border-radius:18px;background:var(--silk);font-weight:600;box-shadow:0 10px 26px -14px rgba(0,0,0,.6);position:relative;overflow:hidden}
.gate .langs button::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--zari) 0 0/10px 22px;background-image:linear-gradient(180deg,#E8B44A,#B8862B)}
.gate .langs button small{font-weight:500;color:var(--ambari-dk)}
.gate .g-logos img{box-shadow:0 0 0 2px rgba(245,210,126,.45)}
.gate::selection{background:var(--ambari)}

/* ---- footer ---- */
.foot{color:var(--ink-3)}
.foot .f-logos img{box-shadow:0 0 0 1px var(--line),0 2px 8px rgba(74,10,24,.08)}

/* focus */
:focus-visible{outline:2px solid var(--ambari);outline-offset:2px}

/* ---- live traffic map ---- */
.tmap{margin:0 16px;height:300px;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#EFE6D6,#E2D6C1);box-shadow:var(--sh);position:relative}
.tmap .ld{display:grid;place-items:center;height:100%;color:var(--ink-3);font-size:13px}
.tmap-go{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;text-align:center;color:var(--maroon)}
.tmap-go svg{width:34px;height:34px;padding:10px;box-sizing:content-box;border-radius:50%;background:var(--silk);box-shadow:var(--sh)}
.tmap-go b{font-size:16px;font-weight:600}
.tmap-go small{font-size:12.5px;color:var(--ink-3);max-width:260px;letter-spacing:0;line-height:1.45}

/* ================= Liquid Glass: chrome only (content stays solid for sunlight reading) ================= */
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .top{background:linear-gradient(180deg,rgba(255,252,245,.72),rgba(247,241,230,.55));
    -webkit-backdrop-filter:blur(22px) saturate(185%);backdrop-filter:blur(22px) saturate(185%);
    box-shadow:inset 0 -1px 0 rgba(255,255,255,.55),0 1px 0 rgba(74,10,24,.06),0 10px 24px -20px rgba(74,10,24,.5)}
  .pill,.top .back{background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.75);
    -webkit-backdrop-filter:blur(12px) saturate(170%);backdrop-filter:blur(12px) saturate(170%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 2px 8px -4px rgba(74,10,24,.25)}
  .sos{background:linear-gradient(180deg,#86172C,#5E0D1F);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),inset 0 0 0 1px rgba(232,180,74,.3),0 4px 12px -6px rgba(107,15,34,.8)}

  /* floating glass dock */
  .tabs{left:50%;bottom:calc(10px + var(--safe-b));width:calc(100% - 20px);max-width:460px;height:var(--tabs);padding:6px;border-radius:28px;
    background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(255,250,240,.5));
    -webkit-backdrop-filter:blur(24px) saturate(190%);backdrop-filter:blur(24px) saturate(190%);
    border:1px solid rgba(255,255,255,.7);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(200,149,47,.12),0 18px 40px -16px rgba(74,10,24,.45),0 2px 6px rgba(74,10,24,.08)}
  .tabs::before{display:none}
  .tabs a.on .ic{background:rgba(107,15,34,.1);box-shadow:inset 0 0 0 1px rgba(107,15,34,.12)}
  #view{padding-bottom:calc(var(--tabs) + var(--safe-b) + 40px)}
  .ch-fab{bottom:calc(var(--tabs) + var(--safe-b) + 22px)!important}

  /* glass over imagery */
  .finale,.finale .cd span,.hero .cd span{-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
  .critbar{-webkit-backdrop-filter:blur(16px) saturate(170%);backdrop-filter:blur(16px) saturate(170%);
    background:linear-gradient(135deg,rgba(179,32,43,.92),rgba(122,15,30,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 28px -12px rgba(122,15,30,.7)}
  .gate .langs button{background:rgba(255,253,248,.9)}
}
@media (prefers-reduced-transparency:reduce){
  .top,.tabs,.pill,.top .back,.finale,.critbar{-webkit-backdrop-filter:none;backdrop-filter:none}
  .top{background:var(--sandal)} .tabs{background:var(--silk)}
}

/* ================= Dasara gradient (mysoredasara.gov.in hero text) =================
   --grad-head is the site's exact gradient: used as text on dark surfaces and as soft fills.
   --grad-deep follows the same gold -> peach -> rose path, darkened so white text on it stays readable. */
:root{
  --grad-head:linear-gradient(100deg,#E9BC63 0%,#F8DFA6 34%,#F3C9A8 62%,#E58BB4 88%,#B3316B 100%);
  --grad-deep:linear-gradient(100deg,#9C6E1C 0%,#A8782B 26%,#A9583F 58%,#982F57 84%,#7E1A45 100%);
  --grad-soft:linear-gradient(120deg,rgba(233,188,99,.32),rgba(248,223,166,.38) 34%,rgba(243,201,168,.38) 62%,rgba(229,139,180,.32));
}
.gtext,.hero h1,.d-hero h1,.gate .g-brand b,.gate h1 span:nth-child(2),.finale .cd b,.hero.grand small,.d-hero small,.finale .fl{
  background:var(--grad-head);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.finale .fl svg{color:#F3C9A8}
.helphero h1{background:var(--grad-head);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* filled actions: deep Dasara gradient with a fine foil highlight */
.btn.pri,.btn.pri.sm,.pushcard button,.icon-btn,.row .go-ic,.lot .go-ic,.filters button.on,.days button.on{
  background:var(--grad-deep);border-color:transparent;color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,240,201,.35),inset 0 0 0 1px rgba(248,223,166,.18),0 8px 18px -10px rgba(126,26,69,.75)}
.btn.pri:active,.pushcard button:active{filter:brightness(.92)}
.days button.on small{color:#FFF0C9}
.row .go-ic.call{background:linear-gradient(120deg,#1E7A4C,#16603B)}

/* language pill and header subtitle */
.pill svg{color:#A9583F}
.top .bt small{background:var(--grad-deep);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.sec-h a{background:var(--grad-deep);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:600}

/* icons sit on the soft gradient */
.tile .ti,.tile.t-places .ti,.tile.t-park .ti,.tile.t-tick .ti,.tile.t-near .ti,.tile.t-amen .ti,.tile.t-sos .ti{background:var(--grad-head);color:#5A1023;box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 4px 10px -6px rgba(179,49,107,.55)}
.tile.t-dasara{background:linear-gradient(165deg,#2A1030,#170B20);border-color:#170B20}
.tile.t-dasara .ti{background:var(--grad-head);color:#3A0D1E;box-shadow:0 0 0 3px rgba(248,223,166,.18)}
.tabs a.on .ic{background:var(--grad-soft);box-shadow:inset 0 0 0 1px rgba(179,49,107,.16)}
.tabs a.on{color:#7E1A45}
.nn small.live{color:#B3316B}
.tklink{background:var(--grad-soft);color:#7E1A45}
.chip.gold{background:var(--grad-soft);color:#7A4A12}
.yatri small{background:var(--grad-deep);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.ev.star .eb{border-left:2px solid transparent;border-image:linear-gradient(180deg,#E9BC63,#E58BB4,#B3316B) 1}
.gate .langs button::before{background:linear-gradient(180deg,#E9BC63,#F3C9A8,#E58BB4,#B3316B)}
.tmap-go{color:#7E1A45}

/* ================= sleek cards + gradient outlines ================= */
/* gradient hairline: solid fill on the padding box, Dasara gradient on the border box */
.go-outline,.filters button:not(.on),.pill,.locbar,.search,.days button:not(.on),.badge{
  border:1px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(110deg,rgba(233,188,99,.75),rgba(243,201,168,.8) 45%,rgba(229,139,180,.75) 75%,rgba(179,49,107,.6)) border-box}
.pill{background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)) padding-box,linear-gradient(110deg,#E9BC63,#F3C9A8 45%,#E58BB4 75%,#B3316B) border-box}
.filters{gap:8px}
.filters button{height:38px;padding:0 16px;border-radius:19px;font-size:13.5px;font-weight:500;color:var(--ink-2)}
.filters button.on{font-weight:600}
.days button:not(.on){box-shadow:none}

/* one-line meta */
.ml{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;margin-top:5px;font-size:12.5px;color:var(--ink-3);line-height:1.5}
.ml > span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.ml > span + span::before{content:"";width:3px;height:3px;border-radius:50%;background:#D8C9B2;margin:0 8px}
.ml svg{width:14px;height:14px;flex:none;color:#A9583F;opacity:.9}
.ml .d{color:var(--ink-2);font-weight:600}
.ml .chip{height:22px;font-size:11.5px}
.mb{margin-top:7px}
.badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:11px;font-size:11.5px;font-weight:600;letter-spacing:.02em}
.badge svg{width:13px;height:13px}
.badge.tk{color:#8A4A12}
.badge.fr{color:#1E6B45;background:linear-gradient(#F3FAF6,#F3FAF6) padding-box,linear-gradient(110deg,#7FC7A1,#BFE3CF) border-box}

/* list rows: tighter, calmer */
.row{padding:12px 12px 12px 12px;gap:12px;align-items:center}
.row .rb b{font-size:15.5px;font-weight:600;letter-spacing:-.005em}
.row .th{width:64px;height:64px;border-radius:16px}
.row .ico{width:48px;height:48px;border-radius:50%;background:var(--grad-soft)!important;color:#7E1A45!important;box-shadow:inset 0 0 0 1px rgba(179,49,107,.14)}
.row .ico.medical{color:#B3202B!important}
.row .go-ic{width:44px;height:44px}

/* location bar and buttons */
.locbar{border-radius:18px;padding:12px 14px;box-shadow:var(--sh)}
.locbar button{height:38px;padding:0 16px;border-radius:19px;background:var(--grad-deep);font-weight:600;font-size:13px;box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 6px 14px -8px rgba(126,26,69,.8)}
.locbar small{letter-spacing:0}
.mapbox{border-radius:22px;box-shadow:var(--sh);overflow:hidden}

/* place screen "getting there": same calm line */
.now .modes .md{background:transparent;border:1px solid transparent;background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(110deg,rgba(233,188,99,.7),rgba(229,139,180,.6)) border-box;border-radius:12px;height:28px;font-weight:500}
.now .modes .md svg{color:#A9583F}
.ml{flex-wrap:nowrap;overflow:hidden}
.ml > span{flex:none}
.ml .w{gap:6px}
.ml .w svg{width:15px;height:15px}


/* ================= maps-style lists (Apple / Google Maps) ================= */
.glist{margin:0 16px;background:var(--silk);border-radius:20px;box-shadow:var(--sh);overflow:hidden}
.gi{display:flex;gap:12px;padding:14px 14px 14px 14px;position:relative}
.gi + .gi::before{content:"";position:absolute;left:66px;right:0;top:0;height:1px;background:var(--line)}
.gic{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;color:#fff;background:#7E1A45;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.gic svg{width:20px;height:20px}
.gic.medical{background:#C0262D}.gic.police,.gic.help,.gic.info{background:#1F4E79}.gic.toilet,.gic.water{background:#185866}
.gb{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.gt{font-size:16px;font-weight:600;line-height:1.3;color:var(--ink);letter-spacing:-.005em}
.gb .sub{font-size:13px;color:var(--ink-3)}
.st{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ink-3)}
.st svg{width:13px;height:13px}
.st.ok,.st.ok b{color:#1E7A4C}
.st.bad b{color:#B3202B}
.st b{font-weight:600}
.acts{display:flex;gap:8px;margin-top:8px;overflow-x:auto;scrollbar-width:none}
.acts::-webkit-scrollbar{display:none}
.act{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:18px;font-size:13.5px;font-weight:600;white-space:nowrap;
  color:#7E1A45;background:linear-gradient(rgba(243,201,168,.22),rgba(243,201,168,.22)) padding-box,linear-gradient(110deg,rgba(233,188,99,.8),rgba(229,139,180,.7)) border-box;border:1px solid transparent}
.act svg{width:16px;height:16px}
.act.pri{color:#fff;background:var(--grad-deep);border-color:transparent;box-shadow:inset 0 1px 0 rgba(255,240,201,.3),0 6px 14px -8px rgba(126,26,69,.7)}

/* ---- Near Me: full-bleed map, floating chips, bottom sheet ---- */
.nearwrap{position:relative;margin-top:-6px}
.mapbox.full{height:52vh;min-height:300px;max-height:520px;margin:0;border-radius:0;box-shadow:none}
.mapchips{position:absolute;left:0;right:0;top:10px;z-index:500;display:flex;gap:8px;overflow-x:auto;padding:0 12px;scrollbar-width:none}
.mapchips::-webkit-scrollbar{display:none}
.mapchips button{flex:none;height:36px;padding:0 15px;border-radius:18px;font-size:13.5px;font-weight:500;color:var(--ink);
  background:rgba(255,253,248,.78);border:1px solid rgba(255,255,255,.8);-webkit-backdrop-filter:blur(14px) saturate(180%);backdrop-filter:blur(14px) saturate(180%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 14px -6px rgba(31,21,13,.35)}
.mapchips button.on{color:#fff;background:var(--grad-deep);border-color:transparent}
.locate{position:absolute;right:12px;bottom:40px;z-index:500;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#7E1A45;
  background:rgba(255,253,248,.85);border:1px solid rgba(255,255,255,.85);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 6px 18px -6px rgba(31,21,13,.45)}
.locate svg{width:22px;height:22px}
.nearwrap .leaflet-control-zoom{display:none}
.upsheet{position:relative;z-index:501;margin-top:-26px;background:var(--sandal);border-radius:24px 24px 0 0;padding:8px 0 4px;box-shadow:0 -10px 30px -16px rgba(31,21,13,.35)}
.upsheet .grab{display:block;width:40px;height:5px;border-radius:3px;background:#D6C9B4;margin:2px auto 10px}
.up-h{padding:0 18px 12px}
.up-h b{display:block;font-family:var(--display);font-weight:400;font-size:20px;line-height:1.2}
html[lang=kn] .up-h b,html[lang=hi] .up-h b{font-family:var(--font);font-weight:600;font-size:18px}
.up-h small{display:block;font-size:12px;color:var(--ink-3);margin-top:3px;letter-spacing:0}

/* ---- install: Liquid Glass popup, once ---- */
.installpop{position:fixed;left:50%;bottom:calc(var(--tabs) + var(--safe-b) + 24px);transform:translate(-50%,24px);opacity:0;z-index:60;width:calc(100% - 28px);max-width:440px;
  display:flex;gap:12px;align-items:center;padding:16px 16px 16px 14px;border-radius:24px;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .3s;
  background:linear-gradient(160deg,rgba(255,255,255,.78),rgba(255,248,236,.62));border:1px solid rgba(255,255,255,.85);
  -webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 24px 50px -18px rgba(74,10,24,.5),0 2px 8px rgba(74,10,24,.08)}
.installpop.on{transform:translate(-50%,0);opacity:1}
.installpop .ip-ic{width:52px;height:52px;border-radius:14px;flex:none;box-shadow:0 4px 12px -4px rgba(74,10,24,.4)}
.installpop .ip-b{flex:1;min-width:0;padding-right:18px}
.installpop b{display:block;font-size:15.5px;font-weight:600}
.installpop span{display:block;font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-top:2px}
.installpop .ip-go{flex:none;height:40px;padding:0 18px;border-radius:20px;color:#fff;font-weight:600;font-size:14px;background:var(--grad-deep);box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 6px 14px -8px rgba(126,26,69,.8)}
.installpop .x{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--ink-2);background:rgba(31,21,13,.07)}
.installpop .x svg{width:14px;height:14px}
@media (prefers-reduced-motion:reduce){.installpop{transition:none}}

/* ================= dark mode: follows the phone, or the visitor's choice (html[data-theme]) ================= */
html[data-theme="dark"]{--sandal:#0B0A0D;--silk:#16141A;--paper:#0B0A0D;--card:#16141A;--line:#2A2730;--line-2:#201E25;
    --ink:#F7F5F2;--ink-2:#E4E1E6;--ink-3:#A9A6AE;--maroon-lt:#3A1626;--ambari-lt:#3A2A12;
    --sh:0 1px 0 rgba(255,255,255,.03),0 10px 26px -14px rgba(0,0,0,.8);--sh-lg:0 22px 44px -18px rgba(0,0,0,.9);
    --grad-soft:linear-gradient(120deg,rgba(233,188,99,.16),rgba(243,201,168,.14) 50%,rgba(229,139,180,.16))}
html[data-theme="dark"],html[data-theme="dark"] body{background:#000000}
html[data-theme="dark"] #app{background:var(--sandal)}
html[data-theme="dark"] .top{background:linear-gradient(180deg,rgba(29,20,32,.78),rgba(18,11,20,.62))!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.06),0 10px 24px -20px #000!important}
html[data-theme="dark"] .pill,html[data-theme="dark"] .top .back{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important;color:var(--ink)!important}
html[data-theme="dark"] .pill{background:linear-gradient(rgba(36,25,40,.9),rgba(36,25,40,.9)) padding-box,linear-gradient(110deg,#E9BC63,#F3C9A8 45%,#E58BB4 75%,#B3316B) border-box!important;border-color:transparent!important}
html[data-theme="dark"] .pill svg{color:#F3C9A8}
html[data-theme="dark"] .tabs{background:linear-gradient(180deg,rgba(40,28,44,.72),rgba(24,15,27,.62))!important;border-color:rgba(255,255,255,.1)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 40px -16px #000!important}
html[data-theme="dark"] .tabs a.on{color:#F3C9A8}
html[data-theme="dark"] .top .bt small,html[data-theme="dark"] .sec-h a,html[data-theme="dark"] .yatri small{background:var(--grad-head);-webkit-background-clip:text;background-clip:text}
html[data-theme="dark"] .chip{background:#24212A;color:var(--ink-2)}
html[data-theme="dark"] .ann.info{background:#2A2112;color:#F2DDB0;border-color:#4A3A1C}
html[data-theme="dark"] .ann.traffic{background:#2E1C10;color:#F3CFA4;border-color:#553419}
html[data-theme="dark"] .ann.crit{background:#3A1219;color:#F7C3C9;border-color:#6A2230}
html[data-theme="dark"] .filters button:not(.on),html[data-theme="dark"] .search,html[data-theme="dark"] .locbar,html[data-theme="dark"] .days button:not(.on),html[data-theme="dark"] .badge,html[data-theme="dark"] .act{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.55),rgba(229,139,180,.5)) border-box!important;color:var(--ink-2)}
html[data-theme="dark"] .act{color:#F3C9A8}
html[data-theme="dark"] .act.pri{color:#fff;background:var(--grad-deep)!important}
html[data-theme="dark"] .search input{color:var(--ink)}
html[data-theme="dark"] .badge.tk{color:#F2C98A}
html[data-theme="dark"] .badge.fr{color:#8FDCB2}
html[data-theme="dark"] .st.ok,html[data-theme="dark"] .st.ok b{color:#5FD08F}
html[data-theme="dark"] .st.bad b{color:#FF8A8A}
html[data-theme="dark"] .tile .ti{color:#3A0D1E}
html[data-theme="dark"] .yatri .yb{background:linear-gradient(180deg,#16141A,#24161F)}
html[data-theme="dark"] .closure{background:#16141A;border-color:#6A2230}
html[data-theme="dark"] .closure .ch{background:#3A1219}
html[data-theme="dark"] .closure li{border-color:#2A2730}
html[data-theme="dark"] .freebox{background:#13281D;color:#B8E8CC}
html[data-theme="dark"] .dd.no{background:#2A1419;border-color:#4A2330}
html[data-theme="dark"] .ev.star{background:linear-gradient(180deg,#16141A,#26181C)}
html[data-theme="dark"] .num .nn,html[data-theme="dark"] .gt,html[data-theme="dark"] .row .rb b,html[data-theme="dark"] .pcard .pc b{color:var(--ink)}
html[data-theme="dark"] .sheet .sh,html[data-theme="dark"] .ch-panel,html[data-theme="dark"] .ch-sheet .ch-panel{background:#16141A;color:var(--ink)}
html[data-theme="dark"] .mapchips button{background:rgba(29,20,32,.78);border-color:rgba(255,255,255,.12);color:var(--ink)}
html[data-theme="dark"] .locate{background:rgba(29,20,32,.85);border-color:rgba(255,255,255,.12);color:#F3C9A8}
html[data-theme="dark"] .upsheet{background:var(--sandal)}
html[data-theme="dark"] .upsheet .grab{background:#4A3A50}
html[data-theme="dark"] .leaflet-tile-pane{filter:invert(1) hue-rotate(185deg) brightness(.82) contrast(.92) saturate(.7)}
html[data-theme="dark"] .leaflet-container{background:#1a1420}
html[data-theme="dark"] .installpop{background:linear-gradient(160deg,rgba(44,30,48,.82),rgba(24,15,27,.72));border-color:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 24px 50px -18px #000}
html[data-theme="dark"] .installpop .x{background:rgba(255,255,255,.1);color:var(--ink)}
html[data-theme="dark"] .gi + .gi::before{background:#2A2730}
html[data-theme="dark"] .foot .f-logos img{box-shadow:0 0 0 1px #2A2730}
html[data-theme="dark"] .tmap{background:linear-gradient(160deg,#241a28,#1a1420)}
html[data-theme="dark"] img{filter:brightness(.94)}
html[data-theme="dark"] .row .rb .st b,html[data-theme="dark"] .gb .st b{display:inline;font-size:inherit}
html[data-theme="dark"] .btn.sec{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.6),rgba(229,139,180,.55)) border-box;border:1px solid transparent;color:#F3C9A8}
html[data-theme="dark"] .tabs a.on .ic{color:#F3C9A8;background:rgba(243,201,168,.12);box-shadow:inset 0 0 0 1px rgba(243,201,168,.22)}
html[data-theme="dark"] .tabs a{color:#B7A796}
html[data-theme="dark"] .ch-panel{background:var(--sandal)}
html[data-theme="dark"] .ch-switch{background:var(--silk);border-color:var(--line)}
html[data-theme="dark"] .ch-switch button{border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .ch-switch button[aria-pressed="true"]{background:rgba(243,201,168,.14);border-color:rgba(243,201,168,.5)}
html[data-theme="dark"] .ch-switch button b{color:var(--ink)}
html[data-theme="dark"] .ch-t{background:var(--silk);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .ch-t a{color:#F3C9A8}
html[data-theme="dark"] .ch-chips button{background:#24212A;color:var(--ink-2)}
html[data-theme="dark"] .ch-form{background:var(--silk);border-color:var(--line)}
html[data-theme="dark"] .ch-form input{background:var(--sandal);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .ch-duo{background:#24212A}
html[data-theme="dark"] .closure .ch small{color:#FF8A8A}
html[data-theme="dark"] .sheet .sh{background:var(--silk);color:var(--ink)}
html[data-theme="dark"] .sheet .opt{background:var(--sandal);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] .sheet .opt.on{border-color:#F3C9A8}
html[data-theme="dark"] .here{background:#24212A}
html[data-theme="dark"] .p-body{background:var(--sandal)}
html[data-theme="dark"] .fact,html[data-theme="dark"] .facts,html[data-theme="dark"] .now{background:var(--silk);border-color:var(--line)}
html[data-theme="dark"] .ann b,html[data-theme="dark"] .ann{color:inherit}
html[data-theme="dark"] .sos-big{background:linear-gradient(135deg,#B3202B,#7A0F1E)}
html[data-theme="dark"] .num{background:var(--silk)}
html[data-theme="dark"] .leaflet-popup-content-wrapper,html[data-theme="dark"] .leaflet-popup-tip{background:#241A28;color:var(--ink)}
@media (prefers-color-scheme:dark){
  html:not([data-theme="light"]){--sandal:#0B0A0D;--silk:#16141A;--paper:#0B0A0D;--card:#16141A;--line:#2A2730;--line-2:#201E25;
    --ink:#F7F5F2;--ink-2:#E4E1E6;--ink-3:#A9A6AE;--maroon-lt:#3A1626;--ambari-lt:#3A2A12;
    --sh:0 1px 0 rgba(255,255,255,.03),0 10px 26px -14px rgba(0,0,0,.8);--sh-lg:0 22px 44px -18px rgba(0,0,0,.9);
    --grad-soft:linear-gradient(120deg,rgba(233,188,99,.16),rgba(243,201,168,.14) 50%,rgba(229,139,180,.16))}
  html:not([data-theme="light"]),html:not([data-theme="light"]) body{background:#000000}
  html:not([data-theme="light"]) #app{background:var(--sandal)}
  html:not([data-theme="light"]) .top{background:linear-gradient(180deg,rgba(29,20,32,.78),rgba(18,11,20,.62))!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.06),0 10px 24px -20px #000!important}
  html:not([data-theme="light"]) .pill,html:not([data-theme="light"]) .top .back{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important;color:var(--ink)!important}
  html:not([data-theme="light"]) .pill{background:linear-gradient(rgba(36,25,40,.9),rgba(36,25,40,.9)) padding-box,linear-gradient(110deg,#E9BC63,#F3C9A8 45%,#E58BB4 75%,#B3316B) border-box!important;border-color:transparent!important}
  html:not([data-theme="light"]) .pill svg{color:#F3C9A8}
  html:not([data-theme="light"]) .tabs{background:linear-gradient(180deg,rgba(40,28,44,.72),rgba(24,15,27,.62))!important;border-color:rgba(255,255,255,.1)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 40px -16px #000!important}
  html:not([data-theme="light"]) .tabs a.on{color:#F3C9A8}
  html:not([data-theme="light"]) .top .bt small,html:not([data-theme="light"]) .sec-h a,html:not([data-theme="light"]) .yatri small{background:var(--grad-head);-webkit-background-clip:text;background-clip:text}
  html:not([data-theme="light"]) .chip{background:#24212A;color:var(--ink-2)}
  html:not([data-theme="light"]) .ann.info{background:#2A2112;color:#F2DDB0;border-color:#4A3A1C}
  html:not([data-theme="light"]) .ann.traffic{background:#2E1C10;color:#F3CFA4;border-color:#553419}
  html:not([data-theme="light"]) .ann.crit{background:#3A1219;color:#F7C3C9;border-color:#6A2230}
  html:not([data-theme="light"]) .filters button:not(.on),html:not([data-theme="light"]) .search,html:not([data-theme="light"]) .locbar,html:not([data-theme="light"]) .days button:not(.on),html:not([data-theme="light"]) .badge,html:not([data-theme="light"]) .act{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.55),rgba(229,139,180,.5)) border-box!important;color:var(--ink-2)}
  html:not([data-theme="light"]) .act{color:#F3C9A8}
  html:not([data-theme="light"]) .act.pri{color:#fff;background:var(--grad-deep)!important}
  html:not([data-theme="light"]) .search input{color:var(--ink)}
  html:not([data-theme="light"]) .badge.tk{color:#F2C98A}
  html:not([data-theme="light"]) .badge.fr{color:#8FDCB2}
  html:not([data-theme="light"]) .st.ok,html:not([data-theme="light"]) .st.ok b{color:#5FD08F}
  html:not([data-theme="light"]) .st.bad b{color:#FF8A8A}
  html:not([data-theme="light"]) .tile .ti{color:#3A0D1E}
  html:not([data-theme="light"]) .yatri .yb{background:linear-gradient(180deg,#16141A,#24161F)}
  html:not([data-theme="light"]) .closure{background:#16141A;border-color:#6A2230}
  html:not([data-theme="light"]) .closure .ch{background:#3A1219}
  html:not([data-theme="light"]) .closure li{border-color:#2A2730}
  html:not([data-theme="light"]) .freebox{background:#13281D;color:#B8E8CC}
  html:not([data-theme="light"]) .dd.no{background:#2A1419;border-color:#4A2330}
  html:not([data-theme="light"]) .ev.star{background:linear-gradient(180deg,#16141A,#26181C)}
  html:not([data-theme="light"]) .num .nn,html:not([data-theme="light"]) .gt,html:not([data-theme="light"]) .row .rb b,html:not([data-theme="light"]) .pcard .pc b{color:var(--ink)}
  html:not([data-theme="light"]) .sheet .sh,html:not([data-theme="light"]) .ch-panel,html:not([data-theme="light"]) .ch-sheet .ch-panel{background:#16141A;color:var(--ink)}
  html:not([data-theme="light"]) .mapchips button{background:rgba(29,20,32,.78);border-color:rgba(255,255,255,.12);color:var(--ink)}
  html:not([data-theme="light"]) .locate{background:rgba(29,20,32,.85);border-color:rgba(255,255,255,.12);color:#F3C9A8}
  html:not([data-theme="light"]) .upsheet{background:var(--sandal)}
  html:not([data-theme="light"]) .upsheet .grab{background:#4A3A50}
  html:not([data-theme="light"]) .leaflet-tile-pane{filter:invert(1) hue-rotate(185deg) brightness(.82) contrast(.92) saturate(.7)}
  html:not([data-theme="light"]) .leaflet-container{background:#1a1420}
  html:not([data-theme="light"]) .installpop{background:linear-gradient(160deg,rgba(44,30,48,.82),rgba(24,15,27,.72));border-color:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 24px 50px -18px #000}
  html:not([data-theme="light"]) .installpop .x{background:rgba(255,255,255,.1);color:var(--ink)}
  html:not([data-theme="light"]) .gi + .gi::before{background:#2A2730}
  html:not([data-theme="light"]) .foot .f-logos img{box-shadow:0 0 0 1px #2A2730}
  html:not([data-theme="light"]) .tmap{background:linear-gradient(160deg,#241a28,#1a1420)}
  html:not([data-theme="light"]) img{filter:brightness(.94)}
  html:not([data-theme="light"]) .row .rb .st b,html:not([data-theme="light"]) .gb .st b{display:inline;font-size:inherit}
  html:not([data-theme="light"]) .btn.sec{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.6),rgba(229,139,180,.55)) border-box;border:1px solid transparent;color:#F3C9A8}
  html:not([data-theme="light"]) .tabs a.on .ic{color:#F3C9A8;background:rgba(243,201,168,.12);box-shadow:inset 0 0 0 1px rgba(243,201,168,.22)}
  html:not([data-theme="light"]) .tabs a{color:#B7A796}
  html:not([data-theme="light"]) .ch-panel{background:var(--sandal)}
  html:not([data-theme="light"]) .ch-switch{background:var(--silk);border-color:var(--line)}
  html:not([data-theme="light"]) .ch-switch button{border-color:var(--line);color:var(--ink)}
  html:not([data-theme="light"]) .ch-switch button[aria-pressed="true"]{background:rgba(243,201,168,.14);border-color:rgba(243,201,168,.5)}
  html:not([data-theme="light"]) .ch-switch button b{color:var(--ink)}
  html:not([data-theme="light"]) .ch-t{background:var(--silk);border-color:var(--line);color:var(--ink)}
  html:not([data-theme="light"]) .ch-t a{color:#F3C9A8}
  html:not([data-theme="light"]) .ch-chips button{background:#24212A;color:var(--ink-2)}
  html:not([data-theme="light"]) .ch-form{background:var(--silk);border-color:var(--line)}
  html:not([data-theme="light"]) .ch-form input{background:var(--sandal);border-color:var(--line);color:var(--ink)}
  html:not([data-theme="light"]) .ch-duo{background:#24212A}
  html:not([data-theme="light"]) .closure .ch small{color:#FF8A8A}
  html:not([data-theme="light"]) .sheet .sh{background:var(--silk);color:var(--ink)}
  html:not([data-theme="light"]) .sheet .opt{background:var(--sandal);border-color:var(--line);color:var(--ink)}
  html:not([data-theme="light"]) .sheet .opt.on{border-color:#F3C9A8}
  html:not([data-theme="light"]) .here{background:#24212A}
  html:not([data-theme="light"]) .p-body{background:var(--sandal)}
  html:not([data-theme="light"]) .fact,html:not([data-theme="light"]) .facts,html:not([data-theme="light"]) .now{background:var(--silk);border-color:var(--line)}
  html:not([data-theme="light"]) .ann b,html:not([data-theme="light"]) .ann{color:inherit}
  html:not([data-theme="light"]) .sos-big{background:linear-gradient(135deg,#B3202B,#7A0F1E)}
  html:not([data-theme="light"]) .num{background:var(--silk)}
  html:not([data-theme="light"]) .leaflet-popup-content-wrapper,html:not([data-theme="light"]) .leaflet-popup-tip{background:#241A28;color:var(--ink)}
}



/* ---- hero: let the illuminated palace breathe; one slim glass strip for the countdown ---- */
.hero.grand{min-height:330px;align-items:flex-end}
.hero.grand img{object-position:center 30%}
.hero.grand::after{background:linear-gradient(0deg,rgba(23,11,32,.95) 0%,rgba(23,11,32,.72) 30%,rgba(23,11,32,.25) 50%,rgba(23,11,32,0) 66%),
  linear-gradient(180deg,rgba(23,11,32,.55) 0%,rgba(23,11,32,0) 22%)}
.hero.grand .hc{padding:16px 16px 22px;width:100%}
.hero.grand h1{font-size:28px;margin:4px 0 12px;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.hero.grand .hc{min-height:330px;display:flex;flex-direction:column;justify-content:flex-end}
.hero.grand .hc > small{margin-bottom:auto;padding-top:2px;text-shadow:none}
.finale.slim{display:flex;align-items:center;gap:10px;margin:0;padding:9px 12px;border-radius:16px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;
  background:rgba(255,253,248,.10);border:1px solid rgba(248,223,166,.32)}
.finale.slim .fl{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;flex:none}
.finale.slim .fl svg{width:13px;height:13px}
.finale.slim .cdn{flex:none;font-size:13px;color:#FFF0C9;font-weight:500;padding-left:10px;border-left:1px solid rgba(248,223,166,.3)}
.finale.slim .cdn b{font-family:var(--display);font-weight:400;font-size:19px;margin-right:1px;background:var(--grad-head);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.finale.slim .fd{margin:0 0 0 auto;font-size:11.5px;color:rgba(255,240,201,.82);overflow:hidden;text-overflow:ellipsis;letter-spacing:0;text-transform:none}
.finale.slim{gap:8px;padding:9px 11px}
.finale.slim .fl{letter-spacing:.06em;font-size:11px}
.finale.slim .cdn{padding-left:8px}
@media (max-width:370px){.finale.slim .fd{display:none}}

.row .rb .st b,.gb .st b{display:inline;font-size:inherit;margin:0}
.row .rb .st{margin-top:4px}

/* appearance switch (language sheet) */
.sh h3.ap{margin-top:18px}
.seg3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;border-radius:16px;background:var(--line-2)}
.seg3 button{height:40px;border-radius:12px;font-size:13.5px;font-weight:500;color:var(--ink-2);display:flex;align-items:center;justify-content:center;gap:6px}
.seg3 button svg{width:16px;height:16px}
.seg3 button.on{background:var(--silk);color:var(--ink);font-weight:600;box-shadow:0 2px 8px -3px rgba(31,21,13,.35)}

html[data-theme="dark"] .row .rb .st.ok b,html[data-theme="dark"] .gb .st.ok b{color:#5FD08F}
html[data-theme="dark"] .row .rb .st.bad b,html[data-theme="dark"] .gb .st.bad b{color:#FF8A8A}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .row .rb .st.ok b,html:not([data-theme="light"]) .gb .st.ok b{color:#5FD08F}html:not([data-theme="light"]) .row .rb .st.bad b,html:not([data-theme="light"]) .gb .st.bad b{color:#FF8A8A}}

/* ---- grouped rows: icon | text | round Directions, optically balanced ---- */
.gi{align-items:center;gap:12px;padding:13px 14px 13px 14px}
.gic{align-self:flex-start;margin-top:1px}
.gb{gap:1px}
.gb .acts{margin-top:7px}
.act{height:32px;padding:0 12px;border-radius:16px;font-size:13px;gap:5px}
.act svg{width:14px;height:14px}
.gi-go{flex:none;align-self:center;width:52px;display:flex;flex-direction:column;align-items:center;gap:4px;color:#7E1A45;text-decoration:none}
.gi-go svg{width:44px;height:44px;padding:12px;box-sizing:border-box;border-radius:50%;color:#fff;background:var(--grad-deep);
  box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 6px 14px -7px rgba(126,26,69,.85);transform:none}
.gi-go svg path{transform:translate(-.6px,.6px)}
.gi-go small{font-size:10.5px;font-weight:600;letter-spacing:0;line-height:1;white-space:nowrap}
.gi-go:active svg{transform:scale(.94)}
.gi + .gi::before{left:66px;right:14px}
html[data-theme="dark"] .gi-go{color:#F3C9A8}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .gi-go{color:#F3C9A8}}

/* ================= one listing card everywhere (programme-card anatomy) ================= */
.ev{gap:14px;padding:14px 14px 14px 12px;border-radius:20px;align-items:stretch}
.ev .tm{width:58px;padding-top:2px}
.ev .tm.lead-ic{width:48px;display:flex;justify-content:center;padding-top:0}
.ev .tm.lead-th{width:64px;padding-top:0}
.ev .tm.lead-th img,.ev .tm.lead-th .ph{width:64px;height:64px;border-radius:16px;object-fit:cover;display:block}
.ev .tm.lead-th a{display:block}
.ev .tm .gic{width:44px;height:44px}
.ev .tm .pi{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:18px;color:#fff;background:linear-gradient(140deg,#1F4E79,#0F2840);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.ev .eb{padding-left:14px;display:flex;flex-direction:column;gap:0}
.ev .eb .et{display:block;font-size:16px;font-weight:600;line-height:1.3;color:var(--ink);letter-spacing:-.005em}
.ev .eb p{margin:3px 0 0;font-size:13px;color:var(--ink-2);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.ev .eb .st{margin-top:4px}
.ev .eb .st b,.ev .eb .st.ok b,.ev .eb .st.bad b{display:inline;font-size:inherit}
.ev .eb .pchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.ev .eb .vn{margin-top:10px;flex-wrap:wrap;row-gap:8px}
.ev .eb .vn span{flex:1;min-width:0;font-size:12.5px;line-height:1.35}
.ev .eb .vn .vb{display:flex;gap:8px;margin-left:auto;flex:none}
.ev .btn.sm{height:40px;padding:0 16px;border-radius:14px;font-size:14px;gap:8px}
.ev .btn.sm svg{width:17px;height:17px}
.btn.callp{color:#7E1A45;font-weight:600;border:1px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(110deg,rgba(233,188,99,.85),rgba(229,139,180,.75)) border-box}
.ev.star{border-color:transparent;background:linear-gradient(180deg,var(--silk),#FBF1E2) padding-box,linear-gradient(140deg,rgba(233,188,99,.85),rgba(243,201,168,.6),rgba(229,139,180,.75)) border-box;border:1px solid transparent}
.ev.star .eb{border-left:2px solid transparent;border-image:linear-gradient(180deg,#E9BC63,#E58BB4,#B3316B) 1}
.list .ev + .ev{margin-top:0}
.upsheet .list{padding:0 16px}

html[data-theme="dark"] .btn.callp{color:#F3C9A8;background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.6),rgba(229,139,180,.55)) border-box}
html[data-theme="dark"] .ev.star{background:linear-gradient(180deg,#16141A,#26181C) padding-box,linear-gradient(140deg,rgba(233,188,99,.6),rgba(229,139,180,.5)) border-box}
html[data-theme="dark"] .ev .eb .et{color:var(--ink)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .btn.callp{color:#F3C9A8;background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.6),rgba(229,139,180,.55)) border-box}html:not([data-theme="light"]) .ev.star{background:linear-gradient(180deg,#16141A,#26181C) padding-box,linear-gradient(140deg,rgba(233,188,99,.6),rgba(229,139,180,.5)) border-box}html:not([data-theme="light"]) .ev .eb .et{color:var(--ink)}}
/* footer reflow: location keeps a readable width; buttons drop to their own line, right-aligned, when needed */
.ev .eb .vn{flex-wrap:wrap}
.ev .eb .vn span{flex:1 1 150px;min-width:150px}
.ev .eb .vn .vb{flex-wrap:wrap;justify-content:flex-end;max-width:100%;margin-left:auto}
.ev .btn.sm{max-width:100%;white-space:nowrap}
@media (max-width:360px){.ev .eb .vn span{min-width:120px;flex-basis:120px}}

/* dark: red only for emergencies (SOS, critical alerts, closures, don'ts, medical); other accents use champagne/peach */
html[data-theme="dark"] .st.bad b,.row .rb .st.bad b,.gb .st.bad b,.ev .eb .st.bad b{color:#F2B880}
html[data-theme="dark"] .st.bad{color:var(--ink-3)}
html[data-theme="dark"] .pushcard svg{color:#F3C9A8}
html[data-theme="dark"] .nn small.live{color:#F3C9A8}
html[data-theme="dark"] .nn small.live::before{background:#F2B880;animation:none;box-shadow:0 0 0 3px rgba(242,184,128,.18)}
html[data-theme="dark"] .ml svg,.ev .eb .vn span svg,.nn span svg{color:#E9BC63}
html[data-theme="dark"] .gic,.ev .tm .pi{filter:brightness(1.35) saturate(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 0 0 1px rgba(255,255,255,.06)}
html[data-theme="dark"] .gic.medical{filter:none}
html[data-theme="dark"] .ph{filter:brightness(1.3)}
html[data-theme="dark"] .shuttle{background:var(--silk);border:1px solid var(--line);color:var(--ink)}
html[data-theme="dark"] .shuttle .si{background:var(--grad-head);color:#3A0D1E}
html[data-theme="dark"] .shuttle span{color:var(--ink-2)}
html[data-theme="dark"] .row .ico{background:var(--grad-soft)!important;color:#F3C9A8!important}
html[data-theme="dark"] .tile.t-amen .ti,.tile.t-sos .ti{color:#3A0D1E}
html[data-theme="dark"] .days button.today:not(.on){border-color:#F3C9A8;color:#F3C9A8}
html[data-theme="dark"] .tklink{color:#F3C9A8}
html[data-theme="dark"] .ann.traffic svg,.ann.info svg{color:#F2C98A}
html[data-theme="dark"] .finale .fl svg{color:#F3C9A8}
html[data-theme="dark"] .here .hi{background:var(--grad-head)}
html[data-theme="dark"] .locbar svg,.note svg{color:#E9BC63}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .st.bad b,.row .rb .st.bad b,.gb .st.bad b,.ev .eb .st.bad b{color:#F2B880}html:not([data-theme="light"]) .st.bad{color:var(--ink-3)}html:not([data-theme="light"]) .pushcard svg{color:#F3C9A8}html:not([data-theme="light"]) .nn small.live{color:#F3C9A8}html:not([data-theme="light"]) .nn small.live::before{background:#F2B880;animation:none;box-shadow:0 0 0 3px rgba(242,184,128,.18)}html:not([data-theme="light"]) .ml svg,.ev .eb .vn span svg,.nn span svg{color:#E9BC63}html:not([data-theme="light"]) .gic,.ev .tm .pi{filter:brightness(1.35) saturate(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 0 0 1px rgba(255,255,255,.06)}html:not([data-theme="light"]) .gic.medical{filter:none}html:not([data-theme="light"]) .ph{filter:brightness(1.3)}html:not([data-theme="light"]) .shuttle{background:var(--silk);border:1px solid var(--line);color:var(--ink)}html:not([data-theme="light"]) .shuttle .si{background:var(--grad-head);color:#3A0D1E}html:not([data-theme="light"]) .shuttle span{color:var(--ink-2)}html:not([data-theme="light"]) .row .ico{background:var(--grad-soft)!important;color:#F3C9A8!important}html:not([data-theme="light"]) .tile.t-amen .ti,.tile.t-sos .ti{color:#3A0D1E}html:not([data-theme="light"]) .days button.today:not(.on){border-color:#F3C9A8;color:#F3C9A8}html:not([data-theme="light"]) .tklink{color:#F3C9A8}html:not([data-theme="light"]) .ann.traffic svg,.ann.info svg{color:#F2C98A}html:not([data-theme="light"]) .finale .fl svg{color:#F3C9A8}html:not([data-theme="light"]) .here .hi{background:var(--grad-head)}html:not([data-theme="light"]) .locbar svg,.note svg{color:#E9BC63}}
.gic.transport{background:#215B44}
.gic.heritage{background:#7A5208}.gic.faith{background:#8A4B06}.gic.nature{background:#2F6B47}.gic.family{background:#4B2E83}.gic.market{background:#9A3F12}.gic.dasara{background:#7A1F2B}
/* pills over photos: dark glass, white text, in both modes */
.pcard .im .chip,.p-hero .chip,.ccard .th .chip{background:rgba(23,11,32,.52)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22);
  -webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%);box-shadow:0 2px 10px -4px rgba(0,0,0,.5);font-weight:600}
.pcard .im .chip svg,.p-hero .chip svg{color:#F3C9A8}

/* ================= listing card v2: fixed lead column + round Navigate on the right ================= */
.ev{align-items:stretch;gap:0;padding:14px 12px 14px 12px}
.ev .tm,.ev .tm.lead-ic,.ev .tm.lead-th{width:64px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:2px;text-align:center}
.ev .tm.lead-th,.ev .tm.lead-ic{padding-top:0}
.ev .tm.lead-th img,.ev .tm.lead-th .ph,.ev .tm.lead-th a{width:64px;height:64px;border-radius:16px}
.ev .tm.lead-ic .gic,.ev .tm.lead-ic .pi{width:48px;height:48px;margin-top:2px}
.ev .tm.lead-ic .gic svg{width:22px;height:22px}
.ev .tm b{font-size:15px;line-height:1.25;white-space:nowrap}
.ev .tm small{font-size:11.5px;margin-top:2px}
.ev .eb{flex:1;min-width:0;margin-left:12px;padding-left:12px;padding-right:6px}
.ev .eb .vn{margin-top:8px}
.ev .eb .vn span{flex:1 1 auto;min-width:0}
.ev .eb .vn .vb{margin-left:0;justify-content:flex-start}
.ev .eb .tklink{align-self:flex-start}
.ev-go{flex:none;align-self:center;width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--ink-2)}
.ev-go .ring{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--grad-deep);
  box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 7px 16px -8px rgba(126,26,69,.85);transition:transform .12s ease}
.ev-go .ring svg{width:20px;height:20px;transform:translate(-1px,1px)}
.ev-go small{font-size:11px;font-weight:600;letter-spacing:.01em;line-height:1.1;white-space:nowrap;color:var(--ink-2)}
.ev-go:active .ring{transform:scale(.93)}
.ev.haspic{margin-top:0}

html[data-theme="dark"] .ev-go small{color:#E8D9C6}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ev-go small{color:#E8D9C6}}
/* close buttons on notices */
.ann,.pushcard{position:relative}
.ann{padding-right:44px}
.ann.go{cursor:pointer}
.ann-x{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:currentColor;opacity:.7;background:rgba(31,21,13,.06)}
.ann-x svg{width:13px;height:13px}
.ann-x:hover,.ann-x:focus-visible{opacity:1}
.pushcard{padding-right:44px}
.pushcard .ann-x{color:var(--ink-2);background:rgba(31,21,13,.06)}
.ann.bye,.pushcard.bye{opacity:0;transform:scale(.97);transition:opacity .2s,transform .2s}

html[data-theme="dark"] .ann-x,html[data-theme="dark"] .pushcard .ann-x{background:rgba(255,html[data-theme="dark"] 255,html[data-theme="dark"] 255,html[data-theme="dark"] .08)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ann-x,html:not([data-theme="light"]) .pushcard .ann-x{background:rgba(255,html:not([data-theme="light"]) 255,html:not([data-theme="light"]) 255,html:not([data-theme="light"]) .08)}}
/* hero edge: modern Dasara-gradient hairline instead of the dotted zari strip */
.hero.grand::before{height:2px;left:18px;right:18px;bottom:0;top:auto;border-radius:2px;background:var(--grad-head);background-size:auto;opacity:.95;
  box-shadow:0 0 14px 1px rgba(233,188,99,.55),0 0 28px 2px rgba(229,139,180,.25)}
.hero.grand{box-shadow:inset 0 0 0 1px rgba(248,223,166,.16),var(--sh-lg)}
/* hero: full photograph (no cut-out edges) */
.hero.grand img{object-position:center 42%}
/* quick tiles: crisp white icons on the deep Dasara gradient */
.tile .ti,.tile.t-places .ti,.tile.t-park .ti,.tile.t-tick .ti,.tile.t-near .ti,.tile.t-amen .ti,.tile.t-sos .ti{background:var(--grad-deep)!important;color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 6px 14px -8px rgba(126,26,69,.8)!important}
.tile .ti svg{stroke-width:2.1;width:22px;height:22px}
.tile.t-dasara .ti{background:var(--grad-head)!important;color:#3A0D1E!important;box-shadow:0 0 0 3px rgba(248,223,166,.18),0 6px 14px -8px rgba(233,188,99,.8)!important}
.tile{color:var(--ink)}
/* gate buttons stay light with dark text in every mode (the gate is always a night scene) */
.gate .langs button{color:#1F150D!important}
.gate .langs button small{color:#8E6416!important}
/* × on the alerts card must not inherit the card's main button style */
.pushcard button.ann-x{position:absolute;top:8px;right:8px;width:28px;height:28px;padding:0;border-radius:50%;background:rgba(31,21,13,.06);color:var(--ink-2);box-shadow:none;font-size:0}
.pushcard{padding-right:42px}

html[data-theme="dark"] .pushcard button.ann-x{background:rgba(255,255,255,.08);color:var(--ink-2)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .pushcard button.ann-x{background:rgba(255,255,255,.08);color:var(--ink-2)}}
/* Yatri Mitra: theme action, gradient hairline */
.yatri .btn{background:var(--grad-deep)!important;color:#fff;box-shadow:inset 0 1px 0 rgba(255,240,201,.35),0 8px 18px -10px rgba(126,26,69,.85)!important}
.yatri .yb{border-top:0;position:relative}
.yatri .yb::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--grad-head)}
/* SOS: modern emergency red, the one deliberately loud element */
.sos{background:linear-gradient(180deg,#F04B4B 0%,#D3262E 100%)!important;color:#fff;font-weight:700;letter-spacing:.05em;border:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 6px 16px -6px rgba(211,38,46,.7)!important}
.sos svg{width:15px;height:15px}
.sos:active{filter:brightness(.92)}
.sos-big{background:linear-gradient(150deg,#F04B4B 0%,#D3262E 55%,#A9161F 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 18px 36px -16px rgba(211,38,46,.75);border-radius:24px}
.sos-big .cl{background:#fff;color:#D3262E;box-shadow:0 6px 16px -6px rgba(0,0,0,.4)}
.critbar{background:linear-gradient(135deg,rgba(240,75,75,.95),rgba(190,30,38,.93))!important}

html[data-theme="dark"] .sos-big{background:linear-gradient(150deg,#F04B4B 0%,#D3262E 55%,#A9161F 100%)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .sos-big{background:linear-gradient(150deg,#F04B4B 0%,#D3262E 55%,#A9161F 100%)}}

/* happening now: live-stream pill + round Navigate */
.nn{align-items:center;padding:8px 8px 8px 8px;cursor:pointer}
.nn .nb{flex:1;min-width:0}
.nn .ev-go{width:60px}
.livep{display:inline-flex;align-items:center;gap:7px;height:28px;margin-top:7px;padding:0 12px 0 10px;border-radius:14px;font-size:12.5px;font-weight:600;color:#7E1A45;text-decoration:none;align-self:flex-start;
  border:1px solid transparent;background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(110deg,#E9BC63,#E58BB4 70%,#B3316B) border-box}
.livep i{width:8px;height:8px;border-radius:50%;background:#F04B4B;box-shadow:0 0 0 0 rgba(240,75,75,.6);animation:pulse 1.6s infinite}
.ev .eb .livep{margin-top:9px}
@media (prefers-reduced-motion:reduce){.livep i{animation:none}}

html[data-theme="dark"] .livep{color:#F3C9A8;background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.7),rgba(229,139,180,.65)) border-box}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .livep{color:#F3C9A8;background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.7),rgba(229,139,180,.65)) border-box}}
/* Ask Gajju & Ammu tile: two clear face avatars */
.tile .ti.duo{width:auto!important;height:48px;background:none!important;box-shadow:none!important;display:flex;align-items:center;justify-content:center;overflow:visible;gap:0}
.tile .ti.duo img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:50% 6%;margin:0;background:#FFF6E4;
  box-shadow:0 0 0 2px #E9BC63,0 4px 10px -4px rgba(0,0,0,.45)}
.tile .ti.duo img + img{margin-left:-10px;background:#FBE7EF;box-shadow:0 0 0 2px #E58BB4,0 4px 10px -4px rgba(0,0,0,.45)}
.nn .ev-go small{text-transform:none;letter-spacing:.01em;font-size:11px;font-weight:600;color:var(--ink-2)}
.nn .ev-go small::before{content:none}

html[data-theme="dark"] .nn .ev-go small{color:#E8D9C6}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .nn .ev-go small{color:#E8D9C6}}

/* ================= notices: clean card + severity accent (no tinted fills) ================= */
.ann,.ann.info,.ann.traffic,.ann.crit{background:var(--silk)!important;border:1px solid var(--line)!important;color:var(--ink)!important;box-shadow:var(--sh);position:relative;overflow:hidden;padding-left:18px}
.ann::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--acc,#C8952F)}
.ann.info{--acc:#C8952F}.ann.traffic{--acc:#D9822B}.ann.crit{--acc:#D3262E}
.ann > svg{color:var(--acc,#C8952F)!important}
.ann small{color:var(--acc,#C8952F)!important}
.ann .ann-x{color:var(--ink-3)}

/* ================= live now ================= */
.livesec .sec-h h2{display:flex;align-items:center;gap:9px}
.ldot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#F04B4B;box-shadow:0 0 0 0 rgba(240,75,75,.55);animation:pulse 1.6s infinite;flex:none}
.lcard{flex:none;width:262px;border-radius:20px;overflow:hidden;background:var(--silk);box-shadow:var(--sh);text-decoration:none;color:var(--ink);border:1px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(140deg,rgba(233,188,99,.8),rgba(229,139,180,.7)) border-box}
.lcard .lim{position:relative;height:148px;background:var(--night)}
.lcard .lim img{width:100%;height:100%;object-fit:cover}
.lcard .lim::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,11,32,.55),transparent 55%)}
.lbadge{position:absolute;left:10px;top:10px;z-index:1;display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.1em;color:#fff;
  background:rgba(211,38,46,.92);box-shadow:0 4px 12px -4px rgba(211,38,46,.8)}
.lbadge i{width:7px;height:7px;border-radius:50%;background:#fff;animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.25}}
.lplay{position:absolute;right:12px;bottom:12px;z-index:1;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.lplay svg{width:18px;height:18px;margin-left:2px}
.lcard .lb{padding:11px 13px 13px}
.lcard .lb b{display:block;font-size:15px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcard .lb small{display:block;font-size:12px;color:var(--ink-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}
.livecta{margin:14px 16px 0;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;text-decoration:none;color:var(--ink);box-shadow:var(--sh);border:1px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(140deg,rgba(233,188,99,.8),rgba(229,139,180,.7)) border-box}
.livecta > svg:first-child{width:22px;height:22px;color:#B3316B}
.livecta span{flex:1}.livecta b{display:block;font-size:15px}.livecta small{display:block;font-size:12px;color:var(--ink-3);letter-spacing:0}
.livecta > svg:last-child{width:18px;height:18px;color:var(--ink-3)}
/* footer links */
.flinks{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 10px}
.flinks a{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-radius:17px;font-size:12.5px;font-weight:600;color:var(--ink-2);text-decoration:none;border:1px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,linear-gradient(110deg,rgba(233,188,99,.7),rgba(229,139,180,.6)) border-box}
.flinks a svg{width:14px;height:14px}
.flinks .ldot{width:7px;height:7px}
@media (prefers-reduced-motion:reduce){.ldot,.lbadge i{animation:none}}

html[data-theme="dark"] .ann.info{--acc:#E9BC63}
html[data-theme="dark"] .ann.traffic{--acc:#F2B880}
html[data-theme="dark"] .ann.crit{--acc:#FF6B6B}
html[data-theme="dark"] .lcard,html[data-theme="dark"] .livecta{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(140deg,rgba(233,188,99,.6),rgba(229,139,180,.5)) border-box}
html[data-theme="dark"] .flinks a{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.55),rgba(229,139,180,.5)) border-box;color:var(--ink-2)}
html[data-theme="dark"] .livecta > svg:first-child{color:#F3C9A8}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ann.info{--acc:#E9BC63}html:not([data-theme="light"]) .ann.traffic{--acc:#F2B880}html:not([data-theme="light"]) .ann.crit{--acc:#FF6B6B}html:not([data-theme="light"]) .lcard,html:not([data-theme="light"]) .livecta{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(140deg,rgba(233,188,99,.6),rgba(229,139,180,.5)) border-box}html:not([data-theme="light"]) .flinks a{background:linear-gradient(#16141A,#16141A) padding-box,linear-gradient(110deg,rgba(233,188,99,.55),rgba(229,139,180,.5)) border-box;color:var(--ink-2)}html:not([data-theme="light"]) .livecta > svg:first-child{color:#F3C9A8}}
/* hero: Dasara-site palace cut-out over a designed night sky with a warm glow behind the domes */
.hero.grand{background:radial-gradient(70% 55% at 55% 62%,rgba(233,150,70,.42),rgba(233,150,70,0) 70%),linear-gradient(180deg,#100A28 0%,#2A0F2C 55%,#3A0E1E 100%)}
.hero.grand img{object-fit:cover;object-position:58% 100%;top:auto;height:100%}
.hero.grand::after{background:linear-gradient(0deg,rgba(23,11,32,.92) 0%,rgba(23,11,32,.55) 28%,rgba(23,11,32,0) 52%)!important}
.gate::before{background-color:#100A28;background-position:58% 70%;opacity:.55}

/* live strip: keep the 16px gutter when the row snaps; cards never look empty while a thumbnail loads */
.hscroll{scroll-padding-inline:16px}
.livesec .hscroll{padding-bottom:12px}
.lcard{width:min(272px,76vw)}
.lcard .lim{height:154px;background:url(img/palace-cut.webp) 58% 92%/150% auto no-repeat,radial-gradient(70% 70% at 55% 75%,rgba(233,150,70,.38),rgba(233,150,70,0) 70%),linear-gradient(180deg,#100A28,#3A0E1E)}
.lcard .lim img{position:absolute;inset:0;display:block}
.lcard .lb{padding:12px 14px 14px}

/* ================= outline pills (all pills and navigate buttons) =================
   A 1.5px Dasara-gradient hairline with coloured text and no fill. Selected states get a faint rose tint.
   SOS and the emergency call buttons stay solid red on purpose. */
:root{--pbg:var(--silk);--pfg:#8A2350;--ptint:rgba(179,49,107,.08);--pline:rgba(138,35,80,.28);--pring:linear-gradient(120deg,#C8952F,#E08A6A 45%,#C2487F 75%,#8A2350)}
html[data-theme="dark"]{--pbg:#16141A;--pfg:#F3C9A8;--ptint:rgba(229,139,180,.14);--pline:rgba(243,201,168,.38);--pring:linear-gradient(120deg,#E9BC63,#F3C9A8 45%,#E58BB4 80%,#C2487F)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]){--pbg:#16141A;--pfg:#F3C9A8;--ptint:rgba(229,139,180,.14);--pline:rgba(243,201,168,.38);--pring:linear-gradient(120deg,#E9BC63,#F3C9A8 45%,#E58BB4 80%,#C2487F)}}
.btn.pri,.pushcard button:not(.ann-x),.icon-btn:not(.light),.row .go-ic,.lot .go-ic,.filters button.on,.days button.on,.locbar button,.act.pri,.mapchips button.on,.installpop .ip-go,.ev-go .ring,.yatri .btn{position:relative;background:transparent!important;color:var(--pfg)!important;-webkit-text-fill-color:var(--pfg);box-shadow:none!important;border-color:transparent!important;filter:none}
.btn.pri::before,.pushcard button:not(.ann-x)::before,.icon-btn:not(.light)::before,.row .go-ic::before,.lot .go-ic::before,.filters button.on::before,.days button.on::before,.locbar button::before,.act.pri::before,.mapchips button.on::before,.installpop .ip-go::before,.ev-go .ring::before,.yatri .btn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--pring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.btn.pri svg,.pushcard button:not(.ann-x) svg,.icon-btn:not(.light) svg,.row .go-ic svg,.lot .go-ic svg,.filters button.on svg,.days button.on svg,.locbar button svg,.act.pri svg,.mapchips button.on svg,.installpop .ip-go svg,.ev-go .ring svg,.yatri .btn svg{color:var(--pfg)}
.filters button.on,.days button.on,.mapchips button.on{background:var(--ptint)!important}
.btn.pri,.pushcard button:not(.ann-x),.icon-btn:not(.light),.row .go-ic,.lot .go-ic,.filters button.on,.days button.on,.locbar button,.act.pri,.mapchips button.on,.installpop .ip-go,.ev-go .ring,.yatri .btn:active{background:var(--ptint)!important}
.row .go-ic.call{--pring:linear-gradient(120deg,#2FA36A,#1E7A4C);--pfg:#1E7A4C}
.chip:not(.pcard .im .chip):not(.p-hero .chip):not(.ccard .th .chip){background:transparent!important;border:1px solid var(--pline)!important;color:var(--pfg)!important}
.chip.gold{border-color:rgba(217,164,65,.7)!important}
.gi-go svg{color:var(--pfg)!important;border:1.5px solid transparent;box-shadow:none!important;background:linear-gradient(var(--pbg),var(--pbg)) padding-box,var(--pring) border-box!important}
.days button.on small{color:var(--pfg)!important}
html[data-theme="dark"] .btn.pri,html[data-theme="dark"] .pushcard button:not(.ann-x),html[data-theme="dark"] .icon-btn:not(.light),html[data-theme="dark"] .row .go-ic,html[data-theme="dark"] .lot .go-ic,html[data-theme="dark"] .filters button.on,html[data-theme="dark"] .days button.on,html[data-theme="dark"] .locbar button,html[data-theme="dark"] .act.pri,html[data-theme="dark"] .mapchips button.on,html[data-theme="dark"] .installpop .ip-go,html[data-theme="dark"] .ev-go .ring,html[data-theme="dark"] .yatri .btn{position:relative;background:transparent!important;color:var(--pfg)!important;-webkit-text-fill-color:var(--pfg);box-shadow:none!important;border-color:transparent!important;filter:none}
html[data-theme="dark"] .btn.pri::before,html[data-theme="dark"] .pushcard button:not(.ann-x)::before,html[data-theme="dark"] .icon-btn:not(.light)::before,html[data-theme="dark"] .row .go-ic::before,html[data-theme="dark"] .lot .go-ic::before,html[data-theme="dark"] .filters button.on::before,html[data-theme="dark"] .days button.on::before,html[data-theme="dark"] .locbar button::before,html[data-theme="dark"] .act.pri::before,html[data-theme="dark"] .mapchips button.on::before,html[data-theme="dark"] .installpop .ip-go::before,html[data-theme="dark"] .ev-go .ring::before,html[data-theme="dark"] .yatri .btn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--pring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
html[data-theme="dark"] .btn.pri svg,html[data-theme="dark"] .pushcard button:not(.ann-x) svg,html[data-theme="dark"] .icon-btn:not(.light) svg,html[data-theme="dark"] .row .go-ic svg,html[data-theme="dark"] .lot .go-ic svg,html[data-theme="dark"] .filters button.on svg,html[data-theme="dark"] .days button.on svg,html[data-theme="dark"] .locbar button svg,html[data-theme="dark"] .act.pri svg,html[data-theme="dark"] .mapchips button.on svg,html[data-theme="dark"] .installpop .ip-go svg,html[data-theme="dark"] .ev-go .ring svg,html[data-theme="dark"] .yatri .btn svg{color:var(--pfg)}
html[data-theme="dark"] .filters button.on,html[data-theme="dark"] .days button.on,html[data-theme="dark"] .mapchips button.on{background:var(--ptint)!important}
html[data-theme="dark"] .btn.pri,html[data-theme="dark"] .pushcard button:not(.ann-x),html[data-theme="dark"] .icon-btn:not(.light),html[data-theme="dark"] .row .go-ic,html[data-theme="dark"] .lot .go-ic,html[data-theme="dark"] .filters button.on,html[data-theme="dark"] .days button.on,html[data-theme="dark"] .locbar button,html[data-theme="dark"] .act.pri,html[data-theme="dark"] .mapchips button.on,html[data-theme="dark"] .installpop .ip-go,html[data-theme="dark"] .ev-go .ring,html[data-theme="dark"] .yatri .btn:active{background:var(--ptint)!important}
html[data-theme="dark"] .row .go-ic.call{--pring:linear-gradient(120deg,#5FD39A,#2FA36A);--pfg:#7FE0AE}
html[data-theme="dark"] .chip:not(.pcard .im .chip):not(.p-hero .chip):not(.ccard .th .chip){background:transparent!important;border:1px solid var(--pline)!important;color:var(--pfg)!important}
html[data-theme="dark"] .chip.gold{border-color:rgba(217,164,65,.7)!important}
html[data-theme="dark"] .gi-go svg{color:var(--pfg)!important;border:1.5px solid transparent;box-shadow:none!important;background:linear-gradient(var(--pbg),var(--pbg)) padding-box,var(--pring) border-box!important}
html[data-theme="dark"] .days button.on small{color:var(--pfg)!important}
@media (prefers-color-scheme:dark){
html:not([data-theme="light"]) .btn.pri,html:not([data-theme="light"]) .pushcard button:not(.ann-x),html:not([data-theme="light"]) .icon-btn:not(.light),html:not([data-theme="light"]) .row .go-ic,html:not([data-theme="light"]) .lot .go-ic,html:not([data-theme="light"]) .filters button.on,html:not([data-theme="light"]) .days button.on,html:not([data-theme="light"]) .locbar button,html:not([data-theme="light"]) .act.pri,html:not([data-theme="light"]) .mapchips button.on,html:not([data-theme="light"]) .installpop .ip-go,html:not([data-theme="light"]) .ev-go .ring,html:not([data-theme="light"]) .yatri .btn{position:relative;background:transparent!important;color:var(--pfg)!important;-webkit-text-fill-color:var(--pfg);box-shadow:none!important;border-color:transparent!important;filter:none}
html:not([data-theme="light"]) .btn.pri::before,html:not([data-theme="light"]) .pushcard button:not(.ann-x)::before,html:not([data-theme="light"]) .icon-btn:not(.light)::before,html:not([data-theme="light"]) .row .go-ic::before,html:not([data-theme="light"]) .lot .go-ic::before,html:not([data-theme="light"]) .filters button.on::before,html:not([data-theme="light"]) .days button.on::before,html:not([data-theme="light"]) .locbar button::before,html:not([data-theme="light"]) .act.pri::before,html:not([data-theme="light"]) .mapchips button.on::before,html:not([data-theme="light"]) .installpop .ip-go::before,html:not([data-theme="light"]) .ev-go .ring::before,html:not([data-theme="light"]) .yatri .btn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--pring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
html:not([data-theme="light"]) .btn.pri svg,html:not([data-theme="light"]) .pushcard button:not(.ann-x) svg,html:not([data-theme="light"]) .icon-btn:not(.light) svg,html:not([data-theme="light"]) .row .go-ic svg,html:not([data-theme="light"]) .lot .go-ic svg,html:not([data-theme="light"]) .filters button.on svg,html:not([data-theme="light"]) .days button.on svg,html:not([data-theme="light"]) .locbar button svg,html:not([data-theme="light"]) .act.pri svg,html:not([data-theme="light"]) .mapchips button.on svg,html:not([data-theme="light"]) .installpop .ip-go svg,html:not([data-theme="light"]) .ev-go .ring svg,html:not([data-theme="light"]) .yatri .btn svg{color:var(--pfg)}
html:not([data-theme="light"]) .filters button.on,html:not([data-theme="light"]) .days button.on,html:not([data-theme="light"]) .mapchips button.on{background:var(--ptint)!important}
html:not([data-theme="light"]) .btn.pri,html:not([data-theme="light"]) .pushcard button:not(.ann-x),html:not([data-theme="light"]) .icon-btn:not(.light),html:not([data-theme="light"]) .row .go-ic,html:not([data-theme="light"]) .lot .go-ic,html:not([data-theme="light"]) .filters button.on,html:not([data-theme="light"]) .days button.on,html:not([data-theme="light"]) .locbar button,html:not([data-theme="light"]) .act.pri,html:not([data-theme="light"]) .mapchips button.on,html:not([data-theme="light"]) .installpop .ip-go,html:not([data-theme="light"]) .ev-go .ring,html:not([data-theme="light"]) .yatri .btn:active{background:var(--ptint)!important}
html:not([data-theme="light"]) .row .go-ic.call{--pring:linear-gradient(120deg,#5FD39A,#2FA36A);--pfg:#7FE0AE}
html:not([data-theme="light"]) .chip:not(.pcard .im .chip):not(.p-hero .chip):not(.ccard .th .chip){background:transparent!important;border:1px solid var(--pline)!important;color:var(--pfg)!important}
html:not([data-theme="light"]) .chip.gold{border-color:rgba(217,164,65,.7)!important}
html:not([data-theme="light"]) .gi-go svg{color:var(--pfg)!important;border:1.5px solid transparent;box-shadow:none!important;background:linear-gradient(var(--pbg),var(--pbg)) padding-box,var(--pring) border-box!important}
html:not([data-theme="light"]) .days button.on small{color:var(--pfg)!important}
}

/* icons in tiles, list leads and the shuttle card: same outline language as the pills (red ring only for medical / SOS) */
.tile .ti:not(.duo),.gic,.shuttle .si{position:relative;background:transparent!important;color:var(--pfg)!important;box-shadow:none!important;border-radius:50%;filter:none!important}
.tile .ti:not(.duo)::before,.gic::before,.shuttle .si::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--pring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.gic.medical,.tile.t-sos .ti{--pring:linear-gradient(140deg,#F04B4B,#B81F27);--pfg:#D3262E}
.tile.t-dasara .ti{--pfg:#F3C9A8;--pring:linear-gradient(120deg,#E9BC63,#F8DFA6 40%,#E58BB4 80%,#C2487F)}
html[data-theme="dark"] .gic.medical,html[data-theme="dark"] .tile.t-sos .ti{--pring:linear-gradient(140deg,#FF7A7A,#E0353D);--pfg:#FF8A8A}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .gic.medical,html:not([data-theme="light"]) .tile.t-sos .ti{--pring:linear-gradient(140deg,#FF7A7A,#E0353D);--pfg:#FF8A8A}
}
html[data-theme="dark"] .tile .ti:not(.duo),html[data-theme="dark"] .gic,html[data-theme="dark"] .shuttle .si{background:transparent!important;color:var(--pfg)!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tile .ti:not(.duo),html:not([data-theme="light"]) .gic,html:not([data-theme="light"]) .shuttle .si{background:transparent!important;color:var(--pfg)!important}}

/* shuttle and autos: same card surface as every other listing card */
.shuttle{background:var(--silk);color:var(--ink);border:1px solid var(--line);box-shadow:var(--sh);border-radius:20px;padding:16px;gap:14px}
.shuttle > div > span{color:var(--ink-3);opacity:1}
.shuttle.autos{margin-top:12px}
.shuttle.autos b{font-size:15px}
.shuttle.autos > div > span{display:block;margin-top:3px;line-height:1.5}
.shuttle .si{width:48px;height:48px;align-self:center}
/* parking P badge: outline like the other lead icons */
.ev .tm .pi,.lot .pi{position:relative;background:transparent!important;color:var(--pfg)!important;box-shadow:none!important;filter:none!important;border-radius:50%}
.ev .tm .pi::before,.lot .pi::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--pring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
html[data-theme="dark"] .ev .tm .pi,html[data-theme="dark"] .lot .pi{background:transparent!important;filter:none!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ev .tm .pi,html:not([data-theme="light"]) .lot .pi{background:transparent!important;filter:none!important}}
.shuttle.autos{align-items:flex-start}.shuttle.autos .si{align-self:flex-start}

/* ================= Instagram-style clarity =================
   Dark: near-black canvas, white text and icons, and a vivid gold > saffron > rose > magenta ring
   (story-ring style) around outlines and thumbnails. Light keeps the silk palette with the same ring. */
:root{--ring:linear-gradient(45deg,#FFC94A 0%,#FF8A3D 35%,#F0457A 68%,#B92B8A 100%);--pring:linear-gradient(45deg,#FFC94A 0%,#FF8A3D 35%,#F0457A 68%,#B92B8A 100%)}
html[data-theme="dark"]{--pbg:#16141A;--pfg:#FFFFFF;--ptint:rgba(240,69,122,.16);--pline:rgba(255,255,255,.28);--pring:linear-gradient(45deg,#FFC94A 0%,#FF8A3D 35%,#F0457A 68%,#B92B8A 100%)}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]){--pbg:#16141A;--pfg:#FFFFFF;--ptint:rgba(240,69,122,.16);--pline:rgba(255,255,255,.28);--pring:linear-gradient(45deg,#FFC94A 0%,#FF8A3D 35%,#F0457A 68%,#B92B8A 100%)}}
.ev .tm img,.ev .tm .ph,.nn img,.nn .nn-ph{border:2px solid transparent;padding:2px;box-sizing:border-box;background:linear-gradient(var(--silk),var(--silk)) padding-box,var(--ring) border-box!important;background-clip:padding-box,border-box}
.ev .tm img,.nn img{object-fit:cover;border-radius:16px}
.pcard{border:1.5px solid transparent;background:linear-gradient(var(--silk),var(--silk)) padding-box,var(--ring) border-box}
.lcard{border-width:1.5px;background:linear-gradient(var(--silk),var(--silk)) padding-box,var(--ring) border-box!important}
html[data-theme="dark"] .ev-go small,html[data-theme="dark"] .gi-go small,html[data-theme="dark"] .tile b,html[data-theme="dark"] .tile span,html[data-theme="dark"] .tabs a.on{color:#fff}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ev-go small,html:not([data-theme="light"]) .gi-go small,html:not([data-theme="light"]) .tile b,html:not([data-theme="light"]) .tile span,html:not([data-theme="light"]) .tabs a.on{color:#fff}}
html[data-theme="dark"] .tabs a svg{color:#fff}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tabs a svg{color:#fff}}
.ev .tm .ph{background:linear-gradient(150deg,#8A2350,#3A0E1E) padding-box,var(--ring) border-box!important;color:#FFE3B0}
.ev .tm .ph::before{opacity:.12}
/* placeholder thumbnail (place without a photo): icon centred, no dot texture */
.ev .tm.lead-th .ph,.ev .tm .ph{display:grid!important;place-items:center}
.ev .tm .ph::before{display:none}
.ev .tm .ph svg{width:26px;height:26px;max-width:none;max-height:none;margin:0;opacity:1;color:#FFE3B0}
/* live now: story-style bubbles (ring, LIVE tag, one short title) */
.lstrip{gap:14px;padding-top:4px}
.lst{flex:none;width:84px;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--ink);position:relative}
.lst .lr{width:76px;height:76px;border-radius:50%;padding:3px;background:var(--ring);display:block;position:relative}
.lst .lr::after{content:"";position:absolute;inset:3px;border-radius:50%;box-shadow:inset 0 0 0 2.5px var(--sandal)}
.lst .lr img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.lst .lr:empty{background:var(--ring)}
.lst .ltag{position:relative;margin-top:-11px;z-index:1;font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.1em;color:#fff;line-height:1;padding:4px 7px 3px;border-radius:6px;
  background:linear-gradient(90deg,#F0457A,#D3262E);box-shadow:0 0 0 2.5px var(--sandal)}
.lst b{margin-top:6px;font-size:11.5px;font-weight:500;line-height:1.3;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-2)}
.lst:active .lr{transform:scale(.95)}
/* hero: readable title over the lit palace (solid ivory text, deeper night shade behind it) */
.hero.grand::after{background:linear-gradient(0deg,rgba(11,10,13,.96) 0%,rgba(11,10,13,.82) 26%,rgba(11,10,13,.45) 44%,rgba(11,10,13,0) 62%)!important}
.hero.grand h1{background:none!important;-webkit-text-fill-color:#FFF6E6!important;color:#FFF6E6!important;text-shadow:0 2px 14px rgba(0,0,0,.85),0 1px 2px rgba(0,0,0,.9)}
.hero.grand small{text-shadow:none}
/* live row: label + streams + "All streams" in one line, spread across the width */
.livebar{margin-top:18px;justify-content:space-between;align-items:flex-start;gap:10px}
.livebar .lhead{flex:none;width:64px;height:76px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.livebar .lhead b{font-family:var(--display);font-weight:400;font-size:19px;line-height:1.1;color:var(--ink)}
.lst.lall .lr{background:var(--ring);display:grid;place-items:center}
.lst.lall .lr::after{inset:3px;box-shadow:none;background:var(--sandal)}
.lst.lall .lr svg{position:relative;z-index:1;width:24px;height:24px;color:var(--ink)}
.lst.lall b{margin-top:15px}
.livebar .lhead{width:70px;height:76px;gap:7px;justify-content:center}
.livebar .lhead b{font-size:17px;line-height:1.15;word-break:keep-all}
html[lang="kn"] .livebar .lhead b,html[lang="hi"] .livebar .lhead b{font-family:inherit;font-size:14px;font-weight:600}
/* live now as listing cards: the story bubble sits in the lead column */
.ev .tm.lead-live{width:64px}
.ev .tm.lead-live .lst{width:64px;display:flex;flex-direction:column;align-items:center}
.ev .tm.lead-live .lst .lr{width:60px;height:60px;padding:2.5px}
.ev .tm.lead-live .lst .lr img{border:0!important;padding:0!important;background:none!important;border-radius:50%}
.ev .tm.lead-live .ltag{margin-top:-10px;font-size:9px;padding:3px 6px 2px;box-shadow:0 0 0 2px var(--silk)}
.ev .tm.lead-live .lst .lr::after{box-shadow:inset 0 0 0 2.5px var(--silk)}
.livesec .ev-go .ring svg{transform:translate(1px,0)}

/* ================= stories ================= */
.stories{margin-top:16px;gap:12px;padding-bottom:6px}
.stories .lst{width:76px;font:inherit;background:none;border:0;padding:0;cursor:pointer}
.stories .lst .lr{width:72px;height:72px}
.stories .lst b{margin-top:7px;font-size:11.5px;-webkit-line-clamp:1;max-width:76px;color:var(--ink)}
.stories .lst.islive .lr{animation:ringpulse 2.2s ease-in-out infinite}
@keyframes ringpulse{50%{box-shadow:0 0 0 3px rgba(240,69,122,.25)}}
.stories .lst.seen .lr{background:var(--line)}
.stories .lst.seen b{color:var(--ink-3)}
@media (prefers-reduced-motion:reduce){.stories .lst.islive .lr{animation:none}}
/* viewer */
html.sv-open,html.sv-open body{overflow:hidden}
.sv{position:fixed;inset:0;z-index:200;background:#000;color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;max-width:520px;margin:0 auto}
.sv[hidden]{display:none}
.sv-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:svzoom 6.5s ease-out both}
@keyframes svzoom{from{transform:scale(1.06)}to{transform:scale(1)}}
.sv::before,.sv::after{content:"";position:absolute;left:0;right:0;z-index:1;pointer-events:none}
.sv::before{top:0;height:160px;background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,0))}
.sv::after{bottom:0;height:62%;background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.6) 45%,rgba(0,0,0,0))}
.sv-bars{position:absolute;z-index:3;top:calc(env(safe-area-inset-top,0px) + 10px);left:10px;right:10px;display:flex;gap:4px}
.sv-bars i{flex:1;height:2.5px;border-radius:2px;background:rgba(255,255,255,.35);overflow:hidden}
.sv-bars b{display:block;height:100%;background:#fff;border-radius:2px}
.sv-top{position:absolute;z-index:3;top:calc(env(safe-area-inset-top,0px) + 22px);left:12px;right:8px;display:flex;align-items:center;gap:10px}
.sv-av{width:36px;height:36px;border-radius:50%;padding:2px;background:var(--ring);flex:none}
.sv-av img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid #000;box-sizing:border-box}
.sv-top div{flex:1;min-width:0}
.sv-top b{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv-top small{display:block;font-size:12px;opacity:.8;letter-spacing:0}
.sv-x{width:44px;height:44px;display:grid;place-items:center;background:none;border:0;color:#fff;cursor:pointer}
.sv-x svg{width:24px;height:24px}
.sv-tap{position:absolute;z-index:2;top:80px;bottom:200px;width:40%;background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.sv-tap.l{left:0}.sv-tap.r{right:0;width:60%}
.sv-cap{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:0 20px calc(env(safe-area-inset-bottom,0px) + 22px)}
.sv-cap h3{margin:0;font-family:var(--display);font-weight:400;font-size:28px;line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.6)}
html[lang="kn"] .sv-cap h3,html[lang="hi"] .sv-cap h3{font-family:inherit;font-weight:700;font-size:24px}
.sv-cap p{margin:10px 0 0;font-size:15px;line-height:1.5;color:rgba(255,255,255,.88)}
.sv-cta{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.sv-btn{position:relative;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:22px;color:#fff;text-decoration:none;font-weight:600;font-size:14px;
  background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.sv-btn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--ring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.sv-btn svg{width:17px;height:17px}
/* landscape photos: framed card over a blurred, darkened copy (no stretching or pixelation) */
.sv-bg{position:absolute;inset:-40px;width:calc(100% + 80px);height:calc(100% + 80px);object-fit:cover;filter:blur(36px) saturate(1.3) brightness(.55);transform:scale(1.1)}
.sv-img{inset:auto;top:calc(env(safe-area-inset-top,0px) + 76px);left:12px;width:calc(100% - 24px);height:auto;max-height:46%;aspect-ratio:4/3.2;object-fit:cover;border-radius:22px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.8);z-index:1}
.sv::after{height:52%;background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.35) 60%,rgba(0,0,0,0))}
.sv::before{display:none}
.sv .sv-bg{filter:blur(36px) saturate(1.3) brightness(.5)!important}
.sv .sv-img,.sv .sv-av img{filter:none!important}
.sv .sv-img{left:12px!important;right:12px;width:auto!important;aspect-ratio:4/4.4;max-height:56%}
/* happening now: live thumbnail = watch button */
.nn .nn-th{position:relative;flex:none;display:flex;flex-direction:column;align-items:center;text-decoration:none;align-self:center}
.nn .nn-th .ltag{position:relative;margin-top:-11px;z-index:1;font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.1em;color:#fff;line-height:1;padding:4px 7px 3px;border-radius:6px;
  background:linear-gradient(90deg,#F0457A,#D3262E);box-shadow:0 0 0 2.5px var(--silk)}
.nn .nn-play{position:absolute;left:50%;top:39px;transform:translate(-50%,-50%);width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;
  background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.nn .nn-play svg{width:13px;height:13px;margin-left:2px}
.sv{overflow:hidden}
.sv .sv-img{left:12px!important;right:auto!important;width:calc(100% - 24px)!important;height:min(54%,calc((100vw - 24px) * 1.05))!important;max-height:none;aspect-ratio:auto;object-fit:cover}
@media (min-width:521px){.sv .sv-img{height:min(54%,520px)!important}}
/* framed photo stays put inside its 12px margins; the slow zoom moves to the blurred backdrop */
.sv .sv-img{animation:svfade .35s ease-out both}
.sv .sv-bg{animation:svzoom 6.5s ease-out both}
@keyframes svfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sv .sv-img,.sv .sv-bg{animation:none}}


/* ================= listing cards: one alignment rule for every list =================
   Top line is the anchor: lead (time / photo / icon), title and the round Navigate button all start at the
   same top edge, whatever the card height. Secondary actions (Call) get their own row under the location.
   Titles use Jost Medium (500), not semibold, so long programme names stay light and tidy. */
.ev{align-items:flex-start}
.ev .tm,.ev .tm.lead-ic,.ev .tm.lead-th{align-self:flex-start;padding-top:0}
.ev .tm b{font-weight:500;font-size:15px;line-height:22px}
.ev .eb{align-self:stretch}
.ev .eb .et{font-weight:500!important;font-size:16px;line-height:22px;letter-spacing:0}
.ev .eb p{font-size:13.5px;line-height:1.45;margin-top:4px;color:var(--ink-2)}
.ev .eb .vn{margin-top:8px}
.ev .eb .vact{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ev .eb .vact .btn{width:auto}
.ev-go{align-self:flex-start;margin-top:-1px}
.ev .tm.lead-ic .gic,.ev .tm.lead-ic .pi{margin-top:0}
/* happening now: same weights as the lists */
.nn b{font-weight:500!important;font-size:16px;line-height:1.35}
.nn small{font-weight:600}
.pcard b,.ccard b,.lcard .lb b{font-weight:500!important}
/* traffic: embedded map + Google Maps hand-off (gradient label, Maps pin) */
.gmap{position:relative;margin:0 16px;border-radius:20px;overflow:hidden;height:300px;box-shadow:var(--sh);border:1.5px solid transparent;
  background:linear-gradient(var(--silk),var(--silk)) padding-box,var(--ring) border-box}
.gmap iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:18px}
.gmap .gmbtn{position:absolute;left:12px;right:12px;bottom:12px}
.gmbtn{display:flex;align-items:center;gap:10px;height:52px;padding:0 16px;border-radius:26px;text-decoration:none;position:relative;
  background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);box-shadow:0 10px 26px -12px rgba(0,0,0,.45)}
.gmbtn::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--ring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.gmbtn .gmi{width:24px;height:24px;flex:none}
.gmbtn span{flex:1;font-weight:600;font-size:15px;background:var(--grad-deep);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.gmbtn > svg:last-child{width:16px;height:16px;color:#B3316B;flex:none}
html[data-theme="dark"] .gmbtn{background:rgba(22,20,26,.88)}
html[data-theme="dark"] .gmbtn span{background:var(--grad-head);-webkit-background-clip:text;background-clip:text}
html[data-theme="dark"] .gmbtn > svg:last-child{color:#F3C9A8}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .gmbtn{background:rgba(22,20,26,.88)}html:not([data-theme="light"]) .gmbtn span{background:var(--grad-head);-webkit-background-clip:text;background-clip:text}}
/* Navigate: brighter 2px ring, warm tinted fill and a deeper icon so it stands out on white cards */
.ev-go .ring,html .ev-go .ring{background:linear-gradient(160deg,#FFF1DC 0%,#FFE1EC 100%)!important;color:#A3245A!important;-webkit-text-fill-color:#A3245A;
  box-shadow:0 6px 14px -8px rgba(179,49,107,.55)!important}
.ev-go .ring::before{padding:2px!important;background:linear-gradient(45deg,#FFB627 0%,#FF7A2F 35%,#F0306E 68%,#B01E8C 100%)!important}
.ev-go .ring svg{color:#A3245A!important}
.ev-go small{color:#7A1A44}
html[data-theme="dark"] .ev-go .ring{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2))!important;color:#fff!important;-webkit-text-fill-color:#fff;box-shadow:0 0 18px -6px rgba(240,48,110,.55)!important}
html[data-theme="dark"] .ev-go .ring svg{color:#fff!important}
html[data-theme="dark"] .ev-go small{color:#fff}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ev-go .ring{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2))!important;color:#fff!important;-webkit-text-fill-color:#fff;box-shadow:0 0 18px -6px rgba(240,48,110,.55)!important}
  html:not([data-theme="light"]) .ev-go .ring svg{color:#fff!important}html:not([data-theme="light"]) .ev-go small{color:#fff}}
/* bottom bar: brighter icons and labels; the active tab gets the Navigate treatment (gradient ring, tinted fill) */
.tabs a{color:#5E3A4A}
.tabs a svg{stroke-width:2.1}
.tabs a.on{color:#A3245A}
.tabs a.on .ic{position:relative;background:linear-gradient(160deg,#FFF1DC,#FFE1EC)!important;box-shadow:0 6px 14px -8px rgba(179,49,107,.55)!important}
.tabs a.on .ic::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:linear-gradient(45deg,#FFB627,#FF7A2F 35%,#F0306E 68%,#B01E8C);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.tabs a.on svg{color:#A3245A}
html[data-theme="dark"] .tabs a{color:#E9E4EC}
html[data-theme="dark"] .tabs a svg{color:#E9E4EC}
html[data-theme="dark"] .tabs a.on,html[data-theme="dark"] .tabs a.on svg{color:#fff}
html[data-theme="dark"] .tabs a.on .ic{background:linear-gradient(160deg,rgba(255,182,39,.18),rgba(240,48,110,.24))!important;box-shadow:0 0 16px -6px rgba(240,48,110,.6)!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tabs a,html:not([data-theme="light"]) .tabs a svg{color:#E9E4EC}
  html:not([data-theme="light"]) .tabs a.on,html:not([data-theme="light"]) .tabs a.on svg{color:#fff}
  html:not([data-theme="light"]) .tabs a.on .ic{background:linear-gradient(160deg,rgba(255,182,39,.18),rgba(240,48,110,.24))!important;box-shadow:0 0 16px -6px rgba(240,48,110,.6)!important}}
/* "What do you need?" tile icons: same bright treatment as Navigate (2px vivid ring, tinted fill, deep icon) */
.tile .ti:not(.duo){background:linear-gradient(160deg,#FFF1DC 0%,#FFE1EC 100%)!important;color:#A3245A!important;box-shadow:0 6px 14px -8px rgba(179,49,107,.5)!important}
.tile .ti:not(.duo)::before{padding:2px!important;background:linear-gradient(45deg,#FFB627 0%,#FF7A2F 35%,#F0306E 68%,#B01E8C 100%)!important}
.tile .ti:not(.duo) svg{stroke-width:2.1}
.tile.t-sos .ti{background:linear-gradient(160deg,#FFE9E6,#FFD9DC)!important;color:#D3262E!important}
.tile.t-sos .ti::before{background:linear-gradient(140deg,#FF5A4E,#C81E2B)!important}
.tile.t-dasara .ti{background:linear-gradient(160deg,rgba(255,182,39,.22),rgba(240,48,110,.28))!important;color:#fff!important}
html[data-theme="dark"] .tile .ti:not(.duo){background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2))!important;color:#fff!important;box-shadow:0 0 16px -6px rgba(240,48,110,.55)!important}
html[data-theme="dark"] .tile.t-sos .ti{background:linear-gradient(160deg,rgba(255,90,78,.18),rgba(200,30,43,.22))!important;color:#FF8A8A!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tile .ti:not(.duo){background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2))!important;color:#fff!important;box-shadow:0 0 16px -6px rgba(240,48,110,.55)!important}
  html:not([data-theme="light"]) .tile.t-sos .ti{background:linear-gradient(160deg,rgba(255,90,78,.18),rgba(200,30,43,.22))!important;color:#FF8A8A!important}}
/* mascots: Ammu on the left (pink ring), Gajju on the right (gold ring), Ammu on top of the overlap */
.tile .ti.duo img[src*="divya"]{background:#FBE7EF!important;box-shadow:0 0 0 2px #E58BB4,0 4px 10px -4px rgba(0,0,0,.45)!important;position:relative;z-index:2}
.tile .ti.duo img[src*="gajju"]{background:#FFF6E4!important;box-shadow:0 0 0 2px #E9BC63,0 4px 10px -4px rgba(0,0,0,.45)!important;position:relative;z-index:1}
/* smaller Navigate: 40px ring, 18px arrow, compact label */
.ev-go{width:56px;gap:5px}
.ev-go .ring{width:40px!important;height:40px!important}
.ev-go .ring svg{width:18px!important;height:18px!important}
.ev-go small{font-size:10.5px!important}
.nn .ev-go{width:54px}
.ev.tap{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}
.ev.tap:active{transform:scale(.985)}
/* Navigate is icon only now (the whole card is tappable); label kept for screen readers via aria-label */
.ev-go{width:44px!important;gap:0}
.nn .ev-go{width:44px!important}
.ev-go small{display:none}
/* top-aligned Navigate: compact 32px icon button (whole card stays the main tap target) */
.ev-go,.nn .ev-go{width:36px!important;margin-top:0;align-items:flex-end}
.ev-go .ring{width:32px!important;height:32px!important;box-shadow:0 4px 10px -6px rgba(179,49,107,.55)!important}
.ev-go .ring::before{padding:1.5px!important}
.ev-go .ring svg{width:15px!important;height:15px!important;transform:translate(-.5px,.5px)}
/* happening now uses the listing card: status line above the title */
.ev .eb .nnl{display:block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:1px 0 3px;line-height:1.3}
.ev .eb .nnl.live{color:#B3316B}
.ev .eb .nnl.live::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#F0306E;margin-right:6px;vertical-align:1px;animation:pulse 1.6s infinite}
html[data-theme="dark"] .ev .eb .nnl.live{color:#F3C9A8}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ev .eb .nnl.live{color:#F3C9A8}}
.ev .tm.lead-th .nn-th{position:relative;display:flex;flex-direction:column;align-items:center;text-decoration:none;width:64px;height:auto}
.ev .tm.lead-th .nn-th .ltag{position:relative;margin-top:-10px;z-index:1;font-style:normal;font-size:9px;font-weight:700;letter-spacing:.1em;color:#fff;line-height:1;padding:3px 6px 2px;border-radius:6px;
  background:linear-gradient(90deg,#F0457A,#D3262E);box-shadow:0 0 0 2px var(--silk)}
.ev .tm.lead-th .nn-play{position:absolute;left:50%;top:32px;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;
  background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ev .tm.lead-th .nn-play svg{width:12px;height:12px;margin-left:2px}
@media (prefers-reduced-motion:reduce){.ev .eb .nnl.live::before{animation:none}}

/* ================= "What do you need?": one panel, borderless shortcuts =================
   Eight boxed tiles read as a form; modern apps (Maps, Airbnb, Paytm) group shortcuts on a single surface
   with just the icon and a short label. The ring icons stay as they are. */
.qgrid{margin:0 16px;padding:14px 6px 8px;border-radius:24px;gap:4px 0!important;grid-template-columns:repeat(4,1fr)!important;
  background:var(--silk);box-shadow:var(--sh);border:1px solid var(--line)}
.qgrid .tile,html .qgrid .tile{background:none!important;border:0!important;box-shadow:none!important;padding:6px 2px 10px!important;border-radius:16px;gap:8px;
  font-size:12px;font-weight:500;line-height:1.25;color:var(--ink)!important;min-height:0}
.qgrid .tile:active{background:var(--ptint)!important}
.qgrid .tile.t-dasara .ti{background:linear-gradient(160deg,#FFE7B0,#FFD0DF)!important;color:#8A1E4F!important}
.qgrid .tile.t-dasara{font-weight:600}
html[data-theme="dark"] .qgrid{background:var(--silk);border-color:var(--line)}
html[data-theme="dark"] .qgrid .tile.t-dasara .ti{background:linear-gradient(160deg,rgba(255,182,39,.3),rgba(240,48,110,.32))!important;color:#fff!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .qgrid .tile.t-dasara .ti{background:linear-gradient(160deg,rgba(255,182,39,.3),rgba(240,48,110,.32))!important;color:#fff!important}}

/* ================= alerts card (push) v2: clean three-row layout ================= */
.pushcard.pc2{display:block!important;position:relative;margin:12px 16px 0;padding:14px 16px 16px;border-radius:20px;background:var(--silk);border:1px solid var(--line);box-shadow:var(--sh)}
.pushcard.pc2 > svg{display:none}
.pc2 .pc-h{display:flex;align-items:center;gap:10px;padding-right:34px}
.pc2 .pc-ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#A3245A;position:relative;background:linear-gradient(160deg,#FFF1DC,#FFE1EC)}
.pc2 .pc-ic::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:linear-gradient(45deg,#FFB627,#FF7A2F 35%,#F0306E 68%,#B01E8C);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.pc2 .pc-ic svg{width:17px;height:17px;display:block}
.pc2 .pc-h b{font-size:15.5px;font-weight:600;line-height:1.3;color:var(--ink)}
.pc2 .ann-x{position:absolute!important;top:12px;right:12px}
.pc2 p{margin:8px 0 0 44px;font-size:13.5px;line-height:1.5;color:var(--ink-3)}
.pc2 .pc-a{margin:12px 0 0 44px}
.pc2 .pc-go{display:inline-flex!important;align-items:center;gap:8px;height:40px!important;padding:0 16px!important;border-radius:20px!important;font-size:14px;font-weight:600;width:auto!important}
.pc2 .pc-go svg{width:16px;height:16px}
html[data-theme="dark"] .pc2 .pc-ic{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2));color:#fff}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .pc2 .pc-ic{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2));color:#fff}}

/* ================= install popup v2 ================= */
.installpop.v2{display:block!important;padding:16px 16px 16px}
.installpop.v2 .ip-top{display:flex;gap:12px;align-items:flex-start;padding-right:30px}
.installpop.v2 .ip-ic{width:52px;height:52px;border-radius:14px;flex:none;box-shadow:0 6px 16px -8px rgba(0,0,0,.4)}
.installpop.v2 .ip-b b{display:block;font-size:16px;font-weight:600;line-height:1.3}
.installpop.v2 .ip-b span{display:block;margin-top:3px;font-size:13px;line-height:1.45;color:var(--ink-3)}
.installpop.v2 .ip-go.wide{display:flex!important;align-items:center;justify-content:center;gap:9px;width:100%!important;height:48px!important;margin-top:14px;border-radius:24px!important;font-size:15px}
.installpop.v2 .ip-go.wide svg{width:18px;height:18px}
.ip-steps{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.ip-steps li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--ptint);font-size:14px;font-weight:500;color:var(--ink)}
.ip-n{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:linear-gradient(140deg,#FF7A2F,#F0306E 60%,#B01E8C)}
.ip-share{margin-left:auto;flex:none;width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:#0A84FF;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.ip-share svg{width:18px;height:18px}
html[data-theme="dark"] .ip-share{background:#2C2C30}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .ip-share{background:#2C2C30}}
.installpop.v2 .ip-steps .ip-n,.installpop.v2 .ip-steps .ip-share{display:grid!important;place-items:center;margin-top:0!important;line-height:1}
.installpop.v2 .ip-steps .ip-n{width:24px;height:24px;color:#fff!important}
.installpop.v2 .ip-steps .ip-share{width:32px;height:32px;margin-left:auto!important}
.installpop.v2 .ip-steps .ip-share svg{display:block}

/* ================= minimal selected states: colour only, no extra rings or fills ================= */
.tabs a.on .ic,html .tabs a.on .ic{background:none!important;box-shadow:none!important}
.tabs a.on .ic::before{display:none!important}
.tabs a .ic{background:none!important;box-shadow:none!important}
.tabs a.on{font-weight:700}
.filters button.on,.days button.on,.mapchips button.on,html .filters button.on,html .days button.on,html .mapchips button.on{background:transparent!important;color:#A3245A!important;-webkit-text-fill-color:#A3245A;font-weight:700}
html[data-theme="dark"] .filters button.on,html[data-theme="dark"] .days button.on,html[data-theme="dark"] .mapchips button.on{color:#FFB3CC!important;-webkit-text-fill-color:#FFB3CC}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .filters button.on,html:not([data-theme="light"]) .days button.on,html:not([data-theme="light"]) .mapchips button.on{color:#FFB3CC!important;-webkit-text-fill-color:#FFB3CC}}
/* SOS: minimal outline, still unmistakably red */
a.sos,html a.sos{position:relative;background:rgba(229,35,58,.06)!important;color:#D3262E!important;box-shadow:none!important;border:1.5px solid #E5233A!important;font-weight:700}
a.sos svg{color:#D3262E}
html[data-theme="dark"] a.sos{background:rgba(255,90,90,.1)!important;color:#FF7B7B!important;border-color:#FF5A5A!important}
html[data-theme="dark"] a.sos svg{color:#FF7B7B}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) a.sos{background:rgba(255,90,90,.1)!important;color:#FF7B7B!important;border-color:#FF5A5A!important}html:not([data-theme="light"]) a.sos svg{color:#FF7B7B}}
/* Near me: keep the map's own layers inside the map so the list sheet never covers the bottom bar */
.nearwrap .leaflet-container,.nearwrap #nmap{isolation:isolate;z-index:0}
.upsheet{z-index:1!important}
/* audit: ticket price blocks were solid maroon slabs; now a light tint with gradient hairline */
.tkt .tp{position:relative;background:linear-gradient(160deg,#FFF1DC,#FFE1EC)!important;color:#7A1A44!important}
.tkt .tp::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--ring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.tkt .tp small{color:#A3245A!important}
html[data-theme="dark"] .tkt .tp{background:linear-gradient(160deg,rgba(255,182,39,.14),rgba(240,48,110,.18))!important;color:#fff!important}
html[data-theme="dark"] .tkt .tp small{color:#FFB3CC!important}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .tkt .tp{background:linear-gradient(160deg,rgba(255,182,39,.14),rgba(240,48,110,.18))!important;color:#fff!important}html:not([data-theme="light"]) .tkt .tp small{color:#FFB3CC!important}}
/* audit: the language sheet / appearance switch selected state, colour only */
.seg3 button.on{background:transparent!important;box-shadow:none!important;color:#A3245A!important;font-weight:700}
.ch-fab{transition:transform .28s ease,opacity .2s ease}
/* one meta line: "Closed · Opens 10 AM   ⦿ 10 m · 1 min walk" */
.ev .eb .vn.wst{display:flex;flex-wrap:wrap;align-items:center;column-gap:10px;row-gap:4px}
.ev .eb .vn.wst .st{margin:0!important;display:inline-flex;align-items:center;gap:4px;font-size:12.5px;line-height:1.35;flex:none}
.ev .eb .vn.wst .vl{flex:0 1 auto!important;min-width:0!important}
.ev .eb .vn.wst .st + .vl::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--ink-3);opacity:.6;margin-right:4px;flex:none}
.ev .eb .vn.wst > span,.ev .eb .vn.wst .st,.ev .eb .vn.wst .vl{flex:0 0 auto!important;min-width:0!important;width:auto!important}
.ev .eb .vn.wst .st + .vl::before{display:none}
.ev .eb .vn.wst .vl{display:inline-flex;align-items:center;gap:5px}
/* chat bubble: tucks into the corner with a soft shrink, springs back on scroll up */
.ch-fab{transform-origin:85% 100%;will-change:transform,opacity;
  transition:transform .42s cubic-bezier(.34,1.56,.64,1),opacity .3s ease,filter .3s ease!important}
body.scrolling-down .ch-fab{transform:translateY(12px) scale(.55)!important;opacity:0!important;filter:blur(2px);pointer-events:none;
  transition:transform .24s cubic-bezier(.4,0,1,1),opacity .2s ease,filter .2s ease!important}
@media (prefers-reduced-motion:reduce){.ch-fab,body.scrolling-down .ch-fab{transition:opacity .2s ease!important;transform:none!important;filter:none}}
/* give the text column ~20px more so status + distance fit on one line on a 390px phone */
.ev{padding:14px 10px 14px 12px!important}
.ev .eb{margin-left:10px!important;padding-left:10px!important;padding-right:0!important}
.ev-go,.nn .ev-go{width:32px!important;margin-left:6px}
.ev .eb .vn.wst{column-gap:8px}
.ev .eb .vn.wst .st b{font-weight:600}
.ev .eb .vn.wst .st,.ev .eb .vn.wst .vl{font-size:12px!important}.ev .eb .vn.wst .vl svg{width:13px;height:13px}.ev .eb .vn.wst .vl{gap:4px}
/* meta line refinements: always left-aligned (no right-pushed distance), parking fee chip sits on the same line,
   call buttons are compact pills */
.ev .eb .vn.wst{justify-content:flex-start!important}
.ev .eb .vn.wst .vl,.ev .eb .vn.wst > span{margin-left:0!important}
.ev .eb .vn.wst .pchips{display:inline-flex;gap:6px;flex-wrap:wrap;margin:0}
.ev .eb .vn.wst .pchips .badge,.ev .eb .vn.wst .pchips .chip{height:24px;font-size:11.5px;padding:0 9px}
.ev .eb .vact{margin-top:8px}
.ev .eb .vact .btn.callp{height:34px!important;padding:0 13px!important;font-size:13.5px;border-radius:17px!important;gap:7px}
.ev .eb .vact .btn.callp svg{width:15px;height:15px}
.ev .eb .vn.wst{column-gap:7px!important}.ev .eb .vn.wst .st svg{width:13px;height:13px}.ev .eb .vn.wst .st{gap:3px!important}
/* uploaded (usually portrait) story photos fill the viewer instead of the framed landscape card */
.sv .sv-img.up{top:0!important;left:0!important;width:100%!important;height:100%!important;border-radius:0;box-shadow:none;object-fit:cover}
.sv:has(.sv-img.up)::before{display:block!important}
/* QA: comfortable tap areas for small text links (section "See all", inline phone numbers on place pages) */
.sec-h a{display:inline-flex;align-items:center;min-height:36px;padding:0 2px;margin:-8px 0}
.p-body a[href^="tel:"],.facts a[href^="tel:"]{display:inline-flex;align-items:center;min-height:32px;padding:0 4px}
/* Near me: clear "Use my location" action in the sheet header */
.up-h .up-row{display:flex;align-items:center;gap:10px;justify-content:space-between}
.up-h .up-row b{flex:1;min-width:0}
.usegps{position:relative;flex:none;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:17px;border:0;font:inherit;font-size:13px;font-weight:600;cursor:pointer;
  color:#A3245A;background:linear-gradient(160deg,#FFF1DC,#FFE1EC)}
.usegps::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:var(--ring);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.usegps svg{width:15px;height:15px}
.usegps.on{background:transparent;color:var(--ink-2)}
html[data-theme="dark"] .usegps{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2));color:#fff}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) .usegps{background:linear-gradient(160deg,rgba(255,182,39,.16),rgba(240,48,110,.2));color:#fff}}
.up-h small{display:block;margin-top:6px;line-height:1.45}
.farnote{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border-radius:14px;background:var(--ptint);font-size:13.5px;line-height:1.45;color:var(--ink)}
.farnote svg{width:16px;height:16px;flex:none;margin-top:2px;color:#A3245A}
.farnote a{color:#A3245A;font-weight:600;text-decoration:none;white-space:nowrap}
