.rln-rpid {
  --rln-ink: #17243b;
  --rln-muted: #5b6880;
  --rln-line: #d8deeb;
  --rln-soft: #f3f5fa;
  --rln-card: #fff;
  --rln-accent: #5631bd;
  --rln-accent-2: #315fc3;
  --rln-navy: #20263c;
  --rln-high: #347f70;
  --rln-good: #6e9c91;
  --rln-neutral: #8195aa;
  --rln-watch: #cb8b2f;
  --rln-focus: #bc594e;
  --rln-insufficient: #d8dde7;
  width: 100%;
  margin: 0;
  color: var(--rln-ink);
  font-family: inherit;
  font-size: 15px;
  line-height: 1.45;
}
.rln-rpid *, .rln-rpid *::before, .rln-rpid *::after { box-sizing: border-box; }
.rln-rpid button, .rln-rpid select { font: inherit; }
.rln-rpid button { color: inherit; }
.rln-rpid h1, .rln-rpid h2, .rln-rpid h3, .rln-rpid p { word-break: keep-all; }
.rln-rpid .is-high { --status-color: var(--rln-high); }
.rln-rpid .is-good { --status-color: var(--rln-good); }
.rln-rpid .is-neutral { --status-color: var(--rln-neutral); }
.rln-rpid .is-watch { --status-color: var(--rln-watch); }
.rln-rpid .is-focus { --status-color: var(--rln-focus); }
.rln-rpid .is-insufficient { --status-color: var(--rln-insufficient); }

