/* KumbhMela.info tools 1.2.0. Built from the Tirth Design System v2.0 prototype by work/1.2-tools/build-css.py; edit the source, not this file. */
.kmi-t {
  --saffron-50: #fef5ef;
  --saffron-100: #ffe8db;
  --saffron-200: #fecdb5;
  --saffron-300: #ffa984;
  --saffron-400: #ff7c4b;
  --saffron-500: #e14503;
  --saffron-600: #d23e02;
  --saffron-700: #a93402;
  --saffron-800: #852a07;
  --saffron-900: #621b01;
  --saffron-950: #440f00;
  --geru-50: #fef5ed;
  --geru-100: #f3e2d3;
  --geru-200: #e8c9b3;
  --geru-300: #e2b79b;
  --geru-400: #d1997b;
  --geru-500: #c17e5e;
  --geru-600: #b36344;
  --geru-700: #9a3f22;
  --geru-800: #7f311a;
  --geru-900: #5f1e0d;
  --geru-950: #4a1408;
  --marigold-50: #fff5ea;
  --marigold-100: #ffe9ce;
  --marigold-200: #ffd094;
  --marigold-300: #f5b253;
  --marigold-400: #f4a300;
  --marigold-500: #c38101;
  --marigold-600: #a76f05;
  --marigold-700: #865804;
  --marigold-800: #6a4400;
  --marigold-900: #4c3000;
  --marigold-950: #341f00;
  --leaf-50: #edfce9;
  --leaf-100: #dcf6d5;
  --leaf-200: #bee7b4;
  --leaf-300: #99d38f;
  --leaf-400: #75bd6b;
  --leaf-500: #5ca556;
  --leaf-600: #449043;
  --leaf-700: #2e7d32;
  --leaf-800: #1e5c21;
  --leaf-900: #0e4212;
  --leaf-950: #022d06;
  --neel-50: #f3f4fa;
  --neel-100: #e6e8f4;
  --neel-200: #c9cde6;
  --neel-300: #a6acd3;
  --neel-400: #7f87bc;
  --neel-500: #5e67a3;
  --neel-600: #464f8c;
  --neel-700: #333b76;
  --neel-800: #242a5c;
  --neel-900: #1b1f45;
  --neel-950: #12152f;
  --sand-50: #faf7f3;
  --sand-100: #f3eee8;
  --sand-200: #e7e1da;
  --sand-300: #d3cbc3;
  --sand-400: #a9a099;
  --sand-500: #7e756e;
  --sand-600: #625a54;
  --sand-700: #4c4540;
  --sand-800: #35302c;
  --sand-900: #221d1a;
  --sand-950: #151210;
  --white: #ffffff;
  --chalk: #fbf6ee;
  --error-50: #fef0ee;
  --error-600: #c2291b;
  --error-700: #b42318;
  --info-50: #eef4f6;
  --info-700: #1e5a73;
  --bg-page: var(--white);
  --bg-subtle: var(--sand-50);
  --bg-muted: var(--sand-100);
  --bg-raised: var(--white);
  --bg-inverse: var(--sand-900);
  --bg-brand-soft: var(--saffron-50);
  --bg-chalk: var(--chalk);
  --bg-earth: var(--geru-950);
  --bg-selected: var(--saffron-50);
  --text-primary: var(--sand-900);
  --text-secondary: var(--sand-700);
  --text-tertiary: var(--sand-600);
  --text-disabled: var(--sand-400);
  --text-inverse: var(--white);
  --text-brand-large: var(--saffron-500);
  --text-link: var(--saffron-700);
  --text-accent: var(--geru-700);
  --text-on-action: var(--white);
  --border-subtle: var(--sand-200);
  --border-default: var(--sand-300);
  --border-strong: var(--sand-500);
  --border-focus: var(--saffron-600);
  --border-selected: var(--geru-700);
  --action-primary: var(--saffron-600);
  --action-primary-hover: var(--saffron-700);
  --action-primary-pressed: var(--saffron-800);
  --action-secondary-border: var(--sand-300);
  --action-secondary-hover: var(--sand-50);
  --status-success: var(--leaf-700);
  --status-success-bg: var(--leaf-50);
  --status-warning: var(--marigold-800);
  --status-warning-bg: var(--marigold-50);
  --status-error: var(--error-700);
  --status-error-bg: var(--error-50);
  --status-info: var(--info-700);
  --status-info-bg: var(--info-50);
  --status-verified: var(--leaf-700);
  --icon-primary: var(--sand-900);
  --icon-secondary: var(--sand-600);
  --icon-action: var(--saffron-600);
  --icon-brand: var(--saffron-500);
  --icon-verified: var(--leaf-700);
  --icon-on-dark: var(--white);
  --night-ground: var(--neel-900);
  --night-ground-2: var(--neel-800);
  --night-text: var(--chalk);
  --night-text-2: var(--neel-200);
  --night-label: var(--marigold-200);
  --night-accent: var(--marigold-400);
  --night-line: var(--neel-700);
  --media-earth: var(--geru-950);
  --media-earth-2: var(--geru-900);
  --media-clay: var(--geru-100);
  --media-chalk: var(--chalk);
  --media-sun: var(--marigold-400);
  --media-night: var(--neel-900);
  --media-scrim: rgba(21,18,16,.55);
  --ornament-line: var(--geru-700);
  --ornament-line-soft: var(--geru-200);
  --ornament-sun: var(--marigold-400);
  --ornament-leaf: var(--leaf-700);
  --ornament-on-earth: var(--chalk);
  --ornament-flag: var(--saffron-500);
  --kanha-pandit: var(--saffron-600);
  --kanha-guide: var(--leaf-700);
  --kanha-planner: var(--marigold-400);
  --kanha-saathi: var(--geru-700);
  --kanha-jyotish: var(--neel-500);
  --space-0: 0px;
  --space-2: 2px;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;
  --space-32: 32px;
  --space-40: 40px;
  --space-48: 48px;
  --space-64: 64px;
  --space-80: 80px;
  --space-96: 96px;
  --space-128: 128px;
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 999px;
  --radius-petal-sm: 16px 16px 16px 4px;
  --radius-petal: 24px 24px 24px 6px;
  --radius-petal-lg: 44px 44px 44px 12px;
  --elevation-e0: none;
  --elevation-e1: 0 1px 2px rgba(34,29,26,.06), 0 2px 8px rgba(34,29,26,.08);
  --elevation-e2: 0 2px 4px rgba(34,29,26,.06), 0 8px 24px rgba(34,29,26,.12);
  --elevation-e3: 0 4px 8px rgba(34,29,26,.08), 0 16px 40px rgba(34,29,26,.18);
  --elevation-up: 0 -6px 20px rgba(34,29,26,.10);
  --elevation-pop: 0 -12px 40px rgba(21,18,16,.28);
  --elevation-glow-action: 0 6px 16px rgba(210,62,2,.30);
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --duration-slow: 320ms;
  --duration-slower: 480ms;
  --easing-standard: cubic-bezier(.2,0,0,1);
  --easing-emphasised: cubic-bezier(.3,0,0,1);
  --easing-exit: cubic-bezier(.4,0,1,1);
  --control-height: 48px;
  --control-height-lg: 52px;
  --control-height-sm: 36px;
  --touch-target: 44px;
  --control-height-senior: 56px;
  --icon-sm: 16px;
  --icon-md: 20px;
  --icon-lg: 24px;
  --breakpoint-sm: 360px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1440px;
  --container-default: 1200px;
  --container-wide: 1440px;
  --container-reading: 720px;
  --ornament-level-0: 0;
  --ornament-level-1: 0.1;
  --ornament-level-2: 1;
  --ornament-level-3: 1;
  --scrim: 0.55;
  --font-ui: var(--kmi-font-sans, "Noto Sans", system-ui, -apple-system, "Segoe UI", sans-serif);
  --font-hi: "Noto Sans Devanagari", var(--kmi-font-sans, system-ui), sans-serif;
  --font-display-hi: "Anek Devanagari", "Noto Sans Devanagari", sans-serif;
}
.kmi-t { font: 400 16px/1.5 var(--font-ui); color: var(--text-primary); -webkit-text-size-adjust: 100%; }
.kmi-t *, .kmi-t *::before, .kmi-t *::after { box-sizing: border-box; }
.kmi-t [hidden] { display: none !important; }
.kmi-t p, .kmi-t h1, .kmi-t h2, .kmi-t h3, .kmi-t figure, .kmi-t ul, .kmi-t ol { margin: 0; }
.kmi-t ul, .kmi-t ol { padding: 0; }
.kmi-t a { color: inherit; text-decoration: none; }
.kmi-t p a, .kmi-t .meta a { color: var(--text-link); text-decoration: underline; text-underline-offset: 3px; }
.kmi-t button { font: inherit; color: inherit; margin: 0; text-transform: none; letter-spacing: normal; background: none; border: 0; box-shadow: none; border-radius: 0; padding: 0; min-height: 0; }
.kmi-t img { max-width: 100%; }
.kmi-t .kmi-i { width: 18px; height: 18px; flex: none; display: inline-block; vertical-align: middle; }
.kmi-t--inline { display: inline; }

