/* ============================================================
   PRICES.CSS — تابلو قیمت بازار + تابلو نرخ روزانه (premium)
   مبتنی بر توکن‌های base.css — RTL، بدون گرادینت اغراق‌آمیز
   ============================================================ */
.prices-section{background:linear-gradient(180deg,#fdfaf5 0%,#f5efe6 100%);padding-block:56px 40px;position:relative;overflow:hidden;border-top:1px solid #e8ddd0;border-bottom:1px solid #e8ddd0;}
.prices-section::before{content:"";position:absolute;inset:0;background:radial-gradient(680px 280px at 12% -10%,rgba(46,142,46,0.07) 0%,transparent 60%),radial-gradient(560px 220px at 92% 110%,rgba(245,162,0,0.08) 0%,transparent 58%);pointer-events:none;}
.prices-section .container{position:relative;}
.prices-section .section-header--right{text-align:right;max-width:860px;margin-inline:auto;}
.prices-section .section-desc{max-width:640px;margin-inline:0;line-height:1.9;}
.prices-section .section-label{display:inline-flex;align-items:center;gap:8px;}
.market-pulse{position:relative;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle;}
.market-pulse--sm{width:14px;height:14px;}
.market-pulse-dot{width:7px;height:7px;border-radius:50%;background:#1e7e34;position:relative;z-index:2;box-shadow:0 0 0 4px rgba(30,126,52,0.14);}
.market-pulse--sm .market-pulse-dot{width:6px;height:6px;}
.market-pulse-ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(30,126,52,0.28);animation:market-pulse-ring 2.4s ease-out infinite;}
@keyframes market-pulse-ring{0%{transform:scale(0.55);opacity:1}100%{transform:scale(1.75);opacity:0}}
@media(prefers-reduced-motion:reduce){.market-pulse-ring{animation:none!important;}}
.price-livebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e8ddd0;box-shadow:0 1px 6px rgba(35,31,24,0.06);font-size:12px;color:var(--text-muted);max-width:760px;margin-inline:0;}
.price-livebar-pulse{position:relative;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.price-livebar-pulse-dot{width:7px;height:7px;border-radius:50%;background:#1e7e34;position:relative;z-index:2;box-shadow:0 0 0 4px rgba(30,126,52,0.14);}
.price-livebar-pulse-ring{position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(30,126,52,0.26);animation:market-pulse-ring 2.4s ease-out infinite;}
.price-livebar-sep{opacity:.30;}.price-livebar strong{color:var(--text);font-weight:800;font-variant-numeric:tabular-nums;}
.price-livebar-badge{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:#e8f5e9;color:#1a5a1a;border:1px solid #c3e0c3;font-weight:800;font-size:11px;white-space:nowrap;}
.price-livebar-badge .dot{width:6px;height:6px;border-radius:50%;background:#1e7e34;box-shadow:0 0 0 4px rgba(30,126,52,0.14);}
.price-livebar-dot{width:8px;height:8px;border-radius:50%;background:#1e7e34;box-shadow:0 0 0 5px rgba(30,126,52,.14);animation:livebar-pulse 1.9s ease infinite;flex-shrink:0;}
@keyframes livebar-pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 5px rgba(30,126,52,.14)}50%{transform:scale(.92);box-shadow:0 0 0 8px rgba(30,126,52,.08)}}
.prices-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start;margin-top:22px;}
@media(max-width:1100px){.prices-grid{grid-template-columns:1fr;}}
.price-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;}
@media(max-width:1100px){.price-cards{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.price-cards{grid-template-columns:1fr;}}
.price-card{border-radius:16px;padding:18px 15px 14px;position:relative;overflow:hidden;border:1px solid #e8ddd0;background:#fff;box-shadow:0 1px 8px rgba(35,31,24,0.06);display:flex;flex-direction:column;min-height:100%;transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease;}
.price-card::after{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:16px 16px 0 0;opacity:.95;}
.price-card--mealworm::after{background:linear-gradient(90deg,#2e8e2e,#6abf6a);} .price-card--superworm::after{background:linear-gradient(90deg,#c27f00,#ffcf66);} .price-card--dried::after{background:linear-gradient(90deg,#7e7265,#cfc8ba);}
.price-card:hover{border-color:#d6c9b8;box-shadow:0 6px 20px rgba(35,31,24,0.09);transform:translateY(-2px);} .price-card:focus-within{outline:2px solid var(--border-focus);outline-offset:2px;}
.price-card.is-updating{animation:card-flash-light 520ms ease;}
@keyframes card-flash-light{0%{box-shadow:0 1px 8px rgba(35,31,24,.06)}30%{box-shadow:0 0 0 2px rgba(30,126,52,.14),0 6px 20px rgba(35,31,24,.10)}100%{box-shadow:0 1px 8px rgba(35,31,24,.06)}}
.price-card-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;}
.price-icon-wrap{width:42px;height:42px;min-width:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;border:1px solid #e8ddd0;background:#fdfaf5;font-size:1.25rem;}
.price-card--mealworm .price-icon-wrap{background:#eef6ee;border-color:#c8e0c8;} .price-card--superworm .price-icon-wrap{background:#fff6d6;border-color:#f0d9a0;} .price-card--dried .price-icon-wrap{background:#fdf5eb;border-color:#e8ddd0;}
.price-icon-dot{position:absolute;top:-2px;left:-2px;width:10px;height:10px;border-radius:50%;background:#1e7e34;border:2px solid #fff;box-shadow:0 0 0 4px rgba(30,126,52,0.14);animation:price-dot-blink 2.2s ease infinite;}
.price-icon-dot--amber{background:#c27f00;box-shadow:0 0 0 4px rgba(194,127,0,0.14);} .price-icon-dot--neutral{background:#9d9080;box-shadow:0 0 0 4px rgba(157,144,128,0.15);animation:none;}
@keyframes price-dot-blink{0%,78%,100%{opacity:1;transform:scale(1)}82%{opacity:.35;transform:scale(.82)}86%{opacity:1;transform:scale(1.06)}90%{opacity:.55;transform:scale(.92)}}
@media(prefers-reduced-motion:reduce){.price-icon-dot,.price-livebar-dot,.price-update-time-dot{animation:none!important;}}
.price-card-head-text{flex:1;min-width:0;}.price-card-kicker{font-size:10px;font-weight:800;letter-spacing:.06em;color:#9d9080;margin-bottom:2px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.price-card-name{font-size:13.5px;font-weight:800;color:var(--text);line-height:1.35;margin-bottom:2px;} .price-card-sub{font-size:11px;color:var(--text-muted);line-height:1.4;}
.price-card-amount{font-size:clamp(24px,2.2vw,28px);font-weight:800;line-height:1;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.03em;margin-bottom:2px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}
.price-card-amount span{font-size:12px;font-weight:600;color:var(--text-muted);}
.price-card-unit{font-size:11px;color:#7e7265;margin-bottom:10px;line-height:1.5;} .price-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;font-size:11px;}
.price-status{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-weight:800;border:1px solid transparent;white-space:nowrap;font-size:11px;}
.price-status--available{background:#e8f5e9;color:#1e7e34;border-color:#c8e0c8;} .price-status--limited{background:#fff3d0;color:#8f5d00;border-color:#ffe49e;}
.price-update-inline{color:#9d9080;font-size:11px;}
.price-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid #f0ede6;font-size:11px;flex-wrap:wrap;}
.price-trend{display:inline-flex;align-items:center;gap:4px;font-weight:800;font-size:11px;padding:3px 8px;border-radius:999px;border:1px solid transparent;}
.price-trend--up{color:#1e7e34;background:#e8f5e9;border-color:#c8e0c8;} .price-trend--down{color:#8f1d1d;background:#fdecea;border-color:#f5c6c0;} .price-trend--flat{color:#7e7265;background:#f0ede6;border-color:#e8ddd0;}
.price-update-info{background:#fff;border-radius:16px;padding:16px;border:1px solid #e8ddd0;box-shadow:0 1px 10px rgba(35,31,24,0.06);position:sticky;top:92px;}
.price-update-title{font-size:14px;font-weight:800;margin-bottom:4px;color:var(--text);} .price-update-subtitle{font-size:12px;color:var(--text-muted);margin-bottom:12px;line-height:1.6;}
.price-update-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.price-badge-live{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;background:#e8f5e9;color:#1a5a1a;border:1px solid #c3e0c3;}
.price-badge-live-dot{width:7px;height:7px;border-radius:50%;background:#1e7e34;box-shadow:0 0 0 4px rgba(30,126,52,0.14);animation:price-dot-blink 2.2s ease infinite;}
.price-badge-muted{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:600;background:#f8f7f4;color:#7e7265;border:1px solid #e8ddd0;}
.price-update-time{display:flex;align-items:center;gap:8px;font-size:12px;color:#5e5549;margin-bottom:10px;padding:10px 12px;border-radius:10px;background:#fdfaf5;border:1px solid #f0ede6;line-height:1.5;}
.price-update-time-dot{width:8px;height:8px;border-radius:50%;background:#1e7e34;flex-shrink:0;animation:pulse-dot 2s ease infinite;}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}
.price-update-delta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;font-weight:700;padding:8px 10px;border-radius:10px;background:#fdfaf5;border:1px dashed #e8ddd0;color:#5e5549;margin-bottom:12px;}
.price-update-delta strong{color:var(--text);font-variant-numeric:tabular-nums;} .price-update-actions{display:flex;flex-direction:column;gap:8px;}
.price-update-note{font-size:11px;color:#9d9080;line-height:1.7;margin-top:10px;padding-top:10px;border-top:1px solid #f0ede6;}
.price-live{display:inline-flex;align-items:center;gap:4px;} .price-live-dot{width:7px;height:7px;border-radius:50%;background:#1e7e34;animation:live-pulse 1.6s ease infinite;}
@keyframes live-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.88)}}
.price-tick{display:inline-flex;align-items:center;gap:2px;font-size:11px;font-weight:700;} .price-tick--up{color:#1e7e34;} .price-tick--down{color:#8f1d1d;}
.daily-rates-board{margin-top:28px;background:#fff;border:1px solid #e8ddd0;border-radius:18px;padding:18px;box-shadow:0 4px 24px rgba(35,31,24,0.07);overflow:hidden;}
.daily-rates-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f0ede6;}
.daily-rates-kicker{font-size:11px;font-weight:800;letter-spacing:.05em;color:#1a5a1a;display:flex;align-items:center;gap:8px;margin-bottom:6px;}
.daily-rates-title{font-size:18px;font-weight:800;color:var(--text);margin-bottom:4px;line-height:1.3;} .daily-rates-desc{font-size:12px;color:var(--text-muted);line-height:1.8;max-width:62ch;}
.daily-rates-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:220px;} .daily-rates-updated{font-size:11px;color:#5e5549;background:#fdfaf5;border:1px solid #f0ede6;padding:6px 10px;border-radius:999px;font-variant-numeric:tabular-nums;}
.rates-featured{display:grid;grid-template-columns:1.15fr 0.85fr;gap:16px;align-items:stretch;margin-bottom:16px;}
@media(max-width:860px){.rates-featured{grid-template-columns:1fr;}}
.rates-featured-main{background:linear-gradient(180deg,#fdfaf5 0%,#fff 100%);border:1px solid #e8ddd0;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;}
.rates-featured-label{font-size:11px;font-weight:800;color:#1a5a1a;background:#e8f5e9;border:1px solid #c3e0c3;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;align-self:flex-start;}
.rates-featured-name{font-size:16px;font-weight:800;color:var(--text);line-height:1.3;}
.rates-featured-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:clamp(26px,3vw,32px);font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);}
.rates-featured-price small{font-size:12px;font-weight:600;color:var(--text-muted);}
.rates-featured-meta{font-size:11px;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rates-featured-actions{display:flex;flex-direction:column;gap:8px;justify-content:center;}
.rates-mini-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;} .rates-mini-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#fdfaf5;border:1px solid #f0ede6;border-radius:999px;font-size:11px;font-weight:700;}
.rates-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media(max-width:1024px){.rates-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.rates-grid{grid-template-columns:1fr;}}
.rate-card{background:#fff;border:1px solid #e8ddd0;border-radius:14px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:8px;transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease;}
.rate-card:hover{border-color:#d6c9b8;box-shadow:0 4px 16px rgba(35,31,24,0.08);transform:translateY(-1px);} .rate-card:focus-within{outline:2px solid var(--border-focus);outline-offset:2px;}
.rate-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;} .rate-card-title{font-size:12.5px;font-weight:800;color:var(--text);line-height:1.3;}
.rate-card-cat{font-size:10px;font-weight:700;letter-spacing:.03em;color:#7e7265;background:#f8f7f4;border:1px solid #e8ddd0;padding:2px 7px;border-radius:999px;white-space:nowrap;}
.rate-card-price{font-size:18px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text);display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}
.rate-card-price small{font-size:11px;font-weight:600;color:var(--text-muted);} .rate-card-sub{font-size:11px;color:#7e7265;line-height:1.4;}
.rate-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid #f5efe6;font-size:11px;}
.rates-table-wrap{margin-top:16px;overflow-x:auto;border:1px solid #f0ede6;border-radius:12px;overflow:hidden;background:#fff;}
.rates-table{width:100%;border-collapse:collapse;font-size:12px;} .rates-table th{text-align:right;padding:10px 12px;font-size:11px;font-weight:800;color:#7e7265;background:#fdfaf5;border-bottom:1px solid #f0ede6;white-space:nowrap;}
.rates-table td{padding:9px 12px;border-bottom:1px solid #f8f7f4;text-align:right;vertical-align:middle;} .rates-table tr:last-child td{border-bottom:none;} .rates-table .num{font-weight:800;font-variant-numeric:tabular-nums;}
.rates-table-note{font-size:11px;color:#9d9080;margin-top:8px;line-height:1.6;} .rates-cta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.price-highlight-strip{margin-top:16px;background:#fff;border:1px solid #e8ddd0;border-radius:14px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;box-shadow:0 1px 8px rgba(35,31,24,0.05);}
@media(max-width:640px){.price-highlight-strip{grid-template-columns:1fr;}}
.price-highlight-main{min-width:0;} .price-highlight-label{font-size:11px;font-weight:800;letter-spacing:.04em;color:#1a5a1a;background:#e8f5e9;border:1px solid #c3e0c3;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;}
.price-highlight-amount{font-size:clamp(24px,2.8vw,30px);font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.price-highlight-amount small{font-size:13px;font-weight:600;color:var(--text-muted);} .price-highlight-meta{font-size:12px;color:var(--text-muted);margin-top:4px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.price-highlight-actions{display:flex;flex-direction:column;gap:8px;min-width:180px;} @media(max-width:640px){.price-highlight-actions{min-width:0;}}
/* ============================================================
   .price-chart-panel — نمودار قیمت زنده (inline SVG) — VIVID
   ============================================================ */
.price-update-info{background:#fff;border-radius:18px;padding:0;border:1.5px solid #d6c9b8;box-shadow:0 4px 18px rgba(35,31,24,.08),0 1px 6px rgba(35,31,24,.05);position:sticky;top:92px;overflow:hidden;min-width:0;}
.wholesale-inquiry{background:#fff;border-radius:18px;padding:0;border:1.5px solid #d6c9b8;box-shadow:0 4px 18px rgba(35,31,24,.08),0 1px 6px rgba(35,31,24,.05);overflow:hidden;min-width:0;max-width:640px;margin-inline:auto;}
.price-chart-panel{background:linear-gradient(180deg,#eaf5ea 0%,#f7fbf7 52%,#ffffff 100%);border-bottom:1.5px solid #c8dcc8;border-radius:18px 18px 0 0;padding:16px 16px 14px;box-shadow:none;margin-bottom:0;overflow:hidden;min-width:0;position:relative;}
.price-chart-panel::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,#1e7e34,#2e8e2e 55%,#6abf6a);opacity:1;}
.price-chart-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px;margin-top:4px;}
.price-chart-title{font-size:14.5px;font-weight:800;color:var(--text);display:inline-flex;align-items:center;gap:9px;line-height:1.35;letter-spacing:-.01em;}
.price-chart-head-left{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;}
.price-chart-live{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:800;color:#fff;background:#1e7e34;border:1px solid #166026;padding:5px 11px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 8px rgba(30,126,52,.22);}
.price-chart-live-dot{width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.22);animation:price-dot-blink 2.2s ease infinite;flex-shrink:0;}
.price-chart-subtitle{font-size:11.5px;color:#5e5549;line-height:1.7;margin-bottom:12px;font-weight:500;}
.chart-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;background:#fff;border:1.5px solid #d6c9b8;border-radius:999px;margin-bottom:12px;max-width:100%;flex-wrap:wrap;box-shadow:0 1px 6px rgba(35,31,24,.06);}
.chart-tab{font-family:var(--font-family);font-size:12.5px;font-weight:800;color:var(--text-muted);padding:7px 16px;border-radius:999px;border:1.5px solid transparent;background:transparent;cursor:pointer;transition:background 140ms ease,color 140ms ease,border-color 140ms ease,box-shadow 140ms ease;min-width:64px;text-align:center;}
.chart-tab:hover{background:#f8f7f4;border-color:#c8c0b0;color:var(--text);}
.chart-tab.active{background:#1a5a1a;color:#fff;border-color:#1a5a1a;box-shadow:0 2px 10px rgba(26,90,26,.22);}
.chart-tab:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;}
.chart-product-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;min-width:0;}
.chart-chip{font-family:var(--font-family);font-size:11.5px;font-weight:800;padding:6px 12px;border-radius:999px;border:1.5px solid #d6c9b8;background:#fff;color:var(--text);cursor:pointer;white-space:nowrap;transition:background 140ms ease,border-color 140ms ease,color 140ms ease,box-shadow 140ms ease,transform 120ms ease;box-shadow:0 1px 4px rgba(35,31,24,.05);}
.chart-chip:hover{border-color:#1e7e34;background:#eef6ee;transform:translateY(-1px);}
.chart-chip.is-active{background:#1e7e34;color:#fff;border-color:#1a5a1a;box-shadow:0 2px 10px rgba(30,126,52,.22);transform:translateY(-1px);}
.chart-chip:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;}
.chart-svg-wrap{background:#fff;border:1px solid #ece7e0;border-radius:14px;padding:12px;min-height:220px}
.chart-svg{width:100%;height:auto;display:block;min-height:200px;max-width:100%;aspect-ratio:680/240;}
.chart-svg .bar-grid{stroke:#efe9dd;stroke-width:1;shape-rendering:crispEdges;}
.chart-svg .bar-shadow{fill:#1a2215;opacity:.10;filter:blur(2px);pointer-events:none;}
.chart-svg .bar-body{fill:#2e8e2e;cursor:pointer;transition:fill 140ms ease, opacity 140ms ease;}
.chart-svg .bar-body:hover{fill:#1e7e34;}
.chart-svg .bar-body.is-active{fill:#1a5a1a;}
.chart-svg .bar-body:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;fill:#1a5a1a;}
.chart-svg .bar-top{fill:#5ab35a;opacity:.9;pointer-events:none;}
.chart-svg .bar-side{fill:#1c5c1c;opacity:.85;pointer-events:none;}
.chart-svg .bar-xlabel{fill:#5e5549;font-weight:600;pointer-events:none;}
.chart-tooltip{position:absolute;top:12px;right:12px;min-width:132px;max-width:min(230px,88%);background:#1a2215;color:#fff;border-radius:12px;padding:9px 12px;box-shadow:0 12px 24px rgba(0,0,0,.22),0 2px 8px rgba(0,0,0,.14);font-size:11.5px;line-height:1.5;pointer-events:none;z-index:2;transform:translateZ(0);border:1px solid rgba(255,255,255,.08);}
.chart-tooltip[hidden]{display:none!important;}
.chart-tooltip-date{color:rgba(255,255,255,.72);font-size:11px;margin-bottom:2px;font-weight:600;}
.chart-tooltip-price{font-weight:800;font-variant-numeric:tabular-nums;font-size:13px;letter-spacing:-.02em;}
.chart-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12.5px;font-weight:700;background:rgba(255,255,255,.78);backdrop-filter:blur(2px);}
.chart-empty[hidden]{display:none!important;}
.chart-legend{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;font-size:11.5px;color:#5e5549;line-height:1.5;font-weight:600;}
.chart-legend-item{display:inline-flex;align-items:center;gap:6px;font-weight:700;}
.chart-legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px rgba(30,126,52,.12);}
.chart-legend--muted{color:#7e7265;font-weight:600;background:#f8f7f4;border:1px solid #f0ede6;padding:2px 8px;border-radius:999px;}
.chart-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1.5px solid #e0e8da;font-size:11.5px;line-height:1.6;}
.chart-meta-change{font-weight:800;font-variant-numeric:tabular-nums;padding:5px 10px;border-radius:999px;border:1.5px solid transparent;box-shadow:0 1px 4px rgba(0,0,0,.04);}
.chart-meta-change.is-up{color:#1e7e34;background:#e8f5e9;border-color:#b6d9b6;}
.chart-meta-change.is-down{color:#8f1d1d;background:#fdecea;border-color:#eebeb8;}
.chart-meta-change.is-flat{color:#7e7265;background:#f0ede6;border-color:#d6c9b8;}
.chart-meta-update{color:#3e3830;font-variant-numeric:tabular-nums;background:#fff;border:1.5px solid #e8ddd0;padding:5px 10px;border-radius:999px;font-weight:700;box-shadow:0 1px 4px rgba(35,31,24,.04);}
.price-info-body{padding:16px;min-width:0;background:#fff;border-radius:0 0 18px 18px;}
@media(max-width:1100px){
  .price-update-info{position:static;}
  .price-chart-panel{margin-bottom:0;}
  .chart-svg{min-height:180px;}
}
@media(max-width:640px){
  .price-chart-title{font-size:14px;}
  .chart-tabs{width:100%;}
  .chart-tab{flex:1 1 auto;text-align:center;justify-content:center;min-width:0;}
  .chart-meta{flex-direction:column;align-items:stretch;}
  .chart-meta-update{text-align:center;}
  .chart-svg{min-height:172px;}
}
@media(prefers-reduced-motion:reduce){
  .price-chart-live-dot{animation:none!important;}
  .chart-tab,.chart-chip{transition:none!important;}
  .chart-svg .chart-dot{transition:none!important;}
}

/* ── Full-width centered price chart — Phase 5 redesign ── */
.price-chart-full{max-width:none;width:100%;background:#fcfaf7;border:1px solid #ece7e0;border-radius:16px;padding:18px}
.price-chart-full-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.price-chart-full-title{font-size:17px;font-weight:800;color:var(--text);display:inline-flex;align-items:center;gap:10px;line-height:1.3}
.price-chart-full-desc{font-size:12.5px;color:var(--text-muted);line-height:1.8;margin-top:4px;max-width:66ch}
.price-chart-full-legend{display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:11.5px;font-weight:700;color:var(--text-muted)}
.pc-legend-item{display:inline-flex;align-items:center;gap:6px;background:var(--neutral-100);border:1px solid var(--border);padding:4px 10px;border-radius:999px;white-space:nowrap}
.pc-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.price-chart-panel--full{border-radius:14px}
.price-chart-panel--full .chart-svg{min-height:170px}
@media(max-width:640px){.price-chart-full{max-width:none;width:100%;background:#fcfaf7;border:1px solid #ece7e0;border-radius:16px;padding:18px}.price-chart-full-title{font-size:15px}.price-chart-panel--full .chart-svg{min-height:150px}}

/* stats pills under chart legend (Phase 5 compact data box) */
.price-chart-stats{margin-top:10px}
.pc-stat{box-shadow:0 1px 6px rgba(35,31,24,.05)}
.pc-stat.is-up{color:#1e7e34;border-color:#c8e0c8;background:#eef6ee}
.pc-stat.is-down{color:#8f1d1d;border-color:#f0c9c2;background:#fdf2f0}
.pc-stat.is-flat{color:#7e7265}


@media(max-width:640px){.chart-svg-wrap{min-height:180px}.chart-svg{height:auto}}
.chart-svg{width:100%;height:auto;display:block}
