:root{--ink:#e9ecf1;--muted:#8a94a4;--bg:#0c0f14;--surface:#151b23;--surface-soft:#11161d;--surface-raised:#1a212b;--line:#27303c;--gold:#e7b24a;--green:#79d4ae;--red:#d68278;--blue:#89a7c2;--max:1200px;--display:"Archivo", sans-serif;--body:"Inter", sans-serif;--mono:"IBM Plex Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{color:var(--ink);background:radial-gradient(circle at 72% -12%, #e1b45b13, transparent 31rem), var(--bg);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0}body.metric-modal-open{overflow:hidden}button,input{font:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}a{color:inherit}main{width:min(var(--max), calc(100% - 44px));margin:0 auto}.hub-link{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;margin-top:22px;font-size:.68rem;font-weight:700;text-decoration:none;transition:color .15s;display:inline-flex}.hub-link span{color:var(--gold);font-size:.9rem}.hub-link:hover{color:var(--ink)}.site-header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:26px;min-height:92px;padding:24px 0 20px;display:grid}.brand{min-width:190px}.brand .eyebrow{margin-bottom:5px}.brand h1{font-family:var(--display);letter-spacing:-.035em;margin:0;font-size:clamp(1.9rem,4vw,2.625rem);font-weight:800;line-height:1}.header-status{text-align:right;width:min(290px,100%)}.header-status>p{color:var(--muted);white-space:nowrap;margin:0;font-size:.72rem}.header-status>p strong{color:var(--ink);font-weight:650}.scrape-progress{margin-top:10px}.scrape-row{color:var(--muted);font-family:var(--mono);justify-content:space-between;align-items:center;gap:10px;font-size:.66rem;display:flex}.scrape-row b{color:var(--ink);font-weight:500}.scrape-track{background:var(--line);border-radius:999px;height:5px;margin-top:5px;overflow:hidden}.scrape-fill{border-radius:inherit;background:var(--gold);width:0;height:100%;transition:width .5s;display:block}.scrape-eta{color:var(--muted);font-family:var(--mono);text-align:right;margin-top:3px;font-size:.59rem}.view-tabs{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;justify-self:center;gap:7px;padding:4px;display:flex}.view-tabs button,.chart-selector button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-weight:700}.view-tabs button{border-radius:999px;padding:9px 15px;font-size:.72rem}.view-tabs button:hover,.chart-selector button:hover{color:var(--ink)}.view-tabs button.active,.chart-selector button.active{background:var(--gold);color:var(--surface-soft)}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:30px 0 18px;display:grid}.metrics.compact-metrics{grid-template-columns:minmax(280px,380px);padding-bottom:12px}.metrics article{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;padding:22px 24px;transition:border-color .16s,background .16s;position:relative}.metrics article.primary{background:linear-gradient(180deg, #e1b45b14, transparent 78%), var(--surface);border-color:#e1b45bb8}.metrics article.selected{border-color:var(--gold);background:linear-gradient(180deg, #e1b45b1f, transparent 82%), var(--surface)}.metrics article:hover{border-color:#e1b45b8c}.metric-card-trigger{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.metric-card-trigger:focus-visible{outline:2px solid var(--gold);outline-offset:7px;border-radius:8px}.metrics span,.metrics small,.metrics strong{display:block}.metrics span{min-height:26px;color:var(--muted);font-family:var(--display);letter-spacing:.09em;text-transform:uppercase;font-size:.67rem;font-weight:800;line-height:1.35}.metrics .metric-label{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.metric-label i{color:var(--gold);font-size:1rem;font-style:normal;line-height:1;transition:transform .16s}.metrics article.selected .metric-label i{transform:rotate(180deg)}.metrics strong{min-height:54px;color:var(--ink);font-family:var(--mono);letter-spacing:-.055em;text-overflow:ellipsis;white-space:nowrap;margin:9px 0 8px;font-size:clamp(1.65rem,3vw,2.55rem);font-weight:790;line-height:1.03;overflow:hidden}.metrics small{color:var(--muted);font-size:.68rem;line-height:1.45}.store-count-toggle{border:1px solid var(--line);background:var(--surface-soft);border-radius:999px;gap:3px;margin-top:14px;padding:3px;display:inline-flex}.store-count-toggle button{color:var(--muted);font:inherit;letter-spacing:.04em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 9px;font-size:.61rem;font-weight:800}.store-count-toggle button.active{background:var(--gold);color:var(--surface-soft)}.metric-trend-chart{height:300px;margin-top:10px;position:relative}.metric-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#04070ad1;animation:.32s both metric-backdrop-in;position:fixed;inset:0}.metric-modal-backdrop.closing{pointer-events:none;animation:.34s both metric-backdrop-out}.metric-modal{--metric-target-top:5vh;--metric-target-left:5vw;--metric-target-width:90vw;--metric-target-height:90vh;top:var(--metric-target-top);left:var(--metric-target-left);width:var(--metric-target-width);height:var(--metric-target-height);background:radial-gradient(circle at 88% -12%, #e1b45b24, transparent 34rem), var(--surface);border:1px solid #e1b45bb8;border-radius:20px;animation:.36s cubic-bezier(.22,.78,.23,1) both metric-expand;position:fixed;overflow:hidden;box-shadow:0 28px 90px #00000094}.metric-modal.closing{animation:.34s cubic-bezier(.55,.02,.72,.28) both metric-collapse}.metric-modal-inner{opacity:0;flex-direction:column;height:100%;min-height:0;padding:clamp(24px,4vw,52px);animation:.19s .13s both metric-content-in;display:flex;overflow:auto}.metric-modal.closing .metric-modal-inner{animation:.11s both metric-content-out}.metric-modal-close{z-index:2;border:1px solid var(--line);background:var(--surface-soft);width:40px;height:40px;color:var(--muted);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:border-color .15s,color .15s,transform .15s;display:grid;position:absolute;top:18px;right:18px}.metric-modal-close:hover{border-color:var(--gold);color:var(--ink);transform:scale(1.05)}.metric-modal-close:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.metric-modal-close span{font-size:1.55rem;font-weight:300;line-height:1;transform:translateY(-1px)}.metric-modal-summary{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;padding:0 54px 24px 0;display:grid}.metric-modal-summary h2{letter-spacing:-.035em;margin:0 0 7px;font-size:clamp(1.3rem,2.6vw,2rem)}.metric-modal-summary small{color:var(--muted);font-size:.72rem;line-height:1.5}.metric-modal-summary>strong{color:var(--ink);letter-spacing:-.07em;white-space:nowrap;font-size:clamp(2.8rem,8vw,6.5rem);font-weight:790;line-height:.82}.metric-modal-chart-header{margin:24px 0 0}.metric-modal-chart-header h3{margin:0;font-size:.92rem;font-weight:800}.metric-modal-chart-header>div>p{max-width:720px;color:var(--muted);margin:7px 0 0;font-size:.72rem;line-height:1.5}.metric-modal .store-count-toggle{flex:none;margin-top:0}.metric-modal .method-break-note{margin-bottom:8px}.metric-modal .metric-trend-chart{flex:auto;height:auto;min-height:260px}@keyframes metric-expand{0%{top:var(--metric-origin-top);left:var(--metric-origin-left);width:var(--metric-origin-width);height:var(--metric-origin-height);border-radius:16px}to{top:var(--metric-target-top);left:var(--metric-target-left);width:var(--metric-target-width);height:var(--metric-target-height);border-radius:20px}}@keyframes metric-collapse{0%{top:var(--metric-target-top);left:var(--metric-target-left);width:var(--metric-target-width);height:var(--metric-target-height);border-radius:20px}to{top:var(--metric-origin-top);left:var(--metric-origin-left);width:var(--metric-origin-width);height:var(--metric-origin-height);border-radius:16px}}@keyframes metric-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes metric-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes metric-content-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes metric-content-out{0%{opacity:1}to{opacity:0}}.method-break-note{border-left:2px solid var(--gold);color:var(--muted);background:#e1b45b0f;margin:14px 0 0;padding:9px 11px;font-size:.67rem;line-height:1.45}.dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.chart-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;padding:24px;overflow:hidden}.category-card{grid-column:span 5}.retailer-card{grid-column:span 7}.product-row .product-card,.terrasoul-grid .chart-card{grid-column:span 6}.terrasoul-grid .catalog-card{grid-column:1/-1}.product-card:not(.product-row .product-card),.map-card{margin-top:16px}.chart-header{justify-content:space-between;align-items:start;gap:22px;margin-bottom:18px;display:flex}.chart-header.stacked{display:block}.chart-header.stacked .chart-selector{margin-top:18px}.chart-header h2,summary strong{font-family:var(--display);letter-spacing:-.018em;margin:0;font-size:1rem;font-weight:800}.chart-header>div>p:last-child{max-width:650px;color:var(--muted);margin:7px 0 0;font-size:.72rem;line-height:1.5}.eyebrow{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px;font-size:.62rem;font-weight:850}.chart-selector{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;flex-wrap:wrap;gap:6px;padding:4px;display:inline-flex}.chart-selector button{letter-spacing:.035em;text-transform:uppercase;border-radius:7px;padding:8px 10px;font-size:.62rem}.chart-selector.compact{border-radius:999px;flex-wrap:nowrap}.chart-selector.compact button{white-space:nowrap;border-radius:999px}.pie-layout{grid-template-columns:minmax(170px,1fr) minmax(150px,.8fr);align-items:center;gap:8px;min-height:315px;display:grid}.pie-chart{height:300px}.chart-legend,.state-ranking{margin:0;padding:0;list-style:none}.chart-legend{gap:13px;display:grid}.chart-legend li{grid-template-columns:9px minmax(0,1fr);align-items:start;gap:10px;display:grid}.chart-legend li>span{border-radius:50%;width:9px;height:9px;margin-top:3px}.chart-legend strong,.chart-legend small{display:block}.chart-legend strong{font-size:.66rem;line-height:1.25}.chart-legend small{color:var(--muted);margin-top:4px;font-size:.62rem}.line-chart-wrap,.retailer-chart{min-height:300px;position:relative}.retailer-chart{height:306px}.line-chart-wrap{height:355px;padding-bottom:48px}.sparse-note{width:min(280px,76%);color:var(--gold);text-align:center;pointer-events:none;background:#0c0f14e6;border:1px solid #e1b45b6b;border-radius:9px;padding:10px 12px;font-size:.67rem;line-height:1.45;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.line-legend{color:var(--muted);flex-wrap:wrap;gap:9px 16px;font-size:.64rem;display:flex}.line-legend span{align-items:center;gap:7px;display:inline-flex}.line-legend i{border-radius:99px;width:18px;height:3px}.retailer-legend{margin-top:10px}.map-layout{grid-template-columns:minmax(0,4fr) minmax(160px,.9fr);align-items:center;gap:30px;display:grid}.us-map{width:100%;height:auto;max-height:590px;display:block}.us-map path{outline:none;transition:fill .15s,stroke .15s}.us-map path:hover,.us-map path:focus{stroke:var(--ink);stroke-width:2.3px}.map-focus{border:1px solid var(--line);background:var(--surface-soft);text-align:right;border-radius:10px;min-width:210px;padding:12px 14px}.map-focus strong,.map-focus small{display:block}.map-focus strong{font-size:.72rem}.map-focus small{color:var(--muted);margin-top:4px;font-size:.62rem}.state-ranking{border-top:1px solid var(--line)}.state-ranking li{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;display:grid}.state-ranking li>span{color:var(--gold);font-size:.62rem;font-weight:800}.state-ranking strong{font-size:.76rem}.state-ranking div{text-align:right}.state-ranking b,.state-ranking small{display:block}.state-ranking b{font-size:.8rem}.state-ranking small{color:var(--muted);margin-top:2px;font-size:.58rem}.map-legend{color:var(--muted);align-items:center;gap:9px;margin-top:12px;font-size:.62rem;display:flex}.map-legend i{background:linear-gradient(90deg,#e1b45b0d,#e1b45bf5);border-radius:99px;width:140px;height:6px}.product-chart{height:360px}.terrasoul-placeholder{place-items:center;min-height:min(48vh,460px);display:grid}.terrasoul-placeholder p{color:var(--muted);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:clamp(.78rem,1.2vw,.95rem);font-weight:700}details{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:16px}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:96px;padding:0 24px;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span strong,summary span small{display:block}summary span small{color:var(--muted);margin-top:6px;font-size:.68rem}summary>b{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:800}details[open] summary>b{font-size:0}details[open] summary>b:after{content:"Close";font-size:.62rem}.explorer-body,.evidence-body{padding:0 24px 28px}.explorer label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:.64rem;font-weight:800;display:block}.explorer input{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--ink);border-radius:10px;outline:none;padding:14px 16px}.explorer input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e1b45b1a}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.store-grid article{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;padding:18px;display:grid}.store-grid strong,.store-grid div span{display:block}.store-grid strong{font-size:.74rem}.store-grid div span{color:var(--muted);margin-top:4px;font-size:.64rem}.store-grid article>b{color:var(--gold);font-size:.68rem}.store-grid p{color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:.64rem;line-height:1.5}.no-results{color:var(--muted);text-align:center;margin:26px 0 0;font-size:.75rem}.catalog-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 24px 28px;display:grid}.catalog-list a{border:1px solid var(--line);background:var(--surface-soft);color:var(--muted);text-overflow:ellipsis;border-radius:8px;padding:12px;font-size:.67rem;line-height:1.35;text-decoration:none;overflow:hidden}.catalog-list a:hover{color:var(--ink);border-color:#e1b45b8c}.method-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.method-grid article{border:1px solid var(--line);background:var(--surface-soft);border-radius:10px;padding:20px}.method-grid strong{font-size:.74rem}.method-grid p{color:var(--muted);margin:9px 0 0;font-size:.68rem;line-height:1.55}.source-list{margin-top:24px}.source-list article{border-top:1px solid var(--line);grid-template-columns:minmax(180px,.72fr) 1fr 1fr;gap:24px;padding:18px 0;display:grid}.source-list div strong,.source-list div a{display:block}.source-list div strong{margin-bottom:5px;font-size:.74rem}.source-list a{color:var(--gold);font-size:.67rem}.source-list p{color:var(--muted);margin:0;font-size:.67rem;line-height:1.5}.source-list p b{color:var(--ink)}.downloads{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.downloads a{border:1px solid var(--line);background:var(--surface-soft);color:var(--gold);border-radius:7px;padding:9px 12px;font-size:.66rem;font-weight:700;text-decoration:none}footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:110px;margin-top:18px;display:flex}footer strong{font-size:.74rem}footer p{color:var(--muted);margin:0;font-size:.65rem}.load-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.load-state p{color:var(--muted)}.loading-dot{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #79d4ae1a}.recharts-wrapper,.recharts-surface{outline:none}.recharts-cartesian-axis-tick-value,.recharts-tooltip-wrapper,.recharts-text{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (max-width:1000px){.site-header{grid-template-columns:auto 1fr auto;padding:14px 0}.view-tabs{grid-area:2/1/auto/-1;justify-content:center;justify-self:stretch}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.category-card,.retailer-card,.product-row .product-card,.terrasoul-grid .chart-card{grid-column:1/-1}.pie-layout{grid-template-columns:minmax(220px,.8fr) minmax(180px,1fr)}.map-layout{grid-template-columns:1fr}.state-ranking{border-top:0;grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.state-ranking li{border:1px solid var(--line);min-height:auto;padding:12px;display:block}.state-ranking li>span,.state-ranking strong,.state-ranking div{text-align:left;display:block}.state-ranking strong{margin:6px 0}}@media (max-width:680px){main{width:min(100% - 28px, var(--max))}.site-header{gap:12px}.brand{min-width:0}.brand h1{font-size:1.55rem}.header-status{justify-self:end}.header-status>p{font-size:.62rem}.view-tabs{scrollbar-width:none;justify-content:start;overflow-x:auto}.view-tabs::-webkit-scrollbar{display:none}.view-tabs button{flex:none;padding:9px 13px}.metrics{grid-template-columns:1fr;padding-top:20px}.metrics article{padding:20px}.metric-modal{--metric-target-top:10px;--metric-target-left:10px;--metric-target-width:calc(100vw - 20px);--metric-target-height:calc(100dvh - 20px);border-radius:16px}.metric-modal-inner{padding:22px 18px 18px}.metric-modal-close{width:36px;height:36px;top:13px;right:13px}.metric-modal-summary{padding:4px 44px 18px 0;display:block}.metric-modal-summary>strong{margin-top:24px;font-size:clamp(2.8rem,17vw,4.5rem);display:block}.metric-modal-chart-header{margin-top:18px;display:block}.metric-modal-chart-header .store-count-toggle{margin-top:14px}.metric-modal .metric-trend-chart{min-height:290px}.chart-card{padding:18px}.chart-header{display:block}.chart-header .chart-selector{margin-top:14px}.pie-layout{grid-template-columns:1fr}.pie-chart{height:250px}.chart-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-selector{width:100%}.chart-selector button{flex:auto}.map-focus{text-align:left;width:100%;margin-top:14px}.state-ranking{grid-template-columns:repeat(2,minmax(0,1fr))}.state-ranking li:last-child{grid-column:1/-1}.product-chart{height:410px;margin-left:-18px}summary{min-height:88px;padding:0 18px}summary span small{max-width:230px}.explorer-body,.evidence-body{padding:0 18px 22px}.store-grid,.method-grid,.source-list article,.catalog-list{grid-template-columns:1fr}.source-list article{gap:10px}.catalog-list{padding:0 18px 22px}footer{flex-direction:column;justify-content:center;align-items:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.metric-modal,.metric-modal-backdrop,.metric-modal-inner,.metric-modal.closing,.metric-modal-backdrop.closing,.metric-modal.closing .metric-modal-inner{animation-duration:1ms;animation-delay:0s}.us-map path{transition:none}}
