/* HIR: existing logo anchors, local typefaces and monochrome palette retained. */
:root{--hir-ink:#101010;--hir-paper:#fff;--hir-secondary:#555;--hir-surface:#f5f5f5;--hir-rule:#dedede;--hir-fast:140ms;--hir-control:220ms;--hir-ease-out:cubic-bezier(.22,.61,.36,1)}
body.commerce-scene{--line:var(--hir-rule);--muted:var(--hir-secondary);background:var(--hir-paper);color:var(--hir-ink)}
body.commerce-scene ::selection{background:var(--hir-ink);color:var(--hir-paper)}
body.roster-site ::selection{background:#e1e4e8;color:#101010}
body.commerce-scene :is(input,textarea){caret-color:var(--hir-ink)}
body.commerce-scene :is(input,textarea)::placeholder{color:#686868;opacity:1}
body.commerce-scene :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--hir-ink);outline-offset:5px;transition:none;text-shadow:none}
body.roster-site :is(a,button,input):focus-visible{outline:2px solid #e1e4e8;outline-offset:5px;transition:none}
body.commerce-scene :is(.shop-page,.portal-page){scrollbar-color:#a6a6a6 transparent;scrollbar-gutter:stable}
body.commerce-scene :is(.portal-panel,.admin-stats>div,.admin-quick>button){background:var(--hir-paper);box-shadow:none;backdrop-filter:none}
body.commerce-scene :is(.portal-panel>p,.portal-row p,.portal-benefits p,.directory-intro,.own-store-empty p){font-size:15px;line-height:1.75;max-width:70ch}
body.commerce-scene :is(.store-small,.portal-panel small,.admin-stats small){font-size:12px;line-height:1.65}
body.commerce-scene :is(.portal-heading h1,.own-store-heading h1,.admin-section-title h2){letter-spacing:-.035em;text-wrap:balance}
body.commerce-scene :is(.pill,.text-button,.shop-filters button){min-height:44px;transition:background-color var(--hir-control) var(--hir-ease-out),border-color var(--hir-control) var(--hir-ease-out),transform var(--hir-fast) var(--hir-ease-out);text-underline-offset:5px}
body.commerce-scene .pill{font-size:13px!important;border-color:#aaa}
body.commerce-scene :is(.pill,.shop-filters button):active:not(:disabled){transform:scale(.985)}
body.commerce-scene :is(.pill,.portal-tabs button):disabled{opacity:1;color:#666;background:#f3f3f3;border-color:#ddd}
body.commerce-scene .admin-form :is(input:not([type=checkbox]),textarea,select):disabled{opacity:1;color:#666;-webkit-text-fill-color:#666;background:#f3f3f3;border-color:#ddd}
body.commerce-scene :is(.admin-stats strong,.admin-table,.portal-row strong,.mission-score){font-variant-numeric:tabular-nums}
body.commerce-scene .admin-table th{background:var(--hir-paper);color:#555;font-weight:500}
body.commerce-scene :is(.portal-tabs,.report-tabs){gap:4px}
body.commerce-scene :is(.portal-tabs button,.report-tabs button){min-height:44px;padding:14px 12px;font-size:13px;line-height:1.4;transition:background-color var(--hir-control) var(--hir-ease-out)}
body.commerce-scene :is(.portal-tabs button[aria-pressed=true],.report-tabs button[aria-pressed=true]){background:var(--hir-surface)}
body.commerce-scene .admin-stats{gap:0;border-block:1px solid var(--hir-rule)}
body.commerce-scene .admin-stats>div{padding:24px 18px;border:0;border-right:1px solid var(--hir-rule);margin:0;min-width:0}
body.commerce-scene .admin-stats>div:last-child{border-right:0}
body.commerce-scene .admin-stats span{font-size:13px;line-height:1.55}
body.commerce-scene .admin-stats strong{font-size:32px;font-weight:500;letter-spacing:-.035em;margin:18px 0 12px}
body.commerce-scene .admin-stats small{color:#555}
body.commerce-scene .promoter-page>.portal-wrap>.portal-heading h1{font:500 clamp(26px,3vw,38px)/1.15 var(--sans);letter-spacing:-.035em}
body.commerce-scene .store-alert{background:#f7f7f7;border-color:#888;color:var(--hir-ink)}
body.commerce-scene .shop-result{font:400 13px/1.6 var(--sans)}
body.commerce-scene .own-store-heading{padding:0 0 20px;border:0;align-items:flex-end;gap:40px}
body.commerce-scene .own-store-heading h1{font-size:clamp(38px,4.8vw,68px);margin:0;line-height:1.04}
body.commerce-scene .own-store-heading>p{font-size:15px;max-width:31ch;line-height:1.75}
body.commerce-scene .shop-discovery-nav{margin:0 0 18px;padding:8px 0;border:0;gap:12px 28px;font-size:13px;letter-spacing:.015em;line-height:1.5}
body.commerce-scene .own-store .shop-catalog{padding-top:0}
body.commerce-scene .shop-discovery-nav>a{display:inline-flex;align-items:center;min-height:36px}
body.commerce-scene .shop-filters{gap:4px 8px;padding:8px 0 18px;border-bottom:0}
body.commerce-scene .shop-filters button{padding:10px 14px;font-size:13px;letter-spacing:.02em;text-transform:none;border:0;border-radius:0}
body.commerce-scene .shop-filters button[aria-pressed=true]{background:var(--hir-ink);color:var(--hir-paper);text-shadow:none}
body.commerce-scene .catalog-search{margin:0 0 32px;gap:20px}
body.commerce-scene .catalog-search label{font-size:12px;letter-spacing:0;text-transform:none;gap:9px}
body.commerce-scene .catalog-search :is(input,select){min-height:46px;font-size:15px;border-color:#aaa;padding:12px 14px}
body.commerce-scene .own-store-empty{padding:26px 0 32px;border:0}
body.commerce-scene .own-store-empty h2{font-size:clamp(24px,2.5vw,34px);line-height:1.2;margin:0 0 16px;letter-spacing:-.035em}
body.commerce-scene .artist-entry-list{display:flex;flex-direction:column;margin-top:28px;gap:10px}
body.commerce-scene .artist-entry{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:28px;align-items:center;padding:24px;background:var(--hir-surface);min-height:110px}
body.commerce-scene .artist-entry img{width:120px;height:52px;object-fit:contain;filter:invert(1)}
body.commerce-scene .artist-entry h3{font-size:24px;font-weight:500;margin:0 0 8px;letter-spacing:-.03em}
body.commerce-scene .artist-entry p{font-size:13px;line-height:1.6;margin:0;color:#555}
body.commerce-scene .artist-entry>span{font-size:13px;white-space:nowrap}
body.commerce-scene .own-store-info{margin-top:36px;gap:40px}
body.commerce-scene .own-store-info h3{font-size:20px;line-height:1.2;margin:0 0 16px;letter-spacing:-.025em}
body.commerce-scene .own-store-info p{font-size:14px;line-height:1.75}
body.commerce-scene .own-store-info a{font-size:13px;min-height:36px;display:inline-flex;align-items:center}
body.commerce-scene .ticket-catalog{padding:12px 0 28px;margin-bottom:20px}
body.commerce-scene .ticket-catalog .admin-section-title{margin:0 0 20px}
body.commerce-scene .ticket-catalog h2{font:500 clamp(23px,2.5vw,32px)/1.2 var(--sans);letter-spacing:-.03em}
body.commerce-scene .ticket-catalog .own-store-empty{padding:0}
body.commerce-scene .shop-footer{font-size:12px;letter-spacing:0;padding-top:40px;gap:18px 28px}
/* Logo/account positions are intentionally not overridden. */
body.roster-site #main-menu nav a{min-height:34px}
body.roster-site .main-menu nav a[aria-current=page]{color:#fff}
body.roster-site .artist-page-title{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.roster-site .artist-meta{font-size:11px;line-height:1.5;letter-spacing:.07em}
body.roster-site .artist-bio p{font-size:16px;line-height:1.7;color:#e0e2e5;max-width:58ch}
body.roster-site .artist-bio h2{font-size:30px;margin:12px 0 16px;letter-spacing:-.025em}
body.roster-site .artist-bio>a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;letter-spacing:.03em}
body.roster-site .artist-row{gap:36px;border-color:#ffffff24;padding-bottom:28px}
body.roster-site .text-section>p{font-size:17px;line-height:1.75;color:#e0e2e5;max-width:64ch}
body.roster-site .section-detail h2{font-size:14px;letter-spacing:.04em;line-height:1.4}
body.roster-site .section-detail p{font-size:14px;line-height:1.75;color:#e0e2e5}
body.roster-site .section-detail a{font-size:12px;letter-spacing:0;min-height:44px}
body.roster-site .section-index{display:none}
body.roster-site .text-section>small{font-size:11px;line-height:1.7;letter-spacing:.06em}
body.roster-site .roster-footer{font-size:10px;letter-spacing:.12em}
@media(hover:hover) and (pointer:fine){
 body.commerce-scene .pill:hover{background:var(--hir-surface);border-color:var(--hir-ink);text-shadow:none}
 body.commerce-scene .shop-filters button:not([aria-pressed=true]):hover{background:#eee}
 body.commerce-scene .artist-entry{transition:background-color var(--hir-control) var(--hir-ease-out)}
 body.commerce-scene .artist-entry:hover{background:#eaeaea}
}
@media(max-width:1100px){body.commerce-scene .artist-entry{grid-template-columns:110px minmax(0,1fr);gap:20px}body.commerce-scene .artist-entry>span{grid-column:2}body.commerce-scene .artist-entry img{width:100px;grid-row:span 2}}
@media(max-width:680px){
 body.roster-site #main-menu nav a{font-size:11px!important;min-height:44px;letter-spacing:.03em!important}
 body.roster-site .main-menu nav{gap:7px!important;max-height:calc(100dvh - 205px);overflow-y:auto}
 body.roster-site .artist-meta{font-size:11px;letter-spacing:0}
 body.roster-site .artist-bio h2{font-size:25px}
 body.roster-site .artist-bio p,body.roster-site .text-section>p{font-size:14px;line-height:1.75}
 body.roster-site .artist-row{gap:18px;padding-bottom:24px}
 body.roster-site .section-detail p{font-size:14px;line-height:1.7}
 body.roster-site .text-section h1{font-size:clamp(25px,6.4vw,36px);line-height:1.12;letter-spacing:-.035em}
 body.roster-site .artist-bio>a{font-size:12px;letter-spacing:0}
 body.commerce-scene .own-store-heading{padding:0 0 24px}
 body.commerce-scene .own-store-heading h1{font-size:clamp(25px,6.5vw,42px)}
 body.commerce-scene .own-store-heading>p{margin-top:20px;font-size:14px;line-height:1.7}
 body.commerce-scene .shop-discovery-nav{gap:4px 18px;margin:0 0 24px;padding:0;font-size:12px}
 body.commerce-scene .shop-filters{gap:4px;padding:0 0 18px}
 body.commerce-scene .shop-filters button{font-size:12px;padding:10px 12px}
 body.commerce-scene .catalog-search{gap:18px;margin-bottom:24px}
 body.commerce-scene .catalog-search label{font-size:12px}
 body.commerce-scene .catalog-search :is(input,select){font-size:16px}
 body.commerce-scene .own-store-empty h2{font-size:25px}
 body.commerce-scene .artist-entry{grid-template-columns:1fr;padding:20px;gap:16px}
 body.commerce-scene .artist-entry img{grid-row:auto;width:110px;height:44px}
 body.commerce-scene .artist-entry>span{grid-column:auto}
 body.commerce-scene .artist-entry h3{font-size:25px}
 body.commerce-scene .own-store-info{gap:32px;margin-top:32px}
 body.commerce-scene .promoter-page .admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.commerce-scene .promoter-page .admin-stats>div{padding:18px 12px;border:0;border-bottom:1px solid var(--hir-rule)}
 body.commerce-scene .promoter-page .admin-stats>div:nth-child(odd){border-right:1px solid var(--hir-rule)}
 body.commerce-scene .promoter-page .admin-stats>div:nth-last-child(-n+2){border-bottom:0}
 body.commerce-scene .promoter-page .admin-stats span{font-size:13px}
 body.commerce-scene .promoter-page .admin-stats small{font-size:12px}
 body.commerce-scene :is(.portal-tabs button,.report-tabs button){font-size:13px;min-height:46px}
 body.commerce-scene .portal-panel{padding:22px 16px}
}
@media(prefers-reduced-motion:reduce){
 body.commerce-scene :is(.pill,.text-button,.shop-filters button,.artist-entry,.portal-tabs button){transition:none;transform:none}
 body.commerce-scene :is(.pill,.shop-filters button):active:not(:disabled){transform:none}
}
body.commerce-scene :is(.pill,.text-button,.shop-filters button):focus-visible{transition:none;transform:none}
