/* Shared category navigation. Existing report styles and data modules stay intact. */
.cfc-header,.cfc-home,.cfc-category,.cfc-search-dialog,.cfc-footer{--cfc-line:oklch(from var(--color-text) l c h / .13);--cfc-small:14px;--cfc-tiny:12px;color:var(--color-text)}
.cfc-wrap{max-width:1280px;margin-inline:auto;padding-inline:var(--space-12)}
.cfc-header{position:sticky;top:0;z-index:60;background:var(--color-bg);border-bottom:1px solid var(--cfc-line)}
.cfc-topnav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}
.cfc-brand{display:flex;align-items:center;gap:var(--space-2);font:18px var(--font-brand);letter-spacing:-.7px;white-space:nowrap;color:var(--color-text)}
.cfc-brand:hover{color:var(--color-text)}
.cfc-brand svg{width:38px;height:38px;color:var(--color-primary)}
.cfc-desktop-nav{display:flex;align-items:center;gap:var(--space-6);font-size:var(--cfc-small);font-weight:500}
.cfc-desktop-nav a,.cfc-desktop-nav button{display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px}
.cfc-desktop-nav a,.cfc-menu-link,.cfc-quick-link,.cfc-report-link,.cfc-search-result,.cfc-footer a,.cfc-mobile-nav>a,.cfc-mobile-sub>a{color:var(--color-text)}
.cfc-menu-link:hover,.cfc-report-link:hover,.cfc-footer a:hover,.cfc-mobile-nav a:hover{color:var(--color-primary)}
.cfc-desktop-nav button{padding:0;border:0;background:none;color:var(--color-text);font:inherit;cursor:pointer}
.cfc-desktop-nav a:hover,.cfc-desktop-nav button:hover,.cfc-desktop-nav a[aria-current]{color:var(--color-primary)}
.cfc-nav-tools{display:flex;gap:var(--space-1)}
.cfc-icon-button{width:44px;min-width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;border:0;border-radius:4px;background:none;color:var(--color-text);font:24px var(--font-body);cursor:pointer}
.cfc-icon-button:hover{background:var(--color-surface-2)}
.cfc-icon-button svg{width:18px;height:18px}
.cfc-hamburger{display:none}
.cfc-search-icon{display:inline-block;position:relative;width:16px;height:16px;flex-shrink:0;border:1.7px solid currentColor;border-radius:50%;margin-right:4px}
.cfc-search-icon:after{content:"";position:absolute;width:7px;height:1.7px;background:currentColor;right:-5px;bottom:-3px;transform:rotate(45deg)}
.cfc-header [hidden],.cfc-home [hidden],.cfc-search-dialog [hidden]{display:none!important}
.cfc-mega{position:absolute;top:100%;left:0;width:100%;padding:0;background:var(--color-surface);border-bottom:1px solid var(--cfc-line);box-shadow:0 18px 36px #17131012}
.cfc-mega-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.15fr;gap:var(--space-10);padding-block:var(--space-8)}
.cfc-mega-grid>div>h2{font:600 var(--cfc-tiny) var(--font-body);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.cfc-menu-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-2);min-height:44px;font-size:15px;font-weight:500}
.cfc-menu-link small{font-size:var(--cfc-tiny);font-weight:400;color:var(--color-text-muted);white-space:nowrap}
.cfc-mega-tip{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-6)}
.cfc-mega-tip h2{font:500 25px/1.25 var(--font-display);letter-spacing:-.02em;margin-block:var(--space-3)}
.cfc-mega-tip p:not(.cfc-eyebrow){font-size:var(--cfc-small);color:var(--color-text-muted)}
.cfc-mega-bottom{border-top:1px solid var(--cfc-line);display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-block:var(--space-3)}
.cfc-mega-bottom>span{font-size:var(--cfc-tiny);color:var(--color-text-muted)}
.cfc-eyebrow{font:600 12px/1.6 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);margin:0}
.cfc-text-link{display:inline-flex;align-items:center;gap:var(--space-3);font-size:14px;font-weight:600;min-height:44px;color:var(--color-text)}
.cfc-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-6);background:var(--color-primary);color:#fff;border:0;border-radius:4px;min-height:48px;padding:var(--space-3) var(--space-5);font:600 14px var(--font-body);cursor:pointer}
.cfc-btn:hover{color:#fff;background:var(--color-primary-hover)}
.cfc-home section{padding:0}
.cfc-home .cfc-hero{padding-block:var(--space-16) var(--space-12);display:grid;grid-template-columns:1.55fr 1fr;gap:var(--space-16);align-items:center}
.cfc-hero .cfc-eyebrow{color:var(--color-primary);margin-bottom:var(--space-5)}
.cfc-hero h1{font:500 clamp(40px,4.7vw,66px)/1.08 var(--font-display);letter-spacing:-.04em}
.cfc-hero h1,.cfc-category-heading h1,.cfc-market-page h1{max-width:none}
.cfc-lede{font-size:17px;line-height:1.65;color:var(--color-text-muted);max-width:560px;margin-top:var(--space-6)}
.cfc-hero-actions{display:flex;align-items:center;gap:var(--space-6);margin-top:var(--space-8)}
.cfc-hero-panel{padding:var(--space-6);border:1px solid var(--cfc-line);border-radius:var(--radius-md);background:var(--color-surface)}
.cfc-label-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--cfc-line)}
.cfc-label-row h2{font:600 14px var(--font-body)}
.cfc-label-row>span{font-size:12px;color:var(--color-text-muted)}
.cfc-quick-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) 0;border-bottom:1px solid var(--cfc-line)}
.cfc-quick-link:last-child{padding-bottom:0;border:0}
.cfc-quick-link strong{display:block;font-size:22px;font-weight:600;line-height:1.4}
.cfc-quick-link small{display:block;color:var(--color-text-muted);font-size:12px;line-height:1.6;margin-top:var(--space-1)}
.cfc-quick-link>span{font-size:25px;color:var(--color-primary)}
.cfc-quick-link:hover strong{color:var(--color-primary)}
.cfc-home .cfc-directory{padding-block:var(--space-8) var(--space-16);border-top:1px solid var(--cfc-line);scroll-margin-top:110px}
.cfc-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-6)}
.cfc-section-head h2{font:500 34px/1.2 var(--font-display);letter-spacing:-.025em}
.cfc-section-head p:not(.cfc-eyebrow){font-size:14px;color:var(--color-text-muted);margin-top:var(--space-2)}
.cfc-count{font-size:12px;color:var(--color-text-muted);white-space:nowrap}
.cfc-directory-tools{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:var(--space-6)}
.cfc-filter-tabs{display:flex;gap:var(--space-2);flex-wrap:wrap}
.cfc-filter-tab{font:14px var(--font-body);padding:var(--space-2) var(--space-4);min-height:44px;border:0;border-radius:4px;background:none;color:var(--color-text-muted);cursor:pointer}
.cfc-filter-tab.active{background:var(--color-text);color:var(--color-bg)}
.cfc-filter-tab:not(.active):hover{background:var(--color-surface-2)}
.cfc-search-field{display:flex;align-items:center;gap:var(--space-3);border:1px solid var(--cfc-line);border-radius:4px;background:var(--color-surface);padding:0 var(--space-4);min-width:250px}
.cfc-search-field input{border:0;background:none;color:var(--color-text);font:14px var(--font-body);width:100%;min-height:44px;padding:var(--space-3) 0;outline:0}
.cfc-search-field:focus-within{outline:2px solid var(--color-primary);outline-offset:2px}
.cfc-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}
.cfc-category-card{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--cfc-line);border-radius:var(--radius-md);padding:var(--space-5);min-height:195px;transition:transform .18s,border-color .18s;color:var(--color-text)}
.cfc-category-card:hover{border-color:var(--color-primary);transform:translateY(-3px);color:var(--color-text)}
.cfc-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}
.cfc-card-top .cfc-eyebrow{font-size:12px;letter-spacing:.08em}
.cfc-pill{display:inline-block;border:1px solid var(--cfc-line);border-radius:4px;font:500 12px/1.5 var(--font-body);padding:2px 6px;color:var(--color-text-muted);white-space:nowrap}
.cfc-pill-live{background:var(--color-primary-highlight);border:0;color:var(--color-primary-hover)}
[data-theme='dark'] .cfc-pill-live{color:#f6b5b8}
.cfc-category-card h3{font:600 24px/1.3 var(--font-display);margin-top:var(--space-4)}
.cfc-category-card p{font-size:12px;line-height:1.6;color:var(--color-text-muted);margin-top:var(--space-2)}
.cfc-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:auto;padding-top:var(--space-4);font-size:12px}
.cfc-card-bottom>span:last-child{font-size:25px;color:var(--color-primary)}
.cfc-featured{grid-column:span 2;background:#242120;border-color:#242120;color:#faf8f5}
.cfc-featured:hover{color:#faf8f5}
.cfc-featured .cfc-eyebrow,.cfc-featured p{color:#c5beb9}
.cfc-featured h3{font-size:34px}
.cfc-featured .cfc-pill-live{background:#4c2729;color:#f6c7c8}
.cfc-featured .cfc-card-bottom>span:last-child{color:#f27679}
.cfc-directory-note{font-size:12px;color:var(--color-text-muted);margin-top:var(--space-4)}
.cfc-empty{padding:var(--space-12);text-align:center;background:var(--color-surface);border:1px dashed var(--cfc-line);border-radius:var(--radius-md)}
.cfc-empty p{color:var(--color-text-muted);margin-block:var(--space-3) var(--space-5)}
.cfc-home .cfc-report-entry{padding-block:var(--space-10) var(--space-12);background:var(--color-surface);border-top:1px solid var(--cfc-line)}
.cfc-report-entry .cfc-eyebrow{margin-bottom:var(--space-3)}
.cfc-update-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}
.cfc-update{border:1px solid var(--cfc-line);border-radius:var(--radius-md);padding:var(--space-6)}
.cfc-update-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:12px;color:var(--color-text-muted)}
.cfc-update h3{font:500 24px/1.3 var(--font-display);margin-top:var(--space-4)}
.cfc-update p{font-size:14px;color:var(--color-text-muted);margin-block:var(--space-3)}
.cfc-footer{border-top:1px solid var(--cfc-line);padding-block:var(--space-10) var(--space-6)}
.cfc-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:var(--space-8)}
.cfc-footer-brand{font:16px var(--font-brand);letter-spacing:-.5px}
.cfc-footer p{font-size:12px;color:var(--color-text-muted);margin-top:var(--space-3)}
.cfc-footer-grid h2{font:600 12px var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:var(--space-3)}
.cfc-footer-grid>div>a:not(.cfc-footer-brand){display:flex;align-items:center;gap:var(--space-2);min-height:36px;font-size:13px}
.cfc-future-label{font-size:12px;color:var(--color-text-muted)}
.cfc-footer-social{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:12px;margin-top:var(--space-4)}
.cfc-footer-social a{min-height:44px;display:flex;align-items:center}
.cfc-footer-bottom{display:flex;justify-content:space-between;gap:var(--space-6);border-top:1px solid var(--cfc-line);margin-top:var(--space-8);padding-top:var(--space-5);font-size:12px;color:var(--color-text-muted)}
.cfc-search-dialog{width:min(600px,calc(100% - 32px));max-height:80dvh;margin:auto;padding:var(--space-6);border:1px solid var(--cfc-line);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:0 24px 100px #0003}
.cfc-search-dialog::backdrop{background:#17131070}
.cfc-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}
.cfc-dialog-head h2{font:500 25px/1.3 var(--font-display)}
.cfc-search-caption{font-size:12px;color:var(--color-text-muted);margin-block:var(--space-4)}
.cfc-search-result{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3);border-radius:4px;min-height:60px}
.cfc-search-result:hover{background:var(--color-surface-2)}
.cfc-search-result strong{display:block;font-size:14px;font-weight:600}
.cfc-search-result small{display:block;font-size:12px;color:var(--color-text-muted);margin-top:var(--space-1)}
.cfc-search-empty{font-size:14px;color:var(--color-text-muted);padding:var(--space-5) var(--space-3)}
.cfc-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding-top:var(--space-8);font-size:12px;color:var(--color-text-muted)}
.cfc-category-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-block:var(--space-8)}
.cfc-category-heading h1{font:500 clamp(36px,4vw,50px)/1.1 var(--font-display);letter-spacing:-.035em;margin-top:var(--space-2)}
.cfc-category-heading p:not(.cfc-eyebrow){font-size:14px;color:var(--color-text-muted);margin-top:var(--space-3)}
.cfc-select-wrap label{display:block;font-size:12px;color:var(--color-text-muted);margin-bottom:var(--space-2)}
.cfc-select-wrap select{border:1px solid oklch(from var(--color-text) l c h / .15);border-radius:4px;background:var(--color-surface);color:var(--color-text);padding:var(--space-3);min-height:44px;font:14px var(--font-body);width:100%}
.cfc-category-heading .cfc-select-wrap,.cfc-context-row .cfc-select-wrap{min-width:200px}
.cfc-report-nav{display:flex;gap:var(--space-8);border-bottom:1px solid oklch(from var(--color-text) l c h / .15)}
.cfc-report-nav a{padding-block:var(--space-4);min-height:44px;font-size:14px;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--color-text-muted)}
.cfc-report-nav a[aria-current]{color:var(--color-primary);border-color:var(--color-primary)}
.cfc-mobile-report{display:none}
.cfc-category .cfc-category-body{padding-block:var(--space-8) var(--space-16)}
.cfc-hub-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:var(--space-6)}
.cfc-panel{border:1px solid var(--cfc-line);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-6)}
.cfc-panel h2{font:500 26px/1.3 var(--font-display);margin-top:var(--space-3)}
.cfc-panel p:not(.cfc-eyebrow){font-size:14px;color:var(--color-text-muted);margin-top:var(--space-3)}
.cfc-report-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--cfc-line);padding:var(--space-4) 0;min-height:70px}
.cfc-report-link:first-of-type{margin-top:var(--space-5)}
.cfc-report-link strong{font-size:14px;font-weight:600}
.cfc-report-link small{display:block;font-size:12px;color:var(--color-text-muted);margin-top:var(--space-1)}
.cfc-report-link>span{color:var(--color-primary);font-size:25px}
.cfc-stat{display:flex;align-items:baseline;gap:var(--space-4);margin-top:var(--space-5)}
.cfc-stat strong{font:500 36px var(--font-display)}
.cfc-stat span{font-size:13px;color:var(--color-text-muted)}
.cfc-coming{padding:var(--space-10);border:1px solid var(--cfc-line);background:var(--color-surface);border-radius:var(--radius-md)}
.cfc-coming h2{font:500 34px/1.2 var(--font-display);margin-top:var(--space-5)}
.cfc-coming p{max-width:700px;font-size:16px;color:var(--color-text-muted);margin-block:var(--space-5) var(--space-8)}
.cfc-coming .cfc-text-link{margin-left:var(--space-6)}
.cfc-report-context{padding-bottom:var(--space-3)}
.cfc-context-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding-block:var(--space-5)}
.cfc-context-title{font:500 28px var(--font-display)}
.cfc-report-context .cfc-breadcrumb{padding-top:var(--space-5)}
.cfc-category .cfc-market-page{padding-block:var(--space-16);min-height:650px}
.cfc-market-page h1{font:500 clamp(38px,4vw,54px)/1.1 var(--font-display);letter-spacing:-.04em;margin-top:var(--space-4)}
.cfc-market-page .cfc-lede{margin-bottom:var(--space-10)}
.cfc-coverage-note{font-size:13px;color:var(--color-text-muted);margin-top:var(--space-6);max-width:850px}
.cfc-header :focus-visible,.cfc-home :focus-visible,.cfc-category :focus-visible,.cfc-search-dialog :focus-visible,.cfc-footer :focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}
#disney-table-section,#section-top-sales{scroll-margin-top:110px}
@media(max-width:1100px){.cfc-wrap{padding-inline:var(--space-8)}.cfc-desktop-nav{gap:var(--space-4);font-size:13px}.cfc-brand{font-size:16px}.cfc-hero{gap:var(--space-8)!important}.cfc-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cfc-mega-grid{gap:var(--space-6)}}
@media(max-width:850px){.cfc-desktop-nav{display:none}.cfc-hamburger{display:inline-grid}.cfc-topnav{height:72px}.cfc-mega{display:none}.cfc-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cfc-directory-tools{flex-direction:column;align-items:stretch}.cfc-hub-grid{grid-template-columns:1fr}.cfc-mobile-nav{padding-block:var(--space-3) var(--space-6);max-height:calc(100dvh - 72px);overflow:auto;background:var(--color-surface)}.cfc-mobile-nav>a{display:flex;align-items:center;justify-content:space-between;min-height:52px;border-bottom:1px solid var(--cfc-line);font-size:14px;font-weight:500}.cfc-mobile-nav>details{border-bottom:1px solid var(--cfc-line)}.cfc-mobile-nav summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-4);min-height:48px;font-size:14px;font-weight:600;cursor:pointer;list-style:none}.cfc-mobile-nav summary::-webkit-details-marker{display:none}.cfc-mobile-nav summary:after{content:"+";color:var(--color-primary);font-size:24px}.cfc-mobile-nav details[open]>summary:after{content:"−"}.cfc-mobile-group summary{padding-left:var(--space-3);font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-muted)}.cfc-mobile-group .cfc-menu-link{padding-left:var(--space-6)}.cfc-mobile-sub>a{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding-left:var(--space-3);font-size:14px}.cfc-footer-grid{grid-template-columns:1fr 1fr}.cfc-hero-actions{gap:var(--space-3);flex-wrap:wrap}}
@media(max-width:550px){.cfc-wrap{padding-inline:var(--space-5)}.cfc-topnav{height:68px;gap:var(--space-2)}.cfc-brand{font-size:15px;gap:var(--space-1);letter-spacing:-.5px}.cfc-brand svg{width:32px;height:32px}.cfc-nav-tools{gap:0}.cfc-home .cfc-hero{grid-template-columns:1fr;padding-block:var(--space-10) var(--space-8);gap:var(--space-8)!important}.cfc-hero h1{font-size:43px}.cfc-hero .cfc-eyebrow{margin-bottom:var(--space-4)}.cfc-lede{font-size:16px;margin-top:var(--space-5)}.cfc-hero-actions{margin-top:var(--space-6)}.cfc-hero-panel{padding:var(--space-5)}.cfc-quick-link{padding-block:var(--space-4)}.cfc-quick-link strong{font-size:20px}.cfc-home .cfc-directory{padding-block:var(--space-8) var(--space-10);scroll-margin-top:90px}.cfc-section-head{align-items:flex-start;gap:var(--space-3)}.cfc-section-head h2{font-size:28px}.cfc-count{white-space:normal;text-align:right;max-width:75px}.cfc-filter-tabs{gap:var(--space-1)}.cfc-filter-tab{font-size:12px;padding-inline:var(--space-3)}.cfc-directory-tools{gap:var(--space-4)}.cfc-category-grid{gap:var(--space-3)}.cfc-category-card{padding:var(--space-4);min-height:205px}.cfc-category-card h3{font-size:23px}.cfc-card-top .cfc-eyebrow{font-size:12px;letter-spacing:.04em}.cfc-featured{min-height:185px}.cfc-featured h3{font-size:32px}.cfc-search-field{min-width:0}.cfc-home .cfc-report-entry{padding-block:var(--space-8)}.cfc-update-grid{grid-template-columns:1fr;gap:var(--space-4)}.cfc-update{padding:var(--space-5)}.cfc-update h3{font-size:23px}.cfc-footer-grid{grid-template-columns:1fr;gap:var(--space-6)}.cfc-footer-grid>div>a:not(.cfc-footer-brand){min-height:44px;font-size:14px}.cfc-footer-bottom{flex-direction:column;gap:var(--space-3)}.cfc-category-heading{flex-direction:column;align-items:flex-start;gap:var(--space-5);padding-block:var(--space-6)}.cfc-category-heading h1{font-size:38px}.cfc-category-heading .cfc-select-wrap{width:100%}.cfc-breadcrumb{padding-top:var(--space-5);gap:var(--space-2)}.cfc-report-nav{display:none}.cfc-mobile-report{display:block;padding-bottom:var(--space-6);border-bottom:1px solid oklch(from var(--color-text) l c h / .15)}.cfc-category .cfc-category-body{padding-block:var(--space-6) var(--space-10)}.cfc-panel{padding:var(--space-5)}.cfc-panel h2{font-size:24px}.cfc-context-row .cfc-select-wrap{min-width:0;max-width:220px}.cfc-context-row{gap:var(--space-3)}.cfc-stat{flex-wrap:wrap;gap:var(--space-2)}.cfc-stat strong{font-size:32px}.cfc-coming{padding:var(--space-6)}.cfc-coming h2{font-size:28px}.cfc-coming .cfc-text-link{display:flex;margin-left:0;margin-top:var(--space-4)}.cfc-market-page h1{font-size:40px}.cfc-category .cfc-market-page{padding-block:var(--space-10)}.cfc-search-dialog{padding:var(--space-5)}.cfc-dialog-head h2{font-size:22px}.cfc-search-field input{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cfc-category-card{transition:none}}
