.indicator-card { cursor: pointer; }
.indicator-card:focus-visible { outline: 3px solid var(--tone, #143333); outline-offset: 3px; }
.indicator-meta { display: flex; justify-content: space-between; gap: .5rem; margin-top: .75rem; color: #435b55; font-size: .72rem; font-weight: 800; }
.indicator-signal { margin: .6rem 0 0; padding-top: .55rem; border-top: 1px solid color-mix(in srgb, var(--tone) 25%, transparent); color: var(--tone); font-size: .78rem; font-weight: 800; }
.indicator-open { display: inline-flex; align-items: center; gap: .35rem; margin-top: .7rem; color: var(--tone); font-size: .74rem; font-weight: 900; }
.indicator-drawer[hidden] { display: none; }
.indicator-drawer { position: fixed; inset: 0; z-index: 20; display: grid; grid-template-columns: minmax(0, 1fr) min(560px, 100%); background: #04191b88; }
.indicator-drawer__backdrop { border: 0; background: transparent; cursor: default; }
.indicator-drawer__panel { overflow-y: auto; min-height: 100%; padding: clamp(1.2rem, 4vw, 2.6rem); background: #f7faf4; box-shadow: -20px 0 48px #071b1f55; }
.indicator-drawer__top { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; }
.indicator-drawer__eyebrow { margin: 0 0 .45rem; color: #2d7566; font-size: .7rem; font-weight: 900; letter-spacing: .12em; }
.indicator-drawer__title { margin: 0; color: #143333; font-size: clamp(1.8rem, 4vw, 2.7rem); letter-spacing: -.06em; }
.indicator-drawer__close { width: 2.4rem; height: 2.4rem; margin-top: 3.6rem; border: 1px solid #bfd0c8; border-radius: 50%; background: #fff; color: #143333; cursor: pointer; font-size: 1.25rem; }
.indicator-drawer__notice { margin: 1.1rem 0; padding: .8rem 1rem; border-left: 4px solid #bf8d00; background: #fff3be; color: #5b4600; font-size: .82rem; }
.indicator-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; margin: 1rem 0 1.4rem; }
.indicator-summary article { padding: .85rem; border-radius: .65rem; background: #e4efe9; }
.indicator-summary span { display: block; color: #55726a; font-size: .7rem; }
.indicator-summary strong { display: block; margin-top: .2rem; color: #153f38; font-size: 1.05rem; }
.indicator-detail-list { display: grid; gap: .8rem; }
.indicator-detail-row { padding: 1rem; border: 1px solid #d5e1db; border-radius: .75rem; background: #fff; }
.indicator-detail-row header { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; }
.indicator-detail-row h4 { margin: 0; color: #173f3b; font-size: 1rem; }
.indicator-detail-row b { color: #0b7364; }
.indicator-detail-row p { margin: .5rem 0 .3rem; color: #567069; font-size: .78rem; }
.indicator-compare { height: .55rem; overflow: hidden; border-radius: 99px; background: #dfe9e4; }
.indicator-compare i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #177e6b, #d4ad2b, #d96546); }
.indicator-source-note { margin-top: 1.1rem; color: #617870; font-size: .75rem; }
@media (max-width: 680px) { .indicator-drawer { grid-template-columns: 1fr; } .indicator-drawer__backdrop { display: none; } .indicator-drawer__close { margin-top: 3rem; } .indicator-summary { grid-template-columns: 1fr; } }

/* 原始七大指標與現有補充資料分層顯示 */
.indicator-support-note { display:block; margin-top:.55rem; color:#55726a; font-size:.72rem; font-weight:800; }
.indicator-supporting { margin-top:1.35rem; padding-top:1.15rem; border-top:2px solid #d7e4dd; }
.indicator-supporting__head { margin-bottom:.8rem; }
.indicator-supporting__head h3 { margin:0; color:#173f3b; font-size:1rem; }
.indicator-supporting__head p { margin:.35rem 0 0; color:#617870; font-size:.76rem; line-height:1.55; }
.indicator-detail-bar-meta { display:flex; justify-content:space-between; gap:.8rem; margin:.55rem 0 .3rem; color:#526b65; font-size:.72rem; font-weight:800; }
.indicator-detail-row.is-missing { background:#fafbf9; border-style:dashed; opacity:.82; }
