:root {
  --bg-top: #05111a;
  --bg-mid: #081621;
  --bg-bottom: #041018;
  --text: #f5f4ef;
  --muted: rgba(245,244,239,0.72);
  --border: rgba(255,255,255,0.10);
  --cyan: #67e8f9;
  --busy: #f87171;
  --moderate: #fbbf24;
  --low: #34d399;
}
* { box-sizing: border-box; }
body {
  min-height: 100vh;
  margin: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  background:
    radial-gradient(ellipse at bottom, rgba(0,195,180,0.09) 0%, transparent 42%),
    linear-gradient(180deg, var(--bg-top) 0%, var(--bg-mid) 45%, var(--bg-bottom) 100%);
  color: var(--text);
  font-family: "Source Sans 3", sans-serif;
  display: flex;
  justify-content: center;
  padding: 20px 14px 72px;
  overflow-x: hidden;
  position: relative;
}
.bg-soft-glow,.grain { position: fixed; inset: 0; pointer-events: none; }
.park-silhouette,.park-ground { position: fixed; left: 0; right: 0; bottom: 0; pointer-events: none; }
.bg-soft-glow {
  z-index: 0;
  background:
    radial-gradient(circle at 22% 28%, rgba(0,195,180,0.08), transparent 32%),
    radial-gradient(circle at 78% 20%, rgba(86,150,255,0.05), transparent 28%);
  opacity: 0.9;
}
.grain {
  z-index: 0;
  opacity: 0.025;
  background-image: linear-gradient(transparent 0, transparent 49%, rgba(255,255,255,0.2) 50%, transparent 51%, transparent 100%);
  background-size: 100% 4px;
  mix-blend-mode: soft-light;
}
.park-silhouette { z-index: 0; height: 240px; opacity: 0.98; }
.park-silhouette svg { width: 100%; height: 100%; display: block; }
.park-ground {
  z-index: 0;
  height: 116px;
  background: linear-gradient(to top, rgba(3,10,16,0.97), rgba(3,10,16,0.82) 44%, transparent 100%);
}
.app { position: relative; z-index: 1; width: 100%; max-width: 680px; margin: 0 auto; text-align: center; }
.header { padding: 8px 6px 4px; }
.title {
  margin: 0;
  font-size: clamp(2.25rem, 7vw, 3.4rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
  background: linear-gradient(135deg, #f1fffd 10%, #baf6ef 48%, #00c3b4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.tagline {
  margin-top: 12px;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--muted);
  max-width: 460px;
  margin-inline: auto;
}
.primary-btn {
  margin-top: 22px;
  width: 100%;
  padding: 16px;
  font-size: 16px;
  border: none;
  border-radius: 16px;
  background: linear-gradient(135deg, #00c3b4 0%, #19d3c6 100%);
  color: white;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(0,195,180,0.22);
  font-family: inherit;
  font-weight: 700;
}
.loading-state {
  margin-top: 14px;
  color: #93f5ea;
  font-size: 0.96rem;
  animation: pulse 1.2s ease-in-out infinite;
}
@keyframes pulse { 0%,100%{opacity:.45} 50%{opacity:1} }
.card,.nearby-section {
  margin-top: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,0.085), rgba(255,255,255,0.055));
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 18px 50px rgba(0,0,0,0.34);
  text-align: left;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.card.reveal { animation: revealCard .35s ease; }
@keyframes revealCard { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.hidden { display: none; }
.developer-badge {
  position: fixed;
  right: max(14px, env(safe-area-inset-right));
  bottom: max(14px, env(safe-area-inset-bottom));
  z-index: 30;
  border: 1px solid rgba(103,232,249,.5);
  border-radius: 999px;
  padding: 9px 12px;
  color: #06111a;
  background: #67e8f9;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  font: 800 11px/1 "Source Sans 3", sans-serif;
  letter-spacing: .12em;
  cursor: pointer;
}
.developer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 40;
  background: rgba(1,8,13,.68);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.developer-panel {
  position: fixed;
  z-index: 41;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(430px, 94vw);
  padding: max(22px, env(safe-area-inset-top)) 18px max(22px, env(safe-area-inset-bottom));
  overflow-y: auto;
  color: #f5f4ef;
  background: #07141e;
  border-left: 1px solid rgba(103,232,249,.2);
  box-shadow: -24px 0 60px rgba(0,0,0,.45);
}
.developer-panel-header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.developer-panel-header h2 { margin:3px 0 0; font-size:1.55rem; }
.developer-eyebrow { color:#67e8f9; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.developer-icon-button {
  width:38px; height:38px; border:1px solid rgba(255,255,255,.12); border-radius:12px;
  color:#f5f4ef; background:rgba(255,255,255,.05); font-size:25px; line-height:1; cursor:pointer;
}
.developer-status-row {
  display:flex; align-items:center; gap:9px; margin-top:20px; padding:11px 12px;
  border-radius:12px; color:rgba(245,244,239,.8); background:rgba(103,232,249,.07); font-size:13px;
}
.developer-live-dot { width:8px; height:8px; border-radius:50%; background:#34d399; box-shadow:0 0 0 4px rgba(52,211,153,.12); }
.developer-diagnostics {
  min-height:210px; margin:14px 0 0; padding:14px; overflow:auto; border-radius:14px;
  border:1px solid rgba(255,255,255,.09); color:rgba(245,244,239,.88);
  background:#040c12; font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; white-space:pre-wrap;
}
.developer-actions { display:grid; gap:9px; margin-top:14px; }
.developer-actions button,.developer-actions a {
  display:block; width:100%; padding:12px 14px; border:1px solid rgba(103,232,249,.2);
  border-radius:12px; color:#baf6ef; background:rgba(103,232,249,.07);
  font:700 14px/1.2 "Source Sans 3",sans-serif; text-align:center; text-decoration:none; cursor:pointer;
}
.developer-actions .developer-danger { color:#fca5a5; border-color:rgba(248,113,113,.22); background:rgba(248,113,113,.07); }
.developer-action-status { color:rgba(245,244,239,.55); font-size:12px; line-height:1.45; }
.park-header { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; }
.trust-badge {
  padding: 7px 10px;
  border-radius:999px;
  background:rgba(0,195,180,0.10);
  border:1px solid rgba(186,246,239,0.16);
  color:#93f5ea;
  font-size:.78rem;
  font-weight:700;
}
#parkName { margin:0 0 4px; font-size:1.8rem; line-height:1.1; }
.park-city { margin:0; color: rgba(245,244,239,0.58); font-size:.95rem; }
.status.open { color:#34d399; }
.status.closed { color:#f87171; }
.status.before-open { color:#fbbf24; }
.status.soon { color:#fbbf24; }
#status { margin:12px 0 8px; font-weight:700; font-size:1.05rem; }
#hours,#message { color: rgba(245,244,239,0.80); margin:6px 0 0; line-height:1.45; }
#hours a { color:#93f5ea; font-weight:800; }
.status.unknown { color:#fbbf24; }
.signal-row { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:16px; }
.signal-box {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 12px;
}
.signal-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #93f5ea;
}
.signal-value { margin-top: 6px; font-size: 15px; font-weight: 700; }
.signal-value.not-active,
.signal-value.very-low,
.signal-value.low { color: var(--low); }
.signal-value.moderate { color: var(--moderate); }
.signal-value.busy,
.signal-value.very-busy { color: var(--busy); }
.signal-value.usually-lighter,.signal-value.typically-lighter{color:var(--low)}.signal-value.typical{color:var(--moderate)}.signal-value.typically-busier,.signal-value.often-busiest{color:var(--busy)}
.signal-detail{margin-top:4px;color:rgba(245,244,239,.52);font-size:10px;line-height:1.25}
.mini-note {
  margin-top: 10px;
  color: rgba(245,244,239,0.76);
  font-size: 13px;
  line-height: 1.4;
}
.event-box {
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(67, 56, 202, 0.16);
  border: 1px solid rgba(129, 140, 248, 0.22);
}
.event-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #c7d2fe;
  margin-bottom: 6px;
}
.event-name { font-size: 18px; font-weight: 800; color: white; }
.event-hours { margin-top: 6px; color: #bfdbfe; font-weight: 700; }
.event-note { margin-top: 6px; color: rgba(245,244,239,0.78); font-size: 13px; }
.technical-rehearsal {
  border-color: rgba(251,191,36,0.42);
  background: linear-gradient(135deg, rgba(120,53,15,0.34), rgba(30,41,59,0.72));
}
.technical-rehearsal .event-label { color: #fcd34d; }
.insight-box {
  margin-top: 16px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(0,195,180,0.10);
  border: 1px solid rgba(186,246,239,0.14);
}
.insight-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #93f5ea;
  margin-bottom: 6px;
}
.insight-text { font-size: 18px; font-weight: 800; color: white; }
.insight-reason {
  margin-top: 6px;
  color: rgba(245,244,239,0.76);
  font-size: 13px;
  line-height: 1.4;
}
.main-weather {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.weather-main-line { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.weather-icon { font-size: 22px; }
.weather-temp { font-size: 24px; font-weight: 800; color: var(--cyan); }
.weather-condition { color: #e2f3f3; font-size: 15px; }
.weather-meta {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  color: rgba(245,244,239,0.74);
  font-size: 13px;
}
.nearby-section h3 { margin-top: 0; margin-bottom: 14px; font-size: 1.05rem; font-weight: 700; }
.nearby-list { display: flex; flex-direction: column; gap: 10px; }
.nearby-item {
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 12px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.06);
}
.nearby-name { font-weight:700; }
.nearby-distance { color: var(--cyan); font-size:14px; text-align:right; }
.nearby-hours, .nearby-weather, .nearby-travel {
  color: rgba(245,244,239,0.78);
  font-size:13px;
  grid-column:1 / 3;
}
.footer { text-align:center; padding-top:14px; font-size:.78rem; color:rgba(245,244,239,0.36); }

.location-lab-link { margin:12px 0 0; }
.location-lab-link a { color:#93f5ea; font-size:.9rem; font-weight:700; text-decoration:none; }
.location-lab-link a::before { content:"◎ "; }
.in-park-card { padding:0; overflow:hidden; }
.in-park-card .park-header { padding:18px 18px 0; }
.in-park-card > #status,
.in-park-card > #hours,
.in-park-card > #message,
.in-park-card > #lastUpdated { margin-left:18px; margin-right:18px; }
.in-park-welcome {
  margin:18px 0 0; padding:26px 20px 24px;
  background:linear-gradient(135deg,rgba(5,55,65,.96),rgba(8,31,48,.94));
  border-top:1px solid rgba(147,245,234,.16); border-bottom:1px solid rgba(147,245,234,.12);
}
.in-park-eyebrow,.section-eyebrow { color:#93f5ea; font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.in-park-welcome h3 { margin:7px 0 0; color:#fff; font-size:1.62rem; line-height:1.14; }
.in-park-welcome p { margin:8px 0 0; color:rgba(245,244,239,.7); line-height:1.4; }
.in-park-card .companion-box { margin:18px; padding:20px; border-radius:20px; background:linear-gradient(145deg,rgba(24,113,111,.24),rgba(39,54,84,.35)); }
.companion-box { width:calc(100% - 36px); color:inherit; font:inherit; text-align:left; cursor:pointer; }
.companion-box:hover { border-color:rgba(147,245,234,.38); }
.companion-action { margin-top:16px; color:#baf6ef; font-size:13px; font-weight:800; }
.companion-action span { float:right; font-size:18px; }
.companion-detail-open { overflow:hidden; }
.companion-detail-backdrop { position:fixed; inset:0; z-index:50; background:rgba(1,8,13,.72); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); }
.companion-detail {
  position:fixed; z-index:51; inset:0 0 0 auto; width:min(520px,100%); overflow:hidden;
  color:#f5f4ef; background:linear-gradient(180deg,#0b202b,#07141e 58%,#06111a);
  box-shadow:-20px 0 60px rgba(0,0,0,.46);
}
.companion-detail-topbar { display:flex; align-items:center; justify-content:space-between; padding:max(18px,env(safe-area-inset-top)) 18px 14px; border-bottom:1px solid rgba(255,255,255,.08); }
.companion-back-button { border:0; padding:8px 4px; color:#baf6ef; background:transparent; font:800 15px/1 "Source Sans 3",sans-serif; cursor:pointer; }
.companion-back-button span { margin-left:5px; }
.companion-lab-link { color:rgba(245,244,239,.7); font-size:13px; font-weight:700; text-decoration:none; }
.companion-detail-scroll { height:calc(100% - 66px); overflow-y:auto; padding:30px 22px max(36px,env(safe-area-inset-bottom)); }
.companion-detail-kicker,.companion-detail-label { color:#93f5ea; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.companion-detail h2 { margin:8px 0 0; font-size:clamp(2rem,8vw,3rem); line-height:1.05; letter-spacing:-.025em; }
.companion-detail-intro { margin:18px 0 0; color:rgba(245,244,239,.78); font-size:17px; line-height:1.55; }
.companion-detail-section { margin-top:28px; padding:20px; border:1px solid rgba(147,245,234,.14); border-radius:20px; background:rgba(103,232,249,.065); }
.companion-detail-section p { margin:9px 0 0; color:rgba(245,244,239,.82); line-height:1.55; }
.companion-detail-meta { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; }
.companion-detail-meta div { padding:16px; border:1px solid rgba(255,255,255,.08); border-radius:16px; background:rgba(255,255,255,.045); }
.companion-detail-meta span { display:block; color:rgba(245,244,239,.5); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.companion-detail-meta strong { display:block; margin-top:7px; font-size:14px; line-height:1.3; }
.companion-notice { background:linear-gradient(145deg,rgba(24,113,111,.2),rgba(39,54,84,.28)); }
@media(max-width:520px){ .companion-detail-meta{grid-template-columns:1fr;} }
.worth-a-look { margin:24px 18px 20px; }
.section-heading-row { display:flex; align-items:end; justify-content:space-between; }
.section-heading-row h3 { margin:4px 0 12px; font-size:1.2rem; }
.worth-a-look-list { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(140px,1fr); gap:10px; overflow-x:auto; padding-bottom:3px; scrollbar-width:none; }
.worth-a-look-list::-webkit-scrollbar { display:none; }
.worth-card { min-height:126px; padding:15px; border:1px solid rgba(255,255,255,.09); border-radius:17px; background:rgba(255,255,255,.055); }
.worth-icon { width:30px; height:30px; display:grid; place-items:center; border-radius:10px; color:#07141e; background:#93f5ea; font-size:13px; }
.worth-name { margin-top:15px; color:#fff; font-size:14px; font-weight:800; line-height:1.25; }
.worth-category { margin-top:12px; color:#93f5ea; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.worth-category + .worth-name { margin-top:5px; }
.worth-distance { margin-top:5px; color:rgba(245,244,239,.56); font-size:12px; }
.in-park-card > .signal-row,.in-park-card > .mini-note,.in-park-card > .insight-box,
.in-park-card > .event-box,.in-park-card > .main-weather,.in-park-card > .fun-fact,
.in-park-card > .geo-calibrator,.in-park-card > .geo-debug { margin-left:18px; margin-right:18px; }

@media (max-width:640px){
  body{padding:16px 10px 52px;}
  .park-silhouette { height: 168px; }
  .park-ground { height: 90px; }
  .park-header{flex-direction:column;}
  .trust-badge{align-self:flex-start;}
  #parkName { font-size: 1.5rem; }
  .weather-temp { font-size: 22px; }
  .signal-row { grid-template-columns: 1fr; }
}


.fun-fact {
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.09);
}

.fun-fact-header {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #93f5ea;
  margin-bottom: 6px;
}

.fun-fact-text {
  font-size: 15px;
  line-height: 1.45;
  color: rgba(245,244,239,0.86);
}

.fun-fact.hidden {
  display: none;
}

.context-line {
  margin: 4px 0 0;
  color: #93f5ea;
  font-size: 0.92rem;
  font-weight: 700;
}

.last-updated {
  margin: 6px 0 0;
  color: rgba(245,244,239,0.52);
  font-size: 12px;
}


.companion-box {
  margin-top: 16px;
  padding: 16px;
  border-radius: 16px;
  background: rgba(103,232,249,0.08);
  border: 1px solid rgba(147,245,234,0.22);
}
.companion-kicker {
  color: #93f5ea;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.companion-title {
  margin-top: 7px;
  color: #fff;
  font-size: 19px;
  font-weight: 800;
}
.companion-body {
  margin-top: 7px;
  color: rgba(245,244,239,0.82);
  font-size: 14px;
  line-height: 1.5;
}


.geo-debug {
  margin-top: 16px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(251,191,36,0.08);
  border: 1px solid rgba(251,191,36,0.25);
}
.geo-debug-title {
  color: #fcd34d;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 7px;
}
.geo-debug-text {
  color: rgba(245,244,239,0.88);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
}


.geo-calibrator {
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.045);
  border: 1px dashed rgba(147,245,234,0.28);
}
.geo-calibrator-title {
  color: #93f5ea;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 8px;
}
.geo-calibrator-row { display:flex; gap:8px; flex-wrap:wrap; }
.geo-calibrator select {
  flex: 1 1 230px;
  min-width: 0;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(6,17,26,.85);
  color: #f5f4ef;
  padding: 10px 12px;
  font: inherit;
}
.geo-calibrator button {
  border: 0;
  border-radius: 12px;
  padding: 10px 14px;
  background: #00c3b4;
  color: white;
  font: inherit;
  font-weight: 700;
}
.geo-calibration-status { margin-top:8px; color:rgba(245,244,239,.65); font-size:12px; line-height:1.35; }

.bug-report {
  border-color: rgba(251,191,36,.55);
  background: rgba(251,191,36,.08);
}
.bug-report .geo-debug-title { color: #fcd34d; }
.build-label { margin-top:6px; color:rgba(245,244,239,0.52); font-size:11px; letter-spacing:.04em; }
.fun-fact{margin-top:16px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,rgba(20,184,166,.13),rgba(59,130,246,.09));border:1px solid rgba(255,255,255,.09)}.fun-fact-header{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#99f6e4;margin-bottom:6px;font-weight:800}.fun-fact-text{font-size:15px;line-height:1.45;color:rgba(245,244,239,.86)}.fun-fact.hidden{display:none}
.entertainment-section{margin-top:16px;padding:16px;border-radius:18px;background:linear-gradient(145deg,rgba(124,58,237,.13),rgba(6,182,212,.07));border:1px solid rgba(196,181,253,.2)}
.entertainment-heading{align-items:flex-start;margin-bottom:12px}.entertainment-heading h3{margin:2px 0 0;font-size:20px}.entertainment-badge{max-width:145px;padding:5px 8px;border-radius:999px;background:rgba(45,212,191,.1);color:#99f6e4;font-size:10px;font-weight:800;line-height:1.2;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.entertainment-list{display:grid;gap:8px}.entertainment-item{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;padding:11px 12px;border-radius:13px;background:rgba(4,13,22,.46);border:1px solid rgba(255,255,255,.07)}.entertainment-item time{color:#c4b5fd;font-weight:800}.entertainment-item strong{display:block;color:#f5f4ef;font-size:14px;line-height:1.25}.entertainment-item span{display:block;margin-top:3px;color:rgba(245,244,239,.56);font-size:12px}.entertainment-note{margin:11px 0 0;color:rgba(245,244,239,.63);font-size:12px;line-height:1.4}.entertainment-note a{color:#99f6e4}
.entertainment-item strong+strong{margin-top:6px}.entertainment-toggle{display:block;margin:0 0 10px auto;padding:8px 12px;border-radius:999px;border:1px solid rgba(153,246,228,.32);background:rgba(45,212,191,.08);color:#99f6e4;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.entertainment-toggle:hover{background:rgba(45,212,191,.14)}
.entertainment-toggle.hidden{display:none}
.entertainment-experience{display:block;padding:13px 14px}.entertainment-experience>strong{font-size:15px}.entertainment-time-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.entertainment-time-chips time,.entertainment-time-chips span{display:inline-flex;margin:0;padding:5px 8px;border-radius:999px;background:rgba(167,139,250,.12);color:#c4b5fd;font-size:12px;font-weight:800}.entertainment-subheading{margin:15px 2px 8px;color:#99f6e4;font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.character-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border-radius:13px;background:rgba(4,13,22,.32);border:1px dashed rgba(196,181,253,.2)}.character-summary strong{color:#f5f4ef;font-size:14px}.character-summary span{color:rgba(245,244,239,.56);font-size:12px;white-space:nowrap}
.entertainment-context{margin-top:3px;color:rgba(245,244,239,.58);font-size:12px;line-height:1.3}
.entertainment-character{display:grid;grid-template-columns:minmax(190px,1fr) auto;gap:10px;align-items:center;padding:10px 12px}.entertainment-character .entertainment-time-chips{justify-content:flex-end;margin-top:0}.entertainment-character>strong{font-size:13px;line-height:1.25}
@media(max-width:600px){.entertainment-character{grid-template-columns:1fr}.entertainment-character .entertainment-time-chips{justify-content:flex-start}.character-summary{align-items:flex-start;flex-direction:column}.character-summary span{white-space:normal}}
