/* SSI / Contour Arch — production design system, v2.8. */
@font-face{font-family:"DM Sans";font-style:normal;font-weight:100 1000;font-display:swap;src:url("./contour/fonts/dm-sans-latin.woff2") format("woff2")}
@font-face{font-family:"Lora";font-style:normal;font-weight:400;font-display:swap;src:url("./contour/fonts/lora-regular-latin.woff2") format("woff2")}
@font-face{font-family:"Lora";font-style:italic;font-weight:400;font-display:swap;src:url("./contour/fonts/lora-italic-latin.woff2") format("woff2")}

:root{
  color-scheme:light;
  --bg:#fbf9f5;--panel:#fffdfa;--panel2:#f3efe8;
  --cream:#18342f;--ink:#18342f;--muted:#718078;
  --line:#dcd7cd;--line2:#e9e3d9;
  --red:#ef6048;--accent:#ef6048;--yellow:#b24c36;
  --blue:#3e626e;--green:#347253;
  --font-ui:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-display:"Lora",Georgia,"Times New Roman",serif;
  --radius:18px;--radius-small:9px;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-padding-top:88px;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.5;min-width:320px;-webkit-font-smoothing:antialiased}
body.modalOpen{overflow:hidden}
button,input,select,textarea{font:inherit;letter-spacing:normal}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
input,select,textarea{color:var(--ink);accent-color:var(--accent)}
input::placeholder,textarea::placeholder{color:#8b918b;opacity:1}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
[hidden]{display:none!important}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%}
svg{vertical-align:middle}
main{max-width:1480px;margin:0 auto;padding:34px 32px 56px}
main>*{min-width:0}
h1,h2,h3,h4,p{overflow-wrap:break-word}
h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.025em;text-transform:none}
h3,h4{font-family:var(--font-ui);font-weight:600;letter-spacing:0;text-transform:none}
small{font-family:var(--font-ui)}
.loading{padding:80px 32px;font-family:var(--font-ui);font-size:14px;font-weight:400;letter-spacing:0;color:var(--muted)}
.muted{color:var(--muted)}
.skipLink{position:fixed;left:20px;top:-80px;z-index:1000;padding:12px 20px;background:var(--ink);color:#fff;border-radius:0 0 8px 8px}
.skipLink:focus{top:0}

/* Persistent navigation. */
.siteHeader.contourHeader{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:32px;height:76px;padding:0 max(28px,calc((100vw - 1416px)/2));background:rgba(251,249,245,.97);border-bottom:1px solid rgba(220,215,205,.68);backdrop-filter:blur(14px)}
.contourHeader .brand{min-width:0;display:flex;align-items:center;gap:0;text-decoration:none;letter-spacing:-2px;flex:0 0 auto}
.contourHeader .ssiMark{position:relative;font-family:var(--font-ui);font-weight:850;font-size:35px;line-height:1;letter-spacing:-2.5px;padding-right:7px;color:var(--ink)}
.contourHeader .ssiMark::after{content:"";position:absolute;right:-2px;top:3px;width:3px;height:29px;transform:skew(-11deg);background:var(--accent)}
.contourHeader .brandText{display:none}
.contourHeader .siteNav,.contourHeader nav{display:flex;align-items:center;justify-content:center;gap:26px;flex:1;height:100%;min-width:0;overflow:visible;padding:0}
.contourHeader .siteNav a,.contourHeader nav a{position:relative;display:flex;align-items:center;height:100%;padding:0;font-size:13px;line-height:1.2;font-weight:500;text-decoration:none;white-space:nowrap;color:var(--ink)}
.contourHeader .siteNav a.active,.contourHeader nav a.active{font-weight:700}
.contourHeader .siteNav a.active::after,.contourHeader nav a.active::after{content:"";position:absolute;bottom:19px;left:0;right:0;height:2px;background:var(--accent)}
.contourHeader .headerMeta{display:flex;align-items:center;gap:17px;margin-left:auto;flex-shrink:0}
.contourHeader .headerMeta>a{font-size:12px;text-decoration:none}
.contourHeader .syncBadge{border:0;background:transparent;color:var(--ink);font-size:12px;letter-spacing:0;font-weight:500;min-height:42px;padding:0 6px}
.contourAvatar{display:grid;place-items:center;min-width:40px;width:40px;height:40px;border:1px solid var(--line2);border-radius:50%;background:#eeeee6;color:var(--ink);font-size:12px;font-weight:600;text-decoration:none;letter-spacing:0}
.contourAvatar:not(.isSignedIn){width:auto;padding:0 15px;border-radius:999px;white-space:nowrap}
.mobileMenuToggle{display:none;border:1px solid var(--line);border-radius:50%;width:42px;height:42px;background:transparent;color:var(--ink);font-size:20px}

/* Shared surfaces, forms, directories and research pages. */
.primaryButton,.primaryLink{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 20px;border:1px solid var(--accent);border-radius:999px;background:var(--accent);color:#fffdfa;font-weight:500;font-size:13px;line-height:1.25;text-transform:none;letter-spacing:0;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.primaryButton:hover,.primaryLink:hover{background:#dd513c;border-color:#dd513c;filter:none}
.secondaryLink,.secondaryActionButton,.ghostButton{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 15px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font-size:12px;line-height:1.3;font-weight:500;letter-spacing:0;text-transform:none;text-decoration:none;transition:background .15s,border-color .15s}
.secondaryLink:hover,.secondaryActionButton:hover,.ghostButton:hover{background:var(--panel2);border-color:#b8beb1}
.textButton,.linkButton{font-family:var(--font-ui);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none;color:#b04c36}
.textButton{min-height:40px;padding:7px 9px;border:0;background:transparent}
.linkButton:hover,.textButton:hover{color:#823f2e;text-decoration:underline;text-underline-offset:3px}
.compactButton{min-height:38px;padding:7px 14px;font-size:12px}
.panel,.filterPanel,.libraryTools,.entryCard,.sportCard,.sponsorCard,.sportOverviewCard,.adminExecutionCard,.adminGroupTile,.accountMapCard{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none;overflow:hidden}
.panel{color:var(--ink)}
.panelHeader{padding:18px 20px 12px;gap:12px;border-color:var(--line2)}
.panelHeader h3,.tagEditorHead h3,.presenceHead h3,.adminExecutionCard h3,.accountGroupTitle h3,.sportBreakdown h3{font-family:var(--font-ui);font-size:17px;font-weight:600;line-height:1.4;letter-spacing:0;text-transform:none}
.panelHeader h3::after,.cardImage::after,.libraryIntro::before,.libraryIntro::after,.entryCard::before,.entryCard::after{display:none}
.panelHeader span{font-size:12px;letter-spacing:0;color:var(--muted);font-weight:400}
.detailPanel{padding:24px}
.detailCopy{font-size:14px;line-height:1.65;color:var(--ink);margin:10px 0}
.libraryIntro,.pageIntro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;position:relative;background:transparent;border:0;padding:8px 0 26px;overflow:visible}
.libraryIntro h1,.pageIntro h1,.detailHero h1{font-family:var(--font-display);font-size:clamp(38px,4.3vw,62px);font-weight:400;letter-spacing:-.03em;line-height:1.08;text-transform:none;margin:0}
.libraryIntro>div,.pageIntro>div{min-width:0}
.libraryIntro p,.pageIntro p{font-family:var(--font-ui);font-size:14px;line-height:1.65;color:var(--muted);margin:13px 0 0;max-width:620px}
.libraryIntro small,.detailHero small{color:var(--muted);font-size:11px;font-weight:500;letter-spacing:.07em}
.libraryTotal{min-width:0;display:flex;align-items:baseline;gap:7px;text-align:right}
.libraryTotal strong{font-family:var(--font-ui);font-size:22px;font-weight:500;color:var(--ink);line-height:1.2}
.libraryTotal span{font-size:12px;letter-spacing:0;text-transform:none;color:var(--muted)}
.sectionTitle{align-items:center;gap:20px;margin:32px 0 16px}
.sectionTitle>div{display:block}
.sectionTitle h2{font-family:var(--font-display);font-size:35px;line-height:1.1;font-weight:400;letter-spacing:-.025em;text-transform:none;margin:0}
.sectionTitle h2 i{display:none}
.sectionTitle p{font-size:13px;line-height:1.55;color:var(--muted);margin:9px 0 0}
.sectionTitle>a{font-size:13px;font-weight:500;color:#a84935}
.filterPanel{padding:20px;margin:18px 0 24px}
.filterGrid{gap:14px}
.filterField{min-width:0;display:grid;gap:6px}
.filterField>span,.authField span,.field label{font-size:12px;line-height:1.35;font-weight:500;color:var(--muted);letter-spacing:0;text-transform:none}
.filterField select,.filterField input,.libraryTools select,.taxonomyField select,.field input,.field select,.field textarea,.tagAdd select,.tagAdd input,.matchSearch input,.authField input,.workspaceEditor textarea,.ssiInviteForm input{min-width:0;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font-family:var(--font-ui);font-size:14px;font-weight:400;line-height:1.4}
.field textarea,.workspaceEditor textarea{resize:vertical;min-height:100px}
.filterField select:focus,.field input:focus,.field select:focus,.authField input:focus{border-color:#bc866e}
.librarySearch,.searchBox{border-color:var(--line);background:var(--panel);border-radius:12px}
.librarySearch input,.searchBox input{color:var(--ink);font-family:var(--font-ui);font-size:15px}
.moreFilters{border-color:var(--line2);margin-top:18px;padding-top:14px}
.moreFilters summary,.collectionHelp summary{cursor:pointer;color:var(--ink);font-size:13px;font-weight:500}
.integrationTag,.creativePill,.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:transparent;color:var(--ink);font-family:var(--font-ui);font-size:11px;font-weight:400;line-height:1.3;letter-spacing:0;text-transform:none;white-space:normal}
.integrationTag button{color:var(--muted);font-size:16px;min-width:18px;min-height:20px}
.integrationTag button:hover{color:#a74332}
.editableTags,.pills,.tagCell{gap:7px}
.workspaceEditor,.tagEditor,.creativeTaxonomy{border-color:var(--line2);margin-top:20px;padding-top:18px}
.tagEditor{border-top:0;border-bottom:1px solid var(--line2);margin-bottom:20px;padding:0 0 20px}
.tagEditorHead small{font-size:11px;color:var(--muted);letter-spacing:0;text-transform:none}
.tagAdd{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.tagAdd button{min-height:42px;padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel2);color:var(--ink);font-weight:500;font-size:12px}
.tagAdd button:hover{background:#e9e3d9;filter:none}
.currentMatch{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 0;margin-top:14px;background:transparent;border:0;border-top:1px solid var(--line2)}
.currentMatch small{font-size:10px;letter-spacing:.08em;color:var(--muted)}
.currentMatch b{font-size:13px;font-weight:500;line-height:1.45}
.currentMatch span{font-size:11px;line-height:1.5;color:var(--muted)}
.matchActions summary{cursor:pointer;font-size:11px;color:var(--muted)}
.campaignCandidate{background:var(--panel);color:var(--ink);border-color:var(--line2);border-radius:8px;padding:12px}
.campaignCandidate:hover{background:var(--panel2);border-color:#b9967d}
.campaignCandidate b{font-size:13px;font-weight:500}
.campaignCandidate small{font-size:11px;color:var(--muted)}
.campaignCandidate em{font-size:11px;font-weight:500;letter-spacing:0;color:#a34d38;text-transform:none}
.unmatchedCallout{border-color:var(--line);border-radius:9px;font-size:12px;color:var(--muted)}
.notice,.workspaceNotice,.syncNotice,.syncedNotice,.collectionHelp{border:1px solid var(--line2);border-radius:12px;background:var(--panel2);color:var(--muted);font-size:12px;line-height:1.6;padding:13px 16px}
.notice b,.workspaceNotice b,.syncedNotice b{color:var(--ink)}
.coverageNote{background:transparent;border:0;padding:8px 0;margin:18px 0 0;color:var(--muted);font-size:12px;line-height:1.7}
.empty{padding:38px 24px;font-size:14px;line-height:1.6;text-align:center;color:var(--muted);border-radius:16px}
.empty h1{font-family:var(--font-display);font-size:36px;color:var(--ink);font-weight:400}

/* Execution library hero: same source canvas for scene and foreground. */
main.contourExecutions{padding-top:15px}
.contourHero{height:clamp(300px,34vw,480px);position:relative;margin:0 -10px;isolation:isolate}
.contourHeroArt,.contourHeroLayer{position:absolute;inset:0;overflow:hidden}
.contourHeroLayer{opacity:1;transition:opacity .65s ease;will-change:opacity}
.contourHeroLayer.is-entering,.contourHeroLayer.is-leaving{opacity:0}
.heroScene{position:absolute;inset:0;clip-path:ellipse(50% 82% at 50% 100%);background:#e8e2d6;z-index:0}
.heroScene picture,.heroScene img{display:block;width:100%;height:100%}
.heroScene img,.heroCutout{object-fit:cover;object-position:50% 0}
.heroCutout{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:2;pointer-events:none}
.heroArc{position:absolute;top:15%;left:-1.2%;width:102.4%;height:171%;border:1px solid var(--accent);border-radius:50%;clip-path:inset(0 0 50% 0);z-index:1;pointer-events:none}
.heroRotationControl{position:absolute;right:18px;bottom:18px;z-index:5;display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;min-width:36px;padding:7px 11px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(251,249,245,.92);color:var(--ink);font-size:11px;backdrop-filter:blur(5px)}
.contourSearchPanel{position:relative;z-index:8;width:min(960px,calc(100% - 50px));margin:-50px auto 28px;padding:10px 24px 0;border:1px solid #ded1bf;border-radius:40px;background:rgba(255,253,250,.99);box-shadow:0 0 0 5px rgba(251,249,245,.45)}
.contourSearchRow{display:flex;align-items:center;gap:16px;min-height:60px;border-bottom:1px solid var(--line2)}
.contourSearchRow .searchIcon{display:grid;place-items:center;flex:0 0 25px;font-size:23px;color:var(--ink)}
.contourSearchRow .searchIcon svg{width:25px;height:25px;stroke-width:1.5}
.contourSearchRow input{flex:1;min-width:0;height:56px;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:18px;line-height:1.4}
.contourSearchRow input:focus-visible{outline:0;box-shadow:0 2px 0 var(--accent)}
.searchSubmit{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;min-height:46px;padding:0;margin:0 0 8px;border:0;border-radius:50%;background:var(--accent);color:#fffdfa;font-size:26px;line-height:1}
.searchSubmit:hover{background:#dd513c}
.searchSubmit svg{width:22px;height:22px}
.contourQuickFilters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(120px,.95fr);gap:0;align-items:stretch;min-height:66px}
.contourQuickFilters>.filterField{display:flex;align-items:center;position:relative;min-width:0;padding:0 12px}
.contourQuickFilters>.filterField+.filterField::before{content:"";position:absolute;left:0;top:23px;bottom:23px;width:1px;background:var(--line2)}
.contourQuickFilters>.filterField>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.contourQuickFilters>.filterField select{height:50px;min-height:44px;border:0;border-radius:0;padding:8px 26px 8px 0;background:transparent;color:var(--ink);font-size:13px;white-space:nowrap;text-overflow:ellipsis}
.contourMoreFiltersDetails{position:relative;padding:0 0 0 12px;display:flex;align-items:center;min-width:0}
.contourMoreFiltersDetails>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:66px;list-style:none;cursor:pointer;font-size:13px;white-space:nowrap}
.contourMoreFiltersDetails>summary::-webkit-details-marker{display:none}
.contourMoreFiltersDetails>summary::after{content:"⌄";font-size:17px;margin-left:8px}
.contourMoreFiltersDetails[open]>summary::after{transform:rotate(180deg)}
.contourAdvancedFilters{position:absolute;right:-24px;top:calc(100% + 10px);width:min(640px,calc(100vw - 50px));max-height:min(66dvh,680px);overflow:auto;padding:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 50px rgba(31,45,34,.13);z-index:45}
.contourAdvancedFilters>p,.contourAdvancedFilters>.filterActions{grid-column:1/-1}
.contourAdvancedFilters p{margin:0;color:var(--muted);font-size:12px}
.contourResultsHead{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:34px 2px 20px}
.contourResultsHead h1{font-family:var(--font-display);font-size:clamp(35px,3.5vw,48px);font-weight:400;line-height:1.1;letter-spacing:-.025em;text-transform:none;margin:0}
.contourResultsHead>label,.contourResultsHead .contourSortControl{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);white-space:nowrap}
#contourSort{border:1px solid var(--line);border-radius:10px;padding:10px 30px 10px 12px;background:transparent;color:var(--ink);min-height:40px;font-size:12px}
.libraryMeta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 2px 18px;font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0;text-transform:none}
.libraryMeta>span:first-child{font-weight:400;color:var(--muted)}
.tableActions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tableActions .secondaryLink,.tableActions .primaryLink{min-height:38px;padding:8px 13px;font-size:12px}
.libraryMetaActions{position:relative}
.libraryMetaActions>summary{list-style:none;padding:8px 14px;border:1px solid var(--line);border-radius:999px;cursor:pointer;color:var(--ink);min-height:38px;font-size:12px}
.libraryMetaActions>summary::-webkit-details-marker{display:none}
.libraryMetaActions[open]>div{position:absolute;right:0;top:calc(100% + 8px);z-index:20;min-width:210px;display:grid;gap:6px;padding:9px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px #18342f14}
.libraryMetaActions>div>button{justify-content:flex-start;text-align:left;width:100%}

/* Tables use one interface family; brand names have the editorial serif. */
.dataWrap,.libraryTableWrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:20px;background:var(--panel);scrollbar-width:thin;scrollbar-color:#c9c5b9 transparent}
.dataTable{width:100%;min-width:800px;table-layout:auto;border-collapse:collapse;background:transparent;color:var(--ink);font-family:var(--font-ui);font-size:13px;line-height:1.5}
.dataTable th,.dataTable td{font-family:var(--font-ui);font-weight:400;text-align:left;vertical-align:middle;padding:15px 16px;border:0;border-bottom:1px solid var(--line2);color:var(--ink);overflow-wrap:normal}
.dataTable th{background:transparent;color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.075em;text-transform:uppercase;line-height:1.4;white-space:nowrap}
.dataTable.libraryTable thead th{padding:10px 16px}
.dataTable tr:last-child td{border-bottom:0}
.dataTable tbody tr:nth-child(even)>td{background:rgba(243,239,232,.44)}
.dataTable tbody tr:hover>td,.libraryRow:hover td,.libraryRow:focus td{background:#eeece2!important}
.dataTable .linkButton{font-size:13px;font-weight:500}
.dataTable td b{font-weight:500}
.dataTable .rowSubtitle,.dataTable .rowCreativeMeta{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.4}
.tableHeadLabel,.sortHead{font-family:var(--font-ui);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.075em;color:var(--muted);padding:0}
.sortHead{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:32px;background:transparent;border:0;width:100%;text-align:left}
.sortHead.active{color:var(--ink)}
.sortHead span{float:none;color:var(--muted);font-size:11px}
.contourTable{min-width:1120px;table-layout:auto}
.contourTable th:nth-child(n),.contourTable td:nth-child(n){width:auto}
.contourTable th:first-child,.contourTable td:first-child{width:142px}
.contourTable .tablePreview{display:flex;align-items:center;justify-content:center;width:104px;height:58px;padding:0}
.tablePreview img{display:block;width:104px;height:58px;max-width:none;object-fit:cover;border-radius:9px;background:var(--panel2)}
.tablePreview .previewEmpty,.tablePreview .thumbPlaceholder{display:grid;place-items:center;width:104px;height:58px;border-radius:9px;border:1px solid var(--line2);background:var(--panel2);color:var(--muted);font-size:11px}
.contourBrand,.dataTable a.contourBrand,.dataTable td.contourBrand{font-family:var(--font-display);font-size:20px;line-height:1.2;font-weight:400;letter-spacing:0;color:var(--ink);text-decoration:none}
.contourBrand:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.dataTable td a[href^="/sponsors/"],.dataTable td a[href^="/brands/"]{font-family:var(--font-display);font-weight:400;font-size:20px;line-height:1.1;letter-spacing:0;color:var(--ink)}
.contourCampaignTable{min-width:1000px}
.contourCampaignTable .extendedCol{display:none}
#libraryTable.detailedColumns .extendedCol{display:table-cell}
#libraryTable.detailedColumns .contourCampaignTable{min-width:1420px}
.contourLinkedExecutions{display:grid;gap:0}
.contourLinkedExecutions>a{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid var(--line2);text-decoration:none}
.contourLinkedExecutions>a>b{font-weight:500;font-size:13px}
.contourLinkedExecutions>a>small{font-size:11px;color:var(--muted)}
.contourEvidence{margin-top:14px;font-size:12px;color:var(--muted)}
.contourEvidence>summary{cursor:pointer}
.contourEvidence>a{display:block;padding:10px 0;border-bottom:1px solid var(--line2);color:var(--ink)}
.heroAdminItem>strong{display:block;margin:12px 14px 0;font-size:14px;font-weight:500}
.heroAdminItem>label{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:12px}
.rowExecutionTitle{font-family:var(--font-ui);font-weight:500;font-size:13px;color:var(--ink);line-height:1.45;max-width:250px;display:block}
.contourTable .tableReview{min-width:120px}
.contourTable .extendedCol{display:none}
#postsTable.detailedColumns .contourTable .extendedCol{display:table-cell}
#postsTable.detailedColumns .contourTable{min-width:1540px}
.dataTable .humanReviewBadge{font-size:10px;line-height:1.35;padding:5px 7px;border-radius:7px;background:transparent;border-color:var(--line);color:var(--muted);white-space:normal}
.dataTable .humanReviewBadge.checked{color:var(--green);border-color:#c6d8c6}
.dataTable .reviewByline{font-size:10px;margin-top:4px;color:var(--muted)}
.dataTable .tagCell{max-width:260px}
.dataTable .integrationTag{font-size:10px;padding:4px 7px}

/* Supporting pages share the same quiet, rounded research language. */
.homeStats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel);margin:16px 0 24px}
.homeStat{display:flex;align-items:center;gap:0;min-height:104px;padding:20px 24px;background:transparent;border:0;border-right:1px solid var(--line2)}
.homeStat:last-child{border-right:0}
.homeStat .statIcon,.miniStat .statIcon{display:none}
.homeStat strong,.miniStat strong{font-family:var(--font-ui);font-weight:500;font-size:28px;line-height:1.2;color:var(--ink);margin-top:6px}
.homeStat small,.miniStat small{font-size:12px;letter-spacing:0;text-transform:none;color:var(--muted)}
.cardGrid{gap:18px}
.cardBody{padding:22px}
.cardBody h3{font-family:var(--font-display);font-size:31px;font-weight:400;letter-spacing:-.02em;text-transform:none;margin:0 0 7px}
.cardBody small{font-size:11px;letter-spacing:.04em;color:var(--muted)}
.cardImage{background:var(--panel2);border-color:var(--line2);height:160px}
.entryGrid{gap:18px}
.entryCard{padding:24px}
.entryCard h3{font-family:var(--font-display);font-size:32px;font-weight:400;line-height:1.15;margin:0 0 10px}
.entryCard p{font-size:13px;color:var(--muted);line-height:1.6}
.entryCard small{font-size:11px;letter-spacing:0;text-transform:none;color:var(--muted)}
.sportsGrid{gap:20px}
.sportLogoStrip,.sportWordmark{background:#f0eee5;border-color:var(--line2);min-height:116px}
.sportWordmark{font-family:var(--font-display);font-weight:400;font-size:32px;letter-spacing:0;text-transform:none;color:var(--ink)}
.leagueMark{background:#fffdf9;border-radius:10px;border:1px solid var(--line2)}
.sportOverviewBody h2{font-family:var(--font-display);font-size:35px;font-weight:400;line-height:1.1;letter-spacing:-.02em;margin:12px 0}
.sportOverviewBody>small{font-family:var(--font-ui);font-size:11px;letter-spacing:.055em;color:var(--muted)}
.sportOverviewBody>p{font-size:13px;line-height:1.65}
.sportMetrics{border-color:var(--line2);gap:14px}
.sportMetrics b{font-family:var(--font-ui);font-weight:500;font-size:24px}
.sportMetrics small{font-size:11px;letter-spacing:0;text-transform:none}
.sportOverviewBody p.sportTopSponsors{font-size:12px;color:var(--muted)}
.sportFilters{border-color:var(--line);border-radius:16px;background:var(--panel);padding:20px}
.sportBreakdown{padding:22px}
.sportBreakdownRow{padding:13px 0;font-size:13px;border-color:var(--line2);color:var(--ink)}
.sportBreakdownRow b{font-weight:500;font-size:14px}
.sportDateRange,.sportNotice,.sportAttribution,.logoCredits{font-size:12px;line-height:1.65;color:var(--muted)}
.barTrack{background:#ece8de;border-radius:4px;overflow:hidden}
.barFill,.barFill.yellow,.barFill.blue,.barFill.cream{background:#8caa9a;border-radius:4px}
.adminExecutionCard,.accountMapCard,.adminGroupTile{padding:20px;background:var(--panel);border-color:var(--line)}
.adminExecutionTitle,.adminWhy,.adminReasonCell,.accountCoverage{color:var(--ink)}
.adminCardTop,.accountCardHead{font-size:11px;font-weight:500;letter-spacing:.025em;color:var(--muted)}
.adminMeta,.adminCampaignLink,.accountMapCard>p{font-size:12px;color:var(--muted)}
.adminChip{background:transparent;border-color:var(--line);font-size:10px;color:var(--ink);font-weight:400;letter-spacing:0}
.adminChip.good{color:#35734f;background:#edf4eb;border-color:#cfddca}
.adminChip.review,.adminChip.priority{color:#98612e;background:#f8f0df;border-color:#e8d7b8}
.adminChip.platform{color:#496b7a;background:#edf3f5;border-color:#d6e2e6}
.adminGroupTile span{font-size:11px;font-weight:500;letter-spacing:.025em;color:var(--muted);text-transform:none}
.adminGroupTile b{font-family:var(--font-ui);font-weight:500;color:var(--ink)}
.accountMetrics div,.presenceStats>div{background:var(--panel2);border-color:var(--line2);border-radius:10px}
.accountMetrics small{font-size:10px;color:var(--muted);letter-spacing:0;text-transform:none}
.accountMapCard.hasCoverage{box-shadow:inset 3px 0 0 #c4cebb}
.accountMapCard.noCoverage{opacity:.82}
.presenceHead p,.presenceRow small,.presenceFoot{color:var(--muted);font-size:12px}
.presenceRow{border-color:var(--line2);padding:12px}
.presenceRow.isSelf{background:#f2f1e8}
.presenceStats small{font-size:11px;letter-spacing:0;text-transform:none}
.presenceStats b{font-weight:500;color:var(--ink)}
.adminOnlyBadge{background:#f7eee0;border-color:#e6d6bb;color:#88633b;font-size:11px;font-weight:500;letter-spacing:0}
.authBackdrop{z-index:180;background:rgba(25,35,29,.38)}
.authCard{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 24px 90px #18342f24}
.authCard h2{font-family:var(--font-display);font-size:42px;font-weight:400;letter-spacing:-.02em;text-transform:none;line-height:1.08}
.authHelp,.authStatus span{font-size:12px;line-height:1.6;color:var(--muted)}
.authStatus{border-color:var(--line);border-radius:10px;background:var(--panel2)}
.authStatus b{font-size:13px;font-weight:500}
.authStatus.warn b{color:#985f30}
.authCard #ssiAuthStatus{color:var(--ink)}
.authField input[readonly]{color:var(--muted);background:var(--panel2)}
.authLinks{gap:16px}
.duplicateBlock,.duplicateClear,.duplicateWarn{border-radius:10px;background:#f6f2e8;border-color:var(--line)}
.duplicateBlock b{color:#a44735}.duplicateClear b{color:var(--green)}
.duplicateBlock span,.duplicateClear span,.duplicateWarn small{font-size:12px;color:var(--muted)}
footer{max-width:1416px;margin:0 auto;padding:24px 0 28px;border-top:1px solid var(--line2);display:flex;justify-content:space-between;gap:16px;font-family:var(--font-ui);font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}
footer a{color:var(--muted);text-decoration:none}

/* Three-column execution and campaign detail cards. */
.modalBackdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(28,34,28,.42);backdrop-filter:blur(4px);overflow:auto;overscroll-behavior:contain}
.executionModalCard.contourDetailCard{display:block;position:relative;isolation:isolate;width:min(1280px,100%);max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:26px 30px 0;overflow-x:hidden;overflow-y:auto;border:1px solid #e1dace;border-radius:24px;background:var(--panel);color:var(--ink);box-shadow:0 26px 100px #17242024;scrollbar-width:thin;scrollbar-color:#c9c3b7 transparent}
.contourDetailHead{position:relative;text-align:center;padding:3px 82px 15px;min-height:102px;isolation:isolate}
.contourBrandTitle{position:relative;z-index:1;font-family:var(--font-display);font-size:54px;font-weight:400;letter-spacing:-.03em;line-height:1.05;text-transform:none;margin:0 0 5px;color:var(--ink)}
.contourBrandTitle a{color:inherit;text-decoration:none;font:inherit}
.contourBrandTitle a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.contourExecutionTitle{position:relative;z-index:1;font-family:var(--font-ui);font-size:24px;font-weight:400;letter-spacing:-.035em;line-height:1.3;text-transform:none;margin:0 auto;max-width:840px;color:var(--ink)}
.detailArc{position:absolute;left:-15px;right:-15px;top:-13px;height:150px;border:1px solid var(--accent);border-bottom:0;border-radius:50% 50% 0 0/100% 100% 0 0;pointer-events:none;z-index:0;clip-path:polygon(0 0,100% 0,100% 90%,90% 90%,85% 40%,15% 40%,10% 90%,0 90%)}
.contourDetailTopActions{position:absolute;right:14px;top:13px;display:flex;align-items:center;gap:5px;z-index:8}
.contourDetailCard .modalClose{position:absolute;right:14px;top:13px;display:grid;place-items:center;width:42px;height:42px;min-width:42px;min-height:42px;border:1px solid transparent;border-radius:50%;background:rgba(255,253,250,.95);color:var(--ink);font-family:var(--font-ui);font-size:27px;font-weight:300;line-height:1;padding:0;z-index:9}
.contourDetailTopActions .modalClose{position:static;inset:auto}
.contourDetailTopActions .ghostButton{min-height:37px;padding:6px 11px;font-size:12px;background:var(--panel)}
.contourDetailCard .modalClose:hover{background:var(--panel2);border-color:var(--line2)}
.contourDetailCard .executionReview{display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap;padding:11px 0 15px;margin:0;border:0;border-bottom:1px solid var(--line2);border-radius:0;background:transparent;min-height:44px}
.contourDetailCard .humanReviewHead{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.contourDetailCard .humanReviewControl{display:flex;align-items:center;gap:7px;background:transparent;padding:0;border:0;color:var(--ink);font-size:11px;font-weight:400}
.contourDetailCard .humanReviewControl input{width:17px;height:17px;min-width:17px;min-height:17px;margin:0;accent-color:var(--green)}
.contourDetailCard .reviewByline{color:var(--muted);font-size:10px;line-height:1.5}
.contourDetailCard .executionChecklist{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.contourDetailCard .completionCheck{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:400;letter-spacing:0;color:var(--muted);background:transparent;border:0;padding:0}
.contourDetailCard .completionCheck.complete{color:var(--ink)}
.contourDetailCard .completionCheck.complete>span:first-child{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--green);color:#fff;font-size:10px}
.contourDetailCard .completionCheck.missing>span:first-child{color:#9a978d}
.contourDetailCard .checklistHelp{display:none}
.contourDetailCard #humanReviewStatus{font-size:11px;color:var(--muted)}
.contourReviewDetails>summary{display:none}
.contourReviewDetails{border:0;padding:0;margin:0}
.contourDetailCard .humanReviewBadge{font-size:11px;font-weight:400;color:var(--muted);background:transparent;border:0;padding:0}
.contourDetailCard .humanReviewBadge.checked{color:var(--green)}
.contourDetailGrid{display:grid;grid-template-columns:minmax(175px,.8fr) minmax(260px,1.3fr) minmax(220px,1fr);gap:24px;align-items:start;padding:22px 0 24px;min-width:0}
.contourDetailGrid>*{min-width:0}
.contourFacts{padding-right:8px}
.contourFacts dl{display:grid;gap:0;margin:0}
.contourFact{padding:9px 0 11px;border-bottom:1px solid var(--line2)}
.contourFact:first-child{padding-top:0}
.contourFact dt,.contourSource>small,.contourTagGroup>h3,.contourCampaign>h3,.contourClassification>h3{font-family:var(--font-ui);font-weight:500;font-size:10px;letter-spacing:.065em;line-height:1.4;text-transform:uppercase;color:#698078;margin:0 0 6px}
.contourFact dd{font-family:var(--font-ui);font-size:14px;font-weight:400;line-height:1.5;margin:0;color:var(--ink);overflow-wrap:anywhere}
.contourFact dd a{font:inherit;color:var(--ink);text-decoration:none}
.contourFact dd a:hover{text-decoration:underline}
.contourCampaign{padding:15px 0 0}
.contourCampaign #currentCampaign>.currentMatch{margin:0;padding:0 0 15px;border-top:0;border-bottom:1px solid var(--line2)}
.contourCampaign .currentMatch span{margin-top:5px}
.contourCampaign .currentMatch small{font-size:10px;letter-spacing:.065em;color:#698078}
.contourCampaign .currentMatch .linkButton{color:#b34d35;text-decoration:underline;font-size:13px;font-weight:400}
.contourCampaign .currentMatch b{font-weight:400}
.contourCampaign .matchActions{display:none}
.isEditing .contourCampaign .matchActions{display:block}
.contourSource{display:grid;gap:5px;padding:15px 0 0}
.contourSource a{font-size:13px;color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.contourSource a:hover{text-decoration:underline}
.contourGallery{min-width:0;padding:0 18px;border-left:1px solid var(--line2);border-right:1px solid var(--line2)}
.contourGallery .executionShot.contourCarousel,.contourCarousel.nativeShot{display:block;position:relative;min-height:0!important;height:auto!important;overflow:visible;background:transparent;border:0;border-radius:0;padding:0;outline:none}
.contourCarousel::before,.contourCarousel::after{display:none!important}
.contourCarousel .contourImageStage{display:flex;justify-content:center;align-items:center;position:relative;width:100%;height:clamp(240px,calc(100dvh - 530px),520px);min-height:200px;padding:0;background:transparent;overflow:hidden;border-radius:10px}
.contourCarousel .contourImageStage>.nativeMediaImg,.contourCarousel .contourImageStage img{display:block;position:static;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;border-radius:8px;opacity:1;background:transparent;filter:none}
.contourCarousel.is-landscape .contourImageStage{height:auto;min-height:0;aspect-ratio:var(--media-ratio,1.7778);max-height:58dvh}
.contourCarousel.is-landscape .contourImageStage img{max-height:58dvh;width:100%;height:auto}
.contourCarousel.is-square .contourImageStage{height:auto;min-height:0;aspect-ratio:var(--media-ratio,1);max-height:58dvh}
.contourCarousel.is-square .contourImageStage img{width:100%;height:100%;max-height:58dvh;object-fit:contain}
.contourCarousel .nativeMediaImg.mediaLoading{opacity:.4}
.contourMediaEmpty{display:grid;place-content:center;gap:7px;min-height:290px;width:100%;padding:28px 18px;border:1px dashed var(--line);border-radius:12px;background:var(--panel2);text-align:center;color:var(--muted);font-size:12px;line-height:1.6}
.contourMediaEmpty strong{font-size:15px;font-weight:500;color:var(--ink)}
.contourCarousel .fallbackCopy{display:none}
.contourCarousel .mediaBadge{position:static;display:block;width:auto;max-width:100%;margin:8px 0 0;padding:0;border:0;background:transparent;color:var(--muted);font-size:10px;text-align:center;letter-spacing:0;text-transform:none;border-radius:0}
.contourMediaNavigation{display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 0 0;min-height:48px}
.contourMediaNavigation button,.contourCarousel .mediaArrow,.contourCarousel .mediaExpand{position:static;inset:auto;display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:0;margin:0;border:1px solid var(--line2);border-radius:50%;background:var(--panel2);color:var(--ink);font-size:21px;font-weight:400;line-height:1;opacity:1;transform:none;z-index:auto}
.contourMediaNavigation button:hover{background:#eae6dc}
.contourMediaNavigation .mediaExpand{width:auto;border-radius:8px;padding:0 10px;font-size:11px;background:transparent;margin-left:auto}
.contourMediaNavigation .contourMediaCount,.contourMediaNavigation .mediaCount{font-size:11px;color:var(--muted);white-space:nowrap;min-width:35px;text-align:center}
.contourCarousel .contourThumbnails{position:static;inset:auto;transform:none;display:flex;align-items:center;justify-content:flex-start;gap:7px;width:100%;max-width:100%;overflow-x:auto;scrollbar-width:thin;padding:11px 2px 3px;background:transparent;border-radius:0;backdrop-filter:none;z-index:auto}
.contourThumbnails button{display:block;flex:0 0 68px;width:68px;height:64px;padding:2px;border:1px solid var(--line2);border-radius:6px;background:var(--panel2);overflow:hidden;opacity:.75}
.contourThumbnails button.active,.contourThumbnails button[aria-current="true"],.contourThumbnails button[aria-pressed="true"]{border:2px solid var(--accent);padding:1px;opacity:1}
.contourThumbnails img{display:block;width:100%;height:100%;object-fit:contain;border-radius:3px;background:#eeebe2}
.contourGalleryTools,.contourGallery .mediaControls{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap;padding:13px 0 0;background:transparent;border:0;margin:0}
.contourGalleryTools .secondaryLink,.contourGalleryTools .ghostButton,.contourGallery .mediaControls .secondaryLink{font-size:10px;min-height:34px;padding:6px 10px;border-radius:8px}
.contourGalleryTools small,.contourGallery .mediaControls small{display:block;flex-basis:100%;color:var(--muted);font-size:10px;line-height:1.5;text-align:center;max-width:100%;overflow-wrap:anywhere}
.contourClassification{padding-left:0}
.contourTagGroup{border-bottom:1px solid var(--line2);padding:17px 0 20px}
.contourTagGroup:first-child{padding-top:0}
.contourTagGroup h3{margin:0 0 10px}
.contourTagGroup .editableTags{display:flex;flex-wrap:wrap;gap:7px}
.contourTagGroup p{font-family:var(--font-ui);font-size:13px;line-height:1.65;color:var(--ink);margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.contourTagGroup .muted{font-size:12px;color:var(--muted)}
.contourReadView{display:block}
.contourEditView{display:none}
.isEditing .contourReadView{display:none}
.isEditing .contourEditView{display:block}
.contourEditView .tagEditorHead h3,.contourEditView .creativeTaxonomy h3{font-family:var(--font-ui);font-size:14px;line-height:1.4;font-weight:500;text-transform:none;letter-spacing:0}
.contourEditView .tagEditor,.contourEditView .creativeTaxonomy{margin-top:0;padding-top:0}
.contourEditView .creativeTaxonomy{border:0;background:transparent;padding:0}
.contourEditView .creativeTaxonomyGrid{display:block}
.contourEditView .contentCategoryField,.contourEditView .socialElementField,.contourEditView .taxonomyField{display:grid;gap:8px;margin-top:18px}
.contourEditView .contentCategoryField>span,.contourEditView .socialElementField>span,.contourEditView .taxonomyField>span{font-family:var(--font-ui);font-size:11px;font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0}
.contourEditView .tagAdd{display:flex;flex-wrap:wrap}
.contourEditView .tagAdd select{flex:1 1 150px;width:auto;font-size:12px;min-height:38px;padding:7px 9px}
.contourEditView .tagAdd button{min-height:38px;font-size:11px;padding:6px 10px}
.contourEditView textarea{font-size:13px;min-height:110px}
.contourClassification .recordActions{margin-top:15px;border-top:1px solid var(--line2);padding-top:12px}
.contourClassification .recordActions summary{font-size:12px;cursor:pointer;color:var(--muted)}
.contourClassification .dangerActionButton{font-size:12px;min-height:38px;background:transparent;color:#a64534;border:1px solid #d9b7a9;border-radius:8px;margin-top:10px;padding:8px 12px}
.contourClassification .modalEvidence,.contourClassification .workspaceEditor{padding:15px 0 0;margin:15px 0 0;border-top:1px solid var(--line2);background:transparent}
.contourClassification .modalEvidence summary{font-size:12px;color:var(--muted);cursor:pointer;line-height:1.5}
.contourClassification .modalEvidence p{font-size:12px;line-height:1.65;margin:10px 0}
.contourEngagement{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line2)}
.contourEngagement h3{font-family:var(--font-display);font-size:28px;font-weight:400;letter-spacing:-.025em;text-transform:none;line-height:1.1;margin:0 7px 0 0}
.contourMetric{display:grid;gap:5px;flex:1;min-width:58px;border-left:1px solid var(--line2);padding-left:20px}
.contourMetric small,.contourMetric dt{font-size:10px;line-height:1.35;font-weight:400;letter-spacing:.035em;text-transform:uppercase;color:#698078;margin:0}
.contourMetric strong,.contourMetric b,.contourMetric dd{font-family:var(--font-ui);font-size:17px;line-height:1.3;font-weight:400;margin:0;color:var(--ink)}
.contourMetric>span{font-size:10px;line-height:1.35;letter-spacing:.035em;text-transform:uppercase;color:#698078}
.contourEngagement .contourCapture,.contourEngagement>.muted,.contourEngagement>small{font-size:10px;color:var(--muted);line-height:1.6}
.contourDetailFooter{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding:17px 0 20px;background:var(--panel)}
.contourDetailFooter .primaryLink,.contourDetailFooter .secondaryLink{font-size:12px;min-height:42px;padding:10px 18px}
.contourDetailFooter .contourRecordID{font-size:10px;color:var(--muted);margin-right:auto;overflow-wrap:anywhere}
.contourCampaignCard .contourDetailGrid{padding-top:24px}
.contourCampaignCard .contourClassification .modalEvidence a{display:grid;gap:4px;padding:12px 0;border-top:1px solid var(--line2);color:var(--ink);text-decoration:none}
.contourCampaignCard .contourClassification .modalEvidence a:hover{color:#a74c35}
.contourCampaignCard .contourClassification .modalEvidence a span,.contourCampaignCard .contourClassification .modalEvidence a i{font-size:11px;color:var(--muted);font-style:normal}
.contourCampaignCard .contourClassification .modalEvidence a b{font-size:13px;font-weight:500;line-height:1.4}

/* Focused image inspector. Controls never cover the screenshot. */
.mediaLightbox.contourLightbox{position:fixed;inset:0;z-index:230;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;align-items:stretch;justify-content:stretch;background:#10231e;padding:0;overflow:hidden;color:var(--ink)}
.contourLightboxToolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left));background:var(--panel);min-height:66px;border-bottom:1px solid var(--line)}
.contourLightboxToolbar button{min-height:42px;min-width:42px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--ink);font-size:14px;padding:8px 14px}
.contourLightboxToolbar .mediaLightboxClose{position:static;inset:auto;border:0;font-size:28px;padding:0;width:42px;height:42px;border-radius:50%;color:var(--ink);background:transparent;line-height:1}
.contourLightboxToolbar .contourLightboxTitle{font-size:12px;color:var(--muted);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contourLightboxStage{position:relative;display:flex;align-items:center;justify-content:center;overflow:auto;min-height:0;min-width:0;width:100%;height:100%;padding:20px;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
.contourLightboxStage .contourZoomImage{position:static;display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;transform:none;border:0;cursor:zoom-in;flex:0 0 auto;touch-action:pan-x pan-y pinch-zoom}
.contourLightboxStage .contourZoomImage.isZoomed{max-width:none;max-height:none;cursor:zoom-out;align-self:flex-start;object-fit:initial}
.contourLightboxStage:has(.isZoomed){align-items:flex-start;justify-content:flex-start}
.contourLightboxFooter{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--line);min-height:68px}
.contourLightboxFooter>button,.contourLightboxFooter [data-zoom]{display:grid;place-items:center;min-width:42px;min-height:42px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-size:18px;padding:8px 12px}
.contourLightboxFooter .primaryLink{min-height:42px;font-size:12px}
.contourLightbox .mediaLightboxDots{position:static;inset:auto;display:flex;align-items:center;justify-content:flex-start;gap:8px;max-width:calc(100vw - 160px);overflow-x:auto;transform:none}
.contourLightbox .mediaDot{display:block;flex:0 0 52px;width:52px;height:48px;min-width:52px;min-height:48px;padding:2px;background:var(--panel2);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.contourLightbox .mediaDot img{position:static;inset:auto;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;transform:none}
.contourLightbox .mediaDot.active{border:2px solid var(--accent);padding:1px}

@media(min-width:1000px){
  .contourDetailBottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;border-top:1px solid var(--line)}
  .contourDetailBottom .contourEngagement{border:0;gap:16px}
  .contourDetailBottom .contourDetailFooter{border:0;padding:17px 0}
}

/* Shared hero artwork management. */
.contourHeroAdmin{margin:24px 0;padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:18px}
.contourHeroAdmin h2{font-family:var(--font-display);font-size:35px;font-weight:400;line-height:1.1;margin:0 0 12px}
.contourHeroAdmin h3{font-family:var(--font-ui);font-size:15px;font-weight:600;margin:0 0 12px}
.contourHeroAdmin p{font-size:13px;line-height:1.65;color:var(--muted);max-width:760px}
.heroAdminGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}
.heroAdminItem{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel)}
.heroAdminPreview{position:relative;width:100%;aspect-ratio:8/3;background:#eeebe3;overflow:hidden}
.heroAdminPreview img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.heroAdminPreview img.scene{clip-path:ellipse(50% 82% at 50% 100%);z-index:0}
.heroAdminPreview img.cutout{z-index:1}
.heroAdminItem>h3,.heroAdminItem>p,.heroAdminItem>label{margin:12px 14px 0}
.heroAdminItem>h3{font-size:14px;font-weight:500}
.heroAdminActions{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:12px 14px}
.heroAdminActions button{min-height:36px;font-size:11px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink)}
.heroAdminActions label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink)}
.heroAdminActions input{width:16px;height:16px;accent-color:var(--green)}
.heroAdminForm{border-top:1px solid var(--line2);padding-top:22px;margin-top:24px}
.heroFileFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}
.heroFileFields label,.heroSettingsRow label{display:grid;gap:6px;font-size:12px;font-weight:500;color:var(--ink);min-width:0}
.heroFileFields input,.heroSettingsRow input,.heroSettingsRow select,.heroAdminForm>label>input{width:100%;max-width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:9px 11px;font-size:13px;font-weight:400}
.heroFileFields input[type=file]{font-size:12px;padding:8px}
.heroFileFields input::file-selector-button{border:0;border-radius:5px;background:var(--panel2);color:var(--ink);padding:6px 9px;margin-right:9px;font:inherit;font-size:11px}
.heroFileFields small,.heroSettingsRow small{font-size:11px;line-height:1.6;color:var(--muted);font-weight:400}
.heroSettingsRow{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:18px 0;border-top:1px solid var(--line2)}
.heroSettingsRow label{flex:1 1 160px}
.contourHeroAdmin [role=status],#heroAdminStatus,#heroUploadStatus{font-size:12px;line-height:1.6;color:var(--muted);margin:14px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}

/* Responsive layouts keep media at its natural proportions. */
@media(min-width:1600px){.contourHero{height:500px}.contourDetailGrid{gap:30px}.contourGallery{padding:0 22px}}
@media(max-width:1200px){
  .siteHeader.contourHeader{gap:24px;padding:0 24px}
  .contourHeader .siteNav,.contourHeader nav{gap:19px}
  .contourHeader .siteNav a,.contourHeader nav a{font-size:12px}
  main{padding:28px 24px 44px}
  .contourHero{height:clamp(300px,35vw,420px)}
  .contourTable{min-width:1080px}
  .contourTable th,.contourTable td{padding-right:12px;padding-left:12px}
  .contourDetailGrid{grid-template-columns:minmax(155px,.8fr) minmax(230px,1.15fr) minmax(190px,1fr);gap:18px}
  .contourGallery{padding:0 13px}
  .executionModalCard.contourDetailCard{padding-left:24px;padding-right:24px}
  .contourFact dd{font-size:13px}
  .contourTagGroup p{font-size:12px}
  .contourDetailCard .executionChecklist{gap:10px}
  .contourDetailCard .completionCheck{font-size:9px}
  .contourMetric{padding-left:14px}
  footer{margin:0 24px}
}
@media(max-width:1000px){
  .contourHeader .siteNav,.contourHeader nav{gap:14px}
  .contourHeader .headerMeta{gap:10px}
  .contourHeader .siteNav a,.contourHeader nav a{font-size:11px}
  .contourHeader .ssiMark{font-size:31px}
  .contourSearchPanel{width:calc(100% - 40px);padding-left:18px;padding-right:18px}
  .contourQuickFilters>.filterField{padding:0 8px}
  .contourQuickFilters>.filterField select{font-size:12px}
  .contourMoreFiltersDetails>summary{font-size:12px}
  .contourDetailGrid{grid-template-columns:minmax(140px,.75fr) minmax(225px,1.2fr) minmax(180px,1fr);gap:14px}
  .contourBrandTitle{font-size:48px}
  .contourExecutionTitle{font-size:22px}
  .contourDetailCard .executionReview{justify-content:flex-start}
  .contourDetailCard .humanReviewHead{flex-wrap:nowrap}
  .contourDetailCard .reviewByline{font-size:9px}
  .contourMetric{padding-left:10px}
  .contourEngagement{gap:15px}
  .heroAdminGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cardGrid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
  .siteHeader.contourHeader{height:68px;min-height:68px;padding:0 20px;gap:18px;flex-wrap:nowrap}
  .contourHeader .brand{margin-right:auto}
  .contourHeader .headerMeta{margin-left:0;gap:10px}
  .contourHeader .siteNav,.contourHeader nav{position:absolute;top:calc(100% - 1px);left:12px;right:12px;display:none;flex-direction:column;align-items:stretch;gap:0;width:auto;height:auto;min-height:0;max-height:calc(100dvh - 88px);overflow:auto;padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:0 0 16px 16px;box-shadow:0 15px 40px #18342f14;flex-basis:auto;order:initial}
  .contourHeader .siteNav.is-open,.contourHeader nav.is-open{display:flex}
  .contourHeader .siteNav a,.contourHeader nav a{height:auto;min-height:45px;padding:12px 14px;border-radius:8px;font-size:14px}
  .contourHeader .siteNav a.active,.contourHeader nav a.active{background:var(--panel2)}
  .contourHeader .siteNav a.active::after,.contourHeader nav a.active::after{left:4px;right:auto;bottom:11px;top:11px;width:2px;height:auto}
  .mobileMenuToggle{display:grid;place-items:center}
  .contourDetailGrid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:20px}
  .contourGallery{grid-column:1;grid-row:1/span 2;border-left:0;border-right:1px solid var(--line2);padding-left:0;padding-right:20px}
  .contourFacts{grid-column:2;grid-row:1;padding:0}
  .contourFacts dl{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
  .contourFact{padding:11px 0;min-width:0}
  .contourFact:first-child{padding-top:11px}
  .contourClassification{grid-column:2;grid-row:2;padding:0}
  .contourTagGroup{padding:12px 0 15px}
  .contourTagGroup:first-child{padding-top:0}
  .contourThumbnails button{flex-basis:58px;width:58px;height:56px}
  .contourCarousel .contourImageStage{height:min(62dvh,600px)}
  .contourGalleryTools .secondaryLink{min-height:38px}
  .contourDetailHead{padding-left:60px;padding-right:60px}
  .contourEngagement{gap:12px}
  .contourEngagement h3{font-size:25px;flex-basis:100%;margin-bottom:5px}
  .contourMetric{padding-left:14px}
  .contourMetric:first-of-type{border-left:0;padding-left:0}
  .sportsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adminGroupSummary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .adminExecutionGrid,.accountMapGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  main{padding:24px 18px 36px}
  main.contourExecutions{padding-top:10px}
  .contourHero{height:280px;margin:0 -6px}
  .heroScene img,.heroCutout{object-position:50% 50%}
  .heroScene{clip-path:ellipse(54% 80% at 50% 100%)}
  .heroArc{left:-4%;width:108%;top:18%;height:167%}
  .heroRotationControl{bottom:40px;right:11px;font-size:10px;min-height:32px}
  .contourSearchPanel{width:calc(100% - 10px);margin-top:-34px;margin-bottom:24px;padding:8px 17px 0;border-radius:28px;box-shadow:0 0 0 4px rgba(251,249,245,.5)}
  .contourSearchRow{min-height:57px;gap:11px}
  .contourSearchRow input{font-size:16px;height:49px}
  .contourSearchRow .searchIcon{font-size:21px;flex-basis:21px}
  .contourSearchRow .searchIcon svg{width:22px;height:22px}
  .searchSubmit{width:42px;height:42px;min-height:42px;font-size:24px;margin-bottom:7px}
  .contourQuickFilters{grid-template-columns:repeat(2,minmax(0,1fr));padding:7px 0 4px;min-height:0}
  .contourQuickFilters>.filterField{padding:0 8px}
  .contourQuickFilters>.filterField select{min-height:44px;height:44px;font-size:13px}
  .contourQuickFilters>.filterField:nth-child(odd)::before{display:none}
  .contourQuickFilters>.filterField+.filterField::before{top:12px;bottom:12px}
  .contourMoreFiltersDetails{grid-column:1/-1;display:block;padding:0 8px;border-top:1px solid var(--line2);margin-top:3px}
  .contourMoreFiltersDetails>summary{justify-content:center;min-height:43px;font-size:12px}
  .contourAdvancedFilters{position:relative;right:auto;top:auto;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-height:60dvh;padding:17px 0 13px;margin:0;border:0;border-top:1px solid var(--line2);border-radius:0;box-shadow:none;background:transparent;gap:14px}
  .contourAdvancedFilters select,.contourAdvancedFilters input{font-size:14px;background:var(--panel);min-height:44px}
  .contourResultsHead{gap:12px;margin:27px 0 16px;align-items:center}
  .contourResultsHead h1{font-size:34px}
  .contourResultsHead>label,.contourResultsHead .contourSortControl{gap:5px;font-size:11px}
  #contourSort{max-width:145px;padding:9px 22px 9px 9px;font-size:11px;min-height:38px;border-radius:8px}
  .libraryMeta{font-size:11px;margin-bottom:14px}
  .tableActions{gap:6px}
  .tableActions .secondaryLink,.tableActions .primaryLink{min-height:36px;padding:8px 10px;font-size:11px}
  .libraryTableWrap,.dataWrap{border-radius:16px}
  .dataTable{font-size:12px}
  .dataTable th,.dataTable td{padding:13px}
  .contourTable{min-width:1060px}
  .contourBrand{font-size:23px}
  .modalBackdrop{padding:0;align-items:stretch;justify-content:stretch}
  .executionModalCard.contourDetailCard{display:block;width:100%;height:100dvh;max-height:100dvh;min-height:100dvh;margin:0;padding:20px 20px 88px;border:0;border-radius:0;box-shadow:none;overflow-y:auto;overscroll-behavior:contain}
  .contourDetailHead{padding:14px 38px 15px;min-height:0;margin-top:5px}
  .contourBrandTitle{font-size:40px;line-height:1.05;margin:0 0 6px;letter-spacing:-.025em}
  .contourExecutionTitle{font-size:20px;line-height:1.35;letter-spacing:-.025em}
  .detailArc{left:-4px;right:-4px;top:0;height:105px;clip-path:polygon(0 0,100% 0,100% 74%,91% 74%,83% 38%,17% 38%,9% 74%,0 74%)}
  .contourDetailTopActions{position:absolute;right:9px;top:8px;gap:4px;z-index:20}
  .contourDetailTopActions .ghostButton{font-size:11px;min-height:34px;padding:6px 10px}
  .contourDetailCard .modalClose{right:8px;top:8px;width:40px;height:40px;min-width:40px;min-height:40px;font-size:26px}
  .contourDetailTopActions .modalClose{position:static}
  .contourDetailCard .executionReview{justify-content:space-between;gap:8px 12px;padding:10px 0 14px;margin:0;min-height:44px}
  .contourReviewDetails{position:relative;flex-shrink:0}
  .contourReviewDetails>summary{display:list-item;cursor:pointer;font-size:11px;min-height:32px;line-height:32px}
  .contourReviewDetails[open] .executionChecklist{position:absolute;right:0;top:37px;z-index:25;display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:205px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 8px 26px #18342f20}
  .contourReviewDetails .executionChecklist .completionCheck{font-size:11px}
  .contourDetailCard .humanReviewHead{gap:7px}
  .contourDetailCard .humanReviewControl{font-size:11px;min-height:32px}
  .contourDetailCard .reviewByline{font-size:10px}
  .contourDetailCard .executionChecklist{gap:9px;justify-content:center;width:100%}
  .contourDetailCard .completionCheck{font-size:9px}
  .contourDetailCard .completionCheck.complete>span:first-child{width:12px;height:12px;font-size:9px}
  .contourDetailGrid{display:flex;flex-direction:column;gap:0;padding:18px 0 0;width:100%}
  .contourDetailGrid>*{width:100%;grid-column:auto;grid-row:auto}
  .contourGallery{order:1;padding:0 0 21px;border:0;border-bottom:1px solid var(--line2)}
  .contourFacts{order:2;padding:14px 0 0;border:0}
  .contourClassification{order:3;padding:20px 0 0;border:0}
  .contourCarousel .contourImageStage{width:100%;height:clamp(240px,calc(100dvh - 390px),520px);min-height:0;max-height:none;overflow:hidden;background:transparent;border-radius:9px}
  .contourCarousel .contourImageStage>.nativeMediaImg,.contourCarousel .contourImageStage img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
  .contourCarousel.is-portrait .contourImageStage img{width:auto;height:auto;max-height:100%}
  .contourCarousel.is-landscape .contourImageStage,.contourCarousel.is-square .contourImageStage{height:auto;min-height:0;max-height:none;aspect-ratio:auto}
  .contourCarousel.is-landscape .contourImageStage img,.contourCarousel.is-square .contourImageStage img{width:100%;height:auto;max-height:none}
  .contourMediaEmpty{min-height:280px;padding:24px}
  .contourMediaNavigation{gap:14px;min-height:52px;padding-top:10px}
  .contourMediaNavigation button,.contourCarousel .mediaArrow{min-width:44px;width:44px;height:44px;min-height:44px;font-size:24px}
  .contourMediaNavigation .mediaExpand{min-height:40px;height:40px;font-size:12px;width:auto;min-width:0}
  .contourThumbnails{padding-top:11px;justify-content:flex-start;overflow:auto}
  .contourThumbnails button{width:72px;height:70px;flex-basis:72px;min-height:70px}
  .contourGalleryTools{justify-content:flex-start;padding-top:12px}
  .contourGalleryTools .secondaryLink,.contourGalleryTools .ghostButton,.contourGallery .mediaControls .secondaryLink{min-height:40px;font-size:11px;padding:8px 11px}
  .contourGalleryTools small{text-align:left}
  .contourFacts dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
  .contourFact,.contourFact:first-child{padding:13px 0 15px;min-width:0}
  .contourFact dt{font-size:10px;line-height:1.4;letter-spacing:.05em;margin-bottom:5px}
  .contourFact dd{font-size:14px;line-height:1.5}
  .contourCampaign{padding-top:18px}
  .contourCampaign .currentMatch{padding:0 0 17px}
  .contourCampaign .currentMatch b{font-size:14px}
  .contourCampaign .currentMatch span{font-size:12px}
  .contourSource{padding-top:14px}
  .contourTagGroup{padding:17px 0 20px}
  .contourTagGroup:first-child{padding-top:0}
  .contourTagGroup h3{font-size:11px;letter-spacing:.045em}
  .contourTagGroup p{font-size:14px;line-height:1.65}
  .contourTagGroup .integrationTag{font-size:12px;min-height:34px;padding:7px 12px}
  .contourEditView .tagAdd select{font-size:16px;min-height:44px;padding:9px 11px}
  .contourEditView .tagAdd button{min-height:44px;font-size:12px}
  .contourEditView textarea{font-size:16px}
  .contourEditView .tagEditorHead h3,.contourEditView .creativeTaxonomy h3{font-size:16px}
  .contourEditView .taxonomyField select{font-size:16px}
  .contourEngagement{gap:15px 10px;margin-top:21px;padding:20px 0}
  .contourEngagement h3{font-size:30px;flex:0 0 100%;margin:0 0 2px}
  .contourMetric{flex:1 1 24%;min-width:0;padding-left:13px}
  .contourMetric:first-of-type{border-left:0;padding-left:0}
  .contourMetric small{font-size:10px}
  .contourMetric strong,.contourMetric b{font-size:19px}
  .contourEngagement .contourCapture,.contourEngagement>.muted,.contourEngagement>small{flex-basis:100%;font-size:11px;line-height:1.6}
  .contourDetailFooter{position:fixed;left:0;right:0;bottom:0;z-index:16;justify-content:stretch;flex-wrap:nowrap;gap:9px;margin:0;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line2);background:rgba(255,253,250,.98);backdrop-filter:blur(10px)}
  .contourDetailFooter .primaryLink,.contourDetailFooter .secondaryLink{flex:1;min-height:46px;min-width:0;font-size:13px;padding:11px 12px;white-space:nowrap}
  .contourDetailFooter .contourRecordID{display:none}
  .contourCampaignCard .contourDetailGrid{padding-top:18px}
  .contourCampaignCard .contourGallery{order:1}
  .contourCampaignCard .contourClassification{order:3}
  .contourLightboxToolbar{padding-top:max(10px,env(safe-area-inset-top));padding-left:12px;padding-right:12px;gap:10px;min-height:62px}
  .contourLightboxToolbar button{min-width:44px;min-height:44px}
  .contourLightboxStage{padding:10px}
  .contourLightboxFooter{gap:12px;padding:10px 12px max(10px,env(safe-area-inset-bottom))}
  .contourLightboxFooter>button,.contourLightboxFooter [data-zoom]{min-width:44px;min-height:44px}
  .contourLightboxFooter .primaryLink{min-height:44px;font-size:12px;padding:10px 13px}
  .cardGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .homeStats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .homeStat{padding:18px 20px;min-height:96px;border-bottom:1px solid var(--line2)}
  .homeStat:nth-child(2n){border-right:0}
  .homeStat:nth-last-child(-n+2){border-bottom:0}
  .sportDetailIntro{display:block}
  .sportDetailIntro .sportLogoStrip{justify-content:flex-start;max-width:none;padding:10px 0 20px}
  .sportFilters{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}
  .sportResearchGrid{grid-template-columns:1fr}
  .libraryIntro,.pageIntro{align-items:flex-start;padding-bottom:20px}
  .libraryIntro h1,.pageIntro h1,.detailHero h1{font-size:42px}
  .libraryIntro p,.pageIntro p{font-size:13px}
  .sectionTitle h2{font-size:31px}
  .filterPanel>.filterGrid,.filterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .heroAdminGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contourHeroAdmin{padding:20px}
  .heroFileFields{grid-template-columns:1fr}
  .heroSettingsRow{gap:14px}
  .heroSettingsRow>button{width:100%}
  .presenceStats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .presenceHead{flex-direction:column}
  footer{margin:0 18px;padding:20px 0;flex-wrap:wrap;gap:10px}
}
@media(max-width:480px){
  .siteHeader.contourHeader{padding:0 16px;height:64px;min-height:64px;gap:12px}
  .contourHeader .ssiMark{font-size:31px}
  .contourHeader .headerMeta{gap:5px}
  .contourHeader .headerMeta>a{font-size:11px}
  .contourAvatar{min-width:36px;width:36px;height:36px;font-size:11px}
  .contourHeader .syncBadge{font-size:12px;padding:0 5px}
  .mobileMenuToggle{width:38px;height:38px}
  main{padding-left:15px;padding-right:15px}
  .contourHero{height:245px;margin:0 -4px}
  .contourSearchPanel{width:100%;padding-left:14px;padding-right:14px;border-radius:25px}
  .contourSearchRow{gap:8px}
  .contourSearchRow input{font-size:16px}
  .contourQuickFilters>.filterField{padding-left:5px;padding-right:5px}
  .contourQuickFilters>.filterField select{font-size:12px}
  .contourResultsHead h1{font-size:31px}
  .contourResultsHead>label>span,.contourResultsHead .contourSortControl>span{display:none}
  #contourSort{max-width:137px;font-size:11px}
  .contourAdvancedFilters{grid-template-columns:1fr}
  .contourAdvancedFilters .filterField select,.contourAdvancedFilters .filterField input{font-size:16px}
  .executionModalCard.contourDetailCard{padding-left:16px;padding-right:16px}
  .contourDetailHead{padding-left:28px;padding-right:28px}
  .contourBrandTitle{font-size:38px}
  .contourExecutionTitle{font-size:19px;letter-spacing:-.025em}
  .contourDetailCard .executionChecklist{gap:6px}
  .contourDetailCard .completionCheck{font-size:8px}
  .contourDetailCard .humanReviewHead{flex-wrap:wrap;justify-content:center}
  .contourDetailCard .reviewByline{font-size:9px}
  .contourDetailGrid{padding-top:15px}
  .contourFacts dl{column-gap:16px}
  .contourThumbnails button{flex-basis:65px;width:65px;height:65px}
  .contourDetailFooter{margin-left:0;margin-right:0;padding-left:16px;padding-right:16px}
  .contourDetailFooter .primaryLink,.contourDetailFooter .secondaryLink{font-size:12px}
  .contourEngagement{gap:13px 7px}
  .contourMetric{padding-left:10px}
  .contourMetric small{font-size:9px;overflow-wrap:anywhere}
  .cardGrid,.sportsGrid,.entryGrid,.adminExecutionGrid,.accountMapGrid{grid-template-columns:1fr}
  .adminGroupSummary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .homeStat{padding:17px 16px}
  .heroAdminGrid{grid-template-columns:1fr}
  .heroAdminForm>button{width:100%}
  .contourHeroAdmin{padding:18px}
  .contourHeroAdmin h2{font-size:31px}
  .authCard{width:calc(100vw - 24px);padding:25px 20px;border-radius:18px}
  .authCard h2{font-size:37px}
  .authField input{font-size:16px}
  .presenceRow{grid-template-columns:8px minmax(0,1fr);gap:9px}
  .presenceRow>span:last-child{grid-column:2;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* v2.8.1: layered artwork, separate scroll body and always-visible controls. */
.contourHeroLayer.is-loading{opacity:0!important;transition:none}
.heroCutoutPicture{position:absolute;inset:0;display:block;z-index:2;pointer-events:none}
.heroCutoutPicture .heroCutout{z-index:auto}
.executionModalCard.contourDetailCard{display:flex;flex-direction:column;padding:0;overflow:hidden;min-height:0}
.contourDetailBody{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:18px 30px 0;scrollbar-width:thin;scrollbar-color:#c9c3b7 transparent}
.contourDetailCard>.contourDetailTopActions{position:relative;inset:auto;flex:0 0 auto;display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:12px 24px 3px;min-height:57px;background:var(--panel);z-index:12}
.contourDetailTopActions .modalClose{position:static;inset:auto;float:none;margin:0}
.contourDetailTopActions [data-contour-edit]{background:var(--panel);min-height:42px;min-width:58px}
.contourDetailBottom{position:relative;flex:0 0 auto;display:flex;align-items:center;gap:22px;padding:14px 30px 16px;border-top:1px solid var(--line);background:var(--panel);z-index:10}
.contourDetailBottom .contourEngagement{display:flex;align-items:center;gap:16px;flex:1;flex-wrap:nowrap;min-width:0;margin:0;padding:0;border:0}
.contourDetailBottom .contourEngagement h3{flex:0 0 auto;margin:0;font-size:28px}
.contourDetailBottom .contourEngagement>small{flex:0 0 auto;font-size:10px}
.contourDetailBottom .contourMetric{min-width:0;padding-left:16px}
.contourDetailBottom .contourDetailFooter{position:static;inset:auto;display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:9px;margin:0;padding:0;border:0;background:transparent;backdrop-filter:none}
.contourCampaignBottom{justify-content:flex-end}
.heroAdminForm>p,.contourHeroAdmin .membersHeader p{margin:8px 0 16px;font-size:13px;line-height:1.6;color:var(--muted)}
.heroAdminForm>label>input{width:100%;max-width:480px;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font:inherit}
.heroAdminItem>label{padding:0 14px;margin-top:8px;min-height:36px;line-height:1.4}
.heroUploadPreviewWrap{margin:18px 0 22px}
.heroUploadPreviewWrap figcaption{margin-bottom:9px;font-size:12px;color:var(--muted)}
.heroUploadPreview{position:relative;isolation:isolate;width:min(100%,760px);aspect-ratio:8/3;border-radius:12px;overflow:hidden;background:var(--bg)}
.heroUploadPreview .contourHeroLayer{transition:none}
@media(max-width:999px){
  .contourDetailBody{padding-left:24px;padding-right:24px}
  .contourDetailBottom{display:block;padding-left:24px;padding-right:24px}
  .contourDetailBottom .contourDetailFooter{margin-top:12px}
  .contourDetailBottom .contourEngagement h3{font-size:25px}
}
@media(max-width:760px){
  .executionModalCard.contourDetailCard{height:100dvh;max-height:100dvh;min-height:0;padding:0;overflow:hidden}
  .contourDetailCard>.contourDetailTopActions{padding:8px 14px 0;min-height:50px}
  .contourDetailBody{padding:14px 20px 0}
  .contourDetailHead{margin-top:0}
  .contourDetailBottom{padding:10px 20px max(10px,env(safe-area-inset-bottom))}
  .contourDetailBottom .contourEngagement{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 12px}
  .contourDetailBottom .contourEngagement h3{grid-column:1/3;grid-row:1;font-size:23px;line-height:1.1}
  .contourDetailBottom .contourEngagement>small{grid-column:3;grid-row:1;font-size:9px;line-height:1.25;text-align:right}
  .contourDetailBottom .contourMetric{grid-row:2;gap:2px;padding-left:10px}
  .contourDetailBottom .contourMetric:first-of-type{padding-left:0;border:0}
  .contourDetailBottom .contourMetric>span{font-size:9px;line-height:1.25}
  .contourDetailBottom .contourMetric>b{font-size:15px;line-height:1.2}
  .contourDetailBottom .contourDetailFooter{justify-content:stretch;margin-top:10px;padding:0}
  .contourDetailBottom .contourDetailFooter .primaryLink,.contourDetailBottom .contourDetailFooter .secondaryLink{flex:1;min-height:42px;white-space:nowrap;padding:10px 12px;font-size:12px}
  .contourCampaignBottom .contourDetailFooter{margin-top:0}
  .heroUploadPreview{border-radius:8px}
  .contourHeroAdmin .membersHeader{flex-wrap:wrap}
}
@media(max-width:480px){
  .contourDetailBody{padding-left:16px;padding-right:16px}
  .contourDetailBottom{padding-left:16px;padding-right:16px}
}


/* v2.8.2: wider serif, compact execution rows and a scalable artwork library. */
h1,h2,.contourBrandTitle,.cardBody h3,.entryCard h3,.sectionTitle h2{font-stretch:normal;letter-spacing:-.01em}
.contourTable tbody td,.contourCampaignTable tbody td{padding:10px 14px;line-height:1.4}
.contourTable th:first-child,.contourTable td:first-child{width:128px}
.contourTable .reviewTableCell{min-width:140px}
.dataTable .humanReviewBadge{white-space:nowrap;gap:5px;padding:4px 7px;line-height:1.3}
.humanReviewControl>span{white-space:nowrap}
.dataTable .reviewByline{display:block;max-width:155px;margin-top:3px;line-height:1.3}
.dataTable .rowSubtitle,.dataTable .rowCreativeMeta{margin-top:3px;line-height:1.35}
.rowExecutionTitle{line-height:1.35}
.contourHeroAdmin .membersHeader{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.contourHeroAdmin h2{font-size:29px;margin:0 0 5px}
.contourHeroAdmin .membersHeader p{margin:0;font-size:12px}
.heroManagerSection{border-top:1px solid var(--line2)}
.heroManagerSection>summary{display:flex;align-items:center;gap:14px;min-height:59px;padding:16px 0;cursor:pointer;list-style:none;font-size:14px;font-weight:500}
.heroManagerSection>summary::-webkit-details-marker{display:none}
.heroManagerSection>summary::before{content:'›';font-size:23px;line-height:1;width:15px;flex:0 0 15px;text-align:center;color:var(--muted);transition:transform .15s}
.heroManagerSection[open]>summary::before{transform:rotate(90deg)}
.heroManagerSection>summary>small{margin-left:auto;font-size:11px;font-weight:400;color:var(--muted);text-align:right}
.heroManagerContent{padding:0 0 20px}
.heroManagerContent.heroSettingsRow{margin:0;padding:0 0 20px;border-top:0}
.heroManagerContent .heroAdminForm{margin:0;padding:0;border-top:0}
.heroLibraryTools{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.35fr);gap:14px;margin:0 0 15px}
.heroLibraryTools input,.heroLibraryTools select{min-width:0;width:100%;font:inherit}
.heroAssetList{border:1px solid var(--line2);border-radius:12px;overflow:hidden}
.heroAssetRow{display:flex;align-items:flex-start;gap:16px;padding:0 14px;border-bottom:1px solid var(--line2)}
.heroAssetRow:last-child{border-bottom:0}
.heroAssetDetails{flex:1;min-width:0}
.heroAssetDetails>summary{display:flex;align-items:center;gap:13px;min-height:58px;padding:11px 0;cursor:pointer;list-style:none}
.heroAssetDetails>summary::-webkit-details-marker{display:none}
.heroAssetDetails>summary::before{content:'›';color:var(--muted);font-size:22px;line-height:1;flex:0 0 12px;transition:transform .15s}
.heroAssetDetails[open]>summary::before{transform:rotate(90deg)}
.heroAssetName{min-width:0;flex:1;overflow-wrap:anywhere;font-size:13px;font-weight:500}
.heroAssetState{flex:0 0 auto;color:var(--muted);font-size:11px;white-space:nowrap}
.heroAssetState.active{color:var(--green)}
.heroAssetToggle{display:flex;align-items:center;gap:7px;min-height:58px;flex:0 0 auto;font-size:11px;white-space:nowrap;cursor:pointer}
.heroAssetToggle input{width:17px;height:17px;margin:0;accent-color:var(--green)}
.heroAssetExpanded{padding:0 0 15px 25px}
.heroAssetExpanded .heroAdminPreview{max-width:680px;border-radius:8px;background:var(--bg)}
.heroAssetExpanded>small{display:block;margin-top:8px;color:var(--muted);font-size:11px}
.heroLibraryEmpty{margin:0;padding:22px;font-size:13px;color:var(--muted);text-align:center}
.heroLibraryPagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-size:12px;color:var(--muted)}
.heroLibraryPagination button{min-height:40px;white-space:nowrap}
.heroLibrarySave{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}
.heroLibrarySave>small{font-size:11px;color:var(--muted)}
.contourHeroAdmin #heroAdminStatus:empty{display:none}
@media(max-width:760px){
  .contourHeroAdmin{padding:18px}
  .contourHeroAdmin h2{font-size:26px}
  .heroLibraryTools{grid-template-columns:minmax(0,1fr) minmax(110px,.5fr);gap:9px}
  .heroManagerSection>summary{gap:8px;flex-wrap:wrap}
  .heroManagerSection>summary>small{max-width:52%;font-size:10px}
  .heroAssetRow{gap:9px;padding:0 11px}
  .heroAssetDetails>summary{display:grid;grid-template-columns:12px minmax(0,1fr);gap:2px 9px;min-height:62px}
  .heroAssetDetails>summary::before{grid-column:1;grid-row:1/3}
  .heroAssetName{grid-column:2;font-size:12px}
  .heroAssetState{grid-column:2;font-size:10px}
  .heroAssetToggle{min-height:62px;font-size:10px;gap:5px}
  .heroAssetExpanded{padding-left:0}
  .heroLibraryPagination{gap:7px;font-size:11px}
  .heroLibraryPagination button{font-size:11px;padding-left:10px;padding-right:10px}
  .heroLibrarySave{flex-wrap:wrap}
}


/* v2.8.3: compact assignment and a circular header with a measured brand gap. */
.contourDetailHead{padding:6px 36px 20px;min-height:155px}
.contourBrandTitle{margin-left:auto;margin-right:auto;max-width:calc(100% - 32px);overflow-wrap:anywhere}
.contourBrandTitle.isLongBrand{font-size:46px;text-wrap:balance}
.contourExecutionTitle{position:relative;z-index:1;width:fit-content;max-width:var(--detail-copy-width,70%);margin-left:auto;margin-right:auto;padding:0;font-size:20px;line-height:1.35;background:transparent}
.detailArc{inset:0;display:block;width:100%;height:100%;border:0;border-radius:0;clip-path:none;overflow:hidden;color:var(--accent)}
.detailArc svg{display:block;width:100%;height:100%;overflow:hidden}
.detailArc path{fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;vector-effect:non-scaling-stroke}
.contourCampaign:empty{display:none}
.contourFacts .campaignMatcher{margin:14px 0 0;padding:0;border:1px solid var(--line2);border-radius:8px;background:transparent;overflow:hidden}
.contourFacts .campaignMatcher[hidden]{display:none}
.campaignMatcher>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;padding:10px 12px;list-style:none;cursor:pointer;font-size:13px;font-weight:500}
.campaignMatcher>summary::-webkit-details-marker{display:none}
.campaignMatcher>summary::after{content:'+';color:var(--muted);font-size:18px;line-height:1;font-weight:400}
.campaignMatcher[open]>summary::after{content:'−'}
.contourCampaignPicker{padding:0 9px 9px}
.contourCampaignPicker input{display:block;width:100%;min-width:0;min-height:38px;padding:8px 10px;margin:0 0 7px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);font:inherit;font-size:13px;box-sizing:border-box}
.contourCampaignPicker .campaignResults{gap:0;max-height:177px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.contourCampaignPicker .campaignCandidate{width:100%;min-width:0;min-height:54px;gap:9px;padding:8px 5px;border:0;border-bottom:1px solid var(--line2);border-radius:0;background:transparent;box-shadow:none;text-align:left}
.contourCampaignPicker .campaignCandidate:last-child{border-bottom:0}
.contourCampaignPicker .campaignCandidate:hover{background:var(--panel2)}
.contourCampaignPicker .campaignCandidate>span{min-width:0;flex:1;gap:3px}
.contourCampaignPicker .campaignCandidate b,.contourCampaignPicker .campaignCandidate small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.35}
.contourCampaignPicker .campaignCandidate b{font-size:12px;font-weight:500}
.contourCampaignPicker .campaignCandidate small{font-size:10px}
.contourCampaignPicker .campaignCandidate em{flex:0 0 auto;font-size:10px;font-weight:400}
.contourCampaignPicker .muted{font-size:12px;margin:9px 5px}
.contourUnassigned{margin:14px 0 0;font-size:12px;color:var(--muted)}
@media(max-width:760px){
  .contourDetailHead{padding:7px 16px 18px;min-height:133px}
  .contourBrandTitle{max-width:calc(100% - 48px)}
  .contourBrandTitle.isLongBrand{font-size:32px;line-height:1.1}
  .contourExecutionTitle{max-width:var(--detail-copy-width,85%);padding:0;font-size:18px}
  .contourCampaignPicker input{font-size:16px}
}

/* v2.8.4: broad header arch follows the annotated reference, with a brand gap. */