.rln-rpid__app-layout { display: grid; grid-template-columns: 192px minmax(0, 1fr); align-items: start; }
.rln-rpid__rail { position: sticky; z-index: 20; top: 14px; display: grid; gap: 4px; padding: 20px 12px; color: #e8ecf8; background: var(--rln-navy); border-radius: 0 0 14px 14px; box-shadow: 0 12px 32px rgba(20,28,48,.16); }
.rln-rpid__rail-brand { display: flex; align-items: center; gap: 9px; margin: 0 5px 18px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.12); }
.rln-rpid__rail-brand > span { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; background: linear-gradient(135deg,#7445d8,#3f68cf); border-radius: 10px; font-size: 17px; font-weight:700; }
.rln-rpid__rail-brand div { display: grid; }
.rln-rpid__rail-brand b { font-size: 11px; letter-spacing: .08em; }
.rln-rpid__rail-brand small { color: #9ea9c6; font-size: 11px; font-weight:500; }
.rln-rpid__rail a { display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: 8px; min-height: 46px; padding: 7px 8px; color: #cdd5e9; border-radius: 8px; font-size: 13px; font-weight:600; text-decoration: none; }
.rln-rpid__rail a:hover, .rln-rpid__rail a:focus-visible, .rln-rpid__rail a.is-active { color: #fff; background: rgba(123,102,212,.32); outline: none; }
.rln-rpid__rail a i { display: grid; width: 27px; height: 27px; place-items: center; color: #a9b4d1; background: rgba(255,255,255,.07); border-radius: 5px; font-size: 11px; font-style: normal; font-weight:700; }
.rln-rpid__workspace { min-width: 0; padding: 0 0 36px 18px; }
.rln-rpid__section-anchor { scroll-margin-top: 14px; }

.rln-rpid__workspace-head { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 118px; padding: 20px 24px; background: #fff; border: 1px solid var(--rln-line); border-top: 0; }
.rln-rpid__workspace-head > div:first-child > span, .rln-rpid__eyebrow, .rln-rpid__panel-head > div > span, .rln-rpid__section-title > span, .rln-rpid__sector-head > div > span { display: block; margin-bottom: 5px; color: var(--rln-accent); font-size: 11px; font-weight:700; letter-spacing: .13em; }
.rln-rpid__workspace-head h1 { margin: 0; font-size: clamp(28px,3vw,42px); font-weight:700; line-height: 1.1; letter-spacing: -.05em; }
.rln-rpid__workspace-head p { margin: 8px 0 0; color: var(--rln-muted); font-size: 14px; font-weight:400; }
.rln-rpid__stamp { flex: 0 0 auto; min-width: 230px; padding: 14px 16px; background: #eef2f8; border: 1px solid #d6ddea; border-radius: 11px; }
.rln-rpid__stamp small, .rln-rpid__stamp span { display: block; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__stamp strong { display: block; margin: 5px 0; font-size: 15px; }

.rln-rpid__toolbar { display: flex; align-items: flex-end; gap: 12px; margin: 14px 0; padding: 12px 15px; background: #fff; border: 1px solid var(--rln-line); }
.rln-rpid__field { display: grid; min-width: 175px; gap: 5px; font-size: 12px; font-weight:600; }
.rln-rpid__field select { min-height: 42px; padding: 8px 34px 8px 11px; color: var(--rln-ink); background: #fff; border: 1px solid #cbd4e2; border-radius: 7px; font-size: 13px; font-weight:600; }
.rln-rpid__toolbar-note { display: flex; align-items: center; gap: 7px; margin: 0 3px 10px auto; color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__toolbar-note span { width: 8px; height: 8px; background: #58a77c; border-radius: 50%; box-shadow: 0 0 0 4px rgba(88,167,124,.13); }

.rln-rpid__briefing { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 280px 245px; align-items: center; gap: 22px; min-height: 330px; padding: 35px 38px; overflow: hidden; background: radial-gradient(circle at 74% 43%,rgba(109,69,214,.13),transparent 28%),linear-gradient(135deg,#fff 0,#faf9ff 62%,#eee9ff 100%); border: 1px solid #d9d4ed; }
.rln-rpid__briefing::after { position: absolute; top: -120px; right: -70px; width: 340px; height: 340px; border: 1px solid rgba(97,60,190,.12); border-radius: 50%; box-shadow: 0 0 0 38px rgba(97,60,190,.035),0 0 0 76px rgba(97,60,190,.025); content: ""; }
.rln-rpid__brief-copy, .rln-rpid__score-orbit, .rln-rpid__brief-extremes { position: relative; z-index: 2; }
.rln-rpid__brief-copy h2 { max-width: 680px; margin: 0; font-size: clamp(31px,3.2vw,48px); font-weight:700; line-height: 1.12; letter-spacing: -.055em; }
.rln-rpid__brief-copy p { max-width: 620px; margin: 16px 0 0; color: var(--rln-muted); font-size: 15px; font-weight:400; line-height: 1.65; }
.rln-rpid__brief-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 21px; }
.rln-rpid__brief-pills span, .rln-rpid__brief-pills b { padding: 7px 10px; border-radius: 99px; font-size: 12px; font-weight:600; }
.rln-rpid__brief-pills span { background: #eeebf8; }
.rln-rpid__brief-pills b { color: #fff; background: var(--status-color); }
.rln-rpid__score-orbit { display: grid; width: 252px; height: 252px; margin: auto; place-items: center; background: conic-gradient(var(--status-color) 0 78%,#e6e2f2 78%); border-radius: 50%; box-shadow: 0 15px 34px rgba(77,50,151,.18); }
.rln-rpid__score-orbit::before { position: absolute; inset: 13px; background: #fff; border-radius: 50%; content: ""; }
.rln-rpid__score-orbit > div { position: relative; z-index: 1; text-align: center; }
.rln-rpid__score-orbit small { display: block; color: var(--rln-accent); font-size: 18px; font-weight:700; }
.rln-rpid__score-orbit strong { display: inline-block; margin-top: 4px; color: var(--rln-accent); font-size: 68px; font-weight:700; line-height: 1; letter-spacing: -.07em; }
.rln-rpid__score-orbit span { margin-left: 4px; color: var(--rln-muted); font-size: 13px; font-weight:600; }
.rln-rpid__score-orbit em { display: block; margin-top: 12px; padding: 7px 11px; color: #fff; background: var(--status-color); border-radius: 99px; font-size: 12px; font-style: normal; font-weight:600; }
.rln-rpid__brief-extremes { display: grid; gap: 12px; }
.rln-rpid__brief-extremes article { position: relative; min-height: 115px; padding: 16px 18px; background: rgba(255,255,255,.92); border: 1px solid #ded9ed; border-radius: 13px; box-shadow: 0 9px 22px rgba(45,37,86,.08); }
.rln-rpid__brief-extremes article::before { position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--rln-accent); border-radius: 13px 0 0 13px; content: ""; }
.rln-rpid__brief-extremes .is-worst::before { background: var(--rln-focus); }
.rln-rpid__brief-extremes span, .rln-rpid__brief-extremes b { display: block; }
.rln-rpid__brief-extremes span { color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__brief-extremes b { margin: 5px 0; font-size: 16px; }
.rln-rpid__brief-extremes strong { color: var(--rln-accent); font-size: 30px; font-weight:700; }
.rln-rpid__brief-extremes .is-worst strong { color: var(--rln-focus); }

.rln-rpid__insight-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); margin: 14px 0; background: #fff; border: 1px solid var(--rln-line); }
.rln-rpid__insight-grid article { min-width: 0; min-height: 132px; padding: 17px 15px; border-right: 1px solid var(--rln-line); }
.rln-rpid__insight-grid article:last-child { border-right: 0; }
.rln-rpid__insight-grid article > span { color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__insight-grid strong { display: block; margin-top: 9px; font-size: 31px; font-weight:700; line-height: 1; letter-spacing: -.04em; }
.rln-rpid__insight-grid strong small { margin-left: 3px; color: var(--rln-muted); font-size: 12px; }
.rln-rpid__insight-grid p { margin: 12px 0 0; overflow: hidden; color: var(--rln-muted); font-size: 11px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }

.rln-rpid__panel { min-width: 0; padding: 22px; background: var(--rln-card); border: 1px solid var(--rln-line); box-shadow: 0 8px 24px rgba(29,39,69,.055); }
.rln-rpid__panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.rln-rpid__panel-head h2, .rln-rpid__section-title h2, .rln-rpid__sector-head h2 { margin: 0; font-size: 24px; font-weight:700; line-height: 1.25; letter-spacing: -.04em; }
.rln-rpid__panel-head > div > p, .rln-rpid__section-title p, .rln-rpid__sector-head p { margin: 6px 0 0; color: var(--rln-muted); font-size: 13px; font-weight:400; }
.rln-rpid__panel-head > p { margin: 3px 0 0; color: var(--rln-muted); font-size: 12px; font-weight:500; text-align: right; }
.rln-rpid__panel-head > p b { color: var(--rln-ink); font-size: 19px; }
.rln-rpid__panel-head > em { padding: 6px 9px; color: #fff; background: var(--status-color,var(--rln-neutral)); border-radius: 99px; font-size: 11px; font-style: normal; font-weight:600; }
.rln-rpid__scorecard-panel, .rln-rpid__daily-table-panel, .rln-rpid__evidence-panel, .rln-rpid__signals-panel { margin-bottom: 14px; }
.rln-rpid__recovery { flex: 0 0 auto; padding: 11px 14px; color: var(--rln-accent); background: #f1edfb; border: 1px solid #ded5f4; border-radius: 9px; text-align: right; }
.rln-rpid__recovery b, .rln-rpid__recovery small { display: block; }
.rln-rpid__recovery b { font-size: 16px; }
.rln-rpid__recovery small { margin-top: 3px; color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.rln-rpid__scorecard, .rln-rpid__table { width: 100%; border-collapse: collapse; font-size: 13px; }
.rln-rpid__scorecard th, .rln-rpid__table th { padding: 12px; color: #4d5c75; background: #eef1f6; border-bottom: 1px solid var(--rln-line); font-size: 11px; font-weight:700; text-align: left; white-space: nowrap; }
.rln-rpid__scorecard td, .rln-rpid__table td { padding: 13px 12px; border-bottom: 1px solid #e5e9f1; font-weight:500; white-space: nowrap; }
.rln-rpid__scorecard tr { --row-color: var(--status-color); }
.rln-rpid__scorecard td:first-child { display: flex; align-items: center; gap: 9px; }
.rln-rpid__scorecard td:nth-child(n+2), .rln-rpid__table td:nth-child(n+3) { text-align: right; }
.rln-rpid__scorecard td:nth-child(2) strong { color: var(--row-color); font-size: 20px; }
.rln-rpid__scorecard em { display: inline-flex; padding: 5px 8px; color: var(--row-color); border: 1px solid currentColor; border-radius: 99px; font-size: 11px; font-style: normal; font-weight:600; }
.rln-rpid__mini-icon { display: grid; width: 32px; height: 32px; place-items: center; color: #fff; background: var(--row-color); border-radius: 50%; }
.rln-rpid__mini-icon svg { width: 18px; height: 18px; }
.rln-rpid__table td span { display: inline-flex; padding: 5px 8px; color: #fff; background: var(--status-color); border-radius: 99px; font-size: 11px; font-weight:600; }
.rln-rpid__table-empty { padding: 28px !important; color: var(--rln-muted); text-align: center !important; }

.rln-rpid__daily-grid { display: grid; grid-template-columns: minmax(0,1fr) 260px; gap: 14px; margin-bottom: 14px; }
.rln-rpid__daily-chart { min-height: 315px; }
.rln-rpid__daily-chart svg, .rln-rpid__chart svg { display: block; width: 100%; height: auto; }
.rln-rpid__daily-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.rln-rpid__daily-stats article { display: flex; min-height: 145px; flex-direction: column; justify-content: center; padding: 18px; background: #fff; border: 1px solid var(--rln-line); box-shadow: 0 8px 20px rgba(29,39,69,.05); }
.rln-rpid__daily-stats span { color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__daily-stats strong { margin-top: 7px; color: var(--rln-accent); font-size: 31px; font-weight:700; line-height: 1; }
.rln-rpid__daily-stats small { margin-top: 7px; color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__chart-grid { stroke: #dce2ec; stroke-width: 1; stroke-dasharray: 3 4; }
.rln-rpid__chart-baseline { stroke: #27344d; stroke-width: 1.5; }
.rln-rpid__chart-axis { fill: #5e6d82; font-size: 11px; font-weight: 700; }
.rln-rpid__chart-national { fill: none; stroke: var(--rln-accent); stroke-width: 3; }
.rln-rpid__chart-region { fill: none; stroke: var(--rln-focus); stroke-width: 2.4; }
.rln-rpid__chart-area { fill: url(#rlnDailyArea); opacity: .42; }
.rln-rpid__chart-dot-national { fill: #fff; stroke: var(--rln-accent); stroke-width: 2.5; }
.rln-rpid__chart-dot-region { fill: #fff; stroke: var(--rln-focus); stroke-width: 2; }
.rln-rpid__chart-dot-watch { fill: #fff; stroke: #f27b22; stroke-width: 3; }
.rln-rpid__chart-value { fill: var(--rln-accent); font-size: 11px; font-weight:700; }
.rln-rpid__chart-value.is-watch { fill: #df6d19; }
.rln-rpid__chart-legend { display: flex; gap: 18px; margin: 0 0 10px 45px; color: var(--rln-muted); font-size: 12px; font-weight:600; }
.rln-rpid__chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.rln-rpid__chart-legend i { width: 16px; height: 3px; background: var(--legend-color); border-radius: 99px; }
.rln-rpid__chart-empty { display: grid; min-height: 250px; place-items: center; color: var(--rln-muted); background: var(--rln-soft); font-size: 14px; font-weight:500; text-align: center; }

.rln-rpid__sector-overview { margin-bottom: 14px; padding: 28px; background: linear-gradient(135deg,#d8eef4,#e9e7fa); border: 1px solid #c8dce5; }
.rln-rpid__sector-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.rln-rpid__sector-head > strong { padding: 7px 10px; color: #315667; background: rgba(255,255,255,.75); border: 1px solid rgba(54,91,108,.16); border-radius: 99px; font-size: 11px; }
.rln-rpid__sector-tabs { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 6px; margin-bottom: 16px; padding: 6px; background: rgba(255,255,255,.92); border: 1px solid rgba(54,80,100,.14); border-radius: 14px; }
.rln-rpid__sector-tabs button { display: flex; min-width: 0; min-height: 68px; align-items: center; gap: 9px; padding: 9px 10px; background: transparent; border: 0; border-radius: 10px; text-align: left; cursor: pointer; }
.rln-rpid__sector-tabs button:hover, .rln-rpid__sector-tabs button.is-active { color: #fff; background: var(--status-color); }
.rln-rpid__sector-tabs button > span:last-child { display: grid; min-width: 0; gap: 2px; }
.rln-rpid__sector-tabs b { overflow: hidden; font-size: 13px; font-weight:700; text-overflow: ellipsis; white-space: nowrap; }
.rln-rpid__sector-tabs small { color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__sector-tabs button:hover small, .rln-rpid__sector-tabs button.is-active small { color: rgba(255,255,255,.85); }
.rln-rpid__sector-icon { display: grid; flex: 0 0 auto; width: 42px; height: 42px; place-items: center; color: var(--status-color); background: #edf4f7; border-radius: 50%; }
.rln-rpid__sector-icon svg { width: 23px; height: 23px; }
.rln-rpid__sector-tabs button:hover .rln-rpid__sector-icon, .rln-rpid__sector-tabs button.is-active .rln-rpid__sector-icon { color: var(--status-color); background: #fff; }
.rln-rpid__sector-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.rln-rpid__sector-card { position: relative; min-width: 0; min-height: 350px; padding: 19px; overflow: hidden; background: #fff; border: 1px solid rgba(57,80,100,.17); border-top: 5px solid var(--status-color); box-shadow: 0 9px 22px rgba(34,58,83,.09); transition: transform .18s ease,box-shadow .18s ease; }
.rln-rpid__sector-card.is-highlighted { transform: translateY(-3px); box-shadow: 0 15px 28px rgba(34,58,83,.16); }
.rln-rpid__sector-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.rln-rpid__sector-identity { display: flex; min-width: 0; align-items: center; gap: 10px; }
.rln-rpid__sector-identity small { display: block; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__sector-card-head h3 { margin: 2px 0 0; font-size: 18px; font-weight:700; }
.rln-rpid__sector-card-head em { flex: 0 0 auto; padding: 5px 8px; color: #fff; background: var(--status-color); border-radius: 99px; font-size: 11px; font-style: normal; font-weight:600; }
.rln-rpid__sector-primary { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; margin-top: 16px; }
.rln-rpid__sector-score { display: flex; align-items: baseline; gap: 4px; }
.rln-rpid__sector-score strong { font-size: 42px; font-weight:700; line-height: 1; letter-spacing: -.055em; }
.rln-rpid__sector-score span { color: var(--rln-muted); font-size: 12px; font-weight:600; }
.rln-rpid__sector-change { margin: 0 0 3px; font-size: 14px; font-weight:700; text-align: right; }
.rln-rpid__sector-change small { display: block; margin-top: 3px; color: var(--rln-muted); font-size: 11px; }
.rln-rpid__sector-change.is-up { color: #287162; }
.rln-rpid__sector-change.is-down { color: #ad4c43; }
.rln-rpid__sector-change.is-flat { color: var(--rln-muted); }
.rln-rpid__sector-sparkline { margin-top: 14px; padding: 10px 11px 7px; background: #f2f5f8; }
.rln-rpid__sector-sparkline > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.rln-rpid__sector-sparkline span, .rln-rpid__sector-sparkline b { font-size: 11px; font-weight:600; }
.rln-rpid__sector-sparkline b { color: var(--rln-muted); }
.rln-rpid__sector-sparkline svg { display: block; width: 100%; height: 48px; margin-top: 3px; overflow: visible; }
.rln-rpid__sector-sparkline path { fill: none; stroke: #d7dee8; }
.rln-rpid__sector-sparkline polyline { fill: none; stroke: var(--status-color); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.rln-rpid__sector-details { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; margin: 11px 0 0; }
.rln-rpid__sector-details div { padding: 8px 6px; background: #eef2f6; text-align: center; }
.rln-rpid__sector-details dt { color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__sector-details dd { margin: 3px 0 0; font-size: 14px; font-weight:700; }
.rln-rpid__sector-insight { margin: 11px 0 0; padding-top: 10px; color: #4e6174; border-top: 1px solid #e0e5ed; font-size: 11px; font-weight: 700; }

.rln-rpid__evidence-grid { display: grid; grid-template-columns: minmax(0,1fr) 250px minmax(320px,.9fr); gap: 20px; align-items: center; }
.rln-rpid__evidence-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.rln-rpid__evidence-cards article { padding: 15px; background: var(--rln-soft); border-left: 4px solid var(--rln-accent-2); }
.rln-rpid__evidence-cards span { display: block; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__evidence-cards strong { display: inline-block; margin-top: 6px; font-size: 27px; font-weight:700; }
.rln-rpid__evidence-cards small { margin-left: 3px; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__status-distribution { display: grid; grid-template-columns: 145px 1fr; align-items: center; gap: 12px; }
.rln-rpid__status-donut { display: grid; width: 140px; height: 140px; place-items: center; background: conic-gradient(var(--rln-good) 0 25%,var(--rln-neutral) 25% 50%,var(--rln-watch) 50% 75%,var(--rln-focus) 75%); border-radius: 50%; }
.rln-rpid__status-donut::before { grid-area: 1/1; width: 96px; height: 96px; background: #fff; border-radius: 50%; content: ""; }
.rln-rpid__status-donut span { z-index: 1; grid-area: 1/1; color: var(--rln-muted); font-size: 11px; font-weight:600; text-align: center; }
.rln-rpid__status-donut b { display: block; color: var(--rln-ink); font-size: 28px; }
.rln-rpid__status-legend { display: grid; gap: 7px; }
.rln-rpid__status-legend span { display: flex; align-items: center; gap: 6px; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__status-legend i { width: 9px; height: 9px; background: var(--status-color); border-radius: 50%; }
.rln-rpid__region-bars { display: grid; gap: 6px; }
.rln-rpid__region-bar { display: grid; grid-template-columns: 42px minmax(80px,1fr) 38px; align-items: center; gap: 7px; font-size: 11px; font-weight:600; }
.rln-rpid__region-bar-track { position: relative; height: 9px; background: #e9edf3; }
.rln-rpid__region-bar-track::after { position: absolute; top: -3px; bottom: -3px; left: 50%; width: 1px; background: #7d879a; content: ""; }
.rln-rpid__region-bar-track i { display: block; width: var(--bar-width); height: 100%; margin-left: var(--bar-left); background: var(--status-color); }
.rln-rpid__region-bar strong { text-align: right; }

.rln-rpid__overview { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(380px,.85fr); gap: 14px; margin-bottom: 14px; }
.rln-rpid__map-panel { background: radial-gradient(circle at 48% 43%,#fff,#f8fafc 58%,#f0f3f7); }
.rln-rpid__map-canvas { position: relative; width: min(100%,650px); margin: 0 auto; aspect-ratio: 600/700; contain: layout paint; }
.rln-rpid__map { display: block; width: 100%; height: 100%; overflow: visible; filter: drop-shadow(0 8px 14px rgba(20,35,59,.08)); }
.rln-rpid__map-regions > * { fill: var(--rln-insufficient); stroke: #fff; stroke-width: 1.5; vector-effect: non-scaling-stroke; cursor: pointer; outline: none; transition: fill .18s ease,filter .18s ease; }
.rln-rpid__map-regions > *.is-high,.rln-rpid__map-regions > *.is-good,.rln-rpid__map-regions > *.is-neutral,.rln-rpid__map-regions > *.is-watch,.rln-rpid__map-regions > *.is-focus,.rln-rpid__map-regions > *.is-insufficient { fill: var(--status-color); }
.rln-rpid__map-regions > *:hover,.rln-rpid__map-regions > *.is-selected { filter: brightness(.94) drop-shadow(0 2px 3px rgba(17,33,55,.25)); stroke: var(--rln-ink); stroke-width: 3; }
.rln-rpid__region-card { position: absolute; z-index: 3; left: var(--rln-x); top: var(--rln-y); width: 72px; min-height: 58px; padding: 5px; transform: translate(-50%,-50%); background: rgba(255,255,255,.96); border: 1px solid rgba(112,125,145,.43); border-top: 3px solid var(--status-color); border-radius: 7px; box-shadow: 0 4px 13px rgba(22,40,66,.14); text-align: center; cursor: pointer; }
.rln-rpid__region-card:hover,.rln-rpid__region-card.is-selected { z-index: 7; transform: translate(-50%,-50%) scale(1.08); box-shadow: 0 8px 20px rgba(22,40,66,.22); }
.rln-rpid__region-name { display: block; color: #34465e; font-size: 11px; font-weight:700; }
.rln-rpid__region-score { display: block; margin-top: 2px; font-size: 17px; font-weight:700; }
.rln-rpid__region-gap { display: block; margin-top: 2px; color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__loading { position: absolute; z-index: 20; inset: 0; display: flex; align-items: center; justify-content: center; gap: 10px; background: rgba(246,248,252,.88); font-size: 12px; backdrop-filter: blur(4px); }
.rln-rpid__loading[hidden] { display: none; }
.rln-rpid__loading span { width: 20px; height: 20px; border: 2px solid #d2d8e2; border-top-color: var(--rln-accent); border-radius: 50%; animation: rln-rpid-spin .75s linear infinite; }
@keyframes rln-rpid-spin { to { transform: rotate(360deg); } }
.rln-rpid__legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 14px; padding-top: 9px; color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__legend span { display: inline-flex; align-items: center; gap: 5px; }
.rln-rpid__legend i { width: 9px; height: 9px; background: var(--legend-color); }
.rln-rpid__map-source { margin: 9px 0 0; color: var(--rln-muted); font-size: 11px; font-weight:400; text-align: right; }
.rln-rpid__selected { min-height: 205px; margin-bottom: 16px; padding: 17px; background: var(--rln-soft); }
.rln-rpid__selected > p { margin: 52px 5px; color: var(--rln-muted); font-size: 13px; font-weight:400; text-align: center; }
.rln-rpid__selected-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.rln-rpid__selected-head h3 { margin: 0; font-size: 21px; font-weight:700; }
.rln-rpid__selected-head span { padding: 5px 8px; color: #fff; background: var(--status-color); border-radius: 99px; font-size: 11px; font-weight:600; }
.rln-rpid__selected-score { display: flex; align-items: flex-end; gap: 8px; margin: 12px 0 14px; }
.rln-rpid__selected-score strong { font-size: 44px; font-weight:700; line-height: 1; }
.rln-rpid__selected-score div { color: var(--rln-muted); font-size: 11px; font-weight:500; }
.rln-rpid__selected-score div b { display: block; margin-top: 3px; color: var(--rln-ink); font-size: 13px; }
.rln-rpid__selected-metrics { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; margin: 0; }
.rln-rpid__selected-metrics div { padding: 7px 4px; background: #fff; text-align: center; }
.rln-rpid__selected-metrics dt { color: var(--rln-muted); font-size: 11px; font-weight: 700; }
.rln-rpid__selected-metrics dd { margin: 3px 0 0; font-size: 13px; font-weight:700; }
.rln-rpid__raw-note { margin: 10px 0 0; color: var(--rln-muted); font-size: 11px; font-weight:400; }
.rln-rpid__rank-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 8px; border-bottom: 1px solid var(--rln-line); }
.rln-rpid__rank-head h3 { margin: 0; font-size: 16px; font-weight:700; }
.rln-rpid__rank-head span { color: var(--rln-muted); font-size: 11px; font-weight:600; }
.rln-rpid__ranking { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; margin: 8px 0 0; padding: 0; list-style: none; }
.rln-rpid__ranking button { display: grid; width: 100%; grid-template-columns: 27px 1fr auto; align-items: center; gap: 7px; min-height: 41px; padding: 6px 7px; background: #fff; border: 1px solid #e4e8ef; text-align: left; cursor: pointer; }
.rln-rpid__ranking button:hover,.rln-rpid__ranking button.is-selected { background: var(--rln-soft); }
.rln-rpid__ranking button > span { display: grid; width: 24px; height: 24px; place-items: center; background: #e9edf3; font-size: 11px; font-weight:700; }
.rln-rpid__ranking li:nth-child(-n+3) button > span { color: #fff; background: var(--rln-navy); }
.rln-rpid__ranking button b { font-size: 12px; }
.rln-rpid__ranking button strong { font-size: 13px; }

.rln-rpid__analysis { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(380px,.8fr); gap: 14px; margin-bottom: 18px; }
.rln-rpid__chart { min-height: 285px; contain: layout paint; }
.rln-rpid__fields { display: grid; gap: 14px; }
.rln-rpid__field-row { display: grid; grid-template-columns: 96px minmax(100px,1fr) 45px; align-items: center; gap: 9px; }
.rln-rpid__field-label { font-size: 12px; font-weight:700; }
.rln-rpid__field-track { position: relative; height: 18px; background: #e8edf3; }
.rln-rpid__field-track::after { position: absolute; z-index: 2; top: -3px; bottom: -3px; left: var(--reference-position); width: 2px; background: var(--rln-ink); content: ""; opacity: .7; }
.rln-rpid__field-bar { width: var(--score-position); min-width: 2px; height: 100%; background: var(--status-color); }
.rln-rpid__field-value { text-align: right; font-size: 13px; font-weight:700; }
.rln-rpid__field-meta { grid-column: 2/-1; margin-top: -6px; color: var(--rln-muted); font-size: 11px; font-weight:400; }

.rln-rpid__section-title { margin: 28px 0 15px; }
.rln-rpid__signal-cards { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-bottom: 14px; }
.rln-rpid__signal-cards article { position: relative; min-width: 0; min-height: 225px; padding: 20px; overflow: hidden; background: #fff; border: 1px solid var(--rln-line); border-top: 5px solid var(--status-color); box-shadow: 0 8px 22px rgba(29,39,69,.06); }
.rln-rpid__signal-cards article > i { position: absolute; top: 14px; right: 16px; color: #ddd8ef; font-size: 34px; font-style: normal; font-weight:700; }
.rln-rpid__signal-cards article > span { color: var(--rln-muted); font-size: 12px; font-weight:600; }
.rln-rpid__signal-cards h3 { max-width: 80%; margin: 8px 0 14px; font-size: 19px; font-weight:700; line-height: 1.25; }
.rln-rpid__signal-cards strong { color: var(--status-color); font-size: 37px; font-weight:700; }
.rln-rpid__signal-cards strong small { margin-left: 3px; font-size: 12px; }
.rln-rpid__signal-cards p { margin: 10px 0; color: var(--rln-muted); font-size: 11px; font-weight: 700; }
.rln-rpid__signal-cards em { display: inline-flex; padding: 5px 8px; color: #fff; background: var(--status-color); border-radius: 99px; font-size: 11px; font-style: normal; font-weight:600; }

.rln-rpid__method { padding: 25px; background: #242943; color: #eef1fa; }
.rln-rpid__method .rln-rpid__section-title { margin: 0 0 16px; }
.rln-rpid__method .rln-rpid__section-title span { color: #a996ef; }
.rln-rpid__method-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; }
.rln-rpid__method-grid article { padding: 15px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); }
.rln-rpid__method-grid b { font-size: 14px; }
.rln-rpid__method-grid p { margin: 7px 0 0; color: #bdc5d8; font-size: 11px; font-weight:400; }
.rln-rpid__method details { margin-top: 13px; padding: 12px 14px; background: rgba(255,255,255,.05); }
.rln-rpid__method summary { font-size: 12px; font-weight:600; cursor: pointer; }
.rln-rpid__method details p { margin: 9px 0 0; color: #bdc5d8; font-size: 11px; }
.rln-rpid__message,.rln-rpid__noscript { margin: 12px 0; padding: 11px 13px; color: #8a332e; background: #fff0ee; font-size: 12px; }
.rln-rpid__message[hidden] { display: none; }

@supports (content-visibility:auto) {
  .rln-rpid__daily-table-panel,.rln-rpid__sector-overview,.rln-rpid__evidence-panel,.rln-rpid__overview,.rln-rpid__analysis,.rln-rpid__signals-panel,.rln-rpid__method { content-visibility: auto; contain-intrinsic-size: auto 520px; }
}
@media (max-width:1240px) {
  .rln-rpid__app-layout { grid-template-columns: 168px minmax(0,1fr); }
  .rln-rpid__rail { padding-inline: 8px; }
  .rln-rpid__briefing { grid-template-columns: minmax(0,1fr) 230px; }
  .rln-rpid__brief-extremes { grid-column: 1/-1; grid-template-columns: repeat(2,1fr); }
  .rln-rpid__score-orbit { width: 220px; height: 220px; }
  .rln-rpid__score-orbit strong { font-size: 58px; }
  .rln-rpid__insight-grid { grid-template-columns: repeat(3,1fr); }
  .rln-rpid__insight-grid article:nth-child(3) { border-right: 0; }
  .rln-rpid__insight-grid article:nth-child(-n+3) { border-bottom: 1px solid var(--rln-line); }
  .rln-rpid__evidence-grid { grid-template-columns: minmax(0,1fr) 230px; }
  .rln-rpid__region-bars { grid-column: 1/-1; grid-template-columns: repeat(2,1fr); }
}
@media (max-width:1020px) {
  .rln-rpid__app-layout { display: block; }
  .rln-rpid__rail { position: sticky; top: 0; display: flex; max-width: 100%; gap: 4px; margin-bottom: 10px; padding: 7px; overflow-x: auto; border-radius: 0; }
  .rln-rpid__rail-brand { display: none; }
  .rln-rpid__rail a { display: flex; flex: 0 0 auto; min-height: 39px; padding: 5px 8px; }
  .rln-rpid__rail a i { width: 25px; height: 25px; }
  .rln-rpid__workspace { padding-left: 0; }
  .rln-rpid__overview,.rln-rpid__analysis { grid-template-columns: 1fr; }
  .rln-rpid__sector-tabs { grid-template-columns: repeat(3,1fr); }
  .rln-rpid__sector-grid { grid-template-columns: repeat(2,1fr); }
  .rln-rpid__signal-cards { grid-template-columns: repeat(2,1fr); }
  .rln-rpid__method-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width:760px) {
  .rln-rpid__workspace-head { align-items: flex-start; }
  .rln-rpid__workspace-head h1 { font-size: 29px; }
  .rln-rpid__stamp { min-width: 190px; }
  .rln-rpid__toolbar { flex-wrap: wrap; }
  .rln-rpid__toolbar-note { width: 100%; margin: 4px 0 0; }
  .rln-rpid__briefing { grid-template-columns: 1fr; padding: 28px 24px; }
  .rln-rpid__score-orbit { width: 210px; height: 210px; }
  .rln-rpid__insight-grid { grid-template-columns: repeat(2,1fr); }
  .rln-rpid__insight-grid article:nth-child(2n) { border-right: 0; }
  .rln-rpid__insight-grid article:nth-child(-n+4) { border-bottom: 1px solid var(--rln-line); }
  .rln-rpid__daily-grid { grid-template-columns: 1fr; }
  .rln-rpid__daily-stats { grid-template-columns: repeat(4,1fr); }
  .rln-rpid__daily-stats article { min-height: 105px; padding: 12px; }
  .rln-rpid__daily-stats strong { font-size: 25px; }
  .rln-rpid__evidence-grid { grid-template-columns: 1fr; }
  .rln-rpid__status-distribution { grid-template-columns: 150px 1fr; }
  .rln-rpid__region-bars { grid-template-columns: 1fr; }
  .rln-rpid__panel { padding: 17px; }
  .rln-rpid__region-card { width: 58px; min-height: 48px; padding: 3px; }
  .rln-rpid__region-name,.rln-rpid__region-gap { font-size: 11px; }
  .rln-rpid__region-gap { display: none; }
}
@media (max-width:520px) {
  .rln-rpid { font-size: 14px; }
  .rln-rpid__rail a span { display: none; }
  .rln-rpid__workspace-head { display: block; padding: 17px; }
  .rln-rpid__workspace-head > div:first-child > span { letter-spacing: .07em; }
  .rln-rpid__workspace-head h1 { font-size: 27px; }
  .rln-rpid__stamp { margin-top: 13px; }
  .rln-rpid__field { flex: 1 1 135px; min-width: 135px; }
  .rln-rpid__brief-copy h2 { font-size: 31px; }
  .rln-rpid__brief-extremes { grid-template-columns: 1fr; }
  .rln-rpid__insight-grid { grid-template-columns: 1fr; }
  .rln-rpid__insight-grid article { min-height: 110px; border-right: 0; border-bottom: 1px solid var(--rln-line); }
  .rln-rpid__daily-stats { grid-template-columns: repeat(2,1fr); }
  .rln-rpid__panel-head,.rln-rpid__sector-head { display: block; }
  .rln-rpid__panel-head > p,.rln-rpid__panel-head > em,.rln-rpid__sector-head > strong { display: inline-flex; margin-top: 8px; }
  .rln-rpid__sector-overview { padding: 19px 14px; }
  .rln-rpid__sector-tabs { grid-template-columns: repeat(2,1fr); }
  .rln-rpid__sector-grid,.rln-rpid__signal-cards,.rln-rpid__method-grid,.rln-rpid__evidence-cards { grid-template-columns: 1fr; }
  .rln-rpid__sector-card { min-height: auto; }
  .rln-rpid__ranking { grid-template-columns: 1fr; }
  .rln-rpid__region-card { width: 48px; min-height: 39px; }
  .rln-rpid__region-score { font-size: 14px; }
  .rln-rpid__selected-metrics { grid-template-columns: 1fr; }
  .rln-rpid__status-distribution { grid-template-columns: 125px 1fr; }
  .rln-rpid__status-donut { width: 120px; height: 120px; }
  .rln-rpid__status-donut::before { width: 82px; height: 82px; }
}
@media (prefers-reduced-motion:reduce) {
  .rln-rpid *,.rln-rpid *::before,.rln-rpid *::after { scroll-behavior: auto!important; animation-duration: .001ms!important; transition-duration: .001ms!important; }
}

/* 2.1.0 — Korean-first research dashboard */
.rln-rpid {
  --rln-ink:#182235;
  --rln-muted:#667085;
  --rln-accent:#5940c6;
  --rln-accent-2:#4169d8;
  --rln-line:#dce2ec;
  --rln-soft:#f6f8fb;
  --rln-panel:#fff;
  --rln-high:#28786c;
  --rln-good:#6f978e;
  --rln-neutral:#74879d;
  --rln-watch:#bd7c25;
  --rln-focus:#b64e45;
  color:var(--rln-ink);
  font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1.55;
  letter-spacing:-.012em;
  word-break:keep-all;
}
.rln-rpid button,.rln-rpid select,.rln-rpid input { font:inherit; letter-spacing:inherit; }
.rln-rpid p,.rln-rpid li,.rln-rpid td,.rln-rpid dd { font-weight:400; }
.rln-rpid b,.rln-rpid h1,.rln-rpid h2,.rln-rpid h3 { font-weight:600; }
.rln-rpid strong { font-weight:700; font-variant-numeric:tabular-nums; }
.rln-rpid__app-layout { grid-template-columns:208px minmax(0,1fr); gap:0; background:#f3f5f9; border:1px solid #d9e0eb; border-top:0; box-shadow:none; }
.rln-rpid__workspace { min-width:0; padding:0 18px 30px; }
.rln-rpid__rail { position:sticky; top:0; height:100vh; min-height:680px; padding:18px 14px; background:#20273c; }
.rln-rpid__rail-brand { margin-bottom:18px; padding:0 4px 16px; border-bottom:1px solid rgba(255,255,255,.1); }
.rln-rpid__rail-brand > span { width:32px; height:32px; background:#6250c8; border-radius:7px; font-size:15px; font-weight:600; }
.rln-rpid__rail-brand b { color:#fff; font-size:12px; font-weight:600; letter-spacing:.03em; }
.rln-rpid__rail-brand small { color:#aeb8d0; font-size:10px; font-weight:400; letter-spacing:.08em; }
.rln-rpid__rail a { grid-template-columns:26px 1fr; min-height:40px; margin:2px 0; padding:6px 8px; color:#cfd6e8; border-radius:6px; font-size:13px; font-weight:500; transition:background-color .18s,color .18s; }
.rln-rpid__rail a i { width:24px; height:24px; background:rgba(255,255,255,.07); border-radius:4px; font-size:10px; font-weight:500; }
.rln-rpid__rail a:hover,.rln-rpid__rail a.is-active { color:#fff; background:#4c5580; }
.rln-rpid__workspace-head { min-height:100px; margin:0 -18px 14px; padding:20px 22px; background:#fff; border-bottom:1px solid var(--rln-line); border-radius:0; box-shadow:none; }
.rln-rpid__workspace-head > div:first-child > span,.rln-rpid__eyebrow,.rln-rpid__panel-head > div > span,.rln-rpid__section-title > span,.rln-rpid__sector-head > div > span { margin-bottom:4px; color:var(--rln-accent); font-size:10px; font-weight:600; letter-spacing:.12em; }
.rln-rpid__workspace-head h1 { font-size:clamp(25px,2.2vw,34px); font-weight:600; line-height:1.22; letter-spacing:-.035em; }
.rln-rpid__workspace-head p { margin-top:5px; color:var(--rln-muted); font-size:13px; font-weight:400; }
.rln-rpid__head-actions { display:flex; align-items:center; gap:9px; }
.rln-rpid__stamp { min-width:195px; padding:10px 13px; text-align:left; background:#f7f8fb; border:1px solid var(--rln-line); border-radius:8px; }
.rln-rpid__stamp small,.rln-rpid__stamp span { color:var(--rln-muted); font-size:10px; font-weight:400; }
.rln-rpid__stamp strong { margin:2px 0; font-size:13px; font-weight:600; }
.rln-rpid__export { min-height:42px; padding:0 13px; color:#fff; background:var(--rln-accent); border:1px solid var(--rln-accent); border-radius:7px; font-size:12px; font-weight:600; cursor:pointer; transition:background-color .18s,transform .18s; }
.rln-rpid__export:hover { background:#422d9d; transform:translateY(-1px); }
.rln-rpid__toolbar { min-height:66px; margin-bottom:14px; padding:10px 12px; background:#fff; border:1px solid var(--rln-line); border-radius:10px; box-shadow:none; }
.rln-rpid__field { min-width:165px; gap:3px; color:#4d5b70; font-size:11px; font-weight:500; }
.rln-rpid__field select { min-height:38px; padding:6px 31px 6px 10px; border-color:#cfd7e4; border-radius:6px; font-size:13px; font-weight:500; }
.rln-rpid__toolbar-note { margin-bottom:7px; font-size:11px; font-weight:400; }
.rln-rpid__briefing { grid-template-columns:minmax(0,1.25fr) 250px minmax(235px,.65fr); min-height:278px; margin-bottom:12px; padding:28px; background:#fff; border:1px solid var(--rln-line); border-radius:12px; box-shadow:0 8px 24px rgba(31,42,67,.055); }
.rln-rpid__briefing::before { display:none; }
.rln-rpid__brief-copy h2 { max-width:620px; font-size:clamp(27px,2.6vw,40px); font-weight:600; line-height:1.25; letter-spacing:-.045em; }
.rln-rpid__brief-copy p { max-width:580px; margin-top:12px; color:var(--rln-muted); font-size:14px; font-weight:400; line-height:1.65; }
.rln-rpid__brief-pills { margin-top:18px; }
.rln-rpid__brief-pills span,.rln-rpid__brief-pills b { padding:6px 9px; font-size:11px; font-weight:500; }
.rln-rpid__score-orbit { width:230px; height:230px; background:conic-gradient(var(--status-color) 0 76%,#ece9f5 76%); box-shadow:none; }
.rln-rpid__score-orbit::before { inset:12px; border:1px solid #eceaf4; }
.rln-rpid__score-orbit.is-echarts-ready { width:250px; height:230px; background:none; border-radius:0; }
.rln-rpid__score-orbit.is-echarts-ready::before { display:none; }
.rln-rpid__score-orbit.is-echarts-ready > div:not(.rln-rpid__echarts) { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.rln-rpid__score-orbit > .rln-rpid__echarts { position:absolute; inset:0; z-index:3; }
.rln-rpid__score-orbit small { font-size:15px; font-weight:500; }
.rln-rpid__score-orbit strong { font-size:62px; font-weight:700; }
.rln-rpid__score-orbit span { font-size:12px; font-weight:400; }
.rln-rpid__score-orbit em { margin-top:9px; padding:6px 10px; font-size:11px; font-weight:500; }
.rln-rpid__brief-extremes { gap:10px; }
.rln-rpid__brief-extremes article { min-height:104px; padding:15px; background:#f8f9fc; border:1px solid var(--rln-line); border-radius:9px; box-shadow:none; }
.rln-rpid__brief-extremes span { font-size:10px; font-weight:400; }
.rln-rpid__brief-extremes b { margin-top:6px; font-size:14px; font-weight:600; }
.rln-rpid__brief-extremes strong { font-size:27px; font-weight:700; }
.rln-rpid__insight-grid { grid-template-columns:repeat(6,minmax(0,1fr)); margin-bottom:14px; background:#fff; border:1px solid var(--rln-line); border-radius:10px; box-shadow:none; }
.rln-rpid__insight-grid article { min-height:105px; padding:15px; border-right:1px solid var(--rln-line); }
.rln-rpid__insight-grid article:last-child { border-right:0; }
.rln-rpid__insight-grid article::before { height:2px; }
.rln-rpid__insight-grid article > span { font-size:10px; font-weight:500; }
.rln-rpid__insight-grid strong { margin-top:7px; font-size:27px; font-weight:700; }
.rln-rpid__insight-grid strong small { font-size:11px; font-weight:400; }
.rln-rpid__insight-grid p { margin-top:9px; font-size:10px; font-weight:400; }
.rln-rpid__panel,.rln-rpid__sector-overview,.rln-rpid__method { padding:20px; background:#fff; border:1px solid var(--rln-line); border-radius:10px; box-shadow:none; }
.rln-rpid__panel-head,.rln-rpid__sector-head { margin-bottom:16px; }
.rln-rpid__panel-head h2,.rln-rpid__section-title h2,.rln-rpid__sector-head h2 { font-size:21px; font-weight:600; line-height:1.32; letter-spacing:-.03em; }
.rln-rpid__panel-head > div > p,.rln-rpid__section-title p,.rln-rpid__sector-head p { margin-top:4px; font-size:12px; font-weight:400; }
.rln-rpid__panel-head > p { font-size:11px; font-weight:400; }
.rln-rpid__recovery { padding:9px 12px; background:#f7f8fb; border-radius:7px; }
.rln-rpid__recovery b { font-size:12px; font-weight:600; }
.rln-rpid__recovery small { font-size:10px; font-weight:400; }
.rln-rpid__scorecard-layout { display:grid; grid-template-columns:minmax(340px,.7fr) minmax(620px,1.3fr); align-items:stretch; gap:18px; }
.rln-rpid__sector-change-chart { min-height:310px; background:#f8f9fc; border:1px solid #e4e8f0; border-radius:8px; }
.rln-rpid__table-wrap { overflow:visible; }
.rln-rpid__scorecard,.rln-rpid__table { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0; color:#243047; font-size:12px; }
.rln-rpid__scorecard th,.rln-rpid__table th { height:40px; padding:9px 10px; color:#566277; background:#f2f4f8; border-top:1px solid #e2e7ef; border-bottom:1px solid #d9e0ea; font-size:10px; font-weight:600; line-height:1.3; text-align:left; }
.rln-rpid__scorecard th:first-child,.rln-rpid__table th:first-child { border-left:1px solid #e2e7ef; border-radius:6px 0 0 0; }
.rln-rpid__scorecard th:last-child,.rln-rpid__table th:last-child { border-right:1px solid #e2e7ef; border-radius:0 6px 0 0; }
.rln-rpid__scorecard td,.rln-rpid__table td { height:43px; padding:9px 10px; border-bottom:1px solid #e5e9f0; font-weight:400; line-height:1.35; white-space:nowrap; }
.rln-rpid__scorecard td:first-child { display:table-cell; }
.rln-rpid__scorecard td:nth-child(n+2),.rln-rpid__scorecard th:nth-child(n+2),.rln-rpid__table td:nth-child(n+3),.rln-rpid__table th:nth-child(n+3) { text-align:right; }
.rln-rpid__scorecard td:first-child b { display:inline-block; font-weight:500; vertical-align:middle; }
.rln-rpid__scorecard td:nth-child(2) strong { font-size:16px; font-weight:700; }
.rln-rpid__scorecard em,.rln-rpid__table td span { padding:4px 6px; font-size:10px; font-weight:500; }
.rln-rpid__mini-icon { display:inline-grid; width:25px; height:25px; margin-right:7px; vertical-align:middle; }
.rln-rpid__daily-grid { grid-template-columns:minmax(0,1fr) 220px; gap:12px; margin-bottom:12px; }
.rln-rpid__daily-chart-panel { min-height:440px; }
.rln-rpid__daily-chart { min-height:340px; }
.rln-rpid__chart-switch { display:flex; gap:4px; padding:3px; background:#f0f2f7; border-radius:7px; }
.rln-rpid__chart-switch button { min-height:32px; padding:0 10px; color:#667085; background:transparent; border:0; border-radius:5px; font-size:11px; font-weight:500; cursor:pointer; }
.rln-rpid__chart-switch button.is-active { color:#fff; background:#3c435e; }
.rln-rpid__daily-stats { grid-template-columns:1fr; gap:0; background:#fff; border:1px solid var(--rln-line); border-radius:10px; box-shadow:none; }
.rln-rpid__daily-stats article { min-height:97px; padding:15px; border-bottom:1px solid var(--rln-line); }
.rln-rpid__daily-stats article:last-child { border-bottom:0; }
.rln-rpid__daily-stats span,.rln-rpid__daily-stats small { font-size:10px; font-weight:400; }
.rln-rpid__daily-stats strong { margin-top:6px; font-size:27px; font-weight:700; }
.rln-rpid__data-drawer { display:block; margin-bottom:14px; padding:0; overflow:hidden; }
.rln-rpid__data-drawer > summary { display:flex; min-height:54px; padding:13px 16px; align-items:center; justify-content:space-between; list-style:none; cursor:pointer; }
.rln-rpid__data-drawer > summary::-webkit-details-marker { display:none; }
.rln-rpid__data-drawer > summary::after { content:"＋"; color:var(--rln-accent); font-size:18px; font-weight:400; }
.rln-rpid__data-drawer[open] > summary::after { content:"−"; }
.rln-rpid__data-drawer > summary b,.rln-rpid__data-drawer > summary small { display:block; }
.rln-rpid__data-drawer > summary b { font-size:14px; font-weight:600; }
.rln-rpid__data-drawer > summary small { margin-top:2px; color:var(--rln-muted); font-size:10px; font-weight:400; }
.rln-rpid__data-drawer > .rln-rpid__table-wrap { padding:0 16px 16px; }
.rln-rpid__sector-overview { margin-bottom:14px; padding:22px; background:#eef5f7; border-color:#d1e0e5; }
.rln-rpid__sector-head > strong { padding:6px 9px; color:#42556a; background:#fff; border:1px solid #dae4e8; border-radius:6px; font-size:10px; font-weight:500; }
.rln-rpid__sector-tabs { grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; margin-bottom:14px; }
.rln-rpid__sector-tabs button { min-height:70px; padding:9px 10px; background:#fff; border:1px solid #d8e2e7; border-radius:8px; box-shadow:none; transition:border-color .18s,background-color .18s,transform .18s; }
.rln-rpid__sector-tabs button:hover { transform:translateY(-1px); }
.rln-rpid__sector-tabs button.is-active { color:#fff; background:#34445f; border-color:#34445f; }
.rln-rpid__sector-tabs b { font-size:12px; font-weight:600; }
.rln-rpid__sector-tabs small { font-size:10px; font-weight:400; }
.rln-rpid__sector-icon { width:34px; height:34px; }
.rln-rpid__sector-analysis { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:14px; }
.rln-rpid__sector-focus-chart { min-height:350px; background:#fff; border:1px solid #d8e2e7; border-radius:9px; }
.rln-rpid__sector-grid { display:block; }
.rln-rpid__sector-card { display:none; min-height:350px; padding:18px; background:#fff; border:1px solid #d8e2e7; border-top:3px solid var(--status-color); border-radius:9px; box-shadow:none; }
.rln-rpid__sector-card.is-highlighted { display:block; }
.rln-rpid__sector-card-head h3 { font-size:18px; font-weight:600; }
.rln-rpid__sector-card-head em { font-size:10px; font-weight:500; }
.rln-rpid__sector-score strong { font-size:42px; font-weight:700; }
.rln-rpid__sector-score span { font-size:11px; font-weight:400; }
.rln-rpid__sector-change { font-size:14px; font-weight:600; }
.rln-rpid__sector-change small { font-weight:400; }
.rln-rpid__sector-sparkline { display:none; }
.rln-rpid__sector-details { margin-top:22px; }
.rln-rpid__sector-details dt { font-size:10px; font-weight:400; }
.rln-rpid__sector-details dd { font-size:14px; font-weight:600; }
.rln-rpid__sector-insight { margin-top:15px; padding:12px; color:#44536a; background:#f5f7fa; border:0; border-radius:7px; font-size:12px; font-weight:400; line-height:1.6; }
.rln-rpid__evidence-grid { grid-template-columns:minmax(300px,.7fr) 230px minmax(360px,1fr); gap:16px; }
.rln-rpid__evidence-cards { grid-template-columns:repeat(2,1fr); gap:8px; }
.rln-rpid__evidence-cards article { padding:13px; background:#f7f8fb; border:1px solid #e2e7ef; border-radius:7px; }
.rln-rpid__evidence-cards span,.rln-rpid__evidence-cards small { font-size:10px; font-weight:400; }
.rln-rpid__evidence-cards strong { font-size:24px; font-weight:700; }
.rln-rpid__status-distribution { display:block; }
.rln-rpid__status-donut { width:100%; height:170px; background:none; }
.rln-rpid__status-donut::before { display:none; }
.rln-rpid__status-donut > span { display:none; }
.rln-rpid__status-legend { justify-content:center; }
.rln-rpid__status-legend span { font-size:10px; font-weight:400; }
.rln-rpid__region-bars { min-height:240px; max-height:none; overflow:visible; }
.rln-rpid__region-bars.is-echarts-ready { min-height:250px; }
.rln-rpid__overview { grid-template-columns:minmax(650px,1.35fr) minmax(320px,.65fr); gap:12px; margin-bottom:12px; }
.rln-rpid__map-canvas { min-height:690px; background:#f7f9fb; border:1px solid #e3e8ef; border-radius:8px; }
.rln-rpid__region-card { box-shadow:0 2px 7px rgba(28,40,62,.12); }
.rln-rpid__region-name { font-size:10px; font-weight:500; }
.rln-rpid__region-score { font-size:16px; font-weight:700; }
.rln-rpid__region-gap { font-size:10px; font-weight:400; }
.rln-rpid__ranking { max-height:none; overflow:visible; }
.rln-rpid__ranking button { min-height:39px; font-size:11px; font-weight:400; }
.rln-rpid__ranking button b { font-weight:500; }
.rln-rpid__ranking button strong { font-weight:700; }
.rln-rpid__analysis { gap:12px; margin-bottom:14px; }
.rln-rpid__chart,.rln-rpid__fields { min-height:300px; }
.rln-rpid__signal-cards { gap:10px; }
.rln-rpid__signal-cards article { min-height:190px; padding:17px; box-shadow:none; }
.rln-rpid__signal-cards article > i { color:#d9deea; font-size:29px; font-weight:600; }
.rln-rpid__signal-cards article > span { font-size:11px; font-weight:500; }
.rln-rpid__signal-cards h3 { font-size:17px; font-weight:600; }
.rln-rpid__signal-cards strong { font-size:32px; font-weight:700; }
.rln-rpid__signal-cards p { font-size:11px; font-weight:400; }
.rln-rpid__signal-cards em { font-size:10px; font-weight:500; }
.rln-rpid__method { background:#242c43; }
.rln-rpid__method-grid p,.rln-rpid__method details p { font-size:11px; font-weight:400; line-height:1.65; }
.rln-rpid__method summary { font-size:12px; font-weight:500; }
.rln-rpid__chart-empty { min-height:240px; font-size:13px; font-weight:400; }
.rln-rpid__echarts { width:100%; height:100%; min-height:inherit; }
.rln-rpid__echarts .echarts-for-react { min-height:inherit; }

@media (max-width:1320px) {
  .rln-rpid__insight-grid { grid-template-columns:repeat(3,1fr); }
  .rln-rpid__insight-grid article:nth-child(3) { border-right:0; }
  .rln-rpid__insight-grid article:nth-child(-n+3) { border-bottom:1px solid var(--rln-line); }
  .rln-rpid__scorecard-layout { grid-template-columns:1fr; }
  .rln-rpid__sector-change-chart { min-height:280px; }
  .rln-rpid__evidence-grid { grid-template-columns:1fr 230px; }
  .rln-rpid__region-bars { grid-column:1/-1; }
}
@media (max-width:1080px) {
  .rln-rpid__app-layout { grid-template-columns:1fr; }
  .rln-rpid__rail { position:sticky; top:0; z-index:20; display:flex; width:auto; height:auto; min-height:0; padding:7px; overflow-x:auto; }
  .rln-rpid__rail-brand { display:none; }
  .rln-rpid__rail a { flex:0 0 auto; grid-template-columns:22px auto; min-height:34px; }
  .rln-rpid__briefing { grid-template-columns:1fr 220px; }
  .rln-rpid__brief-extremes { grid-column:1/-1; grid-template-columns:repeat(2,1fr); }
  .rln-rpid__sector-tabs { grid-template-columns:repeat(3,1fr); }
  .rln-rpid__sector-analysis { grid-template-columns:1fr; }
  .rln-rpid__sector-focus-chart { min-height:320px; }
  .rln-rpid__overview { grid-template-columns:1fr; }
  .rln-rpid__map-canvas { min-height:660px; }
}
@media (max-width:760px) {
  .rln-rpid__workspace { padding:0 8px 20px; }
  .rln-rpid__workspace-head { display:block; margin:0 -8px 10px; padding:16px; }
  .rln-rpid__head-actions { margin-top:12px; align-items:stretch; }
  .rln-rpid__stamp { flex:1; min-width:0; }
  .rln-rpid__briefing { grid-template-columns:1fr; padding:20px; }
  .rln-rpid__score-orbit { margin-top:5px; }
  .rln-rpid__brief-extremes { grid-template-columns:1fr 1fr; }
  .rln-rpid__insight-grid { grid-template-columns:repeat(2,1fr); }
  .rln-rpid__insight-grid article:nth-child(odd) { border-right:1px solid var(--rln-line); }
  .rln-rpid__insight-grid article:nth-child(even) { border-right:0; }
  .rln-rpid__daily-grid { grid-template-columns:1fr; }
  .rln-rpid__daily-stats { grid-template-columns:repeat(2,1fr); }
  .rln-rpid__daily-stats article { border-right:1px solid var(--rln-line); }
  .rln-rpid__sector-tabs { display:flex; overflow-x:auto; }
  .rln-rpid__sector-tabs button { flex:0 0 145px; }
  .rln-rpid__evidence-grid { grid-template-columns:1fr; }
  .rln-rpid__scorecard-layout { display:block; }
  .rln-rpid__table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .rln-rpid__scorecard,.rln-rpid__table { min-width:720px; }
  .rln-rpid__map-canvas { min-height:560px; }
  .rln-rpid__analysis { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .rln-rpid { font-size:14px; }
  .rln-rpid__head-actions { display:grid; grid-template-columns:1fr auto; }
  .rln-rpid__workspace-head h1 { font-size:25px; }
  .rln-rpid__brief-copy h2 { font-size:28px; }
  .rln-rpid__brief-extremes,.rln-rpid__evidence-cards { grid-template-columns:1fr; }
  .rln-rpid__daily-stats { grid-template-columns:1fr 1fr; }
  .rln-rpid__sector-overview { padding:15px; }
  .rln-rpid__map-canvas { min-height:500px; }
}

/* 2.2.0 — compact research rail and animated intelligence hero */
.rln-rpid__rail {
  display:flex;
  flex-direction:column;
  align-content:flex-start;
  align-items:stretch;
  justify-content:flex-start;
  gap:4px;
  padding:16px 12px;
}
.rln-rpid__rail-brand {
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:0 2px 12px;
  padding:0 2px 15px;
}
.rln-rpid__rail-brand > span { flex:0 0 32px; }
.rln-rpid__rail-brand div { display:block; min-width:0; }
.rln-rpid__rail-brand small,.rln-rpid__rail-brand i { display:block; color:#b9c3db; font-size:10px; font-style:normal; font-weight:500; letter-spacing:.08em; line-height:1.25; white-space:nowrap; }
.rln-rpid__rail-brand p { display:flex; align-items:center; gap:6px; margin:3px 0 4px; }
.rln-rpid__rail-brand b { color:#fff; font-size:13px; font-weight:600; letter-spacing:-.025em; line-height:1.25; white-space:nowrap; }
.rln-rpid__rail-brand em { padding:2px 4px; color:#e5e0ff; border:1px solid rgba(190,178,255,.42); border-radius:2px; font-size:10px; font-style:normal; font-weight:500; line-height:1; }
.rln-rpid__rail-brand i { color:#818ca9; font-size:10px; letter-spacing:.04em; }
.rln-rpid__rail a { flex:0 0 auto; min-height:46px; margin:0; padding:6px 8px; }

.rln-rpid__briefing {
  isolation:isolate;
  min-height:310px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 65% 48%,rgba(89,225,191,.16),transparent 22%),
    radial-gradient(circle at 84% 16%,rgba(132,98,255,.38),transparent 28%),
    linear-gradient(122deg,#161e33 0%,#222d4b 52%,#403194 100%);
  border:1px solid #303b5c;
  box-shadow:0 18px 42px rgba(25,31,58,.18);
}
.rln-rpid__briefing::before {
  display:block;
  position:absolute;
  inset:0;
  z-index:0;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:34px 34px;
  content:"";
  mask-image:linear-gradient(90deg,transparent 8%,#000 60%,#000 100%);
}
.rln-rpid__briefing::after {
  top:-150px;
  right:-70px;
  z-index:0;
  width:420px;
  height:420px;
  border-color:rgba(187,174,255,.2);
  box-shadow:0 0 0 44px rgba(150,128,255,.05),0 0 0 88px rgba(150,128,255,.035);
  animation:rln-rpid-hero-breathe 5.8s ease-in-out infinite;
}
.rln-rpid__brief-copy,.rln-rpid__score-orbit,.rln-rpid__brief-extremes { z-index:3; }
.rln-rpid__briefing .rln-rpid__eyebrow { color:#aeb8ff; }
.rln-rpid__brief-copy h2 { color:#fff; text-shadow:0 2px 18px rgba(0,0,0,.14); }
.rln-rpid__brief-copy p { color:#c8d1e5; }
.rln-rpid__brief-pills span { color:#e7ebf8; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.1); }
.rln-rpid__brief-pills b { box-shadow:0 7px 18px rgba(0,0,0,.16); }
.rln-rpid__hero-signal {
  position:absolute;
  right:16%;
  bottom:-4px;
  left:34%;
  z-index:1;
  height:138px;
  min-height:0;
  opacity:.68;
  pointer-events:none;
  mask-image:linear-gradient(90deg,transparent,#000 14%,#000 88%,transparent);
}
.rln-rpid__score-orbit.is-echarts-ready {
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(18,27,48,.94) 0 52%,rgba(90,72,191,.18) 53% 68%,transparent 69%);
  box-shadow:0 0 46px rgba(102,84,235,.24),inset 0 0 28px rgba(86,211,181,.08);
}
.rln-rpid__orbit-ring {
  position:absolute;
  z-index:2;
  border-radius:50%;
  pointer-events:none;
}
.rln-rpid__orbit-ring.is-outer { inset:2px; border:1px dashed rgba(191,218,255,.34); animation:rln-rpid-orbit-spin 16s linear infinite; }
.rln-rpid__orbit-ring.is-inner { inset:19px; border:1px solid rgba(116,216,194,.18); box-shadow:0 0 18px rgba(116,216,194,.13); animation:rln-rpid-orbit-spin-reverse 10s linear infinite; }
.rln-rpid__score-orbit > .rln-rpid__echarts { z-index:4; }
.rln-rpid__brief-extremes article { color:#fff; background:rgba(255,255,255,.075); border-color:rgba(210,218,244,.18); box-shadow:0 11px 24px rgba(10,15,30,.18); backdrop-filter:blur(8px); }
.rln-rpid__brief-extremes span { color:#aeb9d1; }
.rln-rpid__brief-extremes b { color:#f5f7ff; }
.rln-rpid__brief-extremes strong { color:#a7a0ff; }
.rln-rpid__brief-extremes .is-worst strong { color:#ff9b8e; }

.rln-rpid__status-distribution { display:grid; justify-items:center; align-content:start; }
.rln-rpid__status-donut { width:184px; height:184px; margin:0 auto; aspect-ratio:1; border-radius:50%; }
.rln-rpid__status-donut.is-echarts-ready { background:none !important; }
.rln-rpid__status-legend { display:grid; grid-template-columns:repeat(2,max-content); gap:6px 12px; justify-content:center; margin-top:2px; }

@keyframes rln-rpid-orbit-spin { to { transform:rotate(360deg); } }
@keyframes rln-rpid-orbit-spin-reverse { to { transform:rotate(-360deg); } }
@keyframes rln-rpid-hero-breathe { 0%,100% { opacity:.68; transform:scale(.98); } 50% { opacity:1; transform:scale(1.025); } }

@media (max-width:1080px) {
  .rln-rpid__rail { flex-direction:row; align-items:center; }
  .rln-rpid__hero-signal { right:4%; left:28%; }
  .rln-rpid__score-orbit.is-echarts-ready { width:235px; height:235px; }
}
@media (max-width:760px) {
  .rln-rpid__hero-signal { right:0; bottom:0; left:0; height:120px; opacity:.38; }
  .rln-rpid__score-orbit.is-echarts-ready { width:238px; height:238px; }
}
@media (prefers-reduced-motion:reduce) {
  .rln-rpid__orbit-ring,.rln-rpid__briefing::after { animation:none !important; }
}

/* 2.3.0 — light research hero, native gauge, and same-screen regional workspace */
.rln-rpid__rail-brand {
  display:block;
  margin:0 2px 12px;
  padding:1px 5px 15px;
}
.rln-rpid__rail-brand div { width:100%; }

.rln-rpid__briefing {
  color:var(--rln-ink);
  background:
    radial-gradient(circle at 68% 46%,rgba(106,92,210,.12),transparent 25%),
    linear-gradient(122deg,#dce8fb 0%,#edf2ff 53%,#f7f5ff 100%);
  border-color:#ccd8eb;
  box-shadow:0 12px 30px rgba(37,54,88,.1);
}
.rln-rpid__briefing::before {
  background-image:linear-gradient(rgba(73,91,137,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(73,91,137,.055) 1px,transparent 1px);
}
.rln-rpid__briefing::after {
  border-color:rgba(93,74,190,.15);
  box-shadow:0 0 0 44px rgba(110,91,210,.035),0 0 0 88px rgba(110,91,210,.022);
}
.rln-rpid__briefing .rln-rpid__eyebrow { color:#5745bd; }
.rln-rpid__brief-copy h2 { color:#17243b; text-shadow:none; }
.rln-rpid__brief-copy p { color:#52627a; }
.rln-rpid__brief-pills span { color:#44536a; background:rgba(255,255,255,.72); border-color:rgba(91,106,140,.15); }
.rln-rpid__brief-pills b { box-shadow:none; }
.rln-rpid__hero-signal { opacity:.52; }

.rln-rpid__score-orbit,
.rln-rpid__score-orbit.is-echarts-ready {
  position:relative;
  display:grid;
  width:250px;
  height:250px;
  place-items:center;
  overflow:visible;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(98,83,186,.15);
  border-radius:50%;
  box-shadow:0 16px 38px rgba(57,71,111,.13),inset 0 0 0 8px rgba(255,255,255,.42);
}
.rln-rpid__score-orbit::before,
.rln-rpid__score-orbit.is-echarts-ready::before { display:none; }
.rln-rpid__score-orbit > svg { position:absolute; inset:0; z-index:1; display:block; width:100%; height:100%; transform:rotate(-90deg); }
.rln-rpid__gauge-track { fill:none; stroke:#dfe6f2; stroke-width:14; }
.rln-rpid__gauge-progress { fill:none; stroke-width:14; stroke-linecap:round; transition:stroke-dasharray 1.15s cubic-bezier(.2,.75,.25,1); filter:drop-shadow(0 5px 7px rgba(91,73,190,.18)); }
.rln-rpid__score-orbit > div,
.rln-rpid__score-orbit.is-echarts-ready > div:not(.rln-rpid__echarts) { position:relative; z-index:2; width:auto; height:auto; padding:0; overflow:visible; clip:auto; white-space:normal; text-align:center; }
.rln-rpid__score-orbit small { color:#68758b; font-size:12px; font-weight:500; }
.rln-rpid__score-orbit strong { display:inline-block; margin-top:5px; color:#17243b; font-size:52px; font-weight:700; letter-spacing:-.055em; }
.rln-rpid__score-orbit span { color:#68758b; }
.rln-rpid__score-orbit em { width:max-content; margin:10px auto 0; padding:5px 9px; color:#fff; background:var(--status-color); box-shadow:0 5px 13px color-mix(in srgb,var(--status-color) 20%,transparent); }
.rln-rpid__brief-extremes article { color:#17243b; background:rgba(255,255,255,.76); border-color:rgba(100,113,146,.18); box-shadow:0 10px 24px rgba(42,55,91,.08); backdrop-filter:blur(7px); }
.rln-rpid__brief-extremes span { color:#68758b; }
.rln-rpid__brief-extremes b { color:#17243b; }
.rln-rpid__brief-extremes strong { color:#5745bd; }
.rln-rpid__brief-extremes .is-worst strong { color:#b85349; }

.rln-rpid__chart-preview { display:flex; min-height:inherit; flex-direction:column; justify-content:center; gap:18px; padding:24px 28px; color:#27364d; background:linear-gradient(180deg,#fff,#f7f9fc); }
.rln-rpid__chart-preview > div { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.rln-rpid__chart-preview b { font-size:16px; font-weight:600; }
.rln-rpid__chart-preview span,.rln-rpid__chart-preview small { color:#67748a; font-size:11px; font-weight:400; }
.rln-rpid__chart-preview svg { display:block; width:100%; height:190px; overflow:visible; }
.rln-rpid__chart-preview svg path { fill:none; stroke:#dde3ec; stroke-width:1; }
.rln-rpid__chart-preview svg polyline { fill:none; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.rln-rpid__chart-preview svg .is-national { stroke:#6653cf; stroke-width:2.2; }
.rln-rpid__chart-preview svg .is-focus { stroke:#af6758; stroke-width:2.2; }
.rln-rpid__chart-preview > small { text-align:right; }

.rln-rpid__overview { grid-template-columns:minmax(620px,1.42fr) minmax(390px,.78fr); align-items:stretch; gap:12px; }
.rln-rpid__map-panel { display:flex; min-height:760px; flex-direction:column; }
.rln-rpid__map-canvas { height:620px; min-height:620px; flex:0 0 620px; }
.rln-rpid__region-panel { display:flex; min-height:760px; flex-direction:column; background:#fff; }
.rln-rpid__region-panel > .rln-rpid__panel-head { margin-bottom:12px; }
.rln-rpid__selected { padding:15px; background:#f3f6fb; border:1px solid #e0e6f0; border-radius:8px; }
.rln-rpid__selected-head h3 { font-size:19px; }
.rln-rpid__selected-score strong { font-size:39px; }
.rln-rpid__selected-metrics { margin-top:12px; }
.rln-rpid__selected-metrics div { background:#fff; border:1px solid #e5e9f1; }
.rln-rpid__raw-note { display:none; }
.rln-rpid__region-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; margin:12px 0 10px; padding:4px; background:#eef1f6; border-radius:7px; }
.rln-rpid__region-tabs button { min-height:36px; padding:6px 8px; color:#637087; background:transparent; border:0; border-radius:5px; font-size:11px; font-weight:500; cursor:pointer; }
.rln-rpid__region-tabs button:hover { color:#27364d; background:#fff; }
.rln-rpid__region-tabs button.is-active { color:#fff; background:#38445f; box-shadow:0 3px 8px rgba(39,50,77,.14); }
.rln-rpid__region-view { display:none; min-height:0; flex:1 1 auto; padding:12px; background:#f8fafc; border:1px solid #e3e8f0; border-radius:8px; }
.rln-rpid__region-view.is-active { display:flex; flex-direction:column; }
.rln-rpid__region-view-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
.rln-rpid__region-view-head b { font-size:13px; font-weight:600; }
.rln-rpid__region-view-head span { color:#66758a; font-size:10px; font-weight:400; text-align:right; }
.rln-rpid__region-view .rln-rpid__chart,
.rln-rpid__region-view .rln-rpid__fields { min-height:285px; flex:1 1 auto; background:#fff; border:1px solid #e4e9f1; border-radius:6px; }
.rln-rpid__region-view .rln-rpid__chart-preview { min-height:285px; padding:18px; }
.rln-rpid__region-view .rln-rpid__chart-preview svg { height:155px; }
.rln-rpid__field-preview { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:10px; min-height:43px; padding:8px 11px; border-bottom:1px solid #e6eaf1; }
.rln-rpid__field-preview:last-child { border-bottom:0; }
.rln-rpid__field-preview span { font-size:11px; font-weight:500; }
.rln-rpid__field-preview strong { font-size:15px; font-weight:700; }
.rln-rpid__field-preview small { min-width:44px; color:#657287; font-size:10px; text-align:right; }
.rln-rpid__region-view .rln-rpid__rank-head { margin:0 0 8px; }
.rln-rpid__region-view .rln-rpid__ranking { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; margin:0; }
.rln-rpid__region-view .rln-rpid__ranking li { margin:0; }
.rln-rpid__region-view .rln-rpid__ranking button { min-height:34px; padding:4px 7px; }
.rln-rpid__region-view .rln-rpid__ranking button span { width:22px; height:22px; }

@media (max-width:1180px) {
  .rln-rpid__overview { grid-template-columns:1fr; }
  .rln-rpid__map-panel,.rln-rpid__region-panel { min-height:0; }
  .rln-rpid__region-panel { height:auto; }
  .rln-rpid__region-view .rln-rpid__chart,.rln-rpid__region-view .rln-rpid__fields { min-height:320px; }
}
@media (max-width:760px) {
  .rln-rpid__briefing { background:linear-gradient(145deg,#dce8fb,#f5f4ff); }
  .rln-rpid__score-orbit,.rln-rpid__score-orbit.is-echarts-ready { width:220px; height:220px; }
  .rln-rpid__overview { display:block; }
  .rln-rpid__map-panel { margin-bottom:12px; }
  .rln-rpid__map-canvas { height:auto; min-height:500px; flex-basis:auto; }
  .rln-rpid__region-view .rln-rpid__ranking { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  .rln-rpid__gauge-progress { transition:none; }
}

/* 2.3.1 — official Ribbonline shell and white research workspace */
body.rln-rpi-dashboard-page { background:#fff !important; }
.rln-rpi-theme-shell { width:100%; background:#fff; }
.rln-rpi-theme-shell__main { width:min(1280px,calc(100% - 60px)); margin:0 auto; }
.rln-rpid__app-layout { background:#fff; border-color:#dce2eb; }
.rln-rpid__workspace { background:#fff; }
.rln-rpid button.rln-rpid__export,
.rln-rpid button.rln-rpid__export:hover,
.rln-rpid button.rln-rpid__export:focus-visible { color:#fff; }
.rln-rpid__region-panel > .rln-rpid__panel-head { min-height:42px; align-items:center; }

@media (max-width:760px) {
  .rln-rpi-theme-shell__main { width:calc(100% - 20px); }
}

/* 2.3.2 — compact one-glance workspace and collision-free evidence charts */
.rln-rpi-theme-shell { padding:12px 0 28px; }
.rln-rpid__app-layout { grid-template-columns:184px minmax(0,1fr); }
.rln-rpid__workspace { padding:0 12px 22px; }
.rln-rpid__rail { min-height:620px; padding:12px 10px; }
.rln-rpid__rail-brand { margin-bottom:8px; padding-bottom:11px; }
.rln-rpid__rail a { min-height:39px; padding:5px 7px; }

.rln-rpid__workspace-head { min-height:78px; margin:0 -12px 10px; padding:12px 16px; }
.rln-rpid__workspace-head h1 { font-size:clamp(24px,2vw,30px); }
.rln-rpid__workspace-head p { margin-top:3px; font-size:12px; }
.rln-rpid__stamp { min-width:178px; padding:7px 10px; }
.rln-rpid__stamp strong { margin:1px 0; font-size:12px; }
.rln-rpid__export { min-height:36px; }
.rln-rpid__toolbar { min-height:52px; margin:0 0 10px; padding:7px 10px; }
.rln-rpid__field { min-width:150px; }
.rln-rpid__field select { min-height:34px; padding-top:4px; padding-bottom:4px; }
.rln-rpid__toolbar-note { margin-bottom:5px; }

.rln-rpid__briefing { grid-template-columns:minmax(0,1.25fr) 200px minmax(185px,.58fr); min-height:224px; gap:15px; margin-bottom:9px; padding:18px 20px; }
.rln-rpid__brief-copy h2 { font-size:clamp(25px,2.25vw,34px); line-height:1.2; }
.rln-rpid__brief-copy p { margin-top:7px; font-size:12px; line-height:1.5; }
.rln-rpid__brief-pills { margin-top:11px; }
.rln-rpid__brief-pills span,.rln-rpid__brief-pills b { padding:5px 8px; font-size:10px; }
.rln-rpid__hero-signal { bottom:0; height:92px; opacity:.42; }
.rln-rpid__score-orbit,
.rln-rpid__score-orbit.is-echarts-ready { width:192px; height:192px; }
.rln-rpid__gauge-track,.rln-rpid__gauge-progress { stroke-width:12; }
.rln-rpid__score-orbit small { font-size:11px; }
.rln-rpid__score-orbit strong { font-size:43px; }
.rln-rpid__score-orbit em { margin-top:7px; padding:4px 8px; font-size:10px; }
.rln-rpid__brief-extremes { gap:7px; }
.rln-rpid__brief-extremes article { min-height:84px; padding:10px 12px; }
.rln-rpid__brief-extremes b { margin-top:3px; font-size:12px; }
.rln-rpid__brief-extremes strong { font-size:23px; }

.rln-rpid__insight-grid { grid-template-columns:repeat(6,minmax(0,1fr)); margin-bottom:10px; }
.rln-rpid__insight-grid article { min-height:76px; padding:9px 10px; }
.rln-rpid__insight-grid strong { margin-top:4px; font-size:22px; }
.rln-rpid__insight-grid p { margin-top:5px; }

.rln-rpid__panel,.rln-rpid__sector-overview,.rln-rpid__method { padding:14px; }
.rln-rpid__panel-head,.rln-rpid__sector-head { margin-bottom:10px; }
.rln-rpid__panel-head h2,.rln-rpid__section-title h2,.rln-rpid__sector-head h2 { font-size:18px; }
.rln-rpid__panel-head > div > p,.rln-rpid__section-title p,.rln-rpid__sector-head p { display:none; }
.rln-rpid__recovery { padding:6px 9px; }
.rln-rpid__scorecard-panel,.rln-rpid__daily-table-panel,.rln-rpid__evidence-panel,.rln-rpid__signals-panel { margin-bottom:10px; }
.rln-rpid__scorecard-layout { grid-template-columns:minmax(280px,.62fr) minmax(600px,1.38fr); gap:12px; }
.rln-rpid__sector-change-chart { min-height:238px; }
.rln-rpid__scorecard th,.rln-rpid__table th { height:33px; padding:6px 8px; }
.rln-rpid__scorecard td,.rln-rpid__table td { height:35px; padding:6px 8px; }
.rln-rpid__mini-icon { width:22px; height:22px; margin-right:5px; }
.rln-rpid__mini-icon svg { width:14px; height:14px; }

.rln-rpid__daily-grid { grid-template-columns:minmax(0,1fr) 250px; gap:10px; margin-bottom:9px; }
.rln-rpid__daily-chart-panel { min-height:322px; }
.rln-rpid__daily-chart { min-height:250px; }
.rln-rpid__daily-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; align-content:stretch; border:0; }
.rln-rpid__daily-stats article { min-height:0; padding:10px; border:1px solid var(--rln-line); border-radius:7px; }
.rln-rpid__daily-stats article:last-child { border-bottom:1px solid var(--rln-line); }
.rln-rpid__daily-stats strong { margin-top:4px; font-size:23px; }
.rln-rpid__daily-stats small { margin-top:4px; }
.rln-rpid__data-drawer { margin-bottom:10px; }
.rln-rpid__data-drawer > summary { min-height:42px; padding:9px 12px; }

.rln-rpid__sector-overview { margin-bottom:10px; padding:14px; }
.rln-rpid__sector-tabs { gap:5px; margin-bottom:9px; padding:4px; }
.rln-rpid__sector-tabs button { min-height:53px; padding:6px 7px; }
.rln-rpid__sector-icon { width:30px; height:30px; }
.rln-rpid__sector-icon svg { width:18px; height:18px; }
.rln-rpid__sector-analysis { grid-template-columns:minmax(0,1.45fr) minmax(285px,.55fr); gap:10px; }
.rln-rpid__sector-focus-chart { min-height:265px; }
.rln-rpid__sector-card { min-height:265px; padding:13px; }
.rln-rpid__sector-card-head h3 { font-size:16px; }
.rln-rpid__sector-score strong { font-size:36px; }
.rln-rpid__sector-primary { margin-top:10px; }
.rln-rpid__sector-details { margin-top:13px; }
.rln-rpid__sector-details div { padding:6px 4px; }
.rln-rpid__sector-insight { margin-top:9px; padding:8px; line-height:1.45; }

.rln-rpid__evidence-grid { grid-template-columns:minmax(250px,.62fr) 156px minmax(335px,1fr); gap:11px; align-items:center; }
.rln-rpid__evidence-cards { gap:6px; }
.rln-rpid__evidence-cards article { min-height:72px; padding:9px 10px; }
.rln-rpid__evidence-cards strong { margin-top:3px; font-size:21px; }
.rln-rpid__status-distribution { display:grid; grid-template-columns:minmax(0,1fr); justify-items:center; align-content:center; gap:3px; min-width:0; }
.rln-rpid__status-donut,
.rln-rpid__status-donut.is-echarts-ready { width:142px; height:142px; margin:0 auto; }
.rln-rpid__status-legend { grid-template-columns:repeat(2,max-content); gap:3px 7px; margin:0; }
.rln-rpid__status-legend span { font-size:10px; white-space:nowrap; }
.rln-rpid__region-bars,
.rln-rpid__region-bars.is-echarts-ready { min-width:0; min-height:198px; height:198px; overflow:hidden; }

.rln-rpid__overview { grid-template-columns:minmax(600px,1.42fr) minmax(330px,.58fr); gap:10px; margin-bottom:10px; }
.rln-rpid__map-panel,.rln-rpid__region-panel { min-height:620px; }
.rln-rpid__map-canvas { width:min(100%,520px); height:520px; min-height:520px; flex:0 0 520px; }
.rln-rpid__legend { padding-top:5px; }
.rln-rpid__map-source { margin-top:5px; font-size:10px; }
.rln-rpid__selected { min-height:164px; margin-bottom:8px; padding:11px; }
.rln-rpid__selected-head h3 { font-size:17px; }
.rln-rpid__selected-score { margin:8px 0 10px; }
.rln-rpid__selected-score strong { font-size:34px; }
.rln-rpid__selected-metrics { margin-top:8px; }
.rln-rpid__region-tabs { margin:8px 0; }
.rln-rpid__region-view { padding:9px; }
.rln-rpid__region-view .rln-rpid__chart,
.rln-rpid__region-view .rln-rpid__fields,
.rln-rpid__region-view .rln-rpid__chart-preview { min-height:230px; }
.rln-rpid__region-view .rln-rpid__chart-preview svg { height:125px; }
.rln-rpid__region-view .rln-rpid__ranking button { min-height:30px; }

.rln-rpid__section-title { margin:16px 0 9px; }
.rln-rpid__signal-cards { gap:7px; margin-bottom:9px; }
.rln-rpid__signal-cards article { min-height:142px; padding:12px; }
.rln-rpid__signal-cards article > i { top:8px; right:10px; font-size:23px; }
.rln-rpid__signal-cards h3 { margin:5px 0 7px; font-size:15px; }
.rln-rpid__signal-cards strong { font-size:27px; }
.rln-rpid__signal-cards p { margin:6px 0; }
.rln-rpid__signal-cards em { padding:4px 6px; font-size:10px; }
.rln-rpid__method { padding:14px; }
.rln-rpid__method .rln-rpid__section-title { margin-bottom:9px; }
.rln-rpid__method-grid { gap:6px; }
.rln-rpid__method-grid article { padding:9px; }
.rln-rpid__method-grid p { margin-top:4px; line-height:1.45; }
.rln-rpid__method details { margin-top:8px; padding:8px 10px; }

@supports (content-visibility:auto) {
  .rln-rpid__sector-overview,.rln-rpid__evidence-panel,.rln-rpid__signals-panel,.rln-rpid__method { contain-intrinsic-size:auto 300px; }
  .rln-rpid__overview { contain-intrinsic-size:auto 620px; }
  .rln-rpid__daily-table-panel { contain-intrinsic-size:auto 42px; }
}

@media (max-width:1180px) {
  .rln-rpid__scorecard-layout { grid-template-columns:1fr; }
  .rln-rpid__sector-change-chart { min-height:210px; }
  .rln-rpid__evidence-grid { grid-template-columns:minmax(0,1fr) 156px; }
  .rln-rpid__region-bars { grid-column:1/-1; height:190px; }
  .rln-rpid__overview { grid-template-columns:1fr; }
  .rln-rpid__map-panel,.rln-rpid__region-panel { min-height:0; }
}

@media (max-width:1080px) {
  .rln-rpid__app-layout { grid-template-columns:1fr; }
  .rln-rpid__rail { position:sticky; top:0; z-index:20; display:flex; width:auto; height:auto; min-height:0; flex-direction:row; padding:6px; overflow-x:auto; }
  .rln-rpid__rail-brand { display:none; }
  .rln-rpid__rail a { flex:0 0 auto; grid-template-columns:22px auto; min-height:34px; }
  .rln-rpid__workspace { padding-left:12px; }
  .rln-rpid__briefing { grid-template-columns:minmax(0,1fr) 192px minmax(180px,.55fr); }
  .rln-rpid__sector-tabs { grid-template-columns:repeat(3,1fr); }
}

@media (max-width:820px) {
  .rln-rpid__briefing { grid-template-columns:1fr 192px; }
  .rln-rpid__brief-extremes { grid-column:1/-1; grid-template-columns:repeat(2,1fr); }
  .rln-rpid__insight-grid { grid-template-columns:repeat(3,1fr); }
  .rln-rpid__daily-grid,.rln-rpid__sector-analysis { grid-template-columns:1fr; }
  .rln-rpid__evidence-grid { grid-template-columns:1fr 150px; }
  .rln-rpid__region-bars { grid-column:1/-1; }
}

@media (max-width:760px) {
  .rln-rpid__workspace { padding:0 8px 18px; }
  .rln-rpid__workspace-head { margin:0 -8px 8px; padding:12px; }
  .rln-rpid__toolbar { flex-wrap:wrap; }
  .rln-rpid__toolbar-note { width:100%; margin:2px 0 0; }
  .rln-rpid__briefing { grid-template-columns:1fr; padding:16px; }
  .rln-rpid__score-orbit,.rln-rpid__score-orbit.is-echarts-ready { width:185px; height:185px; }
  .rln-rpid__brief-extremes { grid-template-columns:repeat(2,1fr); }
  .rln-rpid__insight-grid { grid-template-columns:repeat(2,1fr); }
  .rln-rpid__sector-tabs { display:flex; }
  .rln-rpid__sector-tabs button { flex:0 0 132px; }
  .rln-rpid__evidence-grid { grid-template-columns:1fr; }
  .rln-rpid__map-canvas { height:auto; min-height:470px; flex-basis:auto; }
  .rln-rpid__signal-cards { grid-template-columns:repeat(2,1fr); }
  .rln-rpid__method-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:520px) {
  .rln-rpid__head-actions { grid-template-columns:1fr auto; }
  .rln-rpid__brief-extremes,.rln-rpid__evidence-cards,.rln-rpid__signal-cards,.rln-rpid__method-grid { grid-template-columns:1fr; }
  .rln-rpid__map-canvas { min-height:430px; }
}

/* 2.3.5 — bright rounded methodology workspace */
.rln-rpid__method {
  color:#17243b;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%);
  border:1px solid #dce3ed;
  border-radius:14px;
  box-shadow:0 10px 28px rgba(28,41,70,.06);
}
.rln-rpid__method .rln-rpid__section-title span { color:#6049c7; }
.rln-rpid__method .rln-rpid__section-title h2,
.rln-rpid__method-grid b { color:#17243b; }
.rln-rpid__method-grid article {
  color:#17243b;
  background:#fff;
  border:1px solid #dfe5ee;
  border-radius:10px;
  box-shadow:0 5px 14px rgba(28,41,70,.04);
}
.rln-rpid__method-grid p,
.rln-rpid__method details p { color:#647188; }
.rln-rpid__method details {
  color:#26354c;
  background:#f2f5fa;
  border:1px solid #dfe5ee;
  border-radius:9px;
}
.rln-rpid__method summary { color:#26354c; }

/* 2.3.8 — square research rail and official header content sizing */
.rln-rpid__rail { border-radius:0 !important; }

/* 2.4.0 — task-centered navigation and contextual analysis controls */
.rln-rpid__workspace-head { margin-bottom:10px; }
.rln-rpid__briefing { margin-top:0; }
.rln-rpid__daily-grid { align-items:stretch; }
.rln-rpid__daily-chart-panel { position:relative; min-height:350px; }
.rln-rpid__daily-chart-panel .rln-rpid__panel-head { align-items:center; margin-bottom:9px; }
.rln-rpid__daily-chart-panel .rln-rpid__panel-head > div > p { display:block; }
.rln-rpid__context-bar { display:flex; min-height:58px; margin:0 0 8px; padding:7px 9px; align-items:flex-end; gap:9px; background:#f5f7fb; border:1px solid #e0e5ee; border-radius:8px; }
.rln-rpid__context-bar .rln-rpid__field { min-width:148px; }
.rln-rpid__context-current { display:grid; min-width:128px; min-height:40px; padding:4px 10px; align-content:center; border-left:1px solid #d9e0eb; }
.rln-rpid__context-current span { color:var(--rln-muted); font-size:10px; font-weight:400; }
.rln-rpid__context-current strong { margin-top:2px; color:#26324a; font-size:12px; font-weight:600; }
.rln-rpid__context-note { display:flex; margin:0 2px 7px auto; align-items:center; gap:6px; color:var(--rln-muted); font-size:10px; white-space:nowrap; }
.rln-rpid__context-note > span { width:7px; height:7px; flex:0 0 auto; background:#58a77c; border-radius:50%; box-shadow:0 0 0 3px rgba(88,167,124,.12); }
.rln-rpid__context-note b { color:#475467; font-weight:500; }
.rln-rpid__daily-chart { min-height:258px; }
.rln-rpid__chart-switch button { min-width:64px; }
.rln-rpid__chart-switch button:focus-visible,
.rln-rpid__field select:focus-visible,
.rln-rpid__region-tabs button:focus-visible { outline:2px solid #745bd1; outline-offset:2px; }
.rln-rpid__fallback-legend { display:flex; margin:2px 16px 2px 46px; flex-wrap:wrap; gap:5px 12px; color:#566277; font-size:10px; }
.rln-rpid__fallback-legend span { display:flex; align-items:center; gap:5px; }
.rln-rpid__fallback-legend i { width:18px; height:0; border-top:2px solid var(--legend-color); }
.rln-rpid__fallback-legend i.is-dashed { border-top-width:1px; border-top-style:dashed; }
.rln-rpid__map-head { align-items:flex-end; }
.rln-rpid__map-controls { display:flex; flex:0 0 auto; align-items:flex-end; gap:10px; }
.rln-rpid__map-controls .rln-rpid__field { min-width:142px; }
.rln-rpid__map-controls p { min-width:94px; margin:0 0 4px; color:var(--rln-muted); font-size:10px; text-align:right; }
.rln-rpid__map-controls p b,.rln-rpid__map-controls p span { display:block; }
.rln-rpid__map-controls p b { color:var(--rln-ink); font-size:18px; font-weight:700; }
.rln-rpid__evidence-panel { margin-bottom:10px; }
.rln-rpid.is-loading .rln-rpid__context-bar { border-color:#cfc7ef; box-shadow:0 0 0 3px rgba(86,49,189,.07); }
.rln-rpid.is-loading .rln-rpid__context-note > span { animation:rln-rpid-context-pulse .9s ease-in-out infinite alternate; }
@keyframes rln-rpid-context-pulse { to { opacity:.35; transform:scale(.72); } }

@media (max-width:1050px) {
  .rln-rpid__context-bar { flex-wrap:wrap; }
  .rln-rpid__context-note { width:100%; margin:0; }
  .rln-rpid__map-head { align-items:flex-start; }
  .rln-rpid__map-controls { align-items:flex-end; }
}
@media (max-width:760px) {
  .rln-rpid__daily-chart-panel .rln-rpid__panel-head { display:block; }
  .rln-rpid__chart-switch { width:max-content; margin-top:10px; }
  .rln-rpid__context-bar { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:end; }
  .rln-rpid__context-bar .rln-rpid__field { min-width:0; }
  .rln-rpid__context-current { min-width:0; border-left:0; border-bottom:1px solid #d9e0eb; }
  .rln-rpid__context-note { grid-column:1 / -1; white-space:normal; }
  .rln-rpid__map-head { display:block; }
  .rln-rpid__map-controls { width:100%; margin-top:10px; align-items:flex-end; }
  .rln-rpid__map-controls .rln-rpid__field { min-width:0; flex:1 1 auto; }
  .rln-rpid__map-controls p { flex:0 0 92px; }
  .rln-rpid__fallback-legend { margin-left:8px; }
}
@media (prefers-reduced-motion:reduce) {
  .rln-rpid.is-loading .rln-rpid__context-note > span { animation:none; }
}

/* 2.5.0 — bright map cards and province-to-district drill-down */
.rln-rpid button.rln-rpid__region-card {
  color:#17243b !important;
  background:rgba(255,255,255,.98) !important;
  border-color:#c8d1de !important;
  border-top-color:var(--status-color) !important;
}
.rln-rpid button.rln-rpid__region-card:hover,
.rln-rpid button.rln-rpid__region-card:focus-visible {
  color:#101d32 !important;
  background:#fff !important;
  border-color:#8d9db2 !important;
  border-top-color:var(--status-color) !important;
  outline:3px solid rgba(86,49,189,.2) !important;
  outline-offset:2px;
}
.rln-rpid button.rln-rpid__region-card.is-selected {
  color:#17243b !important;
  background:#f8f5ff !important;
  border-color:#765bd2 !important;
  border-top-color:var(--status-color) !important;
}
.rln-rpid button.rln-rpid__region-card .rln-rpid__region-name,
.rln-rpid button.rln-rpid__region-card .rln-rpid__region-score { color:#17243b !important; }
.rln-rpid button.rln-rpid__region-card .rln-rpid__region-gap { color:#5f6d82 !important; }

.rln-rpid__map-drillbar {
  display:flex;
  min-height:48px;
  margin:-5px 0 10px;
  padding:6px 8px;
  align-items:center;
  gap:10px;
  color:#26354c;
  background:#f4f1fc;
  border:1px solid #ddd5f2;
  border-radius:9px;
}
.rln-rpid__map-drillbar[hidden] { display:none; }
.rln-rpid__map-drillbar > button {
  min-height:34px;
  padding:6px 10px;
  color:#3d2a84 !important;
  background:#fff !important;
  border:1px solid #cfc4ec !important;
  border-radius:7px;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.rln-rpid__map-drillbar > button:hover,
.rln-rpid__map-drillbar > button:focus-visible { background:#eee8fb !important; outline:2px solid rgba(86,49,189,.2); outline-offset:1px; }
.rln-rpid__map-drillbar > div { display:flex; min-width:0; align-items:center; gap:6px; font-size:11px; }
.rln-rpid__map-drillbar > div span { color:#7a8699; }
.rln-rpid__map-drillbar > div i { color:#9c89d6; font-style:normal; }
.rln-rpid__map-drillbar > div b { overflow:hidden; color:#2b2450; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.rln-rpid__map-drillbar > div small { color:#6a7486; white-space:nowrap; }
.rln-rpid__map-drillbar > em { margin-left:auto; color:#59677c; font-size:10px; font-style:normal; font-weight:600; text-align:right; }

.rln-rpid__district-regions > path {
  fill:var(--rln-insufficient);
  stroke:#fff;
  stroke-width:1.25;
  vector-effect:non-scaling-stroke;
  cursor:pointer;
  outline:none;
  transition:fill .18s ease,filter .18s ease,opacity .18s ease;
}
.rln-rpid__map-regions[hidden],
.rln-rpid__district-regions[hidden] { display:none; }
.rln-rpid__district-regions > path.is-high,
.rln-rpid__district-regions > path.is-good,
.rln-rpid__district-regions > path.is-neutral,
.rln-rpid__district-regions > path.is-watch,
.rln-rpid__district-regions > path.is-focus,
.rln-rpid__district-regions > path.is-insufficient { fill:var(--status-color); }
.rln-rpid__district-regions > path.is-insufficient { fill:#dfe4ec; }
.rln-rpid__district-regions > path:hover,
.rln-rpid__district-regions > path:focus-visible,
.rln-rpid__district-regions > path.is-selected {
  filter:brightness(1.04) drop-shadow(0 2px 3px rgba(17,33,55,.3));
  stroke:#4d3d91;
  stroke-width:2.6;
}
.rln-rpid__district-cards { position:absolute; z-index:5; inset:0; pointer-events:none; }
.rln-rpid__district-cards[hidden] { display:none; }
.rln-rpid button.rln-rpid__district-card {
  position:absolute;
  left:var(--rln-x);
  top:var(--rln-y);
  display:grid;
  width:62px;
  min-height:49px;
  padding:4px 3px;
  transform:translate(-50%,-50%);
  place-content:center;
  color:#17243b !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid #c6cfdb !important;
  border-top:3px solid var(--status-color) !important;
  border-radius:7px;
  box-shadow:0 3px 9px rgba(23,36,59,.13);
  text-align:center;
  pointer-events:auto;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.rln-rpid button.rln-rpid__district-card:hover,
.rln-rpid button.rln-rpid__district-card:focus-visible,
.rln-rpid button.rln-rpid__district-card.is-selected {
  z-index:9;
  color:#101d32 !important;
  background:#fff !important;
  border-color:#765bd2 !important;
  border-top-color:var(--status-color) !important;
  transform:translate(-50%,-50%) scale(1.09);
  box-shadow:0 7px 17px rgba(29,37,69,.22);
  outline:2px solid rgba(86,49,189,.18);
  outline-offset:1px;
}
.rln-rpid button.rln-rpid__district-card > span {
  display:block;
  overflow:hidden;
  color:#34465e !important;
  font-size:10px;
  font-weight:700;
  line-height:1.15;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rln-rpid button.rln-rpid__district-card > strong { display:block; margin-top:1px; color:#17243b !important; font-size:14px; line-height:1.05; }
.rln-rpid button.rln-rpid__district-card > small { display:block; margin-top:2px; color:#6b778b !important; font-size:10px; font-weight:600; line-height:1; }
.rln-rpid__district-detail {
  position:absolute;
  z-index:12;
  right:10px;
  bottom:10px;
  width:min(330px,calc(100% - 20px));
  min-height:86px;
  padding:11px 13px;
  color:#17243b;
  background:rgba(255,255,255,.98);
  border:1px solid #cfd7e3;
  border-left:4px solid #765bd2;
  border-radius:9px;
  box-shadow:0 11px 28px rgba(20,31,53,.18);
  backdrop-filter:blur(8px);
}
.rln-rpid__district-detail[hidden] { display:none; }
.rln-rpid__district-detail > div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.rln-rpid__district-detail > div b { font-size:14px; }
.rln-rpid__district-detail > div span { padding:3px 6px; color:#fff; background:var(--status-color); border-radius:99px; font-size:10px; font-weight:700; }
.rln-rpid__district-detail > strong { display:block; margin-top:5px; font-size:25px; line-height:1; }
.rln-rpid__district-detail > strong small { margin-left:2px; color:#69758a; font-size:10px; }
.rln-rpid__district-detail > p { margin:5px 0 0; color:#5d697c; font-size:10px; line-height:1.45; }
.rln-rpid.is-district-loading .rln-rpid__map-canvas::after {
  position:absolute;
  z-index:11;
  inset:0;
  display:grid;
  place-items:center;
  color:#5f4aa4;
  background:rgba(248,249,252,.7);
  font-size:11px;
  font-weight:700;
  backdrop-filter:blur(2px);
  content:"시·군·구 경계를 불러오는 중입니다";
}
.rln-rpid.is-district-ready .rln-rpid__district-regions,
.rln-rpid.is-district-ready .rln-rpid__district-cards { animation:rln-rpid-district-in .3s ease both; }
@keyframes rln-rpid-district-in { from { opacity:0; } to { opacity:1; } }

@media (max-width:760px) {
  .rln-rpid__map-drillbar { flex-wrap:wrap; }
  .rln-rpid__map-drillbar > em { width:100%; margin:-2px 2px 0; text-align:left; }
  .rln-rpid button.rln-rpid__district-card { width:54px; min-height:43px; }
  .rln-rpid button.rln-rpid__district-card > span { font-size:10px; }
  .rln-rpid button.rln-rpid__district-card > strong { font-size:12px; }
  .rln-rpid__district-detail { right:6px; bottom:6px; width:calc(100% - 12px); }
}
@media (prefers-reduced-motion:reduce) {
  .rln-rpid.is-district-ready .rln-rpid__district-regions,
  .rln-rpid.is-district-ready .rln-rpid__district-cards { animation:none; }
}
