/* Graph enhancement is scoped to the existing statistics dialog. */
#enr-stats-dialog .enr-chart-intro { margin-bottom: 18px; }
#enr-stats-dialog .enr-chart-kicker { margin: 0 0 5px; color: #677d70; font-size: 9px; font-weight: 700; letter-spacing: 1.9px; }
#enr-stats-dialog .enr-stats-period { margin: 0; color: #244d43; font-size: 17px; font-weight: 700; letter-spacing: -.5px; }
#enr-stats-dialog .enr-chart-intro-note { margin: 5px 0 0; color: #64786c; font-size: 11px; }
#enr-stats-dialog .enr-chart-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
#enr-stats-dialog .enr-chart-card { --enr-chart-share: 0; --enr-chart-offset: 100; --enr-chart-accent: #91edc9; --enr-chart-muted: #b1d1c8; --enr-chart-glow: #58e1b622; --enr-chart-gradient: linear-gradient(90deg, #71cdb8, #abf4ce); position: relative; min-width: 0; overflow: hidden; padding: 17px 15px 15px; color: #f0fff7; border: 1px solid #335e56; border-radius: 20px; background: radial-gradient(ellipse at 85% 10%, #38746755, transparent 70%), linear-gradient(155deg, #204d46, #102f30); box-shadow: 0 9px 22px #143b3c16, inset 0 1px #ffffff17; }
#enr-stats-dialog .enr-chart-card::before { position: absolute; inset: 0; content: ""; pointer-events: none; opacity: .5; background: radial-gradient(circle at 1px 1px, #b0ebd61a 1px, transparent 1.5px); background-size: 17px 17px; mask-image: linear-gradient(#000, transparent 65%); }
#enr-stats-dialog .enr-chart-card::after { position: absolute; inset: 0; content: ""; opacity: 0; pointer-events: none; background: linear-gradient(115deg, transparent 20%, #ffffff12 48%, transparent 72%); transform: translateX(-100%); }
#enr-stats-dialog .enr-chart-card-bot { --enr-chart-accent: #d3c1ff; --enr-chart-muted: #c6bfdc; --enr-chart-glow: #bca1ff24; --enr-chart-gradient: linear-gradient(90deg, #a99aee, #ecd1f2); border-color: #514465; background: radial-gradient(ellipse at 95% 0%, #76629344, transparent 70%), linear-gradient(155deg, #393551, #25283b); }
#enr-stats-dialog .enr-chart-heading { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 7px; }
#enr-stats-dialog .enr-chart-heading h3 { margin: 0; color: #f1fff8; font-size: 12px; font-weight: 600; line-height: 1.5; }
#enr-stats-dialog .enr-chart-symbol { display: grid; place-items: center; width: 29px; height: 29px; flex-shrink: 0; color: var(--enr-chart-accent); border: 1px solid #e1ffee25; border-radius: 9px; background: #ffffff07; }
#enr-stats-dialog .enr-chart-symbol svg { width: 18px; height: 18px; }
#enr-stats-dialog .enr-chart-main { position: relative; }
#enr-stats-dialog .enr-chart-ring { position: relative; width: 148px; max-width: 100%; margin: 8px auto 7px; aspect-ratio: 1; filter: drop-shadow(0 0 14px var(--enr-chart-glow)); }
#enr-stats-dialog .enr-chart-ring > svg { display: block; width: 100%; height: 100%; overflow: visible; }
#enr-stats-dialog .enr-chart-orbit { fill: none; stroke: var(--enr-chart-accent); stroke-width: .7; stroke-dasharray: 1 7; opacity: .38; transform-origin: 72px 72px; }
#enr-stats-dialog .enr-chart-ring-inner { fill: #ffffff03; stroke: #ffffff08; stroke-width: .7; }
#enr-stats-dialog .enr-chart-track { fill: none; stroke: #ffffff16; stroke-width: 9; }
#enr-stats-dialog .enr-chart-arc { fill: none; stroke-width: 9; stroke-linecap: butt; stroke-dasharray: 100; stroke-dashoffset: var(--enr-chart-offset); transform: rotate(-90deg); transform-origin: 72px 72px; }
#enr-stats-dialog .enr-chart-ring-center { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; }
#enr-stats-dialog .enr-chart-ring-center strong { color: #fff; font-size: 25px; line-height: 1.2; letter-spacing: -.8px; font-weight: 600; font-variant-numeric: tabular-nums; }
#enr-stats-dialog .enr-chart-ring-center span { color: var(--enr-chart-muted); font-size: 9px; }
#enr-stats-dialog .enr-chart-totals { min-width: 0; }
#enr-stats-dialog .enr-chart-totals dl { margin: 0; }
#enr-stats-dialog .enr-chart-totals dt { color: var(--enr-chart-muted); font-size: 10px; }
#enr-stats-dialog .enr-chart-totals dd { margin: 4px 0; color: #fff; font-size: clamp(26px, 5vw, 32px); line-height: 1.2; letter-spacing: -1px; font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
#enr-stats-dialog .enr-chart-totals dd small { margin-left: 5px; color: var(--enr-chart-muted); font-size: 11px; font-weight: 400; letter-spacing: 0; }
#enr-stats-dialog .enr-chart-totals .enr-stat-recent { margin: 5px 0 0; color: var(--enr-chart-accent); font-size: 11px; font-weight: 600; }
#enr-stats-dialog .enr-chart-caution { margin: 3px 0 0; color: var(--enr-chart-muted); font-size: 9px; }
#enr-stats-dialog .enr-chart-breakdown { position: relative; margin-top: 17px; }
#enr-stats-dialog .enr-chart-bar { height: 5px; overflow: hidden; background: #ffffff24; border-radius: 5px; }
#enr-stats-dialog .enr-chart-bar-fill { display: block; width: 100%; height: 100%; background: var(--enr-chart-gradient); transform: scaleX(var(--enr-chart-share)); transform-origin: left; }
#enr-stats-dialog .enr-chart-legend { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; margin-top: 8px; color: var(--enr-chart-muted); font-size: 9px; }
#enr-stats-dialog .enr-chart-legend > span { min-width: 0; }
#enr-stats-dialog .enr-chart-legend i { display: inline-block; width: 5px; height: 5px; margin: 0 4px 1px 0; border-radius: 50%; background: var(--enr-chart-accent); }
#enr-stats-dialog .enr-chart-legend > span + span i { background: #ffffff4a; }
#enr-stats-dialog .enr-chart-legend b { font-weight: 500; white-space: nowrap; }
#enr-stats-dialog .enr-chart-empty { position: relative; margin: 12px 0 0; color: var(--enr-chart-muted); font-size: 10px; }
#enr-stats-dialog .enr-chart-card:not([data-enr-chart-status="ready"]) .enr-chart-arc { visibility: hidden; }
#enr-stats-dialog .enr-chart-card:not([data-enr-chart-status="ready"]) .enr-chart-ring-center strong { color: var(--enr-chart-muted); }
#enr-stats-dialog .enr-chart-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
#enr-stats-dialog .enr-chart-legacy { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 14px; margin-top: 13px; padding: 15px 17px; border: 1px solid #e0e5db; border-radius: 14px; background: linear-gradient(110deg, #f0f3ea, #faf9f2); }
#enr-stats-dialog .enr-chart-legacy-label { margin: 0; color: #425e50; font-size: 12px; font-weight: 600; }
#enr-stats-dialog .enr-chart-legacy-label > span { margin-left: 7px; padding: 3px 6px; border: 1px solid #d8dfd0; border-radius: 5px; color: #697a63; font-size: 9px; font-weight: 400; }
#enr-stats-dialog .enr-chart-legacy-caution { margin: 5px 0 0; color: #677a6a; font-size: 10px; }
#enr-stats-dialog .enr-chart-legacy-value { margin: 0; color: #445c4d; font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; line-height: 1.2; overflow-wrap: anywhere; }
#enr-stats-dialog .enr-chart-legacy-value small { margin-left: 5px; font-size: 11px; font-weight: 400; }
#enr-stats-dialog .enr-chart-method { margin-top: 15px; border: 1px solid #e0e6db; border-radius: 12px; }
#enr-stats-dialog .enr-chart-method summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 44px; padding: 11px 14px; list-style: none; color: #486350; cursor: pointer; font-size: 12px; }
#enr-stats-dialog .enr-chart-method summary::-webkit-details-marker { display: none; }
#enr-stats-dialog .enr-chart-method summary > span { font-size: 17px; line-height: 1; }
#enr-stats-dialog .enr-chart-method[open] summary > span { transform: rotate(45deg); }
#enr-stats-dialog .enr-chart-method > div { padding: 0 14px 14px; }
#enr-stats-dialog .enr-chart-method h3 { margin: 12px 0 5px; color: #435e4d; font-size: 11px; }
#enr-stats-dialog .enr-chart-method p { margin: 4px 0; color: #647764; font-size: 11px; }
#enr-stats-dialog .enr-chart-method .enr-stat-since { color: #78866f; font-size: 10px; }
#enr-stats-dialog .enr-charts-animate .enr-chart-card { animation: enr-chart-appear .65s cubic-bezier(.2,.8,.2,1) both; }
#enr-stats-dialog .enr-charts-animate .enr-chart-card-bot { animation-delay: .09s; }
#enr-stats-dialog .enr-charts-animate .enr-chart-card[data-enr-chart-status="ready"]::after { animation: enr-chart-sheen 1.8s .12s ease-out both; }
#enr-stats-dialog .enr-charts-animate .enr-chart-arc { animation: enr-chart-draw 1.25s .08s cubic-bezier(.22,.8,.2,1) both; }
#enr-stats-dialog .enr-charts-animate .enr-chart-bar-fill { animation: enr-chart-fill 1.15s .17s cubic-bezier(.22,.8,.2,1) both; }
#enr-stats-dialog .enr-charts-animate .enr-chart-orbit { animation: enr-chart-orbit 2s .05s ease-out both; }
#enr-stats-dialog .enr-charts-animate .enr-chart-ring { animation: enr-chart-glow 2s ease-out both; }
@keyframes enr-chart-appear { from { transform: translateY(7px); } to { transform: translateY(0); } }
@keyframes enr-chart-draw { from { stroke-dashoffset: 100; } to { stroke-dashoffset: var(--enr-chart-offset); } }
@keyframes enr-chart-fill { from { transform: scaleX(0); } to { transform: scaleX(var(--enr-chart-share)); } }
@keyframes enr-chart-orbit { from { transform: rotate(-55deg); opacity: .1; } to { transform: rotate(0); opacity: .38; } }
@keyframes enr-chart-sheen { 0% { transform: translateX(-100%); opacity: 0; } 25% { opacity: 1; } 100% { transform: translateX(100%); opacity: 0; } }
@keyframes enr-chart-glow { 0%, 100% { filter: drop-shadow(0 0 14px var(--enr-chart-glow)); } 45% { filter: drop-shadow(0 0 24px var(--enr-chart-glow)); } }
@media (max-width: 480px) {
  #enr-stats-dialog .enr-chart-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #enr-stats-dialog .enr-chart-card { padding: 16px 16px 14px; border-radius: 17px; }
  #enr-stats-dialog .enr-chart-main { display: grid; grid-template-columns: 120px minmax(0, 1fr); align-items: center; gap: 13px; margin-top: 8px; }
  #enr-stats-dialog .enr-chart-ring { width: 120px; margin: 0; }
  #enr-stats-dialog .enr-chart-ring-center strong { font-size: 22px; }
  #enr-stats-dialog .enr-chart-ring-center span { font-size: 8px; }
  #enr-stats-dialog .enr-chart-totals dd { font-size: 30px; }
  #enr-stats-dialog .enr-chart-breakdown { margin-top: 13px; }
  #enr-stats-dialog .enr-chart-legacy { padding: 13px 15px; }
  #enr-stats-dialog .enr-chart-legacy-value { font-size: 23px; }
}
@media (max-width: 359px) {
  #enr-stats-dialog .enr-chart-main { grid-template-columns: 100px minmax(0, 1fr); gap: 9px; }
  #enr-stats-dialog .enr-chart-ring { width: 100px; }
  #enr-stats-dialog .enr-chart-ring-center strong { font-size: 19px; }
  #enr-stats-dialog .enr-chart-totals dd { font-size: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  #enr-stats-dialog .enr-chart-card, #enr-stats-dialog .enr-chart-card::after, #enr-stats-dialog .enr-chart-card * { animation: none !important; transition: none !important; }
}
@media (forced-colors: active) {
  #enr-stats-dialog .enr-chart-arc { stroke: Highlight; }
  #enr-stats-dialog .enr-chart-track { stroke: GrayText; }
  #enr-stats-dialog .enr-chart-bar-fill { background: Highlight; }
}