/* Design System v2 components */
.kmi-t .tx-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-8); height: var(--control-height); padding: 0 var(--space-20); border: 0; border-radius: var(--radius-lg); background: var(--action-primary); color: var(--text-on-action); font: 600 16px/20px var(--font-ui); white-space: nowrap; box-shadow: var(--elevation-glow-action); cursor: pointer; transition: transform var(--duration-fast) var(--easing-standard), background var(--duration-fast) var(--easing-standard); }
.kmi-t .tx-btn svg { width: 20px; height: 20px; }
.kmi-t .tx-btn:hover { background: var(--action-primary-hover); }
.kmi-t .tx-btn.is-pressed, .kmi-t .tx-btn:active { background: var(--action-primary-pressed); transform: scale(.98); }
.kmi-t .tx-btn.lg { height: var(--control-height-lg); padding: 0 var(--space-24); font-weight: 700; border-radius: var(--radius-lg); }
.kmi-t .tx-btn.sm { height: var(--control-height-sm); padding: 0 var(--space-12); font-size: 14px; border-radius: var(--radius-md); }
.kmi-t .tx-btn.full { width: 100%; }
.kmi-t .tx-btn.soft { background: var(--geru-50); color: var(--saffron-700); box-shadow: none; }
.kmi-t .tx-btn.ghost { background: var(--bg-raised); color: var(--sand-800); border: 1.5px solid var(--action-secondary-border); box-shadow: none; }
.kmi-t .tx-btn.ghost:hover { background: var(--action-secondary-hover); }
.kmi-t .tx-btn.quiet { background: transparent; color: var(--text-link); box-shadow: none; padding: 0 var(--space-8); }
.kmi-t .tx-btn:disabled, .kmi-t .tx-btn.is-disabled { background: var(--sand-200); color: var(--sand-500); box-shadow: none; cursor: not-allowed; }
.kmi-t .tx-btn.on-night { box-shadow: none; }
.kmi-t .tx-chip { display: inline-flex; align-items: center; gap: var(--space-8); height: 36px; padding: 0 var(--space-12); border-radius: var(--radius-full); border: 1px solid var(--border-subtle); background: var(--bg-raised); color: var(--sand-800); font: 600 14px/20px var(--font-ui); white-space: nowrap; }
.kmi-t .tx-chip svg { width: 16px; height: 16px; }
.kmi-t .tx-chip.on { background: var(--bg-inverse); border-color: var(--bg-inverse); color: var(--text-inverse); }
.kmi-t .tx-chip.prompt { background: var(--geru-50); border-color: var(--geru-100); color: var(--geru-700); }
.kmi-t .tx-chip.is-disabled { color: var(--text-disabled); }
.kmi-t .tx-chips { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.kmi-t .tx-seg { display: flex; gap: var(--space-4); padding: var(--space-4); border-radius: var(--radius-md); background: var(--bg-muted); width: 100%; }
.kmi-t .tx-seg span { flex: 1; text-align: center; padding: var(--space-8) var(--space-12); border-radius: var(--radius-sm); font: 600 14px/20px var(--font-ui); color: var(--text-tertiary); white-space: nowrap; }
.kmi-t .tx-seg span.on { background: var(--bg-raised); color: var(--text-primary); box-shadow: var(--elevation-e1); }
.kmi-t .tx-seg.fit { width: auto; display: inline-flex; }
.kmi-t .tx-ksearch { display: flex; align-items: center; gap: var(--space-8); height: 52px; padding: 0 var(--space-8); border-radius: var(--radius-petal, 24px 24px 24px 6px); background: var(--bg-raised); box-shadow: var(--elevation-e2); width: 100%; font: 400 16px/22px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .tx-ksearch .mk { width: 34px; height: 34px; flex: none; }
.kmi-t .tx-ksearch .mk svg { width: 100%; height: 100%; display: block; }
.kmi-t .tx-ksearch .mic { margin-left: auto; width: 36px; height: 36px; border-radius: var(--radius-md); background: var(--geru-50); color: var(--saffron-700); display: grid; place-items: center; flex: none; }
.kmi-t .tx-ksearch .mic svg { width: 18px; height: 18px; }
.kmi-t .tx-pill { display: inline-flex; align-items: center; gap: var(--space-4); padding: var(--space-4) var(--space-12); border-radius: var(--radius-full); font: 700 14px/20px var(--font-ui); white-space: nowrap; }
.kmi-t .tx-pill svg { width: 14px; height: 14px; }
.kmi-t .tx-pill.ok { background: var(--status-success-bg); color: var(--leaf-800); }
.kmi-t .tx-pill.warn { background: var(--status-warning-bg); color: var(--status-warning); }
.kmi-t .tx-pill.info { background: var(--neel-100); color: var(--neel-700); }
.kmi-t .tx-pill.done { background: var(--bg-muted); color: var(--text-secondary); }
.kmi-t .tx-pill.err { background: var(--status-error-bg); color: var(--status-error); }
.kmi-t .tx-pill.brand { background: var(--geru-50); color: var(--geru-700); }
.kmi-t .tx-alert { display: flex; gap: var(--space-12); width: 100%; border-radius: var(--radius-petal-sm, 16px 16px 16px 4px); padding: var(--space-12); font: 400 14px/20px var(--font-ui); }
.kmi-t .tx-alert svg { width: 20px; height: 20px; flex: none; margin-top: 1px; }
.kmi-t .tx-alert b { display: block; font: 700 16px/22px var(--font-ui); }
.kmi-t .tx-alert.info { background: var(--status-info-bg); color: var(--status-info); }
.kmi-t .tx-alert.ok { background: var(--status-success-bg); color: var(--leaf-800); }
.kmi-t .tx-alert.warn { background: var(--status-warning-bg); color: var(--status-warning); }
.kmi-t .tx-alert.err { background: var(--status-error-bg); color: var(--status-error); }
.kmi-t .tx-alert .act { margin-top: var(--space-4); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.kmi-t .tx-src { display: inline-flex; align-items: center; gap: var(--space-8); border-radius: var(--radius-petal-sm, 16px 16px 16px 4px); background: var(--status-success-bg); color: var(--leaf-800); padding: var(--space-8) var(--space-12); font: 400 14px/20px var(--font-ui); }
.kmi-t .tx-src svg { width: 16px; height: 16px; color: var(--icon-verified); flex: none; }
.kmi-t .tx-src.stale { background: var(--status-warning-bg); color: var(--status-warning); }
.kmi-t .tx-src.stale svg { color: var(--status-warning); }
@keyframes tx-turn { to { transform: rotate(360deg); } }
@keyframes tx-shim { to { background-position: -200% 0; } }
.kmi-t .tx-empty .tx-btn { margin-top: var(--space-8); }
.kmi-t .tx-card { background: var(--bg-raised); border-radius: var(--radius-petal, 24px 24px 24px 6px); box-shadow: var(--elevation-e1); overflow: hidden; }
.kmi-t .tx-night { border-radius: var(--radius-petal, 24px 24px 24px 6px); background: linear-gradient(150deg, var(--night-ground), var(--night-ground-2)); color: var(--night-text); box-shadow: var(--elevation-e2); position: relative; overflow: hidden; }
.kmi-t .tx-tithi { width: 56px; border-radius: var(--radius-petal-sm, 16px 16px 16px 4px); background: var(--geru-50); text-align: center; padding: var(--space-8) 0; flex: none; line-height: 1.05; }
.kmi-t .tx-tithi small { display: block; font: 800 12px/16px var(--font-ui); letter-spacing: .05em; color: var(--saffron-700); }
.kmi-t .tx-tithi b { display: block; font: 800 22px/26px var(--font-ui); color: var(--text-primary); }
.kmi-t .tx-tithi span { display: block; font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); margin-top: var(--space-2); }
.kmi-t .tx-tithi.night { background: linear-gradient(150deg, var(--night-ground), var(--night-ground-2)); }
.kmi-t .tx-tithi.night small { color: var(--night-label); }
.kmi-t .tx-tithi.night b { color: var(--night-text); }
.kmi-t .tx-tithi.night span { color: var(--night-text-2); }
.kmi-t .tx-tithi.chalk { background: var(--chalk); }
.kmi-t .tx-row { display: flex; align-items: center; gap: var(--space-12); padding: var(--space-12) 0; border-bottom: 1px solid var(--sand-100); width: 100%; }
.kmi-t .tx-row:last-child { border-bottom: 0; }
.kmi-t .tx-row .ic { width: 40px; height: 40px; border-radius: var(--radius-petal-sm, 16px 16px 16px 4px); background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; flex: none; }
.kmi-t .tx-row .ic svg { width: 20px; height: 20px; }
.kmi-t .tx-row b { display: block; font: 600 16px/22px var(--font-ui); }
.kmi-t .tx-row span { display: block; font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .tx-row em { margin-left: auto; font-style: normal; font: 700 14px/20px var(--font-ui); text-align: right; white-space: nowrap; }
.kmi-t .tx-row .chev { margin-left: auto; color: var(--icon-secondary); }
.kmi-t .tx-row .chev svg { width: 20px; height: 20px; }
.kmi-t .tx-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4); width: 100%; background: var(--bg-subtle); border-radius: var(--radius-petal, 24px 24px 24px 6px); padding: var(--space-16) var(--space-8); }
.kmi-t .tx-facts div { display: grid; justify-items: center; text-align: center; gap: var(--space-4); }
.kmi-t .tx-facts svg { width: 24px; height: 24px; color: var(--geru-700); }
.kmi-t .tx-facts b { font: 700 16px/22px var(--font-ui); }
.kmi-t .tx-facts span { font: 400 12px/16px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .tx-sbar .tx-btn { margin-left: auto; }
/* Shared layout pieces */
.kmi-t .eyebrow { font: 700 13px/16px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t .meta { font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .lead { font: 400 18px/28px var(--font-ui); color: var(--text-secondary); }
.kmi-t .stack { display: grid; gap: var(--space-16); }
.kmi-t .stack.s8 { gap: var(--space-8); }
.kmi-t .stack.s24 { gap: var(--space-24); }
.kmi-t .row { display: flex; flex-wrap: wrap; gap: var(--space-12); align-items: center; }
.kmi-t .grid2 { display: grid; gap: var(--space-16); grid-template-columns: minmax(0,1fr); }
.kmi-t .grid4 { display: grid; gap: var(--space-16); grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (min-width: 720px) {
.kmi-t .grid2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (min-width: 1024px) {
.kmi-t .grid4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
.kmi-t .split { display: grid; gap: var(--space-32); grid-template-columns: minmax(0,1fr); }
@media (min-width: 1024px) {
.kmi-t .split { grid-template-columns: minmax(0,8fr) minmax(0,4fr); gap: var(--space-40); }
.kmi-t .split .rail { position: sticky; top: 88px; align-self: start; }
}
.kmi-t .hero .lead { margin-top: var(--space-16); max-width: 560px; }
.kmi-t .collage .credit { position: absolute; right: var(--space-12); top: var(--space-12); }
.kmi-t .credit { font: 400 11px/14px var(--font-ui); color: var(--white); background: rgba(21,18,16,.55); padding: 3px 8px; border-radius: var(--radius-full); }
.kmi-t .nextcard { padding: var(--space-16) var(--space-20) var(--space-20); display: grid; gap: var(--space-12); }
.kmi-t .nextcard small { font: 700 12px/16px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--night-label); }
.kmi-t .nextcard .d { display: flex; gap: var(--space-12); align-items: center; }
.kmi-t .nextcard .d b { font: 800 40px/1 var(--font-ui); color: var(--night-accent); font-variant-numeric: tabular-nums; }
.kmi-t .nextcard .d strong { display: block; font: 700 17px/22px var(--font-ui); color: var(--night-text); }
.kmi-t .nextcard .d span { display: block; font: 400 14px/20px var(--font-ui); color: var(--night-text-2); }
.kmi-t .nextcard .st { display: inline-flex; align-items: center; gap: var(--space-8); font: 600 13px/18px var(--font-ui); color: var(--night-text-2); }
.kmi-t .nextcard .st i { width: 8px; height: 8px; border-radius: 50%; background: var(--leaf-300); }
.kmi-t .nextcard .acts { display: flex; gap: var(--space-8); flex-wrap: wrap; }
.kmi-t .nightbtn { display: inline-flex; align-items: center; gap: var(--space-8); height: 40px; padding: 0 var(--space-12); border-radius: var(--radius-md); background: rgba(251,246,238,.08); border: 1px solid rgba(251,246,238,.16); color: var(--night-text); font: 600 14px/1 var(--font-ui); cursor: pointer; }
.kmi-t .nightbtn svg { width: 18px; height: 18px; }
.kmi-t .tiles { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 1fr); gap: var(--space-12); overflow-x: auto; padding-bottom: var(--space-8); scrollbar-width: thin; }
.kmi-t .dtile { background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e1); padding: var(--space-12); display: flex; gap: var(--space-12); align-items: flex-start; color: var(--text-primary); }
.kmi-t .dtile .tx-tithi { width: 60px; }
.kmi-t .dtile b { display: block; font: 600 15px/20px var(--font-ui); }
.kmi-t .dtile span { display: block; font: 400 13px/18px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .dtile .tx-pill { margin-top: var(--space-8); font-size: 12px; line-height: 16px; padding: 2px 8px; }
.kmi-t .upd { display: grid; gap: 0; background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-4) var(--space-16); }
.kmi-t .upd article { display: grid; grid-template-columns: 88px minmax(0,1fr); gap: var(--space-12); padding: var(--space-16) 0; border-bottom: 1px solid var(--sand-100); }
.kmi-t .upd article:last-child { border-bottom: 0; }
.kmi-t .upd time { font: 700 13px/18px var(--font-ui); color: var(--text-accent); }
.kmi-t .upd time small { display: block; font-weight: 400; color: var(--text-tertiary); }
.kmi-t .upd b { display: block; font: 600 16px/22px var(--font-ui); }
.kmi-t .upd p { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); margin-top: var(--space-4); }
.kmi-t .upd .tx-src { margin-top: var(--space-8); font-size: 13px; line-height: 18px; padding: 4px 10px; }
.kmi-t .tband { border: 1px solid var(--border-subtle); border-radius: var(--radius-petal-lg); padding: var(--space-24); display: grid; gap: var(--space-20); }
@media (min-width: 1024px) {
.kmi-t .tband { padding: var(--space-32) var(--space-40); }
}
.kmi-t .steps3 { display: grid; gap: var(--space-12); grid-template-columns: minmax(0,1fr); counter-reset: s; }
@media (min-width: 900px) {
.kmi-t .steps3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
.kmi-t .steps3 div { background: var(--bg-subtle); border-radius: var(--radius-petal-sm); padding: var(--space-16); counter-increment: s; }
.kmi-t .steps3 div::before { content: counter(s); display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: var(--radius-petal-sm); background: var(--geru-100); color: var(--geru-700); font: 800 14px/1 var(--font-ui); margin-bottom: var(--space-8); }
.kmi-t .steps3 b { display: block; font: 700 16px/22px var(--font-ui); }
.kmi-t .steps3 span { display: block; font: 400 15px/22px var(--font-ui); color: var(--text-secondary); margin-top: var(--space-4); }
.kmi-t .rows { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-4) var(--space-16); }
.kmi-t .rows .tx-row { color: var(--text-primary); text-decoration: none !important; }
.kmi-t .rows .tx-row:hover b { color: var(--text-link); }
.kmi-t .hubhero { position: relative; margin-top: var(--space-16); border-radius: var(--radius-petal-lg); overflow: hidden; min-height: 300px; display: grid; align-items: end; }
@media (min-width: 1024px) {
.kmi-t .hubhero { min-height: 420px; }
}
.kmi-t .hubhero img.bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kmi-t .hubhero .scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(21,18,16,0) 30%, rgba(21,18,16,.72) 100%); }
.kmi-t .hubhero .in { position: relative; padding: var(--space-24); color: var(--white); display: grid; gap: var(--space-4); }
@media (min-width: 1024px) {
.kmi-t .hubhero .in { padding: var(--space-40) var(--space-40) 96px; }
}
.kmi-t .hubhero .hn { font: 800 40px/52px var(--font-display-hi); }
@media (min-width: 1024px) {
.kmi-t .hubhero .hn { font-size: 56px; line-height: 72px; }
}
.kmi-t .hubhero .en { font: 700 20px/26px var(--font-ui); opacity: .92; }
.kmi-t .hubhero .credit { position: absolute; right: var(--space-12); top: var(--space-12); }
.kmi-t .answer { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e2); padding: var(--space-20); display: grid; gap: var(--space-12); }
@media (min-width: 1024px) {
.kmi-t .answer { padding: var(--space-24) var(--space-32); }
}
.kmi-t .answer p.a { font: 400 18px/28px var(--font-ui); color: var(--text-primary); }
.kmi-t .answer p.a b { font-weight: 700; }
.kmi-t .answer .row { gap: var(--space-8) var(--space-12); }
.kmi-t .lift { margin-top: -56px; position: relative; z-index: 2; }
@media (max-width: 1023px) {
.kmi-t .lift { margin-top: var(--space-16); }
}
.kmi-t .spokes { display: flex; gap: var(--space-8); overflow-x: auto; padding: var(--space-4) 0 var(--space-8); scrollbar-width: none; }
.kmi-t .spokes a { flex: none; height: 40px; display: inline-flex; align-items: center; gap: var(--space-8); padding: 0 var(--space-16); border-radius: var(--radius-full); border: 1px solid var(--border-subtle); background: var(--bg-raised); color: var(--sand-800); font: 600 14px/20px var(--font-ui); text-decoration: none !important; }
.kmi-t .spokes a.on { background: var(--bg-inverse); border-color: var(--bg-inverse); color: var(--text-inverse); }
.kmi-t .spokes a svg { width: 16px; height: 16px; }
.kmi-t .btable { width: 100%; border-collapse: separate; border-spacing: 0; background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); overflow: hidden; font: 400 15px/22px var(--font-ui); }
.kmi-t .btable th { text-align: left; font: 600 12px/16px var(--font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--text-tertiary); background: var(--bg-subtle); padding: var(--space-12) var(--space-16); }
.kmi-t .btable td { padding: var(--space-12) var(--space-16); border-top: 1px solid var(--sand-100); vertical-align: middle; }
.kmi-t .btable td b { display: block; font-weight: 600; }
.kmi-t .btable td small { display: block; font: 400 13px/18px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .btable tr.amrit td:first-child { box-shadow: inset 4px 0 0 var(--action-primary); }
.kmi-t .btable .tag { display: inline-flex; align-items: center; gap: 4px; font: 700 12px/16px var(--font-ui); color: var(--saffron-700); background: var(--saffron-50); border-radius: var(--radius-full); padding: 2px 8px; margin-top: 4px; }
.kmi-t .btable .cal { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 var(--space-12); border-radius: var(--radius-md); border: 1px solid var(--border-default); background: var(--bg-raised); font: 600 14px/1 var(--font-ui); color: var(--sand-800); cursor: pointer; white-space: nowrap; }
.kmi-t .btable .cal svg { width: 16px; height: 16px; }
@media (max-width: 640px) {
.kmi-t .btable, .kmi-t .btable tbody, .kmi-t .btable tr, .kmi-t .btable td { display: block; width: 100%; }
.kmi-t .btable thead { display: none; }
.kmi-t .btable tr { border-top: 1px solid var(--sand-100); padding: var(--space-12) var(--space-16); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--space-4) var(--space-12); }
.kmi-t .btable tr:first-child { border-top: 0; }
.kmi-t .btable td { padding: 0; border: 0; }
.kmi-t .btable td.c-st, .kmi-t .btable td.c-cal { grid-column: 2; grid-row: 1 / span 2; align-self: start; justify-self: end; }
.kmi-t .btable td.c-cal { grid-row: 3; }
.kmi-t .btable tr.amrit { box-shadow: inset 4px 0 0 var(--action-primary); }
.kmi-t .btable tr.amrit td:first-child { box-shadow: none; }
}
.kmi-t .faq { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: 0 var(--space-16); }
.kmi-t .faq details { border-bottom: 1px solid var(--sand-100); }
.kmi-t .faq details:last-child { border-bottom: 0; }
.kmi-t .faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: var(--space-12); align-items: center; padding: var(--space-16) 0; font: 600 16px/22px var(--font-ui); min-height: var(--touch-target); }
.kmi-t .faq summary::-webkit-details-marker { display: none; }
.kmi-t .faq summary svg { transition: transform var(--duration-base) var(--easing-standard); color: var(--icon-secondary); }
.kmi-t .faq details[open] summary svg { transform: rotate(180deg); }
.kmi-t .faq details > div { padding: 0 0 var(--space-16); color: var(--text-secondary); display: grid; gap: var(--space-8); }
.kmi-t .article { display: grid; gap: var(--space-20); }
.kmi-t .article h1 { font: 700 28px/34px var(--font-ui); letter-spacing: -.02em; }
@media (min-width: 1024px) {
.kmi-t .article h1 { font-size: 40px; line-height: 46px; }
}
.kmi-t .article h2 { font: 700 22px/28px var(--font-ui); margin-top: var(--space-16); }
.kmi-t .article h3 { font: 600 18px/24px var(--font-ui); }
.kmi-t .article p, .kmi-t .article li { font: 400 17px/28px var(--font-ui); color: var(--text-primary); }
.kmi-t .article ul, .kmi-t .article ol { margin: 0; padding-left: 22px; display: grid; gap: var(--space-8); }
.kmi-t .byline { display: flex; flex-wrap: wrap; gap: var(--space-8) var(--space-16); align-items: center; font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .byline .av { width: 36px; height: 36px; border-radius: 50%; background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; font: 700 14px/1 var(--font-ui); }
.kmi-t .byline b { color: var(--text-primary); }
.kmi-t .prose .btable td, .kmi-t .prose .btable th { font-size: 15px; }
.kmi-t .hilink { display: flex; justify-content: space-between; align-items: center; padding: var(--space-16); color: var(--text-primary); font: 700 18px/24px var(--font-hi); text-decoration: none !important; }
/* v4 tools */
.kmi-t .tx-seg button { flex: 1; text-align: center; padding: var(--space-8) var(--space-12); border: 0; background: transparent; border-radius: var(--radius-sm); font: 600 14px/20px var(--font-ui); color: var(--text-tertiary); white-space: nowrap; cursor: pointer; min-height: 40px; }
.kmi-t .tx-seg button.on { background: var(--bg-raised); color: var(--text-primary); box-shadow: var(--elevation-e1); }
.kmi-t .tx-seg.fit { max-width: 100%; overflow-x: auto; }
.kmi-t button.tx-chip { cursor: pointer; }
.kmi-t .tx-chip { min-height: 40px; }
.kmi-t .illus { position: absolute; left: 12px; bottom: 12px; z-index: 2; font: 600 12px/16px var(--font-ui); letter-spacing: .02em; color: var(--white); background: rgba(20, 16, 12, .62); padding: 4px 10px; border-radius: var(--radius-full); }
.kmi-t .hero2 { padding-block: var(--space-32) var(--space-40); }
.kmi-t .h2top { display: grid; gap: var(--space-24); align-items: end; }
@media (min-width: 1024px) {
.kmi-t .h2top { grid-template-columns: minmax(0,7fr) minmax(0,4fr); gap: var(--space-48); }
.kmi-t .hero2 { padding-block: var(--space-48) var(--space-64); }
}
.kmi-t .hero2 h1 { font: 700 34px/40px var(--font-ui); letter-spacing: -.025em; margin-top: var(--space-8); text-wrap: balance; }
.kmi-t .hero2 h1.hi-title { font: 700 34px/48px var(--font-display-hi); letter-spacing: 0; }
@media (min-width: 1024px) {
.kmi-t .hero2 h1 { font-size: 52px; line-height: 58px; }
.kmi-t .hero2 h1.hi-title { font-size: 48px; line-height: 66px; }
}
.kmi-t .hero2 .lead { margin-top: var(--space-12); max-width: 560px; }
.kmi-t .hero2 .tx-ksearch { margin-top: var(--space-20); max-width: 560px; cursor: text; }
.kmi-t .hero2 .tx-ksearch input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: 400 16px/22px var(--font-ui); color: var(--text-primary); }
.kmi-t .h2next .tx-night { width: 100%; }
.kmi-t .bigks { display: grid; gap: var(--space-16); margin-top: var(--space-32); }
@media (min-width: 720px) {
.kmi-t .bigks { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
.kmi-t .bigk { position: relative; display: block; min-height: 300px; border-radius: var(--radius-petal); overflow: hidden; color: var(--white); box-shadow: var(--elevation-e2); isolation: isolate; }
@media (min-width: 1024px) {
.kmi-t .bigk { min-height: 380px; }
}
.kmi-t .bigk img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform var(--duration-slow) var(--easing-standard); }
.kmi-t .bigk:hover img { transform: scale(1.04); }
.kmi-t .bigk .shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(14,10,6,0) 30%, rgba(14,10,6,.78) 100%); }
.kmi-t .bigk .in { position: absolute; inset: auto 0 0 0; padding: var(--space-20); display: grid; gap: var(--space-4); justify-items: start; }
.kmi-t .bigk .in b { font: 700 28px/40px var(--font-display-hi); }
.kmi-t .bigk .in em { font: 600 16px/22px var(--font-ui); font-style: normal; opacity: .92; }
.kmi-t .bigk .when { display: inline-flex; gap: var(--space-8); align-items: center; font: 500 14px/20px var(--font-ui); opacity: .92; }
.kmi-t .bigk .when svg, .kmi-t .bigk .go svg { width: 16px; height: 16px; }
.kmi-t .bigk .go { margin-top: var(--space-8); display: inline-flex; gap: var(--space-8); align-items: center; font: 700 15px/20px var(--font-ui); background: var(--white); color: var(--sand-900); padding: 8px 14px; border-radius: var(--radius-full); }
.kmi-t .bigk .tx-pill { margin-bottom: var(--space-4); }
.kmi-t .intents { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-12); }
@media (min-width: 720px) {
.kmi-t .intents { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
.kmi-t .intent { display: flex; align-items: center; gap: var(--space-12); padding: var(--space-16); background: var(--bg-raised); border: 1px solid var(--border-subtle); border-radius: var(--radius-petal-sm); color: var(--text-primary); min-height: 72px; transition: border-color var(--duration-fast), box-shadow var(--duration-fast); }
.kmi-t .intent:hover { border-color: var(--border-strong); box-shadow: var(--elevation-e1); }
.kmi-t .intent .ii { flex: none; width: 44px; height: 44px; border-radius: 50%; background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; }
.kmi-t .intent .ii svg { width: 22px; height: 22px; }
.kmi-t .intent b { font: 600 15px/20px var(--font-ui); }
.kmi-t .planner { display: grid; gap: var(--space-20); }
@media (min-width: 1024px) {
.kmi-t .planner { grid-template-columns: minmax(0,6fr) minmax(0,5fr); gap: var(--space-32); align-items: start; }
}
.kmi-t .psteps { display: grid; gap: var(--space-12); }
.kmi-t .pstep { display: flex; gap: var(--space-12); background: var(--bg-raised); border-radius: var(--radius-petal-sm); padding: var(--space-16); box-shadow: var(--elevation-e1); }
.kmi-t .pstep > div { display: grid; gap: var(--space-12); min-width: 0; flex: 1; }
.kmi-t .pstep b { font: 700 17px/22px var(--font-ui); }
.kmi-t .pn { flex: none; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--bg-muted); font: 700 15px/20px var(--font-ui); color: var(--text-secondary); }
.kmi-t .pn svg { width: 18px; height: 18px; }
.kmi-t .pstep.done .pn { background: var(--leaf-600); color: var(--white); }
.kmi-t .presult { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e2); padding: var(--space-20); min-height: 220px; }
@media (min-width: 1024px) {
.kmi-t .presult { position: sticky; top: 96px; }
}
.kmi-t .pempty { display: grid; justify-items: center; text-align: center; gap: var(--space-12); color: var(--text-tertiary); font: 400 15px/22px var(--font-ui); padding-block: var(--space-16); }
.kmi-t .pres { display: grid; gap: var(--space-16); }
.kmi-t .pres .hd small { display: block; font: 700 12px/16px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t .pres .hd b { font: 700 20px/26px var(--font-ui); }
.kmi-t .pdays { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-8); }
.kmi-t .pdays li { display: flex; gap: var(--space-12); align-items: center; padding: var(--space-8); border-radius: var(--radius-md); background: var(--bg-subtle); }
.kmi-t .pdays li > div { flex: 1; min-width: 0; display: grid; gap: 2px; }
.kmi-t .pdays li b { font: 600 15px/20px var(--font-ui); }
.kmi-t .pdays li span { font: 400 13px/18px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .pdays .tx-tithi { width: 56px; flex: none; }
.kmi-t .tag { display: inline-flex !important; align-items: center; gap: 4px; font: 700 12px/16px var(--font-ui) !important; color: var(--saffron-700) !important; }
.kmi-t .tag svg { width: 14px; height: 14px; }
.kmi-t .pnone { display: flex; gap: var(--space-12); align-items: flex-start; padding: var(--space-12); border-radius: var(--radius-md); background: var(--bg-subtle); font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .pnone svg { width: 20px; height: 20px; flex: none; }
.kmi-t .ptips { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-8); }
.kmi-t .ptips li { display: flex; gap: var(--space-8); font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .ptips svg { width: 18px; height: 18px; flex: none; color: var(--leaf-600); margin-top: 2px; }
.kmi-t .pnext { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.kmi-t .tirthline { border-top: 1px solid var(--border-subtle); padding-top: var(--space-12); }
.kmi-t .cmp3 { display: grid; gap: var(--space-8); }
.kmi-t .c3 { display: grid; gap: 6px; padding: var(--space-12); border-radius: var(--radius-md); background: var(--bg-subtle); color: var(--text-primary); }
.kmi-t .c3 b { font: 700 16px/22px var(--font-ui); }
.kmi-t .c3 .tx-pill { justify-self: start; }
.kmi-t .c3 span { display: flex; gap: var(--space-8); align-items: center; font: 400 14px/20px var(--font-ui); color: var(--text-secondary); }
.kmi-t .c3 span svg { width: 16px; height: 16px; flex: none; }
.kmi-t .tl2 { display: grid; gap: var(--space-20); }
.kmi-t .tl2 .track { position: relative; height: 84px; margin-inline: 8px; }
.kmi-t .tl2 .base { position: absolute; left: 0; right: 0; top: 44px; height: 4px; border-radius: 2px; background: var(--bg-muted); }
.kmi-t .tl2 .yr { position: absolute; top: 0; transform: translateX(-50%); font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); font-variant-numeric: tabular-nums; }
.kmi-t .tl2 .yr::after { content: ""; position: absolute; left: 50%; top: 22px; width: 1px; height: 18px; background: var(--border-default); }
.kmi-t .tl2 .span { position: absolute; top: 34px; height: 24px; border-radius: 12px; min-width: 24px; display: grid; place-items: center; transform: translateX(0); }
.kmi-t .tl2 .span b { font: 700 12px/16px var(--font-ui); color: var(--white); }
.kmi-t .tl2 .span.s-past { background: var(--sand-400); }
.kmi-t .tl2 .span.s-official { background: var(--leaf-600); }
.kmi-t .tl2 .span.s-provisional { background: var(--marigold-500); }
.kmi-t .tl2 .span.s-expected { background: var(--neel-400); }
.kmi-t .tl2 .now { position: absolute; top: 26px; bottom: 0; width: 2px; background: var(--saffron-600); }
.kmi-t .tl2 .now em { position: absolute; top: 46px; left: 50%; transform: translateX(-50%); font: 700 11px/14px var(--font-ui); font-style: normal; color: var(--saffron-700); white-space: nowrap; }
.kmi-t .tlcards { display: grid; gap: var(--space-12); grid-auto-flow: column; grid-auto-columns: minmax(220px, 1fr); overflow-x: auto; padding-bottom: var(--space-8); }
.kmi-t .tlc { display: grid; gap: 4px; align-content: start; padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-raised); box-shadow: var(--elevation-e1); color: var(--text-primary); border-top: 4px solid var(--bg-muted); }
.kmi-t .tlc.s-past { border-top-color: var(--sand-400); background: var(--bg-subtle); }
.kmi-t .tlc.s-official { border-top-color: var(--leaf-600); }
.kmi-t .tlc.s-provisional { border-top-color: var(--marigold-500); }
.kmi-t .tlc.s-expected { border-top-color: var(--neel-400); }
.kmi-t .tlc .n { width: 24px; height: 24px; border-radius: 50%; background: var(--bg-muted); display: grid; place-items: center; font: 700 12px/16px var(--font-ui); }
.kmi-t .tlc small { font: 600 13px/18px var(--font-ui); color: var(--text-tertiary); margin-top: 4px; }
.kmi-t .tlc b { font: 700 17px/22px var(--font-ui); }
.kmi-t .tlc .meta { font: 400 13px/18px var(--font-ui); color: var(--text-secondary); }
.kmi-t .tlc .tx-pill { justify-self: start; margin-top: 6px; }
.kmi-t .uteaser { display: grid; border-radius: var(--radius-petal); overflow: hidden; background: var(--bg-raised); box-shadow: var(--elevation-e2); color: var(--text-primary); }
@media (min-width: 900px) {
.kmi-t .uteaser { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
}
.kmi-t .uteaser .ph { position: relative; min-height: 240px; }
.kmi-t .uteaser .ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kmi-t .uteaser .bd { padding: var(--space-24); display: grid; gap: var(--space-12); align-content: center; justify-items: start; }
@media (min-width: 1024px) {
.kmi-t .uteaser .bd { padding: var(--space-40); }
}
.kmi-t .uteaser h2 { font: 700 28px/34px var(--font-ui); letter-spacing: -.015em; }
.kmi-t .uteaser p { font: 400 16px/24px var(--font-ui); color: var(--text-secondary); max-width: 46ch; }
.kmi-t .uchips { display: flex; flex-wrap: wrap; gap: 6px; }
.kmi-t .uchips span { font: 600 12px/16px var(--font-ui); padding: 4px 10px; border-radius: var(--radius-full); background: var(--geru-50); color: var(--geru-700); }
.kmi-t .sstrip { display: grid; gap: var(--space-12); background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-20); }
.kmi-t .strack { position: relative; height: 88px; margin-inline: 12px; }
.kmi-t .strack .mo { position: absolute; top: 0; font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .strack .mo::before { content: ""; position: absolute; left: 0; top: 18px; width: 1px; height: 60px; background: var(--border-subtle); }
.kmi-t .strack .line { position: absolute; top: 58px; height: 4px; border-radius: 2px; background: var(--geru-100); }
.kmi-t .strack .now { position: absolute; top: 26px; height: 58px; width: 2px; background: var(--saffron-600); }
.kmi-t .strack .now em { position: absolute; top: auto; bottom: -14px; left: 50%; transform: translateX(-50%); font: 700 11px/14px var(--font-ui); font-style: normal; color: var(--saffron-700); }
.kmi-t .sd { position: absolute; top: 60px; width: 16px; height: 16px; border-radius: 50%; transform: translate(-50%, -50%); border: 2px solid var(--white); background: var(--geru-500); box-shadow: 0 0 0 1px var(--geru-500); cursor: pointer; padding: 0; transition: transform var(--duration-fast); }
.kmi-t .sd::after { content: ""; position: absolute; inset: -12px; }
.kmi-t .sd.amrit { width: 24px; height: 24px; background: var(--saffron-500); box-shadow: 0 0 0 1px var(--saffron-600); }
.kmi-t .sd.on { transform: translate(-50%, -50%) scale(1.25); box-shadow: 0 0 0 3px var(--sand-900); }
.kmi-t .sd.up { top: 34px; }
.kmi-t .sd:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 3px; }
.kmi-t .sdetail { display: flex; flex-wrap: wrap; gap: var(--space-12); align-items: center; padding: var(--space-12); border-radius: var(--radius-md); background: var(--bg-subtle); }
.kmi-t .sdetail .tx-tithi { width: 60px; flex: none; }
.kmi-t .sdetail .tx { flex: 1; min-width: 180px; display: grid; gap: 2px; }
.kmi-t .sdetail .tx b { font: 700 17px/22px var(--font-ui); }
.kmi-t .sdetail .tx span { font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .sdetail .cal { display: inline-flex; gap: 6px; align-items: center; border: 1.5px solid var(--action-secondary-border); background: var(--bg-raised); border-radius: var(--radius-full); padding: 6px 12px; font: 600 14px/20px var(--font-ui); color: var(--sand-800); cursor: pointer; }
.kmi-t .sdetail .cal svg { width: 16px; height: 16px; }
.kmi-t .gallery { display: grid; gap: var(--space-12); grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (min-width: 900px) {
.kmi-t .gallery { grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 220px 220px; }
.kmi-t .gallery .big { grid-row: span 2; }
.kmi-t .gallery figure:nth-child(4) { grid-column: span 2; }
}
.kmi-t .gallery figure { margin: 0; position: relative; border-radius: var(--radius-petal-sm); overflow: hidden; min-height: 160px; background: var(--bg-muted); }
.kmi-t .gallery .big { grid-column: span 2; min-height: 240px; }
@media (min-width: 900px) {
.kmi-t .gallery .big { grid-column: auto; }
}
.kmi-t .gallery img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kmi-t .gallery figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 24px 12px 8px; font: 500 12px/16px var(--font-ui); color: var(--white); background: linear-gradient(180deg, transparent, rgba(14,10,6,.72)); }
.kmi-t .listen { justify-self: start; width: max-content; max-width: 100%; display: inline-flex; align-items: center; gap: 6px; margin-top: var(--space-12); border: 1px solid var(--border-subtle); background: var(--bg-raised); color: var(--sand-800); border-radius: var(--radius-full); padding: 6px 14px 6px 10px; font: 600 14px/20px var(--font-ui); cursor: pointer; min-height: 36px; }
.kmi-t .listen svg { width: 18px; height: 18px; color: var(--geru-600); }
.kmi-t .listen.on { background: var(--bg-inverse); color: var(--text-inverse); border-color: var(--bg-inverse); }
.kmi-t .listen.on svg { color: var(--text-inverse); }
.kmi-t .term { display: inline; border: 0; padding: 0; background: none; font: inherit; color: var(--text-link); text-decoration: underline dotted; text-underline-offset: 4px; cursor: help; }
.kmi-t .termpop { position: absolute; z-index: 95; background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e3); padding: var(--space-16); display: grid; gap: var(--space-8); justify-items: start; }
.kmi-t .termpop b { font: 700 16px/22px var(--font-ui); }
.kmi-t .termpop b span { font: 600 15px/22px var(--font-hi); color: var(--geru-700); margin-left: 6px; }
.kmi-t .termpop p { font: 400 14px/21px var(--font-ui); color: var(--text-secondary); }
.kmi-t .flow { display: grid; gap: var(--space-12); counter-reset: fs; }
@media (min-width: 900px) {
.kmi-t .flow { grid-template-columns: repeat(5, minmax(0,1fr)); }
}
.kmi-t .fs { position: relative; display: grid; gap: 4px; align-content: start; padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-raised); box-shadow: var(--elevation-e1); }
.kmi-t .fs .fi { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--neel-50); color: var(--neel-700); margin-bottom: 6px; }
.kmi-t .fs .fi svg { width: 20px; height: 20px; }
.kmi-t .fs small { font: 700 11px/14px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t .fs b { font: 700 16px/22px var(--font-ui); }
.kmi-t .fs span { font: 400 14px/20px var(--font-ui); color: var(--text-secondary); }
@media (min-width: 900px) {
.kmi-t .fs:not(:last-child)::after { content: ""; position: absolute; right: -10px; top: 36px; width: 8px; height: 8px; border-top: 2px solid var(--border-strong); border-right: 2px solid var(--border-strong); transform: rotate(45deg); }
}
.kmi-t .flownote { display: flex; gap: 6px; align-items: center; margin-top: var(--space-12); }
.kmi-t .flownote svg { width: 16px; height: 16px; flex: none; }
.kmi-t .uhero { position: relative; min-height: 440px; display: flex; align-items: flex-end; color: var(--white); isolation: isolate; overflow: hidden; }
@media (min-width: 1024px) {
.kmi-t .uhero { min-height: 520px; }
}
.kmi-t .uhero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.kmi-t .uhero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(14,10,6,.05) 20%, rgba(14,10,6,.82) 100%); }
.kmi-t .uhero .illus { left: auto; right: 16px; bottom: auto; top: 16px; }
.kmi-t .uhero .wrap { width: 100%; }
.kmi-t .uhero .in { padding-block: var(--space-48) var(--space-40); max-width: 720px; display: grid; gap: var(--space-8); }
.kmi-t .uhero h1 { font: 700 40px/46px var(--font-ui); letter-spacing: -.025em; text-wrap: balance; }
@media (min-width: 1024px) {
.kmi-t .uhero h1 { font-size: 60px; line-height: 64px; }
}
.kmi-t .eyebrow.light { color: var(--marigold-200); }
.kmi-t .hi-sub.light, .kmi-t .lead.light { color: rgba(255,255,255,.88); }
.kmi-t .hi-sub { font: 600 18px/28px var(--font-hi); color: var(--geru-700); }
.kmi-t .chnav { position: sticky; top: calc(env(safe-area-inset-top, 0px) + 64px); z-index: 20; background: var(--bg-page); border-bottom: 1px solid var(--border-subtle); }
.kmi-t .chnav .wrap { display: flex; gap: var(--space-8); overflow-x: auto; padding-block: var(--space-8); scrollbar-width: none; }
.kmi-t .chnav .wrap::-webkit-scrollbar { display: none; }
.kmi-t .chnav a { flex: none; display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; border-radius: var(--radius-full); font: 600 14px/20px var(--font-ui); color: var(--text-secondary); background: var(--bg-subtle); }
.kmi-t .chnav a span { width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; background: var(--bg-raised); font: 700 11px/14px var(--font-ui); }
.kmi-t .uwrap { display: grid; gap: var(--space-16); padding-bottom: var(--space-64); }
.kmi-t .chap { padding-top: var(--space-48); scroll-margin-top: 140px; display: grid; gap: var(--space-16); }
.kmi-t .chh { display: flex; gap: var(--space-16); align-items: center; }
.kmi-t .chh .cn { flex: none; width: 48px; height: 48px; border-radius: var(--radius-petal-sm); background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; font: 700 22px/28px var(--font-ui); }
.kmi-t .chh h2 { font: 700 26px/32px var(--font-ui); letter-spacing: -.015em; text-wrap: balance; }
@media (min-width: 1024px) {
.kmi-t .chh h2 { font-size: 32px; line-height: 38px; }
}
.kmi-t .ulead { font: 400 18px/29px var(--font-ui); color: var(--text-secondary); max-width: 68ch; }
.kmi-t .tapline { display: flex; gap: 6px; align-items: center; font: 600 14px/20px var(--font-ui); color: var(--text-accent); }
.kmi-t .tapline svg { width: 16px; height: 16px; }
.kmi-t .ufig { position: relative; margin: 0; border-radius: var(--radius-petal); overflow: hidden; }
.kmi-t .ufig img { width: 100%; aspect-ratio: 16 / 7; object-fit: cover; display: block; }
.kmi-t .ufig figcaption { font: 500 12px/16px var(--font-ui); color: var(--text-tertiary); padding: 8px 4px 0; }
.kmi-t .drops { display: grid; gap: var(--space-16); }
.kmi-t .dropsrow { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: var(--space-8); }
.kmi-t .drop { display: grid; justify-items: center; gap: 8px; padding: var(--space-12) var(--space-4); border-radius: var(--radius-petal-sm); border: 1px solid var(--border-subtle); background: var(--bg-raised); cursor: pointer; font: inherit; color: var(--text-primary); min-height: 96px; }
.kmi-t .drop b { font: 600 13px/17px var(--font-ui); text-align: center; }
.kmi-t .dshape { width: 22px; height: 30px; background: var(--marigold-400); border-radius: 50% 50% 50% 50% / 62% 62% 38% 38%; clip-path: path("M11 0C15 7 22 13 22 19A11 11 0 0 1 0 19C0 13 7 7 11 0Z"); transition: transform var(--duration-base) var(--easing-emphasised); }
.kmi-t .drop.on { border-color: var(--sand-900); box-shadow: var(--elevation-e2); }
.kmi-t .drop.on .dshape { background: var(--saffron-500); transform: translateY(4px) scale(1.15); }
.kmi-t .dcard { display: grid; border-radius: var(--radius-petal); overflow: hidden; background: var(--bg-raised); box-shadow: var(--elevation-e2); animation: kfade var(--duration-slow) var(--easing-standard); }
@media (min-width: 720px) {
.kmi-t .dcard { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
}
.kmi-t .dcard .ph { position: relative; min-height: 220px; }
.kmi-t .dcard .ph img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kmi-t .dcard .bd { padding: var(--space-20); display: grid; gap: var(--space-8); align-content: center; }
.kmi-t .dcard .bd b { font: 700 22px/28px var(--font-ui); }
.kmi-t .dcard .bd > span:not(.hi-title) { display: flex; gap: var(--space-8); align-items: flex-start; font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .dcard .bd > span svg { width: 18px; height: 18px; flex: none; margin-top: 2px; color: var(--neel-600); }
.kmi-t .dcard .go { display: inline-flex; gap: 6px; align-items: center; font: 700 15px/20px var(--font-ui); margin-top: var(--space-4); }
.kmi-t .dcard .go svg { width: 16px; height: 16px; }
.kmi-t .dcard .hi-title, .kmi-t .tcard .hi-title { color: var(--geru-700); }
@keyframes kfade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
.kmi-t .dcard, .kmi-t .bigk img, .kmi-t .dshape { animation: none; transition: none; }
}
.kmi-t .p4 { display: grid; gap: var(--space-12); grid-template-columns: repeat(2, minmax(0,1fr)); }
@media (min-width: 900px) {
.kmi-t .p4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
.kmi-t .p4c { position: relative; display: block; min-height: 220px; border-radius: var(--radius-petal-sm); overflow: hidden; color: var(--white); isolation: isolate; }
@media (min-width: 900px) {
.kmi-t .p4c { min-height: 300px; }
}
.kmi-t .p4c img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.kmi-t .p4c::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, transparent 35%, rgba(14,10,6,.8)); }
.kmi-t .p4c .in { position: absolute; left: 0; right: 0; bottom: 0; padding: var(--space-12); display: grid; gap: 2px; }
.kmi-t .p4c b { font: 700 22px/32px var(--font-display-hi); }
.kmi-t .p4c em { font: 600 14px/18px var(--font-ui); font-style: normal; }
.kmi-t .p4c .in > span { display: flex; gap: 6px; align-items: center; font: 500 13px/18px var(--font-ui); opacity: .9; }
.kmi-t .p4c .in > span svg { width: 14px; height: 14px; }
.kmi-t .sky { display: grid; gap: var(--space-24); align-items: center; background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-20); }
@media (min-width: 900px) {
.kmi-t .sky { grid-template-columns: 340px minmax(0,1fr); padding: var(--space-32); }
}
.kmi-t .dial { max-width: 340px; width: 100%; justify-self: center; }
.kmi-t .dial svg { width: 100%; height: auto; display: block; }
.kmi-t .dial path { fill: var(--bg-subtle); stroke: var(--bg-raised); stroke-width: 2; transition: fill var(--duration-base); }
.kmi-t .dial path.on { fill: var(--marigold-200); }
.kmi-t .dial text { font: 600 11px var(--font-ui); fill: var(--text-tertiary); }
.kmi-t .dial text.on { fill: var(--sand-900); font-weight: 800; }
.kmi-t .dial .core { fill: var(--neel-900); }
.kmi-t .dial .ct { fill: var(--neel-100); font: 500 12px var(--font-ui); }
.kmi-t .dial .ct.b { fill: var(--white); font: 700 16px var(--font-ui); }
.kmi-t .dial .jup { fill: var(--marigold-500); stroke: var(--white); stroke-width: 3; }
.kmi-t .dial .jl { fill: var(--sand-900); font: 700 11px var(--font-ui); }
.kmi-t .skytx { display: grid; gap: var(--space-12); }
.kmi-t .skytx .big b { font: 700 24px/30px var(--font-ui); }
.kmi-t .skytx p { font: 400 16px/25px var(--font-ui); color: var(--text-secondary); }
.kmi-t .types { display: grid; gap: var(--space-16); }
.kmi-t .tcard { display: grid; gap: var(--space-20); background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-20); animation: kfade var(--duration-base) var(--easing-standard); }
@media (min-width: 900px) {
.kmi-t .tcard { grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; padding: var(--space-32); }
}
.kmi-t .tcard > div:first-child { display: grid; gap: var(--space-8); }
.kmi-t .tcard b { font: 700 22px/28px var(--font-ui); }
.kmi-t .tcard p { font: 400 16px/24px var(--font-ui); color: var(--text-secondary); }
.kmi-t .tcard .meta { display: flex; gap: 6px; align-items: flex-start; }
.kmi-t .tcard .meta svg { width: 16px; height: 16px; flex: none; margin-top: 2px; }
.kmi-t .ruler { position: relative; height: 72px; margin-inline: 24px; }
.kmi-t .ruler .rl { position: absolute; left: 0; right: 0; top: 24px; height: 4px; background: var(--bg-muted); border-radius: 2px; }
.kmi-t .ruler .tk { position: absolute; top: 38px; transform: translateX(-50%); font: 600 13px/18px var(--font-ui); color: var(--text-tertiary); white-space: nowrap; }
.kmi-t .ruler .tk i { position: absolute; left: 50%; top: -18px; width: 2px; height: 12px; background: var(--border-strong); }
.kmi-t .ruler .mk { position: absolute; top: 14px; width: 24px; height: 24px; transform: translateX(-50%); border-radius: 50%; background: var(--saffron-500); border: 3px solid var(--white); box-shadow: var(--elevation-e1); transition: left var(--duration-slow) var(--easing-emphasised); }
.kmi-t .akhbox { display: grid; gap: var(--space-12); }
.kmi-t .akhlist { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.kmi-t .akhlist span { display: inline-flex; gap: 6px; align-items: center; padding: 10px 14px; border-radius: var(--radius-petal-sm); background: var(--bg-raised); box-shadow: var(--elevation-e1); font: 600 15px/20px var(--font-ui); animation: kfade var(--duration-base) var(--easing-standard); }
.kmi-t .akhlist svg { width: 16px; height: 16px; color: var(--geru-600); }
.kmi-t .quiz { display: grid; gap: var(--space-12); }
.kmi-t .qq { background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e1); padding: var(--space-16); display: grid; gap: var(--space-12); }
.kmi-t .qq > b { display: flex; gap: var(--space-12); font: 700 17px/24px var(--font-ui); }
.kmi-t .qq > b span { flex: none; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--bg-muted); font-size: 13px; }
.kmi-t .qo { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.kmi-t .qo button { display: inline-flex; gap: 6px; align-items: center; min-height: 44px; padding: 8px 16px; border-radius: var(--radius-full); border: 1.5px solid var(--border-default); background: var(--bg-raised); font: 600 15px/20px var(--font-ui); color: var(--text-primary); cursor: pointer; }
.kmi-t .qo button svg { width: 16px; height: 16px; }
.kmi-t .qo button.right { background: var(--status-success-bg); border-color: var(--leaf-600); color: var(--leaf-800); }
.kmi-t .qo button.wrong { background: var(--status-error-bg); border-color: var(--error-600); color: var(--error-700); }
.kmi-t .qo button.dim { opacity: .5; }
.kmi-t .qo button:disabled { cursor: default; }
.kmi-t .qx { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .qscore { display: flex; flex-wrap: wrap; gap: var(--space-8); align-items: center; padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-subtle); font: 500 16px/22px var(--font-ui); }
.kmi-t .bk { display: grid; gap: var(--space-12); margin-top: var(--space-24); }
.kmi-t .bkq { display: grid; gap: var(--space-12); padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-raised); box-shadow: var(--elevation-e1); }
.kmi-t .bkq > b { display: flex; gap: var(--space-12); font: 600 16px/23px var(--font-ui); }
.kmi-t .bkq > b span { flex: none; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--bg-muted); font: 700 13px/16px var(--font-ui); }
.kmi-t .bkres { margin-top: var(--space-8); }
.kmi-t .bkres ul { margin: 8px 0 0 18px; padding: 0; }
.kmi-t .bkres li { font: 400 14px/21px var(--font-ui); }
.kmi-t .pack { display: grid; gap: var(--space-16); margin-top: var(--space-24); }
.kmi-t .pack > .row { display: flex; flex-wrap: wrap; gap: var(--space-12); justify-content: space-between; }
.kmi-t .pbar { height: 8px; border-radius: 4px; background: var(--bg-muted); overflow: hidden; }
.kmi-t .pbar i { display: block; height: 100%; background: var(--leaf-600); border-radius: 4px; transition: width var(--duration-base) var(--easing-standard); }
.kmi-t .pgroups { display: grid; gap: var(--space-12); }
@media (min-width: 720px) {
.kmi-t .pgroups { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
.kmi-t .pgroups section { background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e1); padding: var(--space-16); display: grid; gap: 4px; align-content: start; }
.kmi-t .pgroups h3 { display: flex; gap: var(--space-8); align-items: center; font: 700 16px/22px var(--font-ui); margin-bottom: 6px; }
.kmi-t .pgroups h3 svg { width: 18px; height: 18px; color: var(--geru-600); }
.kmi-t .pitem { display: flex; gap: var(--space-12); align-items: flex-start; padding: 8px 4px; border-radius: var(--radius-sm); font: 400 15px/22px var(--font-ui); cursor: pointer; min-height: 40px; }
.kmi-t .pitem input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--leaf-600); flex: none; }
.kmi-t .pitem.on span { color: var(--text-tertiary); text-decoration: line-through; }
.kmi-t .chnav a.on { background: var(--bg-inverse); color: var(--text-inverse); }
.kmi-t .chnav a.on span { background: var(--white); color: var(--sand-900); }
@media (max-width: 719px) {
.kmi-t .bigks { grid-auto-flow: column; grid-auto-columns: 84%; overflow-x: auto; scroll-snap-type: x mandatory; margin-inline: calc(-1 * var(--space-16)); padding: 0 var(--space-16) var(--space-8); scroll-padding-inline: var(--space-16); scrollbar-width: none; }
.kmi-t .bigks::-webkit-scrollbar { display: none; }
.kmi-t .bigk { scroll-snap-align: start; min-height: 320px; }
.kmi-t .tl2 .track { display: none; }
}
@media (max-width: 519px) {
.kmi-t .types .tx-seg { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
.kmi-t .dropsrow { gap: 6px; }
.kmi-t .drop b { font-size: 12px; }
}
.kmi-t .bigk .cr, .kmi-t .p4c .cr, .kmi-t .dcard .ph .cr { position: absolute; top: 8px; right: 8px; z-index: 2; font: 500 10px/14px var(--font-ui); color: var(--white); background: rgba(14,10,6,.55); padding: 2px 8px; border-radius: var(--radius-full); max-width: calc(100% - 16px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kmi-t .bigk .cr { z-index: 0; }
/* WordPress placement */
.kmi-t--understand .uhero { border-radius: var(--radius-petal); }
.kmi-t .uhero .in { padding: var(--space-48) var(--space-20) var(--space-32); max-width: 760px; display: grid; gap: var(--space-8); }
@media (min-width: 1024px) { .kmi-t .uhero .in { padding: var(--space-64) var(--space-40) var(--space-48); } }
.kmi-t .chnav { top: var(--kmi-sticky-top, 0px); margin-top: var(--space-12); }
.kmi-t .chnav .chw { display: flex; gap: var(--space-8); overflow-x: auto; padding-block: var(--space-8); scrollbar-width: none; }
.kmi-t .chnav .chw::-webkit-scrollbar { display: none; }
.kmi-t .uwrap { display: grid; gap: var(--space-16); padding-bottom: var(--space-32); }
.kmi-t .chap { padding-top: var(--space-40); scroll-margin-top: calc(var(--kmi-sticky-top, 0px) + 64px); display: grid; gap: var(--space-16); }
.kmi-t .chap.deeper h2 { font: 700 24px/30px var(--font-ui); }
.kmi-t .skyp { display: grid; gap: var(--space-24); align-items: center; }
@media (min-width: 900px) { .kmi-t .skyp { grid-template-columns: 340px minmax(0,1fr); } }
.kmi-t .sky { display: grid; gap: var(--space-16); }
.kmi-t .skytx .pl { display: block; font: 600 14px/20px var(--font-ui); color: var(--text-tertiary); }
@media (min-width: 900px) { .kmi-t .sky { grid-template-columns: minmax(0,1fr); } }
.kmi-t.kmi-termpop { position: absolute; z-index: 9999; background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e3); padding: var(--space-16); display: grid; gap: var(--space-8); justify-items: start; font: 400 14px/21px var(--font-ui); }
.kmi-t.kmi-termpop b { font: 700 16px/22px var(--font-ui); }
.kmi-t.kmi-termpop b span { font: 600 15px/22px var(--font-hi); color: var(--geru-700); margin-left: 6px; }
.kmi-t.kmi-termpop p { color: var(--text-secondary); margin: 0; }
.kmi-toast { position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); z-index: 9999; max-width: min(520px, calc(100vw - 32px)); background: #241c16; color: #fff; padding: 12px 16px; border-radius: 12px; font: 500 15px/22px system-ui, sans-serif; box-shadow: 0 12px 36px rgba(15,10,8,.25); }
.kmi-toast[hidden] { display: none; }
.kmi-t .tcard h3 { font: 700 22px/28px var(--font-ui); }
.kmi-t .qq .qt, .kmi-t .bkq .qt { display: flex; gap: var(--space-12); font: 700 17px/24px var(--font-ui); }
.kmi-t .bkq .qt { font-weight: 600; font-size: 16px; }
.kmi-t .qq .qt span, .kmi-t .bkq .qt span { flex: none; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--bg-muted); font-size: 13px; }
.kmi-t .bkhelp { display: grid; gap: 6px; padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-subtle); font: 400 14px/20px var(--font-ui); color: var(--text-secondary); margin-top: var(--space-8); }
.kmi-t .bkhelp b { color: var(--text-primary); font-size: 15px; }
.kmi-t .prow { display: flex; flex-wrap: wrap; gap: var(--space-12); justify-content: space-between; }
.kmi-t .planner-static ul { list-style: disc; padding-left: 20px; margin-top: 8px; display: grid; gap: 4px; }
.kmi-t .planner-static a { color: var(--text-link); text-decoration: underline; }
.kmi-t .pres .hd b { display: block; }
.kmi-t .uhero h1, .kmi-t .uhero h2 { color: var(--white); margin: 0; }
.kmi-t h1, .kmi-t h2, .kmi-t h3 { letter-spacing: -.015em; }
.kmi-t .p4c .cr, .kmi-t .bigk .cr, .kmi-t .dcard .ph .cr { white-space: normal; overflow: visible; text-overflow: clip; border-radius: 8px; line-height: 13px; padding: 3px 7px; }
.kmi-t .bigk .shade, .kmi-t .p4c::after { background: linear-gradient(180deg, rgba(14,10,6,.08) 0%, rgba(14,10,6,.5) 40%, rgba(14,10,6,.88) 100%); }
.kmi-t .acards { display: grid; gap: var(--space-12); }
@media (min-width: 720px) { .kmi-t .acards { grid-template-columns: repeat(3, minmax(0,1fr)); } }
.kmi-t .acard { display: grid; gap: 6px; align-content: start; padding: var(--space-20); border: 1px solid var(--border-subtle); border-radius: var(--radius-petal); background: var(--bg-raised); box-shadow: var(--elevation-e1); color: var(--text-primary); transition: box-shadow var(--duration-fast); }
.kmi-t .acard:hover { box-shadow: var(--elevation-e2); }
.kmi-t .acard small { font: 700 12px/16px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t .acard b { font: 700 18px/24px var(--font-ui); }
.kmi-t .acard span { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .acard em { display: inline-flex; gap: 6px; align-items: center; margin-top: 4px; font: 600 14px/20px var(--font-ui); font-style: normal; color: var(--text-link); }
.kmi-t .calm { display: grid; gap: var(--space-24); }
.kmi-t .month h3 { display: flex; align-items: baseline; gap: var(--space-12); font: 700 20px/26px var(--font-ui); margin-bottom: var(--space-8); }
.kmi-t .month h3 span { font: 500 14px/20px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .calrow { display: flex; gap: var(--space-12); align-items: center; padding: var(--space-12); border-radius: var(--radius-petal-sm); background: var(--bg-raised); border: 1px solid var(--border-subtle); margin-bottom: var(--space-8); }
.kmi-t .calrow > div { flex: 1; min-width: 0; display: grid; gap: 2px; }
.kmi-t .calrow .tx-tithi { width: 60px; flex: none; }
.kmi-t .calrow .where { display: inline-flex; gap: 4px; align-items: center; font: 700 12px/16px var(--font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t .calrow .where svg { width: 14px; height: 14px; }
.kmi-t .calrow b { font: 600 16px/22px var(--font-ui); }
.kmi-t .calrow span { font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); }
@media (max-width: 560px) { .kmi-t .calrow { flex-wrap: wrap; } .kmi-t .calrow .tx-pill { margin-left: 72px; } }
.kmi-t .pstep .q { font: 700 17px/22px var(--font-ui); }

/* Page heroes (home, Kumbh hub, guide page), from the prototype's hero2, hubhero, answer and split blocks */
.kmi-t--hero { padding-block: var(--space-24) var(--space-8); }
@media (min-width: 1024px) { .kmi-t--hero { padding-block: var(--space-32) var(--space-16); } }
.kmi-t--hero[data-type="home"] .hero2 { padding-block: var(--space-8) 0; }
.kmi-t--hero .hero2 .bigks { margin-top: var(--space-32); }
.kmi-t--hero .hero2 .h2next .tx-night { width: 100%; }
.kmi-t--hero .tx-ksearch { padding: 0 var(--space-8) 0 var(--space-16); }
.kmi-t--hero .tx-ksearch .mk { width: 22px; height: 22px; color: var(--text-tertiary); display: grid; place-items: center; }
.kmi-t--hero .tx-ksearch .mk svg { width: 20px; height: 20px; }
.kmi-t--hero .tx-ksearch input { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: transparent; box-shadow: none; padding: 0; font: 400 16px/22px var(--font-ui); color: var(--text-primary); }
.kmi-t--hero .tx-ksearch .mic { cursor: pointer; }
.kmi-t--hero .tx-ksearch:focus-within { outline: 2px solid var(--saffron-600); outline-offset: 2px; }
.kmi-t--hero h1 { color: var(--text-primary); margin: 0; }
.kmi-t--hero .hubhero { margin-top: 0; }
.kmi-t--hero .hubhero h1.en { font: 700 20px/26px var(--font-ui); color: var(--white); opacity: .95; letter-spacing: 0; }
.kmi-t--hero .hubhero h1.en span { font-weight: 600; }
.kmi-t--hero .hubhero .credit { z-index: 1; }
.kmi-t--hero .spokes { margin-top: var(--space-24); }
.kmi-t--hero .spokes a { white-space: nowrap; }
.kmi-t--hero .article { gap: var(--space-16); }
.kmi-t--hero .article > p { font: 400 17px/28px var(--font-ui); color: var(--text-primary); }
.kmi-t--hero .answer .hnote { font: 400 14px/21px var(--font-ui); color: var(--text-tertiary); }
.kmi-t--hero .answer .hnote strong { color: var(--text-secondary); font-weight: 600; }
.kmi-t--hero .hphoto { margin: 0; display: grid; gap: 6px; }
.kmi-t--hero .hphoto img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); }
.kmi-t--hero .hphoto figcaption { font: 400 12px/16px var(--font-ui); color: var(--text-tertiary); }
@media (max-width: 1023px) { .kmi-t--hero .rail { order: 2; } }
.kmi-t--hero[data-type="articles"] .bloghd { display: grid; gap: var(--space-12); max-width: 880px; }
.kmi-t--hero[data-type="articles"] .bloghd h1 { font: 700 28px/34px var(--font-ui); letter-spacing: -.02em; }
@media (min-width: 1024px) { .kmi-t--hero[data-type="articles"] .bloghd h1 { font-size: 40px; line-height: 46px; } }
.kmi-t--hero .filters { display: flex; flex-wrap: wrap; gap: var(--space-8); }
.kmi-t--hero .feat { display: grid; gap: var(--space-16); grid-template-columns: minmax(0,1fr); margin-top: var(--space-24); }
@media (min-width: 1024px) { .kmi-t--hero .feat { grid-template-columns: minmax(0,7fr) minmax(0,5fr); } }
.kmi-t--hero .fcard { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); overflow: hidden; display: grid; color: var(--text-primary); }
.kmi-t--hero .fcard .ph { margin: var(--space-4) var(--space-4) 0; border-radius: var(--radius-petal-sm); overflow: hidden; aspect-ratio: 16/8; }
.kmi-t--hero .fcard .ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kmi-t--hero .fcard .bd { padding: var(--space-16) var(--space-20) var(--space-20); display: grid; gap: var(--space-8); }
.kmi-t--hero .fcard small { font: 700 13px/16px var(--font-ui); color: var(--text-accent); }
.kmi-t--hero .fcard b { font: 700 22px/28px var(--font-ui); letter-spacing: -.01em; }
.kmi-t--hero .artcard { background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e1); padding: var(--space-16); display: grid; grid-template-columns: 48px minmax(0,1fr); gap: var(--space-12); color: var(--text-primary); align-items: start; }
.kmi-t--hero .artcard:hover { box-shadow: var(--elevation-e2); }
.kmi-t--hero .artcard:hover b { color: var(--text-link); }
.kmi-t--hero .artcard .ic { width: 48px; height: 48px; border-radius: var(--radius-petal-sm); background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; }
.kmi-t--hero .artcard .ic svg { width: 22px; height: 22px; }
.kmi-t--hero .artcard .tx { display: grid; gap: 4px; min-width: 0; }
.kmi-t--hero .artcard small { font: 600 13px/18px var(--font-ui); color: var(--text-accent); }
.kmi-t--hero .artcard b { font: 700 17px/23px var(--font-ui); }
.kmi-t--hero .artcard .sm { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t--hero .artcard .mt { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; font: 400 13px/18px var(--font-ui); color: var(--text-tertiary); margin-top: 2px; }
.kmi-t--hero .artcard .mt svg { width: 14px; height: 14px; }
.kmi-t--hero .artcard .mt i { font-style: normal; }
.kmi-t--updates .split { align-items: start; }
.kmi-t .railcard { padding: var(--space-20); display: grid; gap: 8px; color: var(--text-primary); }
.kmi-t .railcard b { font: 700 17px/22px var(--font-ui); }
.kmi-t .railcard em { display: inline-flex; align-items: center; gap: 6px; font: 600 14px/20px var(--font-ui); font-style: normal; color: var(--text-link); }
.kmi-t a.railcard:hover { box-shadow: var(--elevation-e2); }
.kmi-t .btwrap { overflow-x: auto; }
.kmi-t .btable a { color: var(--text-primary); text-decoration: underline; text-underline-offset: 3px; }
.kmi-t .btsrc { margin-top: var(--space-12); justify-content: space-between; }
.kmi-t .btsrc .all, .kmi-t .tband .all { display: inline-flex; align-items: center; gap: 4px; font: 600 15px/20px var(--font-ui); color: var(--text-link); }
.kmi-t .pcard3 { background: var(--bg-raised); border-radius: var(--radius-petal-sm); box-shadow: var(--elevation-e1); padding: var(--space-16); display: grid; grid-template-columns: 48px minmax(0,1fr); gap: var(--space-12); color: var(--text-primary); align-items: center; }
.kmi-t .pcard3:hover { box-shadow: var(--elevation-e2); }
.kmi-t .pcard3 .ic { width: 48px; height: 48px; border-radius: var(--radius-petal-sm); background: var(--geru-50); color: var(--geru-700); display: grid; place-items: center; }
.kmi-t .pcard3 .ic svg { width: 22px; height: 22px; }
.kmi-t .pcard3 b { font: 700 16px/22px var(--font-ui); display: block; }
.kmi-t .pcard3 span:not(.ic) { font: 400 14px/20px var(--font-ui); color: var(--text-tertiary); display: block; margin-top: 2px; }
@media (max-width: 560px) { .kmi-t .grid4 { grid-template-columns: minmax(0,1fr); } }
.kmi-t .faq { background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: 0 var(--space-20); max-width: 760px; }
.kmi-t .faq summary .kmi-i { width: 18px; height: 18px; }
.kmi-t .tband h2 { font: 700 24px/30px var(--font-ui); margin-top: 8px; }
.kmi-t .tx-facts { padding: var(--space-16); }
.kmi-t--hero .split.solo { grid-template-columns: minmax(0,1fr); max-width: 860px; }
.kmi-t--hero .guidecard { display: grid; gap: 4px; padding: var(--space-16) var(--space-20); color: var(--text-primary); }
.kmi-t--hero .guidecard small { font: 700 12px/16px var(--font-ui); letter-spacing: .06em; text-transform: uppercase; color: var(--text-accent); }
.kmi-t--hero .guidecard b { font: 700 17px/22px var(--font-ui); color: var(--text-link); }
.kmi-t--hero .hilink svg { width: 18px; height: 18px; }
.kmi-t--hero .byline > span { display: inline-flex; align-items: center; gap: 6px; }
.kmi-t--hero .byline svg { width: 16px; height: 16px; }

/* Push 1 (18 Oct 2026): countdown, phone date, illustration label on hero photos */
.kmi-t .nextcard .cd { display:flex; align-items:center; gap:6px; margin-top:8px; font-size:13px; font-weight:600; color:var(--saffron-300, #f6b26b); }
.kmi-t .nextcard .cd svg { width:15px; height:15px; }
.kmi-t .nextcard .d b { white-space:nowrap; min-width:2ch; font-size:clamp(40px, 11vw, 56px); }
.kmi-t .hphoto { position:relative; }
.kmi-t .hphoto.is-illus .illus, .kmi-t .hphoto .illus { position:absolute; left:10px; top:10px; bottom:auto; right:auto; width:auto; height:auto; white-space:nowrap; }
.kmi-t .subcal { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; margin-top:14px; padding:14px 16px; border:1px solid var(--sand-200, #e8dcc8); border-radius:12px; background:var(--sand-50, #fbf7f0); }
.kmi-t .subcal > svg { width:22px; height:22px; color:var(--saffron-600, #c96a1b); flex:0 0 auto; }
.kmi-t .subcal > div:first-of-type { flex:1 1 240px; min-width:0; display:flex; flex-direction:column; gap:2px; }
.kmi-t .subcal span { font-size:13px; color:var(--sand-700, #6b5b45); }
.kmi-t .subcal .acts { display:flex; flex-wrap:wrap; gap:8px; }
.kmi-t .stlegend { list-style:none; margin:0 0 14px; padding:0; display:grid; gap:8px; }
.kmi-t .stlegend li { display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:14px; }
.kmi-t .sboard td small a { color:inherit; text-decoration:underline; }
.kmi-t .sbh { margin:28px 0 12px; font-size:22px; }
.kmi-t .upd article small { display:block; font-size:12px; font-weight:600; color:var(--sand-700, #6b5b45); }
@media (max-width: 480px) {
  .kmi-t .sstrip .strack { overflow-x:auto; }
  .kmi-t .sstrip .sd { min-width:22px; min-height:22px; }
}

/* ===================== push 2 (1.4.0): maps, glossary, akharas, routes, share card, calendar views ===================== */
/* Static place maps (OpenStreetMap data, drawn at build time). */
.kmi-t .kmap { margin: 0; display: grid; gap: var(--space-16); }
@media (min-width: 900px) { .kmi-t .kmap { grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); align-items: start; } }
.kmi-t .kmap .msvg { border-radius: var(--radius-petal); overflow: hidden; box-shadow: var(--elevation-e1); background: var(--sand-50); }
.kmi-t .kmap svg { display: block; width: 100%; height: auto; }
.kmi-t .kmap .m-land { fill: var(--sand-50, #faf6ee); }
.kmi-t .kmap .m-water { fill: #cfe4f0; stroke: #b9d7e8; stroke-width: .6; }
.kmi-t .kmap .m-river { fill: none; stroke: #6aa2c4; stroke-opacity: .8; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.kmi-t .kmap .m-canal { fill: none; stroke: #6aa2c4; stroke-opacity: .7; stroke-width: 1.6; }
.kmi-t .kmap .m-road { fill: none; stroke: #fff; stroke-width: 2.2; stroke-linecap: round; }
.kmi-t .kmap .m-road-major { fill: none; stroke: var(--sand-200, #ecdcc0); stroke-width: 3.6; stroke-linecap: round; }
.kmi-t .kmap .m-rail { fill: none; stroke: var(--sand-700, #6b5b45); stroke-width: 1.6; stroke-dasharray: 6 4; }
.kmi-t .kmap .m-label { font: italic 600 15px/1 Georgia, serif; fill: #2f6e93; }
.kmi-t .kmap .m-pt circle { fill: var(--sand-800, #4a3f35); stroke: #fff; stroke-width: 2.5; }
.kmi-t .kmap .m-pt text { fill: #fff; font: 700 14px/1 var(--font-ui); text-anchor: middle; }
.kmi-t .kmap .m-pt-rail circle, .kmi-t .kmap .m-pt-bus circle { fill: var(--neel-900, #1d2a44); }
.kmi-t .kmap .m-pt.is-focus circle { fill: var(--saffron-600, #d23e02); r: 18; stroke-width: 4; filter: drop-shadow(0 0 6px rgba(210,62,2,.55)); }
.kmi-t .kmap .m-scale rect { fill: #fff; opacity: .9; }
.kmi-t .kmap .m-scale path { stroke: var(--sand-900); stroke-width: 2; }
.kmi-t .kmap .m-scale text, .kmi-t .kmap .m-north text { font: 600 11px/1 var(--font-ui); text-anchor: middle; fill: var(--sand-900); }
.kmi-t .kmap .m-north path { fill: var(--sand-900); }
.kmi-t .kmap figcaption { display: grid; gap: var(--space-12); font: 400 14px/20px var(--font-ui); color: var(--text-secondary); }
.kmi-t .kmap figcaption > b { font: 700 16px/22px var(--font-ui); color: var(--text-primary); }
.kmi-t .mlegend { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-8); }
.kmi-t .mlegend li { display: flex; gap: var(--space-12); align-items: flex-start; padding: var(--space-8); border-radius: var(--radius-md); }
.kmi-t .mlegend li.on { background: var(--saffron-50, #fdf1e4); }
.kmi-t .mlegend .mn, .kmi-t .rgraph .mn { flex: none; width: 26px; height: 26px; border-radius: 50%; background: var(--sand-800, #4a3f35); color: #fff; display: inline-grid; place-items: center; font: 700 13px/1 var(--font-ui); }
.kmi-t .mlegend li.on .mn { background: var(--saffron-600); }
.kmi-t .mlegend b { display: block; color: var(--text-primary); font-weight: 600; }
.kmi-t .mlegend small { display: inline-flex; gap: 4px; align-items: center; color: var(--text-tertiary); font-size: 12px; }
.kmi-t .mlegend small svg { width: 14px; height: 14px; }
.kmi-t .mnote { display: flex; gap: var(--space-8); margin: 0; }
.kmi-t .mnote svg { flex: none; width: 16px; height: 16px; margin-top: 2px; }
.kmi-t .mcredit { margin: 0; font-size: 12px; color: var(--text-tertiary); }
.kmi-t .mcredit a { color: inherit; }

/* Route graphic (city route pages). */
.kmi-t .rgraph { display: grid; gap: var(--space-12); background: var(--bg-raised); border-radius: var(--radius-petal); box-shadow: var(--elevation-e1); padding: var(--space-16); }
.kmi-t .rnode { display: flex; gap: var(--space-12); align-items: center; }
.kmi-t .rnode svg { width: 22px; height: 22px; color: var(--geru-700); }
.kmi-t .rnode small { display: block; font: 600 12px/16px var(--font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--text-tertiary); }
.kmi-t .rnode b { font: 700 18px/24px var(--font-ui); color: var(--text-primary); }
.kmi-t .rlanes { list-style: none; margin: 0 0 0 10px; padding: 0 0 0 var(--space-20); border-left: 3px dashed var(--sand-300, #d9c7a6); display: grid; gap: var(--space-12); }
.kmi-t .rl { display: flex; gap: var(--space-12); align-items: flex-start; }
.kmi-t .rl .ic { flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--sand-100); display: grid; place-items: center; }
.kmi-t .rl .ic svg { width: 18px; height: 18px; color: var(--sand-800); }
.kmi-t .rl small { display: block; font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .rl .ra { display: flex; flex-wrap: wrap; gap: 4px var(--space-8); align-items: center; margin-top: 4px; font: 400 15px/22px var(--font-ui); }
.kmi-t .rl .ra small { flex-basis: 100%; font-weight: 400; padding-left: 34px; }
.kmi-t .rgraph + .meta { margin: var(--space-8) 0 var(--space-16); }

/* Glossary. */
.kmi-t .glbar { position: sticky; top: var(--kmi-sticky-top, 0); z-index: 2; display: grid; gap: var(--space-12); padding: var(--space-12) 0; background: var(--bg-canvas, var(--sand-50)); }
.kmi-t .glsearch { display: flex; align-items: center; gap: var(--space-8); height: 48px; padding: 0 var(--space-16); border: 1px solid var(--border-subtle); border-radius: var(--radius-full); background: var(--bg-raised); }
.kmi-t .glsearch svg { width: 18px; height: 18px; color: var(--text-tertiary); }
.kmi-t .glsearch input { flex: 1; min-width: 0; border: 0; background: transparent; font: 400 16px/24px var(--font-ui); color: var(--text-primary); outline: none; }
.kmi-t .glbar .tx-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
.kmi-t .glbar .tx-chip small { opacity: .7; font-weight: 500; }
.kmi-t .glaz { display: flex; flex-wrap: wrap; gap: 4px; }
.kmi-t .glaz a { min-width: 32px; height: 32px; display: inline-grid; place-items: center; border-radius: var(--radius-md); font: 700 14px/1 var(--font-ui); color: var(--text-link); text-decoration: none; background: var(--bg-subtle); }
.kmi-t .gllist { margin: 0; display: grid; gap: var(--space-8); }
.kmi-t .glt { position: relative; padding: var(--space-16); border-radius: var(--radius-petal-sm); background: var(--bg-raised); box-shadow: var(--elevation-e1); scroll-margin-top: 180px; }
.kmi-t .glt.hit, .kmi-t .glt:target { outline: 2px solid var(--saffron-600); }
.kmi-t .glanchor { position: absolute; top: -180px; }
.kmi-t .glt dt { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .glt dt b { font: 700 18px/24px var(--font-ui); color: var(--text-primary); }
.kmi-t .glt dt [lang="hi"] { font-weight: 600; color: var(--geru-700); }
.kmi-t .glt dt small { display: block; color: var(--text-tertiary); }
.kmi-t .glt dd { margin: var(--space-8) 0 0; font: 400 16px/24px var(--font-ui); color: var(--text-primary); }
.kmi-t .glt dd p { margin: 0 0 var(--space-4); }
.kmi-t .glt dd .more { color: var(--text-secondary); font-size: 15px; }
.kmi-t .glmore { display: inline-flex; gap: 2px; align-items: center; font: 600 14px/20px var(--font-ui); color: var(--text-link); }
.kmi-t .glmore svg { width: 14px; height: 14px; }
.kmi-t sup.srcn { font-size: 11px; margin-left: 2px; }
.kmi-t sup.srcn a { color: var(--text-link); text-decoration: none; }
.kmi-t .srclist { margin-top: var(--space-24); font: 400 14px/20px var(--font-ui); }
.kmi-t .srclist summary { cursor: pointer; display: flex; gap: var(--space-8); align-items: center; font-weight: 700; list-style: none; }
.kmi-t .srclist summary svg { width: 16px; height: 16px; }
.kmi-t .srclist ol { margin: var(--space-8) 0 0; padding-left: var(--space-24); display: grid; gap: 4px; color: var(--text-secondary); }
.kmi-t .srclist li:target { background: var(--saffron-50); }

/* Akhara explorer. */
.kmi-t .akintro { font: 400 17px/26px var(--font-ui); max-width: 68ch; }
.kmi-t .akabout { font: 400 15px/22px var(--font-ui); color: var(--text-secondary); max-width: 68ch; }
.kmi-t .akgrid { display: grid; gap: var(--space-12); margin-top: var(--space-16); }
@media (min-width: 640px) { .kmi-t .akgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .kmi-t .akgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.kmi-t .akc { display: flex; flex-direction: column; gap: var(--space-8); padding: var(--space-16); border-radius: var(--radius-petal); background: var(--bg-raised); box-shadow: var(--elevation-e1); border-top: 4px solid var(--geru-500, #b5582f); }
.kmi-t .akc[data-akgrp="bairagi"] { border-top-color: var(--saffron-600); }
.kmi-t .akc[data-akgrp="udasin"] { border-top-color: var(--neel-600, #3f6f9e); }
.kmi-t .akc[data-akgrp="nirmal"] { border-top-color: var(--leaf-600); }
.kmi-t .akc header small { font: 600 12px/16px var(--font-ui); letter-spacing: .04em; text-transform: uppercase; color: var(--text-tertiary); }
.kmi-t .akc h3 { margin: 2px 0 0; font: 700 20px/26px var(--font-ui); }
.kmi-t .akc header [lang="hi"] { font: 600 15px/22px var(--font-ui); color: var(--geru-700); }
.kmi-t .akc .full { margin: 0; font: 400 14px/20px var(--font-ui); color: var(--text-secondary); }
.kmi-t .akc dl { margin: 0; display: grid; gap: var(--space-8); }
.kmi-t .akc dl div { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: var(--space-8); font: 400 14px/20px var(--font-ui); }
.kmi-t .akc dt { display: flex; gap: 4px; align-items: center; color: var(--text-tertiary); font-weight: 600; }
.kmi-t .akc dt svg { width: 14px; height: 14px; }
.kmi-t .akc dd { margin: 0; color: var(--text-primary); }
.kmi-t .akc .kf { margin: 0; font: 400 15px/22px var(--font-ui); }
.kmi-t .akc .aksrc { margin: auto 0 0; font-size: 12px; color: var(--text-tertiary); }
.kmi-t .aknote { display: flex; gap: var(--space-8); margin-top: var(--space-16); }
.kmi-t .aknote svg { flex: none; width: 16px; height: 16px; margin-top: 2px; }

/* Share this date. */
.kmi-t .sharewrap { display: grid; gap: var(--space-16); align-items: center; }
@media (min-width: 720px) { .kmi-t .sharewrap { grid-template-columns: 280px minmax(0, 1fr); } }
.kmi-t .sharecard { display: grid; justify-items: center; gap: 2px; padding: var(--space-24) var(--space-16); border-radius: var(--radius-petal); background: var(--neel-950, #1d2a44); color: #fff; text-align: center; border-top: 6px solid var(--saffron-600); max-width: 320px; }
.kmi-t .sharecard small { color: var(--sand-200); font: 600 13px/18px var(--font-ui); }
.kmi-t .sharecard .dd { font: 800 72px/1 var(--font-ui); }
.kmi-t .sharecard .mo { font: 600 16px/22px var(--font-ui); }
.kmi-t .sharecard strong { margin-top: var(--space-8); font: 700 18px/24px var(--font-ui); color: var(--sand-100); }
.kmi-t .sharecard.amrit strong { color: var(--saffron-500, #ee9a4a); }
.kmi-t .sharecard .ti, .kmi-t .sharecard .st { font: 400 13px/18px var(--font-ui); color: var(--sand-200); }
.kmi-t .sharecard .site { margin-top: var(--space-8); font: 700 13px/18px var(--font-ui); }
.kmi-t .sharewrap .acts { display: flex; flex-wrap: wrap; gap: var(--space-8); }

/* Calendar: Kumbh filter, list or month view, add on every row. */
.kmi-t .calbar { display: flex; flex-wrap: wrap; gap: var(--space-12); justify-content: space-between; align-items: center; margin-bottom: var(--space-12); }
.kmi-t .calbar .tx-chips { flex-wrap: wrap; }
.kmi-t .kdot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--sand-500); flex: none; }
.kmi-t .kdot.k-haridwar { background: var(--saffron-600); }
.kmi-t .kdot.k-nashik { background: var(--leaf-600, #3e7d4a); }
.kmi-t .kdot.k-ujjain { background: var(--geru-500, #b5582f); }
.kmi-t .kdot.k-prayagraj { background: var(--neel-600, #3f6f9e); }
.kmi-t .kdot.amrit { box-shadow: 0 0 0 2px var(--bg-raised, #fff), 0 0 0 4px var(--saffron-700); }
.kmi-t .tx-chip .kdot { margin-right: 2px; }
.kmi-t .callegend { display: flex; flex-wrap: wrap; gap: var(--space-12); align-items: center; }
.kmi-t .callegend span { display: inline-flex; gap: 6px; align-items: center; }
.kmi-t .callegend .kdot.amrit { background: transparent; }
.kmi-t .calrow .where .kdot { margin-right: 4px; }
.kmi-t .calrow .cal { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0; min-width: max-content; height: 36px; padding: 0 var(--space-12); border-radius: var(--radius-md); border: 1px solid var(--border-default); background: var(--bg-raised); color: var(--sand-800); font: 600 14px/1 var(--font-ui); white-space: nowrap; cursor: pointer; box-shadow: none; text-transform: none; }
.kmi-t .calrow .cal svg { width: 16px; height: 16px; }
.kmi-t .calrow .cal:hover, .kmi-t .calrow .cal:focus-visible { border-color: var(--action-secondary-border); background: var(--bg-raised); color: var(--text-primary); }
.kmi-t .calgrid { display: grid; gap: var(--space-16); }
@media (min-width: 720px) { .kmi-t .calgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.kmi-t .gmonth { padding: var(--space-16); border-radius: var(--radius-petal); background: var(--bg-raised); box-shadow: var(--elevation-e1); }
.kmi-t .gmonth h3 { margin: 0 0 var(--space-8); font: 700 18px/24px var(--font-ui); }
.kmi-t .gwd, .kmi-t .gdays { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.kmi-t .gwd span { font: 600 11px/16px var(--font-ui); color: var(--text-tertiary); text-align: center; text-transform: uppercase; }
.kmi-t .gc { min-height: 44px; border-radius: var(--radius-md); display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 2px; padding: 4px 2px; font: 500 14px/18px var(--font-ui); color: var(--text-secondary); text-decoration: none; }
.kmi-t .gc i { font-style: normal; }
.kmi-t .gc.on { background: var(--saffron-50, #fdf1e4); color: var(--text-primary); font-weight: 700; }
.kmi-t a.gc.on:hover { background: var(--sand-100); }
.kmi-t .gc.off { background: transparent; opacity: .35; }
.kmi-t .gc .dots { display: flex; gap: 3px; }
.kmi-t .gc .dots .kdot { width: 8px; height: 8px; }
.kmi-t .gc small { display: none; font: 500 10px/12px var(--font-ui); text-align: center; color: var(--text-secondary); overflow-wrap: anywhere; }
@media (min-width: 1024px) { .kmi-t .gc small { display: block; } }

/* Bathing-days table: Amrit Snans first, then "Show all". */
.kmi-t .btmore { margin-top: var(--space-8); }

/* Planner: saved plan, example and start city. */
.kmi-t .pexample { opacity: .96; }
.kmi-t .pexample > .meta { display: flex; gap: var(--space-8); align-items: center; }
.kmi-t .pexample > .meta svg { width: 16px; height: 16px; flex: none; }
.kmi-t .psaved { display: flex; flex-wrap: wrap; gap: var(--space-8); align-items: center; margin-top: var(--space-12); }
.kmi-t .psaved svg { width: 16px; height: 16px; }

/* Booking checker: tappable helpline. */
.kmi-t a.tel, .kmi-t .bkcall a.tel { font-weight: 700; white-space: nowrap; }
.kmi-t .bkcall { display: block; }
.kmi-t .bkcall svg { width: 16px; height: 16px; vertical-align: -3px; margin-right: 4px; }
.kmi-t .bkhelp a { color: var(--text-link); text-decoration: underline; text-underline-offset: 3px; }

/* Nearby places and related articles. */
.kmi-t--related h2 { margin: var(--space-32) 0 var(--space-12); }
.kmi-t .topics { margin-top: var(--space-8); }
.kmi-t .topics .tx-chip small { opacity: .7; }
.kmi-foldbar { display: flex; justify-content: center; max-width: 1160px; margin: var(--space-24) auto; padding: 0 var(--space-16); }
/* Home on phones: the Kumbh cards come straight after the search box, before the next-date card. */
@media (max-width: 719px) {
  .kmi-t--hero[data-type="home"] .hero2 { display: flex; flex-direction: column; }
  .kmi-t--hero[data-type="home"] .h2top { display: contents; }
  .kmi-t--hero[data-type="home"] .h2copy { order: 1; }
  .kmi-t--hero[data-type="home"] .hero2 > .kmi-t--kumbh-cards { order: 2; }
  .kmi-t--hero[data-type="home"] .bigks { margin-top: var(--space-24); }
  .kmi-t--hero[data-type="home"] .h2next { order: 3; margin-top: var(--space-24); }
}
/* Galleries of 3, 5 or 6 credited photos (push 2): no empty cells. */
@media (min-width: 900px) {
  .kmi-t .gallery { grid-template-rows: none; grid-auto-rows: 220px; }
  .kmi-t .gallery figure:nth-child(4):not(:last-child) { grid-column: auto; }
  .kmi-t .gallery figure.big:nth-last-child(3) { grid-row: auto; }
  .kmi-t .gallery figure:nth-child(6):last-child { grid-column: 1 / -1; }
}
/* Offline pack download cards (N11). */
.kmi-t .offpacks { display: grid; gap: var(--space-12); }
@media (min-width: 720px) { .kmi-t .offpacks { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.kmi-t .offpack { display: flex; gap: var(--space-12); align-items: flex-start; padding: var(--space-16); text-decoration: none; color: var(--text-primary); }
.kmi-t .offpack .ic { flex: none; width: 40px; height: 40px; border-radius: 12px; background: var(--saffron-50, #fdf1e4); display: grid; place-items: center; }
.kmi-t .offpack .ic svg { width: 20px; height: 20px; color: var(--geru-700); }
.kmi-t .offpack small { display: block; font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .offpack b { display: block; font: 700 17px/23px var(--font-ui); }
.kmi-t .offpack .meta { display: block; margin-top: 2px; }
.kmi-t .offpack em { margin-left: auto; align-self: center; display: inline-flex; gap: 4px; align-items: center; font: 600 14px/20px var(--font-ui); font-style: normal; color: var(--text-link); white-space: nowrap; }
.kmi-t .offpack em svg { width: 16px; height: 16px; }

/* ===================== push 3 (1.4.2): snan muhurat panel, satellite before and after ===================== */
.kmi-t .mpanels { display: grid; gap: var(--space-16); }
.kmi-t .mpanel { padding: var(--space-16); border-radius: var(--radius-petal); background: var(--bg-raised); box-shadow: var(--elevation-e1); }
.kmi-t .mhd { display: flex; flex-wrap: wrap; gap: 4px var(--space-12); align-items: baseline; justify-content: space-between; margin-bottom: var(--space-12); }
.kmi-t .mhd b { font: 700 18px/24px var(--font-ui); }
.kmi-t .mhd span { font: 500 13px/18px var(--font-ui); color: var(--text-tertiary); }
.kmi-t .mbar { position: relative; height: 70px; margin: 0 4px var(--space-12); }
.kmi-t .mtrack { position: absolute; left: 0; right: 0; top: 22px; height: 26px; border-radius: 13px; background: var(--sand-100, #f3ead9); overflow: hidden; }
.kmi-t .mseg { position: absolute; top: 0; bottom: 0; display: flex; align-items: center; padding: 0 8px; overflow: hidden; white-space: nowrap; font: 600 12px/1 var(--font-ui); }
.kmi-t .mseg.s0 { background: var(--saffron-50, #fdf1e4); color: var(--geru-700, #9a3f22); box-shadow: inset -2px 0 0 #fff; }
.kmi-t .mseg.s1 { background: var(--neel-50, #eef1fa); color: var(--neel-700, #2e3a6e); }
.kmi-t .mmark { position: absolute; top: 0; bottom: 0; width: 0; }
.kmi-t .mmark i { position: absolute; left: -1px; top: 16px; height: 38px; border-left: 2px solid var(--sand-800, #4a3f35); }
.kmi-t .mmark em { position: absolute; top: 0; left: 0; transform: translateX(-50%); white-space: nowrap; font: 600 11px/14px var(--font-ui); font-style: normal; color: var(--text-secondary); }
.kmi-t .mmark.sun em { transform: none; }
.kmi-t .mmark.sank i { border-left-color: var(--saffron-600, #d23e02); border-left-style: dashed; }
.kmi-t .mmark.sank em { top: auto; bottom: 0; color: var(--saffron-700, #a93402); }
.kmi-t .mrows { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; font: 400 15px/22px var(--font-ui); }
.kmi-t .mrows li { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: var(--space-12); padding-bottom: 6px; border-bottom: 1px solid var(--border-subtle); }
.kmi-t .mrows .k { color: var(--text-tertiary); font-weight: 600; font-size: 13px; }
@media (max-width: 520px) { .kmi-t .mrows li { grid-template-columns: 1fr; gap: 0; } }
.kmi-t .msrc { display: flex; gap: 6px; align-items: flex-start; margin: var(--space-12) 0 0; }
.kmi-t .msrc svg, .kmi-t .mnote2 svg { flex: none; width: 15px; height: 15px; margin-top: 2px; }
.kmi-t .mnote2 { display: flex; gap: var(--space-8); margin: var(--space-16) 0 0; font: 400 14px/20px var(--font-ui); color: var(--text-secondary); max-width: 72ch; }
/* Satellite before and after: without JavaScript both images show one under the other. */
.kmi-t .satfig { margin: 0; display: grid; gap: var(--space-12); }
.kmi-t .satbox { position: relative; width: 100%; max-width: 100%; border-radius: var(--radius-petal); overflow: hidden; background: var(--sand-100); box-shadow: var(--elevation-e1); }
.kmi-t .satbox img { display: block; width: 100%; height: auto; }
.kmi-t .satbox:not(.live) { aspect-ratio: auto !important; }
.kmi-t .satbox:not(.live) .satrange, .kmi-t .satbox:not(.live) .satline { display: none; }
.kmi-t .satbox.live img { position: absolute; inset: 0; height: 100%; object-fit: cover; }
.kmi-t .satbox.live img.bef { opacity: 0; }
.kmi-t .satbox.live img.bef.on { opacity: 1; }
.kmi-t .satbox.live .aftwrap { position: absolute; inset: 0; }
.kmi-t .satlab { position: absolute; top: 10px; padding: 4px 10px; border-radius: var(--radius-full); background: rgba(14, 10, 6, .72); color: #fff; font: 600 12px/16px var(--font-ui); pointer-events: none; }
.kmi-t .satbox:not(.live) .satlab { display: none; }
.kmi-t .satlab.l { left: 10px; }
.kmi-t .satlab.r { right: 10px; }
.kmi-t .satline { position: absolute; top: 0; bottom: 0; left: var(--sat, 50%); width: 3px; margin-left: -1.5px; background: #fff; box-shadow: 0 0 6px rgba(0, 0, 0, .5); pointer-events: none; }
.kmi-t .satline::after { content: "‹ ›"; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 34px; height: 34px; border-radius: 50%; background: #fff; color: var(--sand-900); display: grid; place-items: center; font: 700 14px/1 var(--font-ui); box-shadow: 0 1px 6px rgba(0,0,0,.35); }
.kmi-t .satrange { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; touch-action: pan-y; }
.kmi-t .satfig figcaption { display: grid; gap: 4px; font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .satfig figcaption b { font: 700 17px/24px var(--font-ui); color: var(--text-primary); }
.kmi-t .satfig figcaption small { font-size: 12px; color: var(--text-tertiary); }

/* ===================== 1.5.0: corrections log, key dates on articles, articles index boxes ===================== */
.kmi-t .corlog { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-12); }
.kmi-t .corlog li { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: var(--space-12); padding: var(--space-12) 0; border-bottom: 1px solid var(--border-subtle); }
.kmi-t .corlog time { font: 700 15px/20px var(--font-ui); color: var(--geru-700); }
.kmi-t .corlog time small { display: block; font-weight: 500; color: var(--text-tertiary); }
.kmi-t .corlog b { font: 700 16px/22px var(--font-ui); }
.kmi-t .corlog b a { color: inherit; }
.kmi-t .corlog p { margin: 4px 0 0; font: 400 15px/22px var(--font-ui); color: var(--text-secondary); }
.kmi-t .keydates { display: grid; gap: 4px; justify-items: start; padding: var(--space-16); text-decoration: none; color: var(--text-primary); }
.kmi-t .keydates small { font: 600 12px/16px var(--font-ui); color: var(--text-tertiary); text-transform: uppercase; letter-spacing: .04em; }
.kmi-t .keydates b { font: 700 18px/24px var(--font-ui); }
.kmi-t .idxboxes { display: grid; gap: var(--space-12); margin-top: var(--space-16); }
@media (min-width: 720px) { .kmi-t .idxboxes { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.kmi-t .idxbox { display: flex; gap: var(--space-12); align-items: flex-start; padding: var(--space-16); text-decoration: none; color: var(--text-primary); }
.kmi-t .idxbox .ic { flex: none; width: 36px; height: 36px; border-radius: 10px; background: var(--saffron-50, #fdf1e4); display: grid; place-items: center; }
.kmi-t .idxbox .ic svg { width: 18px; height: 18px; color: var(--geru-700); }
.kmi-t .idxbox b { display: block; font: 700 16px/22px var(--font-ui); }

/* ---------- Release 1.7.0: the "when" pillars ---------- */
/* Every Kumbh by year (2025 to 2040) */
.kmi-t .kyears-pick { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-bottom: var(--space-16); font: 600 15px/1.3 var(--font-ui); color: var(--text-primary); }
.kmi-t .kyears-pick svg { width: 20px; height: 20px; color: var(--saffron-700); }
.kmi-t .kyears-pick select { min-height: 44px; padding: 0 36px 0 12px; border: 1.5px solid var(--border-default); border-radius: var(--radius-md); background: var(--bg-raised); font: 600 16px/1 var(--font-ui); color: var(--text-primary); }
.kmi-t .kylist { display: grid; gap: var(--space-12); }
@media (min-width: 720px) { .kmi-t .kylist { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.kmi-t .kyear { padding: var(--space-16); border: 1px solid var(--border-default); border-radius: var(--radius-petal-sm, 16px); background: var(--bg-raised); }
.kmi-t .kyear h3 { margin: 0 0 8px; font: 700 22px/1.2 var(--font-ui); color: var(--neel-900, #1b1f45); }
.kmi-t .kyear h3 small { margin-left: 8px; font: 600 12px/1 var(--font-ui); color: var(--saffron-700); text-transform: uppercase; letter-spacing: .04em; }
.kmi-t .kyear ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.kmi-t .kyear li { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: start; }
.kmi-t .kyear li .kdot { margin-top: 6px; }
.kmi-t .kyear li b { display: block; font: 600 15px/1.35 var(--font-ui); }
.kmi-t .kyear li b a { color: inherit; text-decoration: underline; text-decoration-color: var(--border-default); text-underline-offset: 3px; }
.kmi-t .kyear li span { display: block; font: 400 14px/1.4 var(--font-ui); color: var(--text-secondary); }
/* One year as a strip of months */
.kmi-t .ystrip { display: grid; gap: 10px; }
.kmi-t .ysrow { display: grid; grid-template-columns: minmax(96px, 150px) 1fr; gap: 12px; align-items: center; }
.kmi-t .ysname { display: flex; align-items: center; gap: 6px; font: 600 14px/1.2 var(--font-ui); color: var(--text-primary); text-decoration: none; }
.kmi-t .ysname small { margin-left: auto; font-weight: 500; color: var(--text-secondary); }
.kmi-t .ystrack { position: relative; height: 28px; border-radius: 14px; background: var(--sand-50, #faf7f3); border: 1px solid var(--border-default); }
.kmi-t .ysmonths .ystrack { height: 18px; background: none; border: 0; }
.kmi-t .ysmonths .ystrack span { position: absolute; top: 0; font: 600 11px/18px var(--font-ui); color: var(--text-secondary); }
.kmi-t .ysband { position: absolute; top: 5px; bottom: 5px; border-radius: 9px; opacity: .28; }
.kmi-t .ysband.k-haridwar { background: var(--saffron-600); }
.kmi-t .ysband.k-nashik { background: var(--leaf-600, #3e7d4a); }
.kmi-t .ysband.k-ujjain { background: var(--geru-500, #b5582f); }
.kmi-t .ysband.k-prayagraj { background: var(--neel-600, #3f6f9e); }
.kmi-t .ysdot { position: absolute; top: 50%; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; background: var(--neel-900, #1b1f45); border: 2px solid var(--bg-raised, #fff); }
.kmi-t .ysdot.amrit { width: 16px; height: 16px; margin: -8px 0 0 -8px; background: var(--saffron-600); }
.kmi-t .ysdot.demo { position: static; display: inline-block; margin: 0 4px 0 0; vertical-align: middle; }
.kmi-t a.ysdot:hover, .kmi-t a.ysdot:focus-visible { transform: scale(1.25); outline: 2px solid var(--saffron-700); outline-offset: 1px; }
@media (max-width: 599px) { .kmi-t .ysrow { grid-template-columns: 1fr; gap: 4px; } .kmi-t .ysmonths .ysname { display: none; } }
/* Check a link */
.kmi-t .lcheck { display: grid; gap: 10px; padding: var(--space-16); border: 1.5px solid var(--border-default); border-radius: var(--radius-petal-sm, 16px); background: var(--bg-raised); }
.kmi-t .lcheck label { display: grid; gap: 2px; }
.kmi-t .lcheck label b { font: 700 18px/1.3 var(--font-ui); }
.kmi-t .lcheck label span { font: 400 14px/1.4 var(--font-ui); color: var(--text-secondary); }
.kmi-t .lcheck .row { display: flex; gap: 8px; flex-wrap: wrap; }
.kmi-t .lcheck input { flex: 1 1 220px; min-width: 0; min-height: 44px; padding: 0 12px; border: 1.5px solid var(--border-default); border-radius: var(--radius-md); font: 500 16px/1 var(--font-ui); background: var(--bg-raised); color: var(--text-primary); }
.kmi-t .lcres .lc { display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 12px; border-radius: var(--radius-md); font: 400 15px/1.45 var(--font-ui); }
.kmi-t .lcres .lc svg { flex: none; width: 20px; height: 20px; margin-top: 2px; }
.kmi-t .lcres .ok { background: #e9f5ec; color: #1e5631; }
.kmi-t .lcres .gov { background: var(--sand-50, #faf7f3); color: var(--text-primary); }
.kmi-t .lcres .warn { background: #fdf1e6; color: #7a3a10; }
.kmi-t .lclist { margin-top: 10px; font: 400 14px/1.45 var(--font-ui); }
.kmi-t .lclist summary { cursor: pointer; font-weight: 600; }
.kmi-t .lclist ul { margin: 8px 0; padding-left: 18px; }
.kmi-t .lclist code { font-size: 13px; }
/* Everything for this Kumbh */
.kmi-t .evgrid { display: grid; gap: 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 720px) { .kmi-t .evgrid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.kmi-t .evtile { display: flex; flex-direction: column; gap: 4px; padding: 14px; border: 1px solid var(--border-default); border-radius: var(--radius-petal-sm, 16px); background: var(--bg-raised); color: var(--text-primary); text-decoration: none; min-height: 96px; }
.kmi-t .evtile .ic svg { width: 22px; height: 22px; color: var(--saffron-700); }
.kmi-t .evtile b { font: 700 26px/1 var(--font-ui); color: var(--neel-900, #1b1f45); }
.kmi-t .evtile .lb { font: 600 14px/1.3 var(--font-ui); }
.kmi-t .evtile:hover, .kmi-t .evtile:focus-visible { border-color: var(--action-secondary-border); box-shadow: 0 4px 14px rgba(27, 31, 69, .08); }
/* 404 */
.kmi-404-links { margin-top: 16px; }
.kmi-404-cards { margin-bottom: 48px; }
