:root{
  --bg:#f4f3ef;--panel:#fffdf8;--ink:#171513;--muted:#6f6a63;--line:#e4ded4;
  --brand:#173f35;--brand2:#bf6b39;--cream:#f8efe2;--good:#e6f5ed;--warn:#fff2d8;--bad:#ffe5df;
  --shadow:0 18px 46px rgba(30,22,12,.08);--radius:24px
}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#fbf9f4,var(--bg));color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.topbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 28px;background:rgba(255,253,248,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-weight:900;text-decoration:none;color:var(--ink);white-space:nowrap}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;background:var(--brand);color:white;font-size:12px;letter-spacing:.08em}.main-nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.main-nav a{padding:8px 11px;border-radius:999px;color:var(--muted);text-decoration:none;font-weight:750}.main-nav a:hover{background:var(--cream);color:var(--brand)}a{color:var(--brand);font-weight:750;text-decoration:none}.shell{max-width:1320px;margin:0 auto;padding:34px 24px 80px}.hero,.page-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:24px}.control-head{align-items:center}.hero{min-height:66vh;align-items:center}.hero h1,.page-head h1,.client-hero h1{font-size:clamp(34px,5vw,66px);line-height:.94;letter-spacing:-.058em;margin:0 0 16px}.page-head h1{font-size:clamp(32px,4vw,58px);max-width:850px}.client-hero{padding:42px;border-radius:32px;background:radial-gradient(circle at top right,#f5d7be,transparent 34%),var(--panel);box-shadow:var(--shadow);margin-bottom:24px}.client-hero.polished{text-align:left;background:radial-gradient(circle at top right,#ebd0b8,transparent 34%),linear-gradient(135deg,#fffdf8,#f9f0e4)}.lede,.page-head p,.client-hero p{max-width:760px;color:var(--muted);font-size:18px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:900;color:var(--brand2);margin:0 0 12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);overflow:auto;margin-bottom:18px}.subtle{background:#fffaf0}.login{width:min(390px,100%)}.stack{display:grid;gap:12px}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.button,button{border:0;border-radius:999px;background:var(--brand);color:#fff;padding:11px 16px;font-weight:850;cursor:pointer;display:inline-block;line-height:1.1}.button.primary{background:var(--brand2)}.button.dark{background:#191715}.danger-button{background:#8f2e1c}.link-button{background:transparent;color:var(--brand);padding:0}.button:hover,button:hover{filter:brightness(1.05)}input,select{width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;padding:11px 12px;font:inherit}label{font-weight:800}.inline-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px}.grid-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar a{padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:999px}.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:18px 0}.metric{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow);min-height:130px}.metric span{display:block;color:var(--muted);font-weight:850;font-size:13px}.metric strong{display:block;font-size:32px;letter-spacing:-.045em;margin:8px 0 3px}.metric small{color:var(--muted)}.metric.good{background:var(--good)}.metric.warn{background:var(--warn)}.metric.bad{background:var(--bad)}.statement-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.status-banner{display:flex;justify-content:space-between;gap:20px;align-items:center;border:1px solid var(--line);border-radius:28px;padding:20px 22px;box-shadow:var(--shadow);margin-bottom:18px}.status-banner p{margin:3px 0 0;color:var(--muted)}.status-banner.is-ready{background:var(--good)}.status-banner.needs-review{background:var(--bad)}.status-dot{display:inline-block;width:12px;height:12px;border-radius:99px;background:var(--brand2);margin-right:8px}.is-ready .status-dot{background:#11824c}.workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.workflow-card{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow)}.workflow-card b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--cream);margin-bottom:12px}.workflow-card h3{margin:0 0 6px;font-size:18px}.workflow-card p{color:var(--muted);margin:0 0 12px}.workflow-card.done b{background:var(--good)}.workflow-card.attention b{background:var(--warn)}.workflow-card.locked{opacity:.82}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin:18px 0}.two-col.balanced{grid-template-columns:1fr 1fr}.card-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.helper{color:var(--muted);font-size:14px;margin:0 0 14px}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}.mini-alert{background:var(--warn);border:1px solid var(--line);border-radius:15px;padding:12px;margin-bottom:12px}.notice{border:1px solid var(--line);border-radius:18px;padding:16px;margin:18px 0}.warn{background:var(--warn)}.client-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.client-card{border:1px solid var(--line);border-radius:20px;padding:18px;background:#fff}.client-card h3{margin:0 0 4px;font-size:22px;letter-spacing:-.03em}.client-totals{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.client-totals span{background:var(--cream);border-radius:999px;padding:6px 9px;font-size:13px;font-weight:750}.client-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.client-actions a{border:1px solid var(--line);border-radius:999px;padding:8px 10px;background:#fff}.assign-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px;min-width:280px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}td span{color:var(--muted)}.compact-table{min-width:620px}.num{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-block;padding:5px 8px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:850}.pill.imported{background:var(--good)}.pill.error{background:var(--bad)}.pill.excluded{background:#eee}.faded{opacity:.55;background:#f7f4ee}h2{margin:0 0 12px;font-size:22px;letter-spacing:-.025em}h3{letter-spacing:-.02em}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(3,1fr)}.workflow-grid{grid-template-columns:repeat(2,1fr)}.two-col,.two-col.balanced{grid-template-columns:1fr}.client-card-grid{grid-template-columns:1fr}.page-head{display:block}.actions{margin-top:16px}}@media(max-width:720px){.topbar{align-items:flex-start;flex-direction:column}.metric-grid,.statement-metrics{grid-template-columns:1fr}.workflow-grid{grid-template-columns:1fr}.grid-form,.inline-form,.assign-form{grid-template-columns:1fr}.hero{display:block}.card{padding:18px}.shell{padding:24px 14px 60px}}
button.secondary{background:#fff;color:var(--brand);border:1px solid var(--line)}.ghost{background:#fff;color:var(--brand);border:1px solid var(--line)}.filter-card{overflow:visible}.filter-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:end}.filter-grid label{font-size:13px;color:var(--muted);display:grid;gap:6px}.filter-actions{display:flex;gap:8px;align-items:center}.viz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.viz-card{overflow:visible}.bar-row{display:grid;grid-template-columns:145px 1fr 110px;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink);font-weight:700}.bar-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink)}.bar-row b{display:block;height:11px;min-width:3px;border-radius:99px;background:linear-gradient(90deg,var(--brand2),var(--brand))}.bar-row em{text-align:right;color:var(--muted);font-style:normal;font-variant-numeric:tabular-nums;font-size:13px}.metric strong{overflow-wrap:anywhere}.client-hero+.metric-grid{margin-top:18px}@media(max-width:1050px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.viz-grid{grid-template-columns:1fr}}@media(max-width:720px){.filter-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:1fr}.bar-row em{text-align:left}}
.link-strong{display:block;color:var(--ink);font-weight:800}.link-strong:hover{color:var(--brand2)}.button.small{padding:8px 11px;font-size:13px}.button.secondary{background:#fff;color:var(--brand);border:1px solid var(--line)}.mini-details{margin-top:8px}.mini-details summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:800}.block{display:block;margin-top:8px}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.definition-list{display:grid;gap:10px;margin:0}.definition-list div{display:grid;grid-template-columns:150px 1fr;gap:10px;border-bottom:1px solid var(--line);padding-bottom:9px}.definition-list dt{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.definition-list dd{margin:0;font-weight:760}.callout-text{background:var(--warn);border:1px solid var(--line);border-radius:16px;padding:12px;margin:0 0 10px}.action-box{border:1px solid var(--line);border-radius:18px;padding:13px;background:#fff}.action-box summary{cursor:pointer;font-weight:900}.stacked-form{display:grid;gap:10px;margin-top:12px}.table-scroll{overflow:auto;max-width:100%}.table-scroll.wide table{min-width:1700px}.pill.warning{background:var(--warn)}
@media(max-width:900px){.grid.two{grid-template-columns:1fr}.definition-list div{grid-template-columns:1fr}}
.period-card{overflow:visible}.period-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.period-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;color:var(--ink);font-weight:900}.period-tab.active{background:var(--brand);color:#fff;border-color:var(--brand)}.advanced-filters summary{cursor:pointer;font-weight:900;color:var(--brand);margin:8px 0 14px}.client-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-metric strong{font-size:38px}.territory-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:420px;overflow:auto}.country-chip{display:flex;justify-content:space-between;gap:8px;align-items:center;border:1px solid var(--line);background:linear-gradient(135deg,#fff,#fff8ec);border-radius:16px;padding:10px;color:var(--ink)}.country-chip:hover{border-color:var(--brand2);box-shadow:0 8px 20px rgba(132,74,42,.10)}.country-chip span{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.by-date{grid-template-columns:180px 1fr 120px}.mini-currency-form{display:flex;gap:8px;margin:10px 0}.mini-currency-form select{max-width:100px}.small,button.small{padding:8px 11px;font-size:13px}.pill.held{background:var(--warn)}.pill.zero_value,.pill.source_data_exception{background:#eef2f8}.admin-adjustment-card{background:#fffaf0}.client-facing-note{font-size:13px;color:var(--muted)}@media(max-width:1050px){.client-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.territory-map{grid-template-columns:1fr}}@media(max-width:720px){.client-summary{grid-template-columns:1fr}.period-tabs{display:grid}.by-date{grid-template-columns:1fr}.country-chip{display:block}}

.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related-pill{border:1px solid var(--line);background:#fff;border-radius:18px;padding:14px}.related-pill strong{display:block;font-size:17px}.related-pill span,.related-pill em{display:block;color:var(--muted);font-style:normal;font-size:13px;margin-top:4px}.world-map-graphic{position:relative;height:260px;border-radius:24px;border:1px solid var(--line);background:radial-gradient(circle at 26% 43%,rgba(191,107,57,.18) 0 8%,transparent 9%),radial-gradient(circle at 53% 42%,rgba(23,63,53,.16) 0 10%,transparent 11%),radial-gradient(circle at 82% 56%,rgba(191,107,57,.14) 0 12%,transparent 13%),linear-gradient(180deg,#eef5f1,#fff8ec);overflow:hidden;margin-bottom:12px}.world-map-graphic:before{content:"";position:absolute;inset:16px;border:1px dashed rgba(23,63,53,.18);border-radius:42% 50% 44% 48%;transform:rotate(-2deg)}.map-dot{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:var(--brand);color:white;font-size:10px;font-weight:900;border:2px solid #fff;box-shadow:0 8px 22px rgba(0,0,0,.18)}.map-dot:hover{background:var(--brand2);scale:1.08}.territory-map-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:310px;overflow:auto}.client-summary{grid-template-columns:1.4fr 1fr .75fr}.statement-metrics .hero-metric{min-height:145px}@media(max-width:900px){.related-grid,.territory-map-list{grid-template-columns:1fr}.world-map-graphic{height:220px}.client-summary{grid-template-columns:1fr}}

/* V3.6 client portal polish */
.fx-note span{display:block;margin-top:4px}.related-pill b{display:block;margin-top:8px;font-size:22px;letter-spacing:-.03em}.world-map-graphic{height:300px;background:linear-gradient(180deg,#edf5f2,#fff8ec)}.world-map-svg{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);opacity:.72}.world-map-svg path{fill:#d9e5db;stroke:#b7cbbb;stroke-width:.6}.map-dot{width:auto;min-width:28px;height:24px;padding:0 7px;font-size:9px;white-space:nowrap;max-width:96px;overflow:hidden;text-overflow:ellipsis}.map-dot span{display:block;max-width:82px;overflow:hidden;text-overflow:ellipsis}.territory-card .country-chip strong{font-weight:850}.territory-card .country-chip span{font-variant-numeric:tabular-nums}.client-summary .metric small{line-height:1.35}.warn table{background:#fff}
/* V3.7 client portal refinements */
.compact-card table,.compact-table{font-size:14px}.compact-table th,.compact-table td{padding:9px 10px}.compact-table .muted{font-size:12px;color:var(--muted)}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0}.activity-grid article{border:1px solid var(--line);border-radius:18px;background:#fff;padding:14px}.activity-grid span{display:block;color:var(--muted);font-size:13px}.activity-grid strong{display:block;font-size:28px;letter-spacing:-.04em;margin-top:3px}.world-map-graphic{height:340px;border:1px solid rgba(23,63,53,.22);background:linear-gradient(180deg,#dbeae9 0%,#f7fbf9 48%,#fff8ec 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);position:relative}.world-map-svg{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);opacity:1}.world-map-svg .ocean{fill:#dcebea}.world-map-svg .land{fill:#9bbda8;stroke:#6f927e;stroke-width:.65}.map-dot{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border-radius:999px;background:#173f35!important;border:2px solid #fff;color:#fff!important;box-shadow:0 8px 18px rgba(0,0,0,.25);font-size:12px!important;line-height:1}.map-dot span{display:grid;place-items:center;max-width:none!important;overflow:visible!important;text-overflow:clip!important}.map-dot:hover{background:#bf6b39!important;transform:translate(-50%,-50%) scale(1.1)!important}.territory-map-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:360px}.related-pill b{font-size:24px}.fx-note span{line-height:1.35}.client-summary{grid-template-columns:1.25fr .95fr 1fr}.statement-metrics .metric small{max-width:100%}@media(max-width:900px){.activity-grid{grid-template-columns:1fr}.client-summary{grid-template-columns:1fr}.territory-map-list{grid-template-columns:1fr}.world-map-graphic{height:260px}}

/* V3.8 client portal refinements */
.slim-summary{grid-template-columns:1.45fr 1fr!important}.slim-summary .metric{min-height:132px}.statement-timing-metric strong{font-size:30px}.dense-table{font-size:13px;min-width:560px}.dense-table th,.dense-table td{padding:7px 9px}.top-tracks-card .compact-table{min-width:540px}.dsp-activity-card h2{margin-bottom:0}.activity-grid article strong{font-size:24px}.territory-card{grid-column:1 / -1}.choropleth-map{position:relative;height:430px;border:1px solid rgba(23,63,53,.22);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#dfeeee 0%,#eef7f4 55%,#fff8ec 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);margin-bottom:14px}.map-backdrop{position:absolute;inset:16px}.continent{position:absolute;display:block;background:rgba(117,150,126,.22);border:1px solid rgba(23,63,53,.18);filter:blur(.1px)}.continent.north-america{left:6%;top:20%;width:28%;height:25%;border-radius:55% 35% 45% 50%;transform:rotate(-12deg)}.continent.south-america{left:25%;top:52%;width:12%;height:32%;border-radius:45% 55% 65% 45%;transform:rotate(-18deg)}.continent.europe{left:45%;top:22%;width:17%;height:18%;border-radius:48% 40% 50% 44%;transform:rotate(-7deg)}.continent.africa{left:49%;top:43%;width:18%;height:27%;border-radius:50% 45% 55% 60%;transform:rotate(-14deg)}.continent.asia{left:63%;top:25%;width:29%;height:26%;border-radius:45% 50% 45% 45%;transform:rotate(10deg)}.continent.oceania{left:74%;top:67%;width:20%;height:15%;border-radius:50%;transform:rotate(14deg)}.map-country{position:absolute;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:48px;height:34px;padding:3px 7px;border:1.5px solid rgba(23,63,53,.52);border-radius:10px;color:#fff;text-decoration:none;box-shadow:0 10px 22px rgba(17,32,25,.18);transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease}.map-country span{font-weight:950;font-size:12px;line-height:1;color:#fff}.map-country small{font-size:9px;line-height:1;color:rgba(255,255,255,.92);white-space:nowrap}.map-country.heat-1{background:#8fac99}.map-country.heat-2{background:#739980}.map-country.heat-3{background:#4f7f68}.map-country.heat-4{background:#2f644f}.map-country.heat-5{background:#173f35}.map-country:hover,.map-country:focus{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 16px 34px rgba(17,32,25,.25);border-color:#fff;z-index:5}.territory-map-list .country-chip.heat-5{background:#173f35;color:#fff}.territory-map-list .country-chip.heat-5 span{color:#fff}.territory-map-list .country-chip.heat-4{background:#e5f0e9}.territory-map-list .country-chip.heat-3{background:#eef5ef}.territory-map-list .country-chip.heat-2{background:#f7f8f2}.period-card{margin-bottom:18px}.metric.hero-metric small{font-size:13px}.compact-card .card-title-row{gap:10px}.compact-card .button.small{white-space:nowrap}@media(max-width:900px){.slim-summary{grid-template-columns:1fr!important}.choropleth-map{height:310px}.map-country{min-width:38px;height:30px}.map-country small{display:none}}

/* V3.9 client portal accounting + map refinements */
.insights-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:18px;align-items:start;margin:18px 0}.insights-left{display:grid;grid-template-columns:1fr;gap:18px}.territory-card{grid-column:auto!important}.real-territory-map{height:430px;border:1px solid rgba(23,63,53,.2);border-radius:24px;background:linear-gradient(180deg,#eef6f3,#fffaf0);overflow:hidden;margin-bottom:12px}.real-territory-map .jvectormap-container{width:100%;height:100%}.real-territory-map .jvectormap-zoomin,.real-territory-map .jvectormap-zoomout{background:#173f35;border-radius:999px;width:24px;height:24px;line-height:24px}.map-loading,.map-fallback-note{display:grid;place-items:center;height:100%;color:var(--muted);font-weight:800}.compact-country-list{max-height:250px;grid-template-columns:1fr!important}.csv-preview-table{min-width:980px}.csv-preview-table th,.csv-preview-table td{white-space:nowrap}.csv-preview-table td:nth-child(3){white-space:normal;min-width:210px}.identifier-cell{font-size:12px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.negative-line td{background:#fff5ee}.negative-line .num{color:#9a3412;font-weight:900}.line-note{display:inline-block;margin-top:3px;color:#9a3412;font-size:12px;font-weight:800}.hero-metric small{line-height:1.35}.statement-timing-metric strong{font-size:26px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:16px}.table-scroll .compact-table{border:0}.table-scroll .compact-table th:first-child,.table-scroll .compact-table td:first-child{padding-left:12px}.top-tracks-card .compact-table td{vertical-align:top}.jvectormap-tip{position:absolute;display:none;border:1px solid rgba(23,63,53,.2);border-radius:10px;background:#fff;color:#173f35;font-size:12px;font-weight:800;padding:6px 8px;box-shadow:0 8px 24px rgba(0,0,0,.16);z-index:9999}@media(max-width:1100px){.insights-grid{grid-template-columns:1fr}.real-territory-map{height:340px}}
/* V4.0 client portal refinements */
.one-line-summary{grid-template-columns:1fr!important}.one-line-summary .metric{min-height:128px}.statement-timing-metric{display:none!important}.adjustment-summary-card{margin-top:14px;margin-bottom:16px}.compact-note span{display:inline}.client-insights-layout{grid-template-columns:minmax(0,1.08fr) minmax(330px,.72fr)}.period-chart-card{min-height:260px}.vertical-period-bars{height:190px;display:flex;align-items:flex-end;gap:12px;padding:14px 8px 0;border-bottom:1px solid var(--line);overflow-x:auto}.period-bar-item{min-width:92px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-decoration:none;color:var(--ink);position:relative}.period-bar{width:42px;min-height:4px;max-height:130px;display:block;border-radius:12px 12px 0 0;background:linear-gradient(180deg,var(--brand),var(--brand2));box-shadow:0 10px 20px rgba(17,32,25,.14)}.period-bar-item.current .period-bar{background:linear-gradient(180deg,#173f35,#4f7f68)}.period-bar-item strong{font-size:12px;margin-top:8px}.period-bar-item em{font-style:normal;font-size:11px;color:var(--muted);font-weight:800}.period-bar-item small{font-size:10px;color:var(--muted)}.local-map-card{align-self:start}.offline-territory-map{border:1px solid rgba(23,63,53,.20);border-radius:22px;background:#edf6f2;padding:10px;margin-bottom:12px}.local-world-map{width:100%;height:auto;display:block}.local-world-map .ocean{fill:#dfeeed}.local-world-map .continent{fill:#b7cdbc;stroke:#7e9f8b;stroke-width:.35}.svg-country{stroke:#fff;stroke-width:.45;transition:filter .15s ease,stroke-width .15s ease,transform .15s ease;transform-box:fill-box;transform-origin:center}.svg-country.heat-1{fill:#8fac99}.svg-country.heat-2{fill:#739980}.svg-country.heat-3{fill:#4f7f68}.svg-country.heat-4{fill:#2f644f}.svg-country.heat-5{fill:#173f35}.svg-country.selected{stroke:#bf6b39;stroke-width:.9}.svg-country-link text{font-size:1.55px;fill:#fff;font-weight:900;pointer-events:none}.svg-country-link:hover .svg-country{filter:brightness(1.15);stroke:#bf6b39;stroke-width:.85;transform:scale(1.18)}.real-territory-map{display:none!important}.statement-line-preview{min-width:1180px}.statement-line-preview th,.statement-line-preview td{padding:7px 8px;vertical-align:top}.statement-line-preview td:nth-child(4){white-space:normal;min-width:190px}.statement-line-preview td:nth-child(6){white-space:normal;min-width:170px}.identifier-cell span{color:var(--muted)}@media(max-width:1100px){.client-insights-layout{grid-template-columns:1fr}.vertical-period-bars{height:170px}.period-bar-item{min-width:82px}}

/* V4.1 presentation/map refinements */
body{font-size:14.5px}.shell{max-width:1360px}.card{padding:20px}.client-hero{padding:34px}.client-hero h1{font-size:clamp(32px,4.3vw,56px)}
.card-title-row{align-items:center}.card-title-row h2{font-size:20px}.helper{font-size:13px}.metric strong{font-size:30px}.metric small{font-size:13px}
/* Keep text readable; bars should support the data rather than swallowing the row. */
.bar-row{grid-template-columns:minmax(170px,1.25fr) minmax(70px,.7fr) minmax(92px,max-content);gap:12px;padding:8px 0;font-size:14px;line-height:1.2}.bar-row span{white-space:normal;overflow:visible;text-overflow:clip;min-width:0}.bar-row b{height:9px;max-width:180px;justify-self:stretch;opacity:.95}.bar-row em{white-space:nowrap;font-size:12.5px}.viz-card{overflow:hidden}.platforms-card .bar-row span{font-weight:850}
.period-chart-card{min-height:230px}.vertical-period-bars{height:170px;gap:14px;padding:12px 4px 0}.period-bar-item{min-width:78px}.period-bar{width:34px;max-height:112px}.period-bar-item em{max-width:80px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-insights-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.62fr);align-items:start}.insights-left{gap:16px}.territory-card{min-width:0}.geo-map-wrap{height:360px;border:1px solid rgba(23,63,53,.18);border-radius:22px;background:linear-gradient(180deg,#e5f0ef,#fbf8ef);overflow:hidden;margin-bottom:12px}.geo-world-map{width:100%;height:100%;display:block}.geo-ocean{fill:#deecea}.geo-country{fill:#d2ded5;stroke:#fff7ed;stroke-width:.45;vector-effect:non-scaling-stroke;transition:fill .15s ease,filter .15s ease,stroke .15s ease,stroke-width .15s ease}.geo-country.muted-country{fill:#cddbd1;opacity:.55;stroke:#f9f3e9;stroke-width:.3}.geo-country.heat-0{fill:#cddbd1}.geo-country.heat-1{fill:#b7cdbb}.geo-country.heat-2{fill:#8fb18f}.geo-country.heat-3{fill:#5f8e74}.geo-country.heat-4{fill:#346854}.geo-country.heat-5{fill:#173f35}.geo-country.selected{stroke:#bf6b39;stroke-width:1.4}.geo-country-link:hover .geo-country,.geo-country-link:focus .geo-country{filter:brightness(1.08);stroke:#bf6b39;stroke-width:1.2}.country-chip{font-size:12.5px;padding:8px 10px}.compact-country-list{max-height:220px;overflow:auto}
.statement-line-preview{min-width:1040px}.statement-line-preview th,.statement-line-preview td{padding:7px 8px;font-size:12.5px}.statement-line-preview th{font-size:10.5px}.statement-line-preview td:nth-child(4){min-width:180px}.statement-line-preview td:nth-child(6){min-width:160px}.statement-line-preview .num{font-weight:900}.table-scroll{border-radius:14px}.lower-dsp-activity{margin-top:18px}.activity-grid article{padding:12px}.activity-grid strong{font-size:22px}.activity-grid span{font-size:12px}
@media(max-width:1150px){.client-insights-layout{grid-template-columns:1fr}.geo-map-wrap{height:330px}.bar-row{grid-template-columns:minmax(170px,1fr) minmax(50px,.55fr) minmax(88px,max-content)}}
@media(max-width:720px){.bar-row{grid-template-columns:1fr;gap:4px}.bar-row b{max-width:100%;width:100%!important}.geo-map-wrap{height:260px}.statement-line-preview{min-width:900px}}


/* V4.3 portal layout and presentation refinements */
.card{overflow:visible}.card-title-row h2{line-height:1.08}.helper{line-height:1.35}
.client-insights-layout{grid-template-columns:minmax(0,1.1fr) minmax(360px,.78fr);gap:18px}.insights-left{gap:14px}
.period-chart-card{min-height:auto}.vertical-period-bars{height:128px;align-items:flex-end;gap:18px;padding:10px 6px 4px;overflow-x:auto;border-bottom:0}.period-bar-item{min-width:104px;max-width:130px;height:118px;justify-content:flex-end;gap:3px}.period-bar{width:46px;max-height:72px;min-height:7px}.period-bar-item strong{font-size:13px;margin-top:6px;white-space:nowrap}.period-bar-item em{font-size:12px;max-width:none;white-space:nowrap;overflow:visible;text-overflow:clip;text-align:center;color:var(--ink)}.period-bar-item small{font-size:11px}.period-bar-item.current strong,.period-bar-item.current em{font-weight:950}
.bar-row{grid-template-columns:minmax(190px,1.45fr) minmax(125px,.85fr) minmax(96px,max-content);gap:14px;padding:7px 0}.bar-row b{width:clamp(12px,var(--bar,0%),230px)!important;max-width:230px;min-width:8px;justify-self:start}.bar-row span{font-size:13.5px;line-height:1.22}.bar-row em{font-size:12.5px}.platforms-card .bar-row span{font-weight:820}.viz-card{overflow:visible}
.geo-map-wrap{height:285px;border-radius:18px;margin-bottom:10px}.geo-world-map{display:block}.territory-card .card-title-row{margin-bottom:8px}.compact-country-list{max-height:185px;grid-template-columns:1fr!important}.country-chip{font-size:12px;padding:7px 9px}.country-chip strong{font-weight:850}.country-chip span{font-variant-numeric:tabular-nums}
.top-tracks-card .compact-table{min-width:620px}.top-tracks-card th,.top-tracks-card td{padding:8px 9px}.top-tracks-card td:first-child strong{font-size:13.5px}.top-tracks-card td:first-child .muted{font-size:12px}.statement-line-preview th,.statement-line-preview td{font-size:12px;padding:6px 7px}.statement-line-preview{min-width:1100px}.adjustment-summary-card th,.adjustment-summary-card td{padding:8px 9px}.lower-dsp-activity{margin-top:14px}.activity-grid article{border-radius:16px}
@media(max-width:1150px){.client-insights-layout{grid-template-columns:1fr}.geo-map-wrap{height:320px}.bar-row{grid-template-columns:minmax(180px,1.2fr) minmax(120px,.8fr) minmax(94px,max-content)}}
@media(max-width:720px){.vertical-period-bars{height:auto;align-items:stretch}.period-bar-item{height:115px}.bar-row{grid-template-columns:1fr;gap:5px}.bar-row b{max-width:100%;width:var(--bar,0%)!important}.geo-map-wrap{height:240px}}


/* V4.4 presentation refinements */
:root{--bar-track:#eee6da}
.period-chart-card{min-height:auto}.vertical-period-bars{display:none!important}
.period-comparison-list{display:grid;gap:9px}.period-row{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(150px,1fr) max-content;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);color:var(--ink)}.period-row .period-meta{display:grid;gap:1px}.period-row .period-meta strong{font-size:14px;letter-spacing:-.01em}.period-row .period-meta small{font-size:11px;color:var(--muted);font-weight:850}.period-row b{height:8px;border-radius:99px;background:linear-gradient(90deg,var(--brand2),var(--brand));width:clamp(28px,var(--bar,0%),100%);max-width:100%;justify-self:start}.period-row.current b{height:10px;background:linear-gradient(90deg,#4f7f68,var(--brand))}.period-row em{font-style:normal;font-size:13px;font-weight:900;font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}
.bar-row{grid-template-columns:minmax(0,1fr) max-content!important;gap:10px 14px;padding:9px 0 12px;position:relative}.bar-row span{grid-column:1;grid-row:1;font-size:13.5px;line-height:1.25;white-space:normal;overflow:visible;text-overflow:clip}.bar-row em{grid-column:2;grid-row:1;text-align:right;font-size:13px;white-space:nowrap}.bar-row b{grid-column:1 / -1;grid-row:2;height:4px;width:clamp(28px,var(--bar,0%),100%)!important;max-width:100%!important;min-width:0!important;justify-self:start;border-radius:99px;background:linear-gradient(90deg,var(--brand2),var(--brand));opacity:.9}.platforms-card .bar-row span{font-weight:800}.viz-card{overflow:visible}.client-insights-layout{grid-template-columns:minmax(0,1.08fr) minmax(380px,.76fr);gap:18px}.insights-right{display:grid;gap:14px;align-content:start}.territory-card{margin-bottom:0}.geo-map-wrap{height:300px}.territory-card .card-title-row .helper{font-size:13px}.compact-country-list{max-height:190px}.country-chip{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:8px;align-items:center}.country-chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lower-dsp-activity{margin-top:0}.streaming-activity-card h2{margin:0}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.activity-grid article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:10px}.activity-grid span{display:block;color:var(--muted);font-size:11.5px;font-weight:850}.activity-grid strong{display:block;font-size:18px;margin-top:3px}.content-id-breakdown{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.content-id-breakdown span{border:1px solid var(--line);border-radius:999px;background:#fff;padding:5px 8px;font-size:12px;color:var(--muted)}.top-tracks-card .compact-table th:nth-child(2),.top-tracks-card .compact-table td:nth-child(2){width:190px}.identifier-cell span{display:inline-block}.csv-preview-table td,.csv-preview-table th{font-size:12px}.card-title-row{gap:10px}.card-title-row h2{font-size:19px}.helper{font-size:12.5px}.client-hero p{font-size:16px}.metric small{font-size:12.5px}@media(max-width:1150px){.client-insights-layout{grid-template-columns:1fr}.insights-right{display:block}.period-row{grid-template-columns:minmax(80px,.8fr) minmax(120px,1fr) max-content}.geo-map-wrap{height:315px}}@media(max-width:720px){.period-row{grid-template-columns:1fr;gap:5px}.period-row em{text-align:left}.bar-row{grid-template-columns:1fr!important}.bar-row em{grid-column:1;text-align:left}.activity-grid{grid-template-columns:1fr}.geo-map-wrap{height:245px}}

/* V4.5 presentation fixes: calmer bars, clearer period comparison, cleaner digital activity. */
.period-chart-card{min-height:0!important;overflow:hidden!important}.period-comparison-list{display:grid!important;gap:0!important}.period-row{display:grid!important;grid-template-columns:minmax(92px,120px) minmax(120px,1fr) max-content!important;gap:12px!important;align-items:center!important;padding:10px 0!important;border-bottom:1px solid var(--line)!important}.period-row .period-meta strong{font-size:13px!important}.period-row .period-meta small{font-size:10.5px!important;text-transform:uppercase;letter-spacing:.04em}.period-row b{height:5px!important;min-width:0!important;width:var(--bar,0%)!important;max-width:260px!important;border-radius:999px!important;box-shadow:none!important}.period-row.current b{height:6px!important}.period-row em{font-size:12.5px!important;min-width:92px;text-align:right}
.bar-row{grid-template-columns:minmax(0,1fr) max-content!important;gap:8px 14px!important;padding:8px 0 9px!important}.bar-row span{font-size:13px!important;font-weight:780!important;line-height:1.22!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}.bar-row em{font-size:12.25px!important;font-weight:800!important;color:var(--muted)!important;white-space:nowrap!important}.bar-row b{grid-column:1 / -1!important;grid-row:2!important;height:3px!important;width:var(--bar,0%)!important;max-width:260px!important;min-width:0!important;border-radius:999px!important;opacity:.72!important}.bar-row.tiny-bar b{display:none!important}.bar-row.tiny-bar{padding-bottom:8px!important}.platforms-card .bar-row span{text-transform:none!important}.viz-card{overflow:hidden!important}
.client-insights-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr)!important;gap:16px!important}.geo-map-wrap{height:280px!important}.territory-card .card-title-row .helper{display:none!important}.compact-country-list{max-height:175px!important}.country-chip{font-size:11.75px!important;padding:6px 8px!important;border-radius:12px!important}.country-chip span{font-size:11.5px!important}.top-tracks-card .card-title-row .helper{display:none!important}.top-tracks-card .compact-table th,.top-tracks-card .compact-table td{font-size:12.5px!important;padding:7px 8px!important}.top-tracks-card .compact-table td:nth-child(2){width:auto!important}.table-scroll{box-shadow:none!important}.statement-line-preview th,.statement-line-preview td{font-size:11.75px!important;padding:6px 7px!important}.negative-line td{background:transparent!important}.negative-line .num{color:inherit!important}.line-note{display:none!important}.streaming-activity-card{margin-top:18px!important}.streaming-activity-card .card-title-row h2{font-size:18px!important}.activity-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0 12px}.activity-summary-row article{border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px}.activity-summary-row span{display:block;color:var(--muted);font-size:12px;font-weight:850}.activity-summary-row strong{display:block;font-size:24px;letter-spacing:-.04em;margin-top:3px}.activity-summary-row em{display:block;font-style:normal;color:var(--muted);font-size:12px;margin-top:4px}.activity-breakdown-table th,.activity-breakdown-table td{font-size:12.5px!important;padding:7px 8px!important}.activity-grid,.content-id-breakdown{display:none!important}@media(max-width:1150px){.client-insights-layout{grid-template-columns:1fr!important}.geo-map-wrap{height:300px!important}.period-row{grid-template-columns:minmax(82px,105px) minmax(80px,1fr) max-content!important}}@media(max-width:720px){.period-row{grid-template-columns:1fr!important}.period-row em{text-align:left}.activity-summary-row{grid-template-columns:1fr}.geo-map-wrap{height:230px!important}}

/* V4.6 activity summary polish */
.activity-summary-row.two-up {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.activity-summary-row.two-up article em {
  display: block;
  margin-top: .45rem;
  font-style: normal;
  color: var(--muted);
  font-weight: 700;
}
@media (max-width: 760px) {
  .activity-summary-row.two-up { grid-template-columns: 1fr; }
}

/* V4.7 client portal cleanup */
.client-hero p strong,
.card-title-row h2,
.metric span,
.filter-grid label,
.compact-table th { text-transform: none; }
.card-title-row h2 { letter-spacing: -0.015em; }
.client-insights-layout { align-items: start; }
.insights-right { display: grid !important; gap: 14px !important; align-content: start !important; }
.territory-card { overflow: visible !important; }
.compact-country-list,
.territory-map-list.compact-country-list {
  max-height: 315px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding-right: 4px !important;
  padding-bottom: 12px !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
}
.country-chip { min-height: 42px; }
.country-chip strong { font-size: 12.5px !important; }
.country-chip span { font-size: 12.25px !important; }
.streaming-activity-card.lower-dsp-activity {
  margin-top: 0 !important;
  padding: 18px !important;
}
.streaming-activity-card .activity-summary-row.two-up {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 10px !important;
  margin: 8px 0 10px !important;
}
.streaming-activity-card .activity-summary-row article {
  border-radius: 14px !important;
  padding: 12px !important;
}
.streaming-activity-card .activity-summary-row span { font-size: 12px !important; }
.streaming-activity-card .activity-summary-row strong { font-size: 22px !important; }
.streaming-activity-card .activity-summary-row em { font-size: 12px !important; }
.activity-breakdown-table { margin-top: 4px; }
.activity-breakdown-table th,
.activity-breakdown-table td { font-size: 12px !important; }
.related-pill .source-detail,
.related-pill .native-detail { display: none !important; }
@media(max-width: 720px){
  .streaming-activity-card .activity-summary-row.two-up { grid-template-columns: 1fr !important; }
  .compact-country-list,.territory-map-list.compact-country-list { max-height: 260px !important; }
}

/* V5.0 statement data coverage */
.coverage-card { margin-top: 1rem; }
.coverage-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; }
.coverage-source { border: 1px solid var(--border, #dde4ea); border-radius: 16px; padding: 1rem; background: #fff; }
.coverage-source.warn { border-color: #e9b872; background: #fffaf1; }
.coverage-source.good { border-color: #b8d9c4; background: #f7fcf8; }
.coverage-source-head { display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; margin-bottom:.35rem; }
.coverage-source-head h3 { margin:0; font-size:1rem; }
.coverage-source-head p { margin:.15rem 0 0; color: var(--muted, #637083); font-size:.84rem; }
.coverage-message { margin:.55rem 0 .75rem; color:#334155; font-size:.9rem; line-height:1.35; }
.month-strip { display:flex; gap:.35rem; flex-wrap:wrap; margin:.4rem 0 .6rem; }
.month-chip { display:inline-flex; align-items:center; justify-content:center; width:2.15rem; height:1.8rem; border-radius:999px; font-size:.78rem; font-weight:700; border:1px solid transparent; }
.month-chip.imported { background:#dff5e6; color:#15683a; border-color:#b8e2c7; }
.month-chip.missing { background:#ffe0d9; color:#a12c17; border-color:#f5b5aa; }
.month-chip.pending { background:#eef2f6; color:#64748b; border-color:#d9e1ea; }
.coverage-key { display:flex; gap:.8rem; flex-wrap:wrap; color:var(--muted, #637083); font-size:.78rem; }
.coverage-key span { display:inline-flex; align-items:center; gap:.3rem; }
.coverage-key .dot { width:.55rem; height:.55rem; border-radius:999px; display:inline-block; }
.coverage-key .dot.imported { background:#34a853; }
.coverage-key .dot.missing { background:#d93025; }
.coverage-key .dot.pending { background:#94a3b8; }

/* V5.2 client portal alignment polish
   Aligns the dashboard cards into a cleaner two-column grid and makes summary rows
   read like tidy tables rather than uneven floating bar blocks. */
.client-insights-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr) !important;
  gap:18px !important;
  align-items:start !important;
  margin:18px 0 22px !important;
}
.insights-left,
.insights-right{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:18px !important;
  align-content:start !important;
}
.insights-left > .card,
.insights-right > .card,
.top-tracks-card,
#detail{
  margin:0 !important;
  width:100% !important;
}
.insights-left > .card:not(:last-child),
.insights-right > .card:not(:last-child){
  margin-bottom:0 !important;
}
.card-title-row{
  align-items:baseline !important;
  gap:12px !important;
  margin-bottom:14px !important;
  min-height:28px !important;
}
.card-title-row h2{
  margin:0 !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
}
.viz-card,
.streaming-activity-card,
.top-tracks-card,
#detail{
  padding:20px !important;
  overflow:hidden !important;
}

/* Table-like bar rows: label / bar / amount all align consistently. */
.viz-card .bar-row,
.platforms-card .bar-row{
  display:grid !important;
  grid-template-columns:minmax(180px,.95fr) minmax(110px,1fr) minmax(96px,max-content) !important;
  gap:10px 16px !important;
  align-items:center !important;
  min-height:42px !important;
  padding:9px 0 !important;
  border-bottom:1px solid var(--line) !important;
}
.viz-card .bar-row span,
.platforms-card .bar-row span{
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0 !important;
  overflow:visible !important;
  white-space:normal !important;
  text-overflow:clip !important;
  line-height:1.18 !important;
  font-size:13.25px !important;
  font-weight:800 !important;
}
.viz-card .bar-row b,
.platforms-card .bar-row b{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  height:4px !important;
  width:var(--bar,0%) !important;
  max-width:100% !important;
  min-width:0 !important;
  border-radius:999px !important;
  opacity:.78 !important;
}
.viz-card .bar-row.tiny-bar b,
.platforms-card .bar-row.tiny-bar b{
  display:block !important;
  width:24px !important;
  opacity:.5 !important;
}
.viz-card .bar-row em,
.platforms-card .bar-row em{
  grid-column:3 !important;
  grid-row:1 !important;
  min-width:96px !important;
  text-align:right !important;
  white-space:nowrap !important;
  color:var(--muted) !important;
  font-size:12.75px !important;
  font-weight:850 !important;
}

/* Period comparison uses the same tidy row rhythm as the other summary cards. */
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:minmax(96px,130px) minmax(120px,1fr) minmax(96px,max-content) !important;
  gap:10px 16px !important;
  align-items:center !important;
  min-height:48px !important;
  padding:10px 0 !important;
  border-bottom:1px solid var(--line) !important;
}
.period-chart-card .period-row b{
  height:6px !important;
  width:var(--bar,0%) !important;
  max-width:100% !important;
  min-width:24px !important;
  border-radius:999px !important;
}
.period-chart-card .period-row em{
  min-width:96px !important;
  text-align:right !important;
  white-space:nowrap !important;
}
.period-chart-card .period-meta strong{
  display:block !important;
  line-height:1.1 !important;
}
.period-chart-card .period-meta small{
  display:block !important;
  margin-top:2px !important;
}

/* Right-column cards: make territory and activity panels line up and avoid clipped lists. */
.territory-card.local-map-card{
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  max-height:none !important;
}
.territory-card .geo-map-wrap{
  height:255px !important;
  min-height:255px !important;
  margin-bottom:12px !important;
}
.territory-map-list.compact-country-list,
.compact-country-list{
  max-height:240px !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding:0 4px 2px 0 !important;
  margin-top:0 !important;
}
.country-chip{
  min-height:38px !important;
  padding:8px 10px !important;
  align-items:center !important;
}
.country-chip strong,
.country-chip span{
  line-height:1.15 !important;
}
.streaming-activity-card.lower-dsp-activity{
  margin-top:0 !important;
  align-self:stretch !important;
}
.streaming-activity-card .activity-summary-row.two-up{
  margin:4px 0 12px !important;
}
.streaming-activity-card .activity-summary-row.two-up article{
  min-height:98px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.activity-breakdown-table th,
.activity-breakdown-table td{
  padding:8px 10px !important;
  vertical-align:middle !important;
}

/* Make lower full-width sections align with the grid above. */
.top-tracks-card,
#detail{
  margin-top:18px !important;
}
.top-tracks-card .compact-table th,
.top-tracks-card .compact-table td,
.csv-preview-table th,
.csv-preview-table td{
  vertical-align:top !important;
}

@media(max-width:1150px){
  .client-insights-layout{grid-template-columns:1fr !important;}
  .territory-card .geo-map-wrap{height:285px !important;}
  .territory-map-list.compact-country-list,.compact-country-list{max-height:260px !important;}
}
@media(max-width:760px){
  .viz-card .bar-row,.platforms-card .bar-row,.period-chart-card .period-row{
    grid-template-columns:1fr max-content !important;
    gap:7px 12px !important;
  }
  .viz-card .bar-row b,.platforms-card .bar-row b,.period-chart-card .period-row b{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:var(--bar,0%) !important;
  }
  .viz-card .bar-row em,.platforms-card .bar-row em,.period-chart-card .period-row em{
    grid-column:2 !important;
    grid-row:1 !important;
    text-align:right !important;
  }
  .streaming-activity-card .activity-summary-row.two-up{grid-template-columns:1fr !important;}
}

/* V5.4 layout, negative-note and admin table polish */
.client-insights-layout{
  grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr) !important;
}
.viz-card .bar-row,
.platforms-card .bar-row,
.period-chart-card .period-row{
  grid-template-columns:minmax(0,1fr) max-content !important;
  gap:7px 16px !important;
  min-height:46px !important;
  padding:10px 0 !important;
}
.viz-card .bar-row span,
.platforms-card .bar-row span{
  grid-column:1 !important;
  grid-row:1 !important;
  white-space:normal !important;
  overflow:visible !important;
  font-size:13px !important;
  line-height:1.2 !important;
}
.viz-card .bar-row em,
.platforms-card .bar-row em{
  grid-column:2 !important;
  grid-row:1 !important;
  min-width:92px !important;
}
.viz-card .bar-row b,
.platforms-card .bar-row b{
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  width:max(8%, min(var(--bar,0%), 100%)) !important;
  max-width:100% !important;
  min-width:34px !important;
  height:3px !important;
  opacity:.68 !important;
}
.viz-card .bar-row.tiny-bar b,
.platforms-card .bar-row.tiny-bar b{
  width:7% !important;
  min-width:34px !important;
  opacity:.42 !important;
}
.period-chart-card .period-row{
  grid-template-columns:minmax(92px,150px) minmax(0,1fr) max-content !important;
}
.period-chart-card .period-row b{
  grid-column:2 !important;
  grid-row:1 !important;
  width:max(8%, min(var(--bar,0%), 100%)) !important;
  height:5px !important;
  min-width:38px !important;
}
.period-chart-card .period-row em{
  grid-column:3 !important;
  grid-row:1 !important;
}

.streaming-activity-card{
  overflow:visible !important;
}
.streaming-activity-card .activity-summary-row.two-up{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.activity-breakdown-table{
  min-width:0 !important;
  width:100% !important;
  table-layout:fixed !important;
}
.activity-breakdown-table th,
.activity-breakdown-table td{
  white-space:normal !important;
  overflow:visible !important;
  padding:8px 8px !important;
}
.activity-breakdown-table th:nth-child(1),
.activity-breakdown-table td:nth-child(1){width:28% !important;}
.activity-breakdown-table th:nth-child(2),
.activity-breakdown-table td:nth-child(2){width:34% !important;}
.activity-breakdown-table th:nth-child(3),
.activity-breakdown-table td:nth-child(3){width:38% !important;}
.activity-breakdown-table .num{
  white-space:nowrap !important;
}

.table-scroll{
  width:100%;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.csv-preview-table{
  min-width:1040px !important;
  font-size:12.5px !important;
}
.csv-preview-table th,
.csv-preview-table td{
  padding:8px 9px !important;
}
.csv-preview-table td:nth-child(10),
.csv-preview-table th:nth-child(10){
  min-width:96px !important;
}
.identifier-cell span{white-space:nowrap;}

.admin-rules-grid .rules-table-card{
  overflow:hidden !important;
}
.admin-rules-table{
  min-width:720px !important;
  font-size:12.5px !important;
}
.admin-rules-table th,
.admin-rules-table td{
  padding:8px 9px !important;
  vertical-align:top !important;
}
.admin-rules-table td:last-child{
  color:var(--muted);
}

@media(max-width:1150px){
  .client-insights-layout{grid-template-columns:1fr !important;}
}
@media(max-width:760px){
  .streaming-activity-card .activity-summary-row.two-up{grid-template-columns:1fr !important;}
  .activity-breakdown-table{font-size:12px !important;}
}

/* V5.15 client adjustment note polish */
.adjustment-summary-card .adjustment-table td { vertical-align: top; }
.adjustment-summary-card .adjustment-table .inline-note {
  display: block;
  margin-top: 2px;
  max-width: 680px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.25;
  font-weight: 400;
}
.adjustment-summary-card .adjustment-table th:nth-child(1),
.adjustment-summary-card .adjustment-table td:nth-child(1) { width: 7.5rem; white-space: nowrap; }
.adjustment-summary-card .adjustment-table th.num,
.adjustment-summary-card .adjustment-table td.num { width: 8rem; white-space: nowrap; }


/* V5.16 statement preview and period-performance refinement */
.period-chart-card .period-row{
  grid-template-columns:max-content minmax(140px,1fr) max-content !important;
  column-gap:10px !important;
}
.period-chart-card .period-row b{
  grid-column:2 !important;
  justify-self:stretch !important;
  width:var(--bar,0%) !important;
  min-width:28px !important;
  max-width:100% !important;
}
.period-chart-card .period-meta{
  min-width:0 !important;
  padding-right:2px !important;
}
#detail .table-scroll{
  overflow-x:visible !important;
}
#detail .statement-line-preview{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}
#detail .statement-line-preview th,
#detail .statement-line-preview td{
  font-size:11.25px !important;
  padding:6px 6px !important;
  line-height:1.25 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}
#detail .statement-line-preview th:nth-child(1), #detail .statement-line-preview td:nth-child(1){width:8%;}
#detail .statement-line-preview th:nth-child(2), #detail .statement-line-preview td:nth-child(2){width:7%;}
#detail .statement-line-preview th:nth-child(3), #detail .statement-line-preview td:nth-child(3){width:21%;}
#detail .statement-line-preview th:nth-child(4), #detail .statement-line-preview td:nth-child(4){width:12%;}
#detail .statement-line-preview th:nth-child(5), #detail .statement-line-preview td:nth-child(5){width:15%;}
#detail .statement-line-preview th:nth-child(6), #detail .statement-line-preview td:nth-child(6){width:9%;}
#detail .statement-line-preview th:nth-child(7), #detail .statement-line-preview td:nth-child(7){width:13%;}
#detail .statement-line-preview th:nth-child(8), #detail .statement-line-preview td:nth-child(8){width:9%;}
#detail .statement-line-preview th:nth-child(9), #detail .statement-line-preview td:nth-child(9){width:6%;}
#detail .track-artist-cell strong{
  display:block;
  font-size:11.6px;
  line-height:1.2;
}
#detail .track-artist-cell span,
#detail .identifier-cell span{
  font-size:10.8px;
  line-height:1.2;
}
#detail .line-type-cell{
  color:var(--muted);
  font-weight:750;
}
@media(max-width:900px){
  #detail .table-scroll{overflow-x:auto !important;}
  #detail .statement-line-preview{min-width:860px !important;}
}


/* V5.17 publishing import, preview and map polish */
.geo-map-wrap{
  height:auto !important;
  aspect-ratio:2.42 / 1 !important;
  padding:0 !important;
  display:block !important;
}
.geo-world-map{
  width:100% !important;
  height:100% !important;
  display:block !important;
}
.period-chart-card .period-row{
  grid-template-columns:max-content minmax(80px,1fr) max-content !important;
  column-gap:8px !important;
}
.period-chart-card .period-row b{
  justify-self:start !important;
  width:var(--bar,0%) !important;
  max-width:100% !important;
}
#detail .statement-line-preview{
  table-layout:fixed !important;
  width:100% !important;
  min-width:0 !important;
}
#detail .statement-line-preview th,
#detail .statement-line-preview td{
  font-size:10.8px !important;
  padding:5px 5px !important;
}
#detail .statement-line-preview th:nth-child(1), #detail .statement-line-preview td:nth-child(1){width:7%;}
#detail .statement-line-preview th:nth-child(2), #detail .statement-line-preview td:nth-child(2){width:6.5%;}
#detail .statement-line-preview th:nth-child(3), #detail .statement-line-preview td:nth-child(3){width:20%;}
#detail .statement-line-preview th:nth-child(4), #detail .statement-line-preview td:nth-child(4){width:12%;}
#detail .statement-line-preview th:nth-child(5), #detail .statement-line-preview td:nth-child(5){width:14%;}
#detail .statement-line-preview th:nth-child(6), #detail .statement-line-preview td:nth-child(6){width:8%;}
#detail .statement-line-preview th:nth-child(7), #detail .statement-line-preview td:nth-child(7){width:15%;}
#detail .statement-line-preview th:nth-child(8), #detail .statement-line-preview td:nth-child(8){width:10%;}
#detail .statement-line-preview th:nth-child(9), #detail .statement-line-preview td:nth-child(9){width:7.5%;}
.work-split-form{grid-template-columns:repeat(4,minmax(0,1fr));}
.work-split-table input{padding:7px 8px;font-size:12px;border-radius:10px;}
.work-split-table td:nth-child(1){min-width:150px;}
@media(max-width:900px){.geo-map-wrap{aspect-ratio:1.65 / 1 !important}.work-split-form{grid-template-columns:1fr}}


/* V5.18 map fit: match the SVG viewBox aspect so the map fills its card without the visible inner gap. */
.geo-map-wrap{aspect-ratio:2.42 / 1 !important;}
.geo-world-map{display:block !important;width:100% !important;height:100% !important;}

/* V5.19 import filing */
.hero-import { border-width: 2px; }
.field-label { font-weight: 800; color: var(--muted); letter-spacing: .02em; font-size: .9rem; }
.helper.small { font-size: .9rem; }
.helper code { background: rgba(20, 62, 49, 0.08); padding: .12rem .35rem; border-radius: .35rem; white-space: nowrap; }


/* V5.20 client wording, payable date and map fit polish */
.statement-metrics.one-line-summary{
  grid-template-columns:minmax(0,1fr) minmax(220px,.34fr) !important;
  align-items:stretch !important;
}
.summary-date-metric{
  min-height:0 !important;
  background:#fffdf8 !important;
}
.summary-date-metric strong{
  font-size:22px !important;
  letter-spacing:-.025em !important;
  white-space:nowrap !important;
}
.summary-date-metric small{
  display:block !important;
  max-width:260px !important;
}
/* Reduce label-to-bar gap on period performance. */
.period-chart-card .period-row{
  grid-template-columns:minmax(84px,max-content) minmax(90px,1fr) max-content !important;
  column-gap:8px !important;
}
.period-chart-card .period-row b{
  margin-left:0 !important;
}
/* The local SVG map includes its own land projection margin; zoom it slightly so it visually fits the card. */
.geo-map-wrap{
  aspect-ratio:2.72 / 1 !important;
  background:#deecea !important;
}
.geo-world-map{
  transform:scale(1.075) !important;
  transform-origin:center center !important;
}
#detail .statement-line-preview th,
#detail .statement-line-preview td{
  font-size:10.55px !important;
}
#detail .statement-line-preview th:nth-child(3), #detail .statement-line-preview td:nth-child(3){width:19% !important;}
#detail .statement-line-preview th:nth-child(5), #detail .statement-line-preview td:nth-child(5){width:13% !important;}
#detail .statement-line-preview th:nth-child(7), #detail .statement-line-preview td:nth-child(7){width:16% !important;}
@media(max-width:900px){
  .statement-metrics.one-line-summary{grid-template-columns:1fr !important;}
  .geo-map-wrap{aspect-ratio:1.85 / 1 !important;}
  .geo-world-map{transform:scale(1.02) !important;}
}

/* V5.21 statement close / payment polish */
.one-line-summary .hero-metric small .payment-inline-note { font-weight: 700; color: var(--ink-muted, #6b675f); white-space: nowrap; }
.statement-issue-card { border: 1px solid rgba(20,20,20,.08); }
.issue-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 12px 0 18px; }
.issue-status { border: 1px solid rgba(20,20,20,.10); border-radius: 16px; padding: 14px 16px; background: rgba(255,255,255,.6); }
.issue-status span { display: block; font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; color: #6b675f; font-weight: 800; }
.issue-status strong { display: block; margin-top: 4px; font-size: 1.35rem; }
.issue-status small { display: block; margin-top: 4px; color: #6b675f; }
.close-period-form { align-items: end; }
.checkbox-line { display: flex !important; align-items: center; gap: 8px; font-weight: 700; }
.inline-form.paid-form { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; align-items: end; }
.inline-form.paid-form input { min-width: 170px; }
@media (max-width: 800px) { .issue-grid { grid-template-columns: 1fr; } .one-line-summary .hero-metric small .payment-inline-note { white-space: normal; } }

.actions-cell { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.actions-cell form { margin: 0; }
.actions-cell button { white-space: nowrap; }

.status-good{display:inline-block;font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#0f4a3c;background:#e6f3ef;border:1px solid #bfdad2;border-radius:999px;padding:.12rem .45rem;margin-bottom:.25rem}
.field-label{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#706b62;margin-bottom:.25rem}
.compact-input{width:100%;max-width:220px;border:1px solid #d8d1c6;border-radius:10px;padding:.42rem .55rem;font:inherit;font-size:.9rem;background:#fffdf8;color:#171614}

/* V5.26 presentation brush-up: spacing, hierarchy, colour palette and UX polish.
   This final layer deliberately overrides earlier version-specific tweaks so the
   portal reads as one designed interface rather than a stack of incremental fixes. */
:root{
  --bg:#f3efe8;
  --panel:#fffdfa;
  --panel-2:#fbf5ec;
  --ink:#171512;
  --muted:#655f57;
  --muted-2:#8a8177;
  --line:#e5dacf;
  --line-strong:#d4c6b8;
  --brand:#123f35;
  --brand-ink:#0d332b;
  --brand2:#a95f37;
  --cream:#f7ead9;
  --good:#e6f3ed;
  --warn:#fff2d6;
  --bad:#ffe6df;
  --shadow:0 12px 30px rgba(33,24,13,.065);
  --shadow-soft:0 2px 10px rgba(33,24,13,.045);
  --radius:22px;
  --radius-sm:14px;
  --focus:0 0 0 3px rgba(169,95,55,.24);
}
html{scroll-behavior:smooth;}
body{
  background:
    radial-gradient(circle at 12% -8%, rgba(169,95,55,.10), transparent 27rem),
    linear-gradient(180deg,#fbf8f1 0%, var(--bg) 42rem);
  color:var(--ink);
  font-size:14.75px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:var(--brand-ink);text-underline-offset:3px;}
a:hover{color:var(--brand2);}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{
  outline:0;
  box-shadow:var(--focus);
}
.topbar{
  display:grid !important;
  grid-template-columns:max-content minmax(0,1fr) !important;
  gap:18px !important;
  align-items:center !important;
  padding:12px 24px !important;
  background:rgba(255,253,248,.94) !important;
  box-shadow:0 1px 0 rgba(0,0,0,.04) !important;
}
.brand{gap:11px !important;font-size:14px !important;letter-spacing:-.01em !important;}
.brand-mark{
  width:34px !important;height:34px !important;border-radius:12px !important;
  background:linear-gradient(135deg,var(--brand),#1d5a4d) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12) !important;
}
.main-nav{
  flex-wrap:nowrap !important;
  justify-content:flex-end !important;
  gap:4px !important;
  overflow-x:auto !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
}
.main-nav::-webkit-scrollbar{display:none;}
.main-nav a{
  flex:0 0 auto !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  color:var(--muted) !important;
  font-size:13px !important;
  font-weight:780 !important;
  line-height:1.15 !important;
}
.main-nav a:hover{background:var(--cream) !important;color:var(--brand) !important;}
.shell{max-width:1240px !important;padding:30px 24px 72px !important;}
.hero,.page-head{gap:22px !important;margin-bottom:22px !important;}
.page-head h1,.hero h1,.client-hero h1{
  font-size:clamp(32px,4.1vw,56px) !important;
  line-height:.98 !important;
  letter-spacing:-.052em !important;
  margin:0 0 12px !important;
}
.page-head p,.lede,.client-hero p{font-size:16.5px !important;line-height:1.46 !important;}
.eyebrow{
  color:var(--brand2) !important;
  font-size:11px !important;
  letter-spacing:.14em !important;
  line-height:1.2 !important;
  margin:0 0 10px !important;
}
h2{font-size:20px !important;line-height:1.15 !important;letter-spacing:-.024em !important;margin:0 0 10px !important;}
h3{font-size:16px !important;line-height:1.2 !important;letter-spacing:-.015em !important;}
.helper,.muted,td span{color:var(--muted) !important;}
.helper{font-size:13px !important;line-height:1.38 !important;margin:0 !important;}
.card{
  background:rgba(255,253,250,.96) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius) !important;
  box-shadow:var(--shadow-soft) !important;
  padding:20px !important;
  margin-bottom:16px !important;
}
.card:hover{box-shadow:var(--shadow) !important;}
.card-title-row{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  min-height:0 !important;
  margin-bottom:14px !important;
}
.card-title-row h2{margin:0 !important;}
.client-hero{
  padding:32px 34px !important;
  border:1px solid rgba(212,198,184,.75) !important;
  border-radius:28px !important;
  box-shadow:var(--shadow) !important;
  margin-bottom:16px !important;
}
.client-hero.polished{
  background:
    radial-gradient(circle at 92% 0%, rgba(169,95,55,.20), transparent 20rem),
    linear-gradient(135deg,#fffdfa 0%,#fbf1e4 100%) !important;
}
.client-hero p{margin:0 !important;}
.hero-separator{color:var(--muted-2);font-weight:700;}
.metric-grid{gap:12px !important;margin:16px 0 !important;}
.statement-metrics.one-line-summary{
  grid-template-columns:minmax(0,1fr) minmax(260px,.42fr) !important;
  align-items:stretch !important;
}
.metric{
  min-height:112px !important;
  padding:18px !important;
  border-radius:20px !important;
  box-shadow:var(--shadow-soft) !important;
}
.metric span{
  color:var(--muted) !important;
  font-size:12px !important;
  font-weight:850 !important;
  letter-spacing:.01em !important;
}
.metric strong{
  font-size:clamp(26px,3.5vw,40px) !important;
  line-height:1.02 !important;
  letter-spacing:-.05em !important;
  margin:7px 0 5px !important;
}
.metric small{
  display:block !important;
  color:var(--muted) !important;
  font-size:12.5px !important;
  line-height:1.34 !important;
}
.hero-metric{background:linear-gradient(135deg,#e4f3ec,#f7fbf7) !important;}
.hero-metric strong{font-size:clamp(38px,5.3vw,62px) !important;}
.summary-date-metric{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  background:#fffdfa !important;
}
.summary-date-metric strong{font-size:25px !important;letter-spacing:-.032em !important;white-space:normal !important;}
.summary-date-metric small{max-width:100% !important;}
.payment-inline-note{white-space:normal !important;font-weight:750 !important;color:var(--ink) !important;}
.notice{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px 10px !important;
  align-items:baseline !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  margin:12px 0 16px !important;
  box-shadow:none !important;
}
.compact-note span{font-size:13px !important;line-height:1.35 !important;}
.period-card{padding:16px !important;}
.period-tabs{display:flex !important;gap:8px !important;flex-wrap:wrap !important;margin:2px 0 12px !important;}
.period-tab{
  display:inline-flex !important;
  align-items:center !important;
  min-height:34px !important;
  padding:7px 12px !important;
  border:1px solid var(--line) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--muted) !important;
  font-size:13px !important;
  font-weight:820 !important;
}
.period-tab.active{
  background:var(--brand) !important;
  border-color:var(--brand) !important;
  color:#fff !important;
}
.advanced-filters{
  border-top:1px solid var(--line) !important;
  padding-top:11px !important;
}
.advanced-filters summary{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  cursor:pointer !important;
  color:var(--brand) !important;
  font-weight:850 !important;
  font-size:13px !important;
  list-style:none !important;
}
.advanced-filters summary::-webkit-details-marker{display:none;}
.advanced-filters summary:after{content:"+";font-weight:900;color:var(--brand2);}
.advanced-filters[open] summary:after{content:"–";}
.filter-grid{
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) !important;
  gap:12px !important;
  padding-top:12px !important;
  align-items:end !important;
}
.filter-grid label,
.field-label{
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:850 !important;
  letter-spacing:.01em !important;
}
input,select{
  min-height:40px !important;
  padding:9px 11px !important;
  border-radius:12px !important;
  border-color:var(--line-strong) !important;
  background:#fff !important;
  color:var(--ink) !important;
  font-size:14px !important;
}
input::placeholder{color:#a1978c;}
.filter-actions{align-self:end !important;display:flex !important;gap:8px !important;flex-wrap:nowrap !important;}
.button,button{
  min-height:38px !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  font-size:13px !important;
  font-weight:850 !important;
  box-shadow:none !important;
}
.button.small,button.small{min-height:32px !important;padding:7px 10px !important;font-size:12.5px !important;}
.button.secondary,.button.ghost,button.secondary,.ghost{
  background:#fff !important;
  color:var(--brand) !important;
  border:1px solid var(--line-strong) !important;
}
.button.primary{background:var(--brand2) !important;}
.danger-button{background:#8a2b1a !important;}
.client-insights-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.84fr) !important;
  gap:16px !important;
  margin:16px 0 !important;
  align-items:start !important;
}
.insights-left,.insights-right{display:grid !important;gap:16px !important;align-content:start !important;}
.viz-card,.streaming-activity-card,.top-tracks-card,#detail{padding:18px !important;overflow:hidden !important;}
.period-comparison-list{display:grid !important;gap:0 !important;}
.period-chart-card .period-row,
.viz-card .bar-row,
.platforms-card .bar-row{
  color:var(--ink) !important;
  text-decoration:none !important;
  border-bottom:1px solid var(--line) !important;
}
.period-chart-card .period-row:last-child,
.viz-card .bar-row:last-child,
.platforms-card .bar-row:last-child{border-bottom:0 !important;}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:minmax(82px,max-content) minmax(120px,1fr) max-content !important;
  column-gap:10px !important;
  min-height:42px !important;
  padding:8px 0 !important;
  align-items:center !important;
}
.period-meta strong{font-size:13px !important;line-height:1.05 !important;}
.period-meta small{font-size:10.5px !important;color:var(--muted) !important;text-transform:none !important;letter-spacing:.02em !important;}
.period-row b{
  height:6px !important;
  min-width:30px !important;
  width:max(5%,min(var(--bar,0%),100%)) !important;
  max-width:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--brand2),var(--brand)) !important;
}
.period-row.current b{height:7px !important;}
.period-row em,
.bar-row em{
  color:var(--muted) !important;
  font-size:12.5px !important;
  font-weight:850 !important;
  font-style:normal !important;
  text-align:right !important;
  white-space:nowrap !important;
  font-variant-numeric:tabular-nums !important;
}
.viz-card .bar-row,.platforms-card .bar-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) max-content !important;
  gap:6px 12px !important;
  min-height:42px !important;
  padding:9px 0 !important;
  align-items:center !important;
}
.viz-card .bar-row span,.platforms-card .bar-row span{
  grid-column:1 !important;
  grid-row:1 !important;
  color:var(--ink) !important;
  font-size:13px !important;
  font-weight:780 !important;
  line-height:1.2 !important;
  overflow:visible !important;
  white-space:normal !important;
  text-overflow:clip !important;
}
.viz-card .bar-row em,.platforms-card .bar-row em{grid-column:2 !important;grid-row:1 !important;min-width:0 !important;}
.viz-card .bar-row b,.platforms-card .bar-row b{
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  display:block !important;
  height:4px !important;
  min-width:34px !important;
  width:max(4%,min(var(--bar,0%),100%)) !important;
  max-width:100% !important;
  opacity:.72 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--brand2),var(--brand)) !important;
}
.viz-card .bar-row.tiny-bar b,.platforms-card .bar-row.tiny-bar b{width:34px !important;opacity:.42 !important;}
.geo-map-wrap{
  border:1px solid var(--line) !important;
  border-radius:18px !important;
  background:#dfece8 !important;
  aspect-ratio:2.55 / 1 !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 0 12px !important;
  overflow:hidden !important;
}
.geo-world-map{transform:scale(1.055) !important;transform-origin:center !important;}
.geo-ocean{fill:#dfece8 !important;}
.geo-country{stroke:rgba(18,63,53,.38) !important;stroke-width:.85 !important;}
.geo-country:hover,.geo-country.selected{filter:brightness(.95) saturate(1.08) !important;stroke:var(--brand) !important;stroke-width:1.4 !important;}
.compact-country-list,.territory-map-list.compact-country-list{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:7px !important;
  max-height:230px !important;
  overflow:auto !important;
  padding:0 3px 2px 0 !important;
}
.country-chip{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:8px !important;
  min-height:36px !important;
  padding:7px 9px !important;
  border:1px solid var(--line) !important;
  border-radius:12px !important;
  background:#fff !important;
}
.country-chip strong,.country-chip span{font-size:12px !important;line-height:1.1 !important;}
.activity-summary-row.two-up{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;margin:4px 0 12px !important;}
.activity-summary-row article{
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:15px !important;
  min-height:88px !important;
  padding:12px !important;
}
.activity-summary-row span{font-size:11.5px !important;color:var(--muted) !important;font-weight:850 !important;}
.activity-summary-row strong{font-size:24px !important;letter-spacing:-.04em !important;line-height:1.05 !important;margin-top:4px !important;}
.activity-summary-row em{font-size:12px !important;color:var(--muted) !important;line-height:1.25 !important;}
.table-scroll{width:100% !important;overflow:auto !important;-webkit-overflow-scrolling:touch !important;}
table{border-collapse:separate !important;border-spacing:0 !important;}
th{
  color:var(--muted) !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  background:rgba(247,234,217,.48) !important;
}
th:first-child{border-top-left-radius:10px;}
th:last-child{border-top-right-radius:10px;}
th,td{border-bottom:1px solid var(--line) !important;padding:9px 10px !important;line-height:1.28 !important;}
tr:last-child td{border-bottom:0 !important;}
.dense-table th,.dense-table td{padding:7px 8px !important;}
.compact-table{min-width:620px !important;}
.top-tracks-card .compact-table{min-width:0 !important;}
.top-tracks-card td:first-child strong{display:block;line-height:1.22;}
#detail .card-title-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:6px 12px !important;
  align-items:start !important;
}
#detail .card-title-row .helper{grid-column:1 !important;}
#detail .card-title-row .button{grid-column:2 !important;grid-row:1 / span 2 !important;align-self:start !important;}
#detail .statement-line-preview{min-width:980px !important;table-layout:fixed !important;}
#detail .statement-line-preview th,#detail .statement-line-preview td{font-size:11px !important;padding:6px 6px !important;}
#detail .track-artist-cell strong{font-size:11.4px !important;line-height:1.2 !important;}
#detail .track-artist-cell span,#detail .identifier-cell span{font-size:10.5px !important;line-height:1.2 !important;}
.pill,.status-good{
  border-radius:999px !important;
  padding:4px 8px !important;
  font-size:11px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
}
.related-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr)) !important;gap:10px !important;}
.related-pill{
  border:1px solid var(--line) !important;
  border-radius:16px !important;
  background:#fff !important;
  padding:12px !important;
}
.related-pill strong,.related-pill b{display:block !important;}
.related-pill span,.related-pill em{display:block !important;color:var(--muted) !important;font-style:normal !important;font-size:12px !important;}
.workflow-grid,.client-card-grid,.coverage-grid{gap:14px !important;}
.workflow-card,.client-card,.coverage-source,.issue-status{
  border-color:var(--line) !important;
  border-radius:18px !important;
  box-shadow:none !important;
}
.issue-grid{gap:10px !important;}
.checkbox-line input{width:auto !important;min-height:0 !important;}
.actions-cell{gap:6px !important;}
.actions-cell button,.actions-cell .button{white-space:nowrap !important;}
.inline-form.paid-form input{min-width:150px !important;}
@media(max-width:1100px){
  .client-insights-layout{grid-template-columns:1fr !important;}
  .compact-country-list,.territory-map-list.compact-country-list{grid-template-columns:repeat(3,minmax(0,1fr)) !important;max-height:none !important;}
  .statement-metrics.one-line-summary{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:820px){
  .topbar{grid-template-columns:1fr !important;gap:10px !important;padding:12px 16px !important;}
  .main-nav{justify-content:flex-start !important;width:100% !important;}
  .shell{padding:22px 14px 56px !important;}
  .client-hero{padding:24px !important;border-radius:22px !important;}
  .statement-metrics.one-line-summary{grid-template-columns:1fr !important;}
  .summary-date-metric strong{font-size:23px !important;}
  .filter-actions{grid-column:1 / -1 !important;justify-content:flex-start !important;}
  .compact-country-list,.territory-map-list.compact-country-list{grid-template-columns:1fr 1fr !important;}
  #detail .card-title-row{grid-template-columns:1fr !important;}
  #detail .card-title-row .button{grid-column:1 !important;grid-row:auto !important;width:max-content !important;}
}
@media(max-width:560px){
  body{font-size:14px !important;}
  .page-head h1,.hero h1,.client-hero h1{font-size:clamp(30px,10vw,40px) !important;letter-spacing:-.045em !important;}
  .card{padding:16px !important;border-radius:18px !important;}
  .metric{padding:16px !important;min-height:0 !important;}
  .hero-metric strong{font-size:38px !important;}
  .period-tabs{display:grid !important;grid-template-columns:1fr !important;}
  .period-tab{justify-content:center !important;}
  .period-chart-card .period-row{grid-template-columns:1fr max-content !important;}
  .period-row b{grid-column:1 / -1 !important;grid-row:2 !important;}
  .viz-card .bar-row,.platforms-card .bar-row{grid-template-columns:1fr !important;}
  .viz-card .bar-row em,.platforms-card .bar-row em{text-align:left !important;grid-column:1 !important;grid-row:2 !important;}
  .viz-card .bar-row b,.platforms-card .bar-row b{grid-row:3 !important;}
  .compact-country-list,.territory-map-list.compact-country-list{grid-template-columns:1fr !important;}
  .activity-summary-row.two-up{grid-template-columns:1fr !important;}
}
.client-totals small{display:block;width:100%;color:var(--muted);font-size:12px;line-height:1.35;margin-top:2px}

/* V5.29 review queue UX: actionable metadata warnings + bulk title merge review */
.review-panel{overflow:visible !important;}
.review-title-row{align-items:flex-start !important;}
.review-title-row h2{margin-bottom:4px !important;}
.pill.attention{background:var(--brand2) !important;color:#fff !important;border-color:transparent !important;}
.review-help-strip{background:rgba(255,255,255,.64);border:1px solid var(--line);border-radius:16px;padding:12px 14px;margin:8px 0 14px;color:var(--muted);font-size:13px;line-height:1.35;}
.review-help-strip strong{color:var(--ink);}
.metadata-warning-list{display:grid;gap:10px;}
.metadata-warning-card{display:grid;grid-template-columns:minmax(180px,.8fr) 32px minmax(220px,1fr) minmax(190px,.8fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(30,22,12,.04);}
.metadata-warning-main{display:grid;gap:2px;min-width:0;}
.metadata-warning-main strong{font-size:16px;line-height:1.18;}
.metadata-warning-main small{color:var(--muted);line-height:1.25;}
.metadata-warning-main.clean{border-left:3px solid var(--brand);padding-left:12px;}
.metadata-arrow{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:var(--cream);font-weight:900;color:var(--brand);}
.metadata-warning-note{min-width:0;color:var(--muted);font-size:12.5px;line-height:1.3;}
.metadata-warning-note span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);}
.metadata-warning-action{justify-self:end;}
.issue-label{display:block;color:var(--muted);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;margin-bottom:2px;}
.title-bulk-list{display:grid;gap:12px;}
.title-variant-card{display:grid;grid-template-columns:88px minmax(170px,.8fr) minmax(240px,.95fr) minmax(260px,1.15fr);gap:14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px;box-shadow:0 8px 24px rgba(30,22,12,.04);}
.title-variant-card.caution{border-color:#e7c481;background:#fffaf0;}
.checkbox-card{display:inline-flex !important;align-items:center !important;gap:7px !important;width:auto !important;border:1px solid var(--line);border-radius:999px;background:var(--panel);padding:8px 10px;font-size:12px;font-weight:900;color:var(--brand);}
.checkbox-card input{width:auto !important;margin:0 !important;padding:0 !important;}
.title-variant-context{display:grid;gap:4px;min-width:0;}
.title-variant-context strong{font-size:16px;line-height:1.18;}
.title-variant-context small{color:var(--muted);line-height:1.25;}
.status-chip{display:inline-flex;width:max-content;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900;line-height:1.15;border:1px solid var(--line);}
.status-chip.review{background:var(--good);color:var(--brand);}
.status-chip.caution{background:var(--warn);color:#7b4a14;}
.title-variant-suggestion{display:grid;gap:5px;}
.field-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-weight:900;}
.accepted-title-input{font-weight:850;font-size:15px;}
.title-variant-variants{min-width:0;}
.variant-chip-list{display:flex;flex-wrap:wrap;gap:6px;}
.variant-chip{display:inline-flex;flex-direction:column;gap:2px;max-width:100%;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:7px 9px;color:var(--ink) !important;}
.variant-chip strong{font-size:12.5px;line-height:1.15;color:var(--ink);}
.variant-chip em{font-style:normal;color:var(--muted);font-size:11px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px;}
.bulk-action-bar{position:sticky;bottom:14px;display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:14px;padding:12px;background:rgba(255,253,248,.92);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(30,22,12,.08);}
.accepted-title-panel{background:#fffdf8;}
.accepted-title-details summary{cursor:pointer;font-weight:900;display:flex;align-items:center;gap:8px;}
.inline-mini-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:6px;align-items:center;}
.metadata-fix-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(320px,1.2fr);gap:18px;align-items:start;}
.metadata-fix-summary{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:4px;}
.metadata-fix-summary strong{font-size:20px;letter-spacing:-.02em;line-height:1.1;}
.metadata-fix-summary small{color:var(--muted);}
.metadata-fix-form{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.metadata-fix-form .review-checkbox,.metadata-fix-form .actions{grid-column:1 / -1;}
.review-checkbox{display:flex !important;align-items:center !important;gap:9px !important;width:auto !important;font-weight:800 !important;}
.review-checkbox input{width:auto !important;}
.metadata-detail-table{min-width:980px !important;}
@media(max-width:1120px){
  .metadata-warning-card{grid-template-columns:1fr 28px 1fr;}
  .metadata-warning-note{grid-column:1 / 3;}
  .metadata-warning-action{grid-column:3;grid-row:2;}
  .title-variant-card{grid-template-columns:80px 1fr 1fr;}
  .title-variant-variants{grid-column:2 / -1;}
}
@media(max-width:820px){
  .metadata-warning-card,.title-variant-card,.metadata-fix-grid,.metadata-fix-form{grid-template-columns:1fr;}
  .metadata-arrow{transform:rotate(90deg);}
  .metadata-warning-note,.metadata-warning-action,.title-variant-variants{grid-column:auto;}
  .metadata-warning-action{justify-self:start;}
  .bulk-action-bar{position:static;display:grid;}
  .inline-mini-form{grid-template-columns:1fr;}
}

/* V5.30 review workflow + global presentation polish
   Final UI layer for metadata/raw-data decisions, title variant bulk review,
   and consistent button/spacing treatment across admin and client pages. */
.button, button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  text-align: center !important;
  text-decoration: none !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}
.actions, .page-actions, .form-actions, .actions-cell, .client-actions, .filter-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}
.actions form, .page-actions form, .form-actions form, .actions-cell form { margin: 0 !important; }
.page-head.compact-page-head { align-items: flex-start !important; margin-bottom: 20px !important; }
.page-head.compact-page-head h1 { max-width: 930px !important; font-size: clamp(34px, 4.5vw, 54px) !important; }
.card-title-row { flex-wrap: wrap !important; }
.card-title-row > div { min-width: 0 !important; }
.card-title-row .helper { max-width: 980px !important; margin-bottom: 0 !important; }
.empty-state {
  border: 1px dashed var(--line-strong) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,.62) !important;
  padding: 14px 16px !important;
  color: var(--muted) !important;
  font-weight: 750 !important;
}
.empty-state.success { background: var(--good) !important; border-style: solid !important; color: var(--brand) !important; }

/* Metadata warning cards: clear raw -> clean -> action flow. */
.metadata-panel, .title-review-panel, .accepted-title-panel, .unmatched-panel { padding: 20px !important; }
.metadata-warning-list { gap: 12px !important; }
.metadata-warning-card {
  grid-template-columns: minmax(220px, .95fr) minmax(240px, 1fr) minmax(220px, .9fr) auto !important;
  align-items: stretch !important;
  gap: 12px !important;
  padding: 14px !important;
  border-radius: 18px !important;
  border-left: 4px solid var(--brand2) !important;
  box-shadow: var(--shadow-soft) !important;
}
.metadata-warning-main, .metadata-raw-sample {
  background: var(--panel) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 12px !important;
  min-width: 0 !important;
  display: grid !important;
  align-content: start !important;
  gap: 4px !important;
}
.metadata-warning-main.source { background: #fffaf0 !important; }
.metadata-warning-main.clean { border-left: 0 !important; background: #f7fbf8 !important; padding-left: 12px !important; }
.metadata-warning-main strong, .metadata-raw-sample strong { font-size: 15px !important; line-height: 1.18 !important; overflow-wrap: anywhere !important; }
.metadata-warning-main small, .metadata-warning-main em, .metadata-raw-sample small {
  color: var(--muted) !important;
  font-size: 12.25px !important;
  line-height: 1.28 !important;
  font-style: normal !important;
}
.metadata-warning-action { align-self: center !important; justify-self: end !important; }
.metadata-arrow, .metadata-warning-note { display: none !important; }

/* Metadata detail decision page. */
.metadata-decision-card, .raw-source-review-card, .raw-detail-table-card { overflow: visible !important; }
.metadata-decision-grid {
  display: grid !important;
  grid-template-columns: minmax(220px, .8fr) minmax(220px, .8fr) minmax(340px, 1.25fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
}
.decision-summary {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 18px !important;
  padding: 16px !important;
  box-shadow: var(--shadow-soft) !important;
  display: grid !important;
  gap: 5px !important;
  align-content: start !important;
}
.decision-summary.source-summary { background: #fffaf0 !important; }
.decision-summary.clean-summary { background: #f7fbf8 !important; }
.decision-summary strong { font-size: 19px !important; line-height: 1.12 !important; letter-spacing: -.02em !important; overflow-wrap: anywhere !important; }
.decision-summary small { color: var(--muted) !important; line-height: 1.3 !important; }
.metadata-fix-form.refined-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  background: #fff !important;
  border-radius: 18px !important;
  padding: 16px !important;
  box-shadow: var(--shadow-soft) !important;
}
.metadata-fix-form.refined-form label { display: grid !important; gap: 6px !important; color: var(--muted) !important; font-size: 12.5px !important; }
.metadata-fix-form.refined-form label input { color: var(--ink) !important; }
.metadata-fix-form.refined-form .review-checkbox, .metadata-fix-form.refined-form .form-actions { grid-column: 1 / -1 !important; }
.metadata-fix-form.refined-form .form-actions .helper { margin: 0 !important; }
.raw-row-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(390px, 1fr)) !important; gap: 14px !important; }
.raw-row-card {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 18px !important;
  padding: 14px !important;
  box-shadow: var(--shadow-soft) !important;
  display: grid !important;
  gap: 12px !important;
}
.raw-row-head { display: flex !important; justify-content: space-between !important; gap: 12px !important; align-items: flex-start !important; }
.raw-row-head strong { display: block !important; font-size: 14px !important; line-height: 1.25 !important; overflow-wrap: anywhere !important; }
.raw-row-head small { display: block !important; color: var(--muted) !important; font-size: 12px !important; margin-top: 2px !important; }
.raw-decision-strip {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
.raw-decision-strip div {
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 10px !important;
  background: var(--panel-2) !important;
  min-width: 0 !important;
}
.raw-decision-strip div:last-child { background: #f7fbf8 !important; }
.raw-decision-strip span { display:block !important; color: var(--muted) !important; font-size: 10.5px !important; text-transform: uppercase !important; letter-spacing: .08em !important; font-weight: 900 !important; }
.raw-decision-strip strong { display:block !important; font-size: 13.5px !important; line-height: 1.18 !important; margin-top: 3px !important; overflow-wrap: anywhere !important; }
.raw-decision-strip em { display:block !important; color: var(--muted) !important; font-style: normal !important; font-size: 12.5px !important; line-height: 1.2 !important; margin-top: 3px !important; overflow-wrap: anywhere !important; }
.raw-field-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important; gap: 7px !important; }
.raw-field {
  border: 1px solid var(--line) !important;
  border-radius: 12px !important;
  padding: 8px 9px !important;
  background: #fffdfa !important;
  min-width: 0 !important;
}
.raw-field span { display:block !important; color: var(--muted) !important; font-size: 10.5px !important; line-height: 1.1 !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: .05em !important; }
.raw-field strong { display:block !important; color: var(--ink) !important; font-size: 12.5px !important; line-height: 1.18 !important; margin-top: 4px !important; overflow-wrap: anywhere !important; }
.review-details summary, .accepted-title-details summary {
  cursor: pointer !important;
  font-weight: 900 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-bottom: 10px !important;
}
.metadata-detail-table { min-width: 1120px !important; }

/* Title variants: reduce cognitive load and make bulk action obvious. */
.title-bulk-form { display: grid !important; gap: 12px !important; }
.title-bulk-list { gap: 12px !important; }
.title-variant-card {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  padding: 14px !important;
  border-radius: 18px !important;
  box-shadow: var(--shadow-soft) !important;
}
.title-variant-topline {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
.title-variant-body {
  display: grid !important;
  grid-template-columns: minmax(240px, .9fr) minmax(260px, .8fr) !important;
  gap: 12px !important;
  align-items: end !important;
}
.title-variant-context, .title-variant-suggestion, .title-variant-variants {
  background: var(--panel) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 12px !important;
}
.title-variant-suggestion input, .inline-mini-form input { max-width: none !important; }
.variant-chip-list { gap: 7px !important; }
.variant-chip { background: #fff !important; border-radius: 12px !important; }
.bulk-action-bar {
  bottom: 12px !important;
  border-radius: 16px !important;
  background: rgba(255,253,248,.96) !important;
}
.bulk-action-bar .helper { margin: 0 !important; }
.accepted-title-table { min-width: 960px !important; }

/* Broad admin/client consistency pass. */
.shell { max-width: 1360px !important; }
.main-nav { overflow-x: auto !important; padding-bottom: 2px !important; }
.main-nav a { flex: 0 0 auto !important; }
.client-card, .workflow-card, .coverage-source, .issue-status, .metric { box-shadow: var(--shadow-soft) !important; }
.table-scroll { border-radius: 14px !important; }
.table-scroll table { margin-bottom: 0 !important; }
.compact-input { min-height: 36px !important; }
.mini-details summary { padding: 5px 0 !important; }
.assign-form { margin-top: 8px !important; }
.filter-grid { gap: 12px !important; }
.filter-card .actions, .filter-actions { margin-top: 0 !important; }
.status-banner { align-items: flex-start !important; }
.status-banner .button { align-self: center !important; }

@media (max-width: 1180px) {
  .metadata-warning-card { grid-template-columns: 1fr 1fr !important; }
  .metadata-warning-action { justify-self: start !important; }
  .metadata-decision-grid { grid-template-columns: 1fr 1fr !important; }
  .metadata-fix-form.refined-form { grid-column: 1 / -1 !important; }
  .title-variant-body { grid-template-columns: 1fr !important; }
}
@media (max-width: 820px) {
  .page-head.compact-page-head h1 { font-size: clamp(30px, 9vw, 40px) !important; }
  .metadata-warning-card, .metadata-decision-grid, .raw-row-grid, .raw-decision-strip { grid-template-columns: 1fr !important; }
  .metadata-fix-form.refined-form { grid-template-columns: 1fr !important; }
  .raw-row-head, .title-variant-topline, .bulk-action-bar, .status-banner { display: grid !important; }
  .metadata-warning-action, .status-banner .button { justify-self: start !important; align-self: start !important; }
  .raw-field-grid { grid-template-columns: 1fr !important; }
  .actions, .page-actions, .form-actions, .actions-cell { align-items: stretch !important; }
  .actions .button, .actions button, .page-actions .button, .page-actions button, .form-actions .button, .form-actions button { width: 100% !important; }
}

/* V5.31 internal-server-error fix support + full UI spacing/button polish.
   This layer normalises the admin/client interface after the raw metadata review work. */
.button,
button,
button.small,
button.secondary,
.button.small,
.button.secondary {
  min-height: 38px !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  line-height: 1.18 !important;
  font-size: 13.5px !important;
  font-weight: 850 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  max-width: 100% !important;
}
.button.small,
button.small {
  min-height: 34px !important;
  padding: 7px 12px !important;
  font-size: 12.75px !important;
}
button.secondary,
.button.secondary,
.ghost {
  background: #fff !important;
  color: var(--brand) !important;
  border: 1px solid var(--line-strong) !important;
}
button.primary,
.button.primary {
  background: var(--brand2) !important;
  color: #fff !important;
}
.button.dark,
button.dark {
  background: #191715 !important;
  color: #fff !important;
}
.actions,
.page-actions,
.form-actions,
.actions-cell,
.client-actions,
.filter-actions,
.metadata-save-actions {
  gap: 9px !important;
  row-gap: 8px !important;
}
.actions-cell {
  align-items: flex-start !important;
}
.actions-cell .button,
.actions-cell button {
  width: auto !important;
}
form { margin: 0; }
label,
.field-label {
  line-height: 1.25 !important;
}
input,
select,
textarea {
  min-height: 40px !important;
  line-height: 1.25 !important;
}
.checkbox-line,
.checkbox-card {
  display: inline-flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  line-height: 1.25 !important;
}
.checkbox-line input,
.checkbox-card input {
  width: auto !important;
  min-height: 0 !important;
  margin-top: 2px !important;
}
.card {
  overflow: visible !important;
}
.table-scroll {
  overflow: auto !important;
  max-width: 100% !important;
  border: 1px solid var(--line) !important;
  border-radius: 16px !important;
  background: #fff !important;
}
.table-scroll table {
  margin: 0 !important;
}
th, td {
  line-height: 1.32 !important;
}
td .button,
td button {
  margin-top: 0 !important;
}
.notice.bad,
.metadata-error-notice {
  background: var(--bad) !important;
  border-color: #e2a698 !important;
}
.metadata-error-notice p {
  margin: 6px 0 0 !important;
}
.subtle-eyebrow {
  color: var(--muted) !important;
  letter-spacing: .13em !important;
  margin-bottom: 6px !important;
}

/* Review queue: clearer warning cards and variant decision cards. */
.review-panel {
  display: grid !important;
  gap: 14px !important;
}
.review-panel > .card-title-row {
  margin-bottom: 0 !important;
}
.review-help-strip {
  display: flex !important;
  gap: 8px !important;
  align-items: flex-start !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  padding: 11px 13px !important;
  color: var(--muted) !important;
  font-size: 13.25px !important;
  line-height: 1.35 !important;
}
.review-help-strip strong {
  color: var(--ink) !important;
  white-space: nowrap !important;
}
.metadata-warning-list,
.title-bulk-list {
  display: grid !important;
  gap: 12px !important;
}
.metadata-warning-card {
  grid-template-columns: minmax(210px, .9fr) minmax(220px, .95fr) minmax(240px, 1fr) minmax(125px, auto) !important;
  gap: 12px !important;
  padding: 13px !important;
}
.metadata-warning-action {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}
.metadata-warning-action .button {
  min-width: 116px !important;
}
.metadata-warning-main,
.metadata-raw-sample {
  min-height: 96px !important;
}
.metadata-warning-main strong,
.metadata-raw-sample strong,
.title-variant-context strong,
.variant-chip strong {
  max-width: 100% !important;
}

/* Metadata detail page: raw evidence appears before the save decision. */
.metadata-page-head {
  margin-bottom: 18px !important;
}
.decision-first-card {
  border-color: var(--line-strong) !important;
}
.raw-source-review-card .card-title-row,
.metadata-decision-card .card-title-row,
.raw-detail-table-card .card-title-row {
  align-items: flex-start !important;
}
.improved-raw-grid {
  grid-template-columns: repeat(auto-fit, minmax(430px, 1fr)) !important;
  gap: 14px !important;
}
.improved-raw-card {
  padding: 16px !important;
  gap: 13px !important;
  min-width: 0 !important;
}
.raw-row-head {
  min-width: 0 !important;
}
.raw-row-head > div {
  min-width: 0 !important;
}
.raw-row-head .pill {
  flex: 0 0 auto !important;
}
.raw-decision-strip {
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
}
.raw-decision-strip div {
  min-width: 0 !important;
}
.raw-field-grid {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
  gap: 8px !important;
}
.raw-field {
  min-height: 64px !important;
}
.improved-decision-card {
  background: #fff6df !important;
}
.improved-decision-grid {
  grid-template-columns: minmax(220px, .8fr) minmax(220px, .8fr) minmax(380px, 1.25fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
}
.improved-review-form {
  align-content: start !important;
}
.improved-review-form label {
  min-width: 0 !important;
}
.metadata-save-actions {
  align-items: center !important;
}
.metadata-save-actions .helper {
  flex: 1 1 220px !important;
  margin: 0 !important;
}
.review-details summary,
.accepted-title-details summary {
  padding: 2px 0 8px !important;
  list-style-position: outside !important;
}

/* Title variant review: keep the recommendation and edit field visually dominant. */
.title-variant-card {
  border-left: 4px solid var(--brand2) !important;
}
.title-variant-card.caution {
  border-left-color: #c98a20 !important;
}
.title-variant-topline {
  padding-bottom: 4px !important;
  border-bottom: 1px solid var(--line) !important;
}
.title-variant-body {
  grid-template-columns: minmax(230px, .85fr) minmax(360px, 1.1fr) !important;
  gap: 12px !important;
}
.title-variant-suggestion {
  border-color: var(--line-strong) !important;
  background: #fff !important;
}
.title-variant-suggestion .field-label {
  display: block !important;
  margin-bottom: 6px !important;
  color: var(--brand) !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  font-weight: 900 !important;
}
.accepted-title-input,
.compact-input {
  width: 100% !important;
}
.variant-chip-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}
.variant-chip {
  display: inline-grid !important;
  gap: 2px !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 7px 9px !important;
  border: 1px solid var(--line) !important;
}
.variant-chip em {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
.bulk-action-bar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px !important;
  border: 1px solid var(--line-strong) !important;
  box-shadow: 0 8px 20px rgba(33,24,13,.07) !important;
}
.bulk-action-bar button {
  flex: 0 0 auto !important;
}
.bulk-action-bar .helper {
  flex: 1 1 260px !important;
  line-height: 1.3 !important;
}
.inline-mini-form {
  display: grid !important;
  grid-template-columns: minmax(160px, 1fr) auto !important;
  gap: 8px !important;
  align-items: center !important;
}

/* Whole-tool presentation tightening. */
.page-head,
.hero,
.client-hero {
  gap: 22px !important;
}
.page-head p,
.client-hero p,
.lede {
  line-height: 1.45 !important;
}
.metric-grid,
.workflow-grid,
.client-card-grid,
.viz-grid,
.two-col,
.grid.two,
.coverage-grid {
  gap: 16px !important;
}
.metric,
.workflow-card,
.client-card,
.coverage-source,
.issue-status {
  overflow: hidden !important;
}
.metric span,
.workflow-card p,
.client-card p,
.coverage-source p,
.helper,
.muted {
  line-height: 1.35 !important;
}
.card-title-row {
  gap: 10px 16px !important;
}
.card-title-row h2 {
  overflow-wrap: anywhere !important;
}
.filter-grid label,
.grid-form label,
.refined-form label {
  gap: 6px !important;
}
.client-actions a,
.toolbar a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  line-height: 1.18 !important;
  white-space: normal !important;
}
.main-nav a {
  white-space: nowrap !important;
}
.status-banner {
  gap: 16px !important;
}
.status-banner > div {
  min-width: 0 !important;
}
.status-banner .button {
  flex: 0 0 auto !important;
}

@media (max-width: 1180px) {
  .metadata-warning-card {
    grid-template-columns: 1fr 1fr !important;
  }
  .metadata-warning-action {
    justify-content: flex-start !important;
  }
  .improved-decision-grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .improved-review-form {
    grid-column: 1 / -1 !important;
  }
  .title-variant-body {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 820px) {
  .metadata-warning-card,
  .improved-decision-grid,
  .improved-raw-grid,
  .raw-decision-strip,
  .metadata-fix-form.refined-form,
  .inline-mini-form {
    grid-template-columns: 1fr !important;
  }
  .raw-row-head,
  .bulk-action-bar,
  .status-banner {
    display: grid !important;
  }
  .metadata-warning-action,
  .status-banner .button {
    justify-content: flex-start !important;
    justify-self: start !important;
  }
  .bulk-action-bar button,
  .bulk-action-bar .helper {
    width: 100% !important;
  }
  .actions .button,
  .actions button,
  .page-actions .button,
  .page-actions button,
  .form-actions .button,
  .form-actions button {
    width: 100% !important;
  }
  .raw-field-grid {
    grid-template-columns: 1fr !important;
  }
}


/* V5.34 global presentation reset: compact action buttons, stable tables and cleaner page rhythm.
   This intentionally sits at the end of the stylesheet to neutralise earlier patch-layer drift. */
.card-title-row{
  border-top:0 !important;
  padding-top:0 !important;
  align-items:flex-start !important;
  gap:14px !important;
}
.card-title-row > *{min-width:0 !important;}
.card-title-row .helper{margin:2px 0 0 !important;}
.button,
button,
a.button,
button.small,
.button.small{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:38px !important;
  padding:9px 15px !important;
  border-radius:999px !important;
  line-height:1.08 !important;
  font-size:13px !important;
  font-weight:850 !important;
  letter-spacing:-.005em !important;
  white-space:nowrap !important;
  text-align:center !important;
  text-decoration:none !important;
  vertical-align:middle !important;
}
.button.small,button.small{min-height:32px !important;padding:7px 11px !important;font-size:12.5px !important;}
button.secondary,.button.secondary,.button.ghost,.ghost{background:#fff !important;color:var(--brand) !important;border:1px solid var(--line) !important;}
button.danger-button,.danger-button{background:#982f20 !important;color:#fff !important;}
.actions,.page-actions,.form-actions,.client-actions,.filter-actions,.button-row{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:9px !important;
  row-gap:8px !important;
}
.actions form,.page-actions form,.form-actions form,.button-row form,.client-actions form{margin:0 !important;display:inline-flex !important;}
.hero.compact-hero,.page-head{align-items:flex-start !important;}
.hero.compact-hero .button-row,.page-head .button-row,.page-head .actions{
  flex:0 0 auto !important;
  justify-content:flex-end !important;
  max-width:310px !important;
}
.hero.compact-hero .button-row{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  width:260px !important;
  margin-top:4px !important;
}
.hero.compact-hero .button-row .button,
.hero.compact-hero .button-row button{
  width:100% !important;
  min-height:42px !important;
  padding:10px 16px !important;
  border-radius:18px !important;
  white-space:normal !important;
  text-wrap:balance !important;
}
td.actions-cell{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  align-items:stretch !important;
  min-width:128px !important;
  width:128px !important;
  padding-top:10px !important;
  padding-bottom:10px !important;
}
td.actions-cell form{display:block !important;width:100% !important;margin:0 !important;}
td.actions-cell .button,td.actions-cell button{
  width:100% !important;
  min-height:32px !important;
  padding:7px 10px !important;
  border-radius:14px !important;
  font-size:12.25px !important;
  line-height:1.1 !important;
  white-space:normal !important;
}
.files-table td,.files-table th{vertical-align:middle !important;}
.files-table .file-cell strong{display:block;line-height:1.18;margin-bottom:4px;overflow-wrap:anywhere;}
.files-table .file-cell span{display:block;max-width:520px;line-height:1.35;}
.table-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;}
.table-wrap table{margin-bottom:0;}
.metric-grid,.workflow-grid,.client-card-grid,.two-col,.viz-grid{gap:16px !important;}
.card{overflow:auto !important;}
.form-grid-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.client-hero .lede,.client-hero p,.page-head p{line-height:1.45 !important;}
.period-tab,.toolbar a,.client-actions a{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:34px !important;line-height:1.1 !important;}
.status-banner{align-items:center !important;}
.status-banner .button{white-space:nowrap !important;}
.metadata-warning-card,.title-variant-card,.raw-row-card{overflow:hidden !important;}
.metadata-warning-action .button{width:auto !important;}
@media(max-width:900px){
  .hero.compact-hero,.page-head{display:grid !important;grid-template-columns:1fr !important;gap:18px !important;}
  .hero.compact-hero .button-row,.page-head .button-row,.page-head .actions{width:100% !important;max-width:none !important;justify-content:flex-start !important;}
  .hero.compact-hero .button-row{grid-template-columns:repeat(auto-fit,minmax(190px,1fr)) !important;}
  .button,button,a.button{white-space:normal !important;}
}
@media(max-width:720px){
  td.actions-cell{width:auto !important;min-width:150px !important;}
  .actions .button,.actions button,.page-actions .button,.page-actions button,.form-actions .button,.form-actions button{width:auto !important;}
  .status-banner{display:grid !important;grid-template-columns:1fr !important;}
}

/* V5.34 reporting integrity cards */
.integrity-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;}
.integrity-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:18px;padding:13px;background:#fff;min-width:0;}
.integrity-item strong{display:block;font-size:14px;line-height:1.18;margin-bottom:4px;}
.integrity-item p{margin:0;color:var(--muted);font-size:13px;line-height:1.34;}
.integrity-item .button{flex:0 0 auto;}
.integrity-item.critical{background:#fff1ed;border-color:#e5b0a4;}
.integrity-item.warning{background:#fff6e2;border-color:#ebd59d;}
.integrity-item.notice{background:#f7f4ee;}
.integrity-item.good{background:#e9f5ed;border-color:#badcc6;}
@media(max-width:720px){.integrity-item{display:grid;grid-template-columns:1fr;}.integrity-item .button{justify-self:start;}}

/* V5.35 PRS/MCPS co-writer guard rail */
.guardrail-card{border-color:#e5d39a;background:linear-gradient(180deg,#fffaf0 0%,#fff 72%);}
.guardrail-card .table-scroll{margin-top:12px;}
.guardrail-card td{vertical-align:top;}
.guardrail-card .muted{color:var(--muted);}

/* V5.36 payment-threshold carry-forward wording */
.status-explainer{
  display:block !important;
  margin-top:6px !important;
  color:var(--ink-muted,#6b675f) !important;
  font-weight:500 !important;
  line-height:1.35 !important;
}
.issue-status small{
  line-height:1.35 !important;
}
.close-period-form label small{
  display:block;
  margin-top:4px;
  color:var(--muted,#7a746a);
  font-size:12px;
  line-height:1.3;
}

/* v5.37 client layout and filter polish */
.client-insights-layout,
.insights-left,
.insights-right,
.viz-card,
.streaming-activity-card,
.territory-card,
.top-tracks-card,
.compact-card{min-width:0;}
.streaming-activity-card{overflow:hidden;}
.activity-summary-row.two-up{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.activity-summary-row article{min-width:0;}
.activity-summary-row strong,
.activity-summary-row em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.activity-table-scroll{width:100%;max-width:100%;overflow-x:auto;border-radius:14px;}
.activity-breakdown-table{width:100% !important;min-width:0 !important;table-layout:auto;}
.activity-breakdown-table th,
.activity-breakdown-table td{white-space:normal !important;word-break:normal;overflow-wrap:anywhere;}
.activity-breakdown-table th.num,
.activity-breakdown-table td.num{white-space:nowrap !important;}
.territory-card.local-map-card{overflow:hidden !important;}
.territory-card .geo-map-wrap{width:100%;max-width:100%;}
.territory-map-list.compact-country-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px;max-height:330px !important;overflow:auto;padding-right:2px;}
.country-chip{min-width:0;}
.country-chip strong{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.country-chip span{white-space:nowrap;}
.payment-inline-note{font-weight:850;}
.summary-date-metric .status-explainer{display:block;margin-top:6px;max-width:68ch;}
.period-tabs{flex-wrap:wrap;}
.period-tab{white-space:nowrap;}
@media(max-width:720px){
  .territory-map-list.compact-country-list{grid-template-columns:1fr !important;max-height:260px !important;}
  .activity-summary-row.two-up{grid-template-columns:1fr !important;}
}


/* v5.38 territory chips and micro-royalty preview */
.territory-map-list .country-chip.heat-5{background:#173f35 !important;color:#fff !important;border-color:#173f35 !important;}
.territory-map-list .country-chip.heat-5 strong,.territory-map-list .country-chip.heat-5 span{color:#fff !important;}
.territory-map-list .country-chip.heat-4{background:#dceae4 !important;color:var(--ink) !important;}
.territory-map-list .country-chip.heat-4 strong,.territory-map-list .country-chip.heat-4 span{color:var(--ink) !important;}
.micro-preview-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px !important;}
.micro-preview-note span{display:inline !important;}
.micro-preview-note .button{margin-left:auto;}
@media(max-width:720px){.micro-preview-note .button{margin-left:0;width:100%;justify-content:center;}}


/* V5.39 filter dropdown, payment wording and preview note polish */
select{
  min-height:46px !important;
  line-height:1.25 !important;
  padding-top:11px !important;
  padding-bottom:11px !important;
  padding-right:42px !important;
  text-overflow:ellipsis !important;
}
.filter-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;
  align-items:end !important;
}
.filter-grid label{
  min-width:0 !important;
}
.filter-grid label select,
.filter-grid label input{
  min-width:0 !important;
  height:46px !important;
}
.filter-actions{
  min-width:max-content !important;
  align-self:end !important;
}
.fx-note.compact-note{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-top:10px !important;
  margin-bottom:16px !important;
}
.fx-note.compact-note strong,
.fx-note.compact-note span{
  display:inline !important;
}
.summary-date-metric small:empty,
.summary-date-metric .status-explainer:empty{
  display:none !important;
}
@media(max-width:720px){
  .filter-actions{min-width:0 !important;width:100% !important;}
  .filter-actions .button,.filter-actions button{flex:1 1 auto !important;}
}

.nav-logout-form { display:inline; margin:0; }
.nav-logout-form button { font: inherit; color: inherit; background: transparent; border: 0; padding: 0; cursor: pointer; text-decoration: underline; }

/* V6.1.7 period performance alignment polish
   Keep the period label, bar start, and value column aligned across rows.
   Earlier rows used per-row max-content label columns, so bars drifted horizontally
   when labels such as "Selected" and "Previous statement" had different widths. */
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:160px minmax(160px,1fr) minmax(128px,max-content) !important;
  column-gap:20px !important;
  row-gap:4px !important;
  align-items:center !important;
  min-height:54px !important;
  padding:12px 0 !important;
}
.period-chart-card .period-row .period-meta{
  grid-column:1 !important;
  min-width:0 !important;
  display:block !important;
}
.period-chart-card .period-row .period-meta strong{
  display:block !important;
  font-size:18px !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
}
.period-chart-card .period-row .period-meta small{
  display:block !important;
  margin-top:4px !important;
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  color:var(--muted) !important;
}
.period-chart-card .period-row b{
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:center !important;
  width:max(8px,min(var(--bar,0%),100%)) !important;
  min-width:8px !important;
  max-width:100% !important;
  height:8px !important;
  border-radius:999px !important;
}
.period-chart-card .period-row.current b{
  height:9px !important;
}
.period-chart-card .period-row em{
  grid-column:3 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  min-width:128px !important;
  text-align:right !important;
  font-size:17px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:var(--muted) !important;
  font-variant-numeric:tabular-nums !important;
}
@media(max-width:760px){
  .period-chart-card .period-row{
    grid-template-columns:minmax(0,1fr) max-content !important;
    column-gap:12px !important;
  }
  .period-chart-card .period-row .period-meta{grid-column:1 !important;grid-row:1 !important;}
  .period-chart-card .period-row em{grid-column:2 !important;grid-row:1 !important;min-width:0 !important;font-size:14px !important;}
  .period-chart-card .period-row b{grid-column:1 / -1 !important;grid-row:2 !important;width:max(8px,min(var(--bar,0%),100%)) !important;}
}

/* V6.1.8 period performance row layout fix
   Move the amount to the same text line as the period label, and put the bar
   on its own aligned line underneath. This avoids the side-by-side grid drift
   where short prior-period bars appear to start at a different x-position. */
.period-chart-card .card-title-row{
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
}
.period-chart-card .card-title-row .helper{
  text-align:right !important;
  max-width:640px !important;
  line-height:1.25 !important;
}
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) max-content !important;
  grid-template-rows:auto auto !important;
  column-gap:24px !important;
  row-gap:9px !important;
  align-items:end !important;
  min-height:0 !important;
  padding:14px 0 16px !important;
  border-bottom:1px solid var(--line) !important;
}
.period-chart-card .period-row .period-meta{
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0 !important;
  display:block !important;
}
.period-chart-card .period-row .period-meta strong{
  display:block !important;
  font-size:18px !important;
  line-height:1.05 !important;
  letter-spacing:-.02em !important;
}
.period-chart-card .period-row .period-meta small{
  display:block !important;
  margin-top:4px !important;
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:850 !important;
  color:var(--muted) !important;
}
.period-chart-card .period-row em{
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  min-width:128px !important;
  text-align:right !important;
  font-size:17px !important;
  line-height:1 !important;
  font-weight:900 !important;
  color:var(--muted) !important;
  font-variant-numeric:tabular-nums !important;
  white-space:nowrap !important;
}
.period-chart-card .period-row b{
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  justify-self:start !important;
  align-self:center !important;
  width:max(8px,min(var(--bar,0%),100%)) !important;
  min-width:8px !important;
  max-width:100% !important;
  height:8px !important;
  border-radius:999px !important;
  margin:0 !important;
}
.period-chart-card .period-row.current b{
  height:9px !important;
}
@media(max-width:760px){
  .period-chart-card .card-title-row .helper{text-align:left !important;max-width:none !important;}
  .period-chart-card .period-row{
    grid-template-columns:minmax(0,1fr) !important;
    row-gap:8px !important;
  }
  .period-chart-card .period-row em{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
    min-width:0 !important;
    text-align:left !important;
    font-size:14px !important;
  }
  .period-chart-card .period-row b{
    grid-column:1 !important;
    grid-row:3 !important;
  }
}

/* V6.1.9 period performance precision layout
   Expert pass: rebuild the period-performance rows as a strict three-column
   table so every label baseline, bar start, bar height, and amount column aligns.
   This intentionally overrides all earlier period-row experiments above. */
.period-chart-card{
  overflow:hidden !important;
}
.period-chart-card .card-title-row{
  display:grid !important;
  grid-template-columns:minmax(0, 0.86fr) minmax(360px, 1fr) !important;
  align-items:start !important;
  column-gap:28px !important;
  margin-bottom:24px !important;
}
.period-chart-card .card-title-row h2{
  margin:0 !important;
  font-size:28px !important;
  line-height:1.08 !important;
  letter-spacing:-0.045em !important;
}
.period-chart-card .card-title-row .helper{
  justify-self:end !important;
  align-self:start !important;
  max-width:720px !important;
  margin:2px 0 0 !important;
  text-align:right !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  letter-spacing:-0.015em !important;
  color:var(--muted) !important;
}
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
  margin:0 !important;
}
.period-chart-card .period-row,
.period-chart-card .period-row.current{
  display:grid !important;
  grid-template-columns:174px minmax(180px, 1fr) 156px !important;
  grid-template-rows:44px !important;
  column-gap:22px !important;
  align-items:center !important;
  min-height:0 !important;
  padding:13px 0 !important;
  border-bottom:1px solid var(--line) !important;
  color:var(--ink) !important;
  text-decoration:none !important;
}
.period-chart-card .period-row:last-child{
  border-bottom:0 !important;
}
.period-chart-card .period-row .period-meta{
  grid-column:1 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-rows:22px 18px !important;
  align-content:center !important;
  gap:2px !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}
.period-chart-card .period-row .period-meta strong{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:20px !important;
  line-height:22px !important;
  font-weight:900 !important;
  letter-spacing:-0.035em !important;
  color:var(--ink) !important;
  white-space:nowrap !important;
}
.period-chart-card .period-row .period-meta small{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:18px !important;
  font-weight:850 !important;
  letter-spacing:-0.01em !important;
  text-transform:none !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-chart-card .period-row .period-bar-track{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  position:relative !important;
  justify-self:stretch !important;
  align-self:center !important;
  width:100% !important;
  height:10px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:rgba(58, 72, 62, 0.08) !important;
  overflow:hidden !important;
}
.period-chart-card .period-row .period-bar-track > b.period-bar-fill{
  display:block !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
  justify-self:auto !important;
  align-self:auto !important;
  width:clamp(0px, var(--bar, 0%), 100%) !important;
  min-width:0 !important;
  max-width:100% !important;
  height:10px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--brand2),var(--brand)) !important;
  box-shadow:none !important;
  opacity:1 !important;
}
.period-chart-card .period-row.current .period-bar-track,
.period-chart-card .period-row.current .period-bar-track > b.period-bar-fill{
  height:10px !important;
}
.period-chart-card .period-row em{
  grid-column:3 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  display:block !important;
  min-width:0 !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:right !important;
  font-size:18px !important;
  line-height:22px !important;
  font-weight:900 !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums !important;
  letter-spacing:-0.015em !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
}
@media(max-width:860px){
  .period-chart-card .card-title-row{
    grid-template-columns:1fr !important;
    row-gap:8px !important;
    margin-bottom:18px !important;
  }
  .period-chart-card .card-title-row .helper{
    justify-self:start !important;
    text-align:left !important;
    font-size:14px !important;
    max-width:none !important;
  }
  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto 10px !important;
    gap:10px 14px !important;
    padding:14px 0 !important;
  }
  .period-chart-card .period-row .period-meta{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .period-chart-card .period-row em{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    font-size:15px !important;
  }
  .period-chart-card .period-row .period-bar-track{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
  }
}

/* V6.2.0 period performance restrained client-card styling
   Restore the section to the same visual scale as the surrounding client cards:
   smaller heading/helper text, thin bars, compact rows, fixed aligned columns. */
.period-chart-card .card-title-row{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px !important;
  margin-bottom:14px !important;
}
.period-chart-card .card-title-row h2{
  flex:0 0 auto !important;
  margin:0 !important;
  font-size:19px !important;
  line-height:1.15 !important;
  letter-spacing:-0.015em !important;
  white-space:nowrap !important;
}
.period-chart-card .card-title-row .helper{
  flex:1 1 auto !important;
  justify-self:auto !important;
  align-self:flex-start !important;
  max-width:560px !important;
  margin:2px 0 0 !important;
  text-align:right !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  color:var(--muted) !important;
}
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
  margin:0 !important;
}
.period-chart-card .period-row,
.period-chart-card .period-row.current{
  display:grid !important;
  grid-template-columns:minmax(132px, 158px) minmax(0, 1fr) minmax(96px, max-content) !important;
  grid-template-rows:34px !important;
  column-gap:16px !important;
  align-items:center !important;
  min-height:0 !important;
  padding:8px 0 10px !important;
  border-bottom:1px solid var(--line) !important;
  color:var(--ink) !important;
  text-decoration:none !important;
}
.period-chart-card .period-row:last-child{
  border-bottom:0 !important;
}
.period-chart-card .period-row .period-meta{
  grid-column:1 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-rows:18px 14px !important;
  align-content:center !important;
  gap:2px !important;
  min-width:0 !important;
  padding:0 !important;
  margin:0 !important;
}
.period-chart-card .period-row .period-meta strong{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:15.5px !important;
  line-height:18px !important;
  font-weight:900 !important;
  letter-spacing:-0.02em !important;
  color:var(--ink) !important;
  white-space:nowrap !important;
}
.period-chart-card .period-row .period-meta small{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:11.5px !important;
  line-height:14px !important;
  font-weight:820 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-chart-card .period-row .period-bar-track,
.period-chart-card .period-row.current .period-bar-track{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  position:relative !important;
  justify-self:stretch !important;
  align-self:center !important;
  width:100% !important;
  height:3px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:rgba(58,72,62,0.08) !important;
  overflow:hidden !important;
}
.period-chart-card .period-row .period-bar-track > b.period-bar-fill,
.period-chart-card .period-row.current .period-bar-track > b.period-bar-fill{
  display:block !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
  justify-self:auto !important;
  align-self:auto !important;
  width:clamp(0px, var(--bar, 0%), 100%) !important;
  min-width:0 !important;
  max-width:100% !important;
  height:3px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--brand2),var(--brand)) !important;
  box-shadow:none !important;
  opacity:.72 !important;
}
.period-chart-card .period-row em{
  grid-column:3 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  display:block !important;
  min-width:0 !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:right !important;
  font-size:13px !important;
  line-height:18px !important;
  font-weight:850 !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums !important;
  letter-spacing:0 !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
}
@media(max-width:860px){
  .period-chart-card .card-title-row{
    display:block !important;
  }
  .period-chart-card .card-title-row h2{
    white-space:normal !important;
  }
  .period-chart-card .card-title-row .helper{
    max-width:none !important;
    margin-top:4px !important;
    text-align:left !important;
  }
  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto 3px !important;
    gap:7px 12px !important;
    padding:9px 0 11px !important;
  }
  .period-chart-card .period-row .period-meta{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .period-chart-card .period-row em{
    grid-column:2 !important;
    grid-row:1 !important;
    width:auto !important;
    font-size:12.5px !important;
  }
  .period-chart-card .period-row .period-bar-track{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
  }
}


/* V6.2.1 Equals Music full brand reskin
   Derived from the public Equals Music site source: dark panels, warm yellow accent,
   soft glass borders, Stolzl/Inter/Poppins typography and official CDN logo assets. */
:root{
  --bg:#111111;
  --panel:#171717;
  --panel-2:#202020;
  --panel-3:#0f0f0f;
  --ink:#f7f7f7;
  --muted:rgba(247,247,247,.68);
  --muted-strong:rgba(247,247,247,.82);
  --line:rgba(247,247,247,.11);
  --brand:#f5c044;
  --brand2:#f5c044;
  --brand-glow:#ffe6a0;
  --cream:rgba(245,192,68,.10);
  --good:rgba(245,192,68,.11);
  --warn:rgba(245,192,68,.16);
  --bad:rgba(235,105,76,.16);
  --shadow:0 28px 80px rgba(0,0,0,.32);
  --radius:24px;
  --eqs-logo-url:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/66bf6cf65546a2b089d4f956_Asset%208EM%20LOGO.svg");
  --eqs-motif-url:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/6696289f51dff0daa1439f03_sitemap-graphic_yellow.svg");
}

html{background:#111111!important;}
body{
  position:relative;
  isolation:isolate;
  min-height:100vh;
  background:
    radial-gradient(circle at 82% 12%, rgba(245,192,68,.13), transparent 34rem),
    radial-gradient(circle at 12% 0%, rgba(255,230,160,.055), transparent 22rem),
    linear-gradient(180deg,#151515 0%, #111111 52%, #0d0d0d 100%)!important;
  color:var(--ink)!important;
  font-family:"Stolzl","Stozl","Inter","Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:-.002em;
}
body::before{
  content:"";
  position:fixed;
  right:-14vw;
  top:14vh;
  width:min(680px,54vw);
  aspect-ratio:1;
  z-index:-1;
  background-image:var(--eqs-motif-url);
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  opacity:.10;
  filter:drop-shadow(0 0 22px rgba(245,192,68,.18));
  transform:rotate(-7deg);
  pointer-events:none;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 28%,rgba(0,0,0,.16));
  pointer-events:none;
}

.topbar{
  padding:16px 28px!important;
  background:rgba(17,17,17,.82)!important;
  border-bottom:1px solid var(--line)!important;
  box-shadow:0 16px 50px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.brand{
  gap:14px!important;
  color:var(--ink)!important;
  font-weight:700!important;
  letter-spacing:-.01em!important;
}
.brand-logo-wrap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:14px;
  border:1px solid rgba(245,192,68,.32);
  background:linear-gradient(145deg,rgba(245,192,68,.12),rgba(255,255,255,.025));
  box-shadow:0 0 26px rgba(245,192,68,.09);
}
.brand-logo{
  display:block;
  width:30px;
  max-height:30px;
  object-fit:contain;
}
.brand-mark{display:none!important;}
.brand-copy{display:grid;gap:1px;line-height:1.05;}
.brand-text{font-size:14px;font-weight:800;color:var(--ink);}
.brand-subtitle{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--brand);}
.main-nav{align-items:center;gap:7px!important;}
.main-nav a,
.nav-logout-form .link-button{
  border:1px solid rgba(247,247,247,.08)!important;
  background:rgba(247,247,247,.035)!important;
  color:rgba(247,247,247,.72)!important;
  border-radius:999px!important;
  font-weight:700!important;
  letter-spacing:-.005em!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
.main-nav a:hover,
.nav-logout-form .link-button:hover{
  transform:translateY(-1px);
  border-color:rgba(245,192,68,.62)!important;
  background:rgba(245,192,68,.12)!important;
  color:var(--brand)!important;
  filter:none!important;
}

.shell{max-width:1340px!important;padding-top:38px!important;}
.hero,.page-head,.control-head{color:var(--ink);}
.hero h1,.page-head h1,.client-hero h1{
  color:var(--ink)!important;
  font-weight:800!important;
  letter-spacing:-.055em!important;
}
.lede,.page-head p,.client-hero p,.helper,.muted,td span,.mono,small{
  color:var(--muted)!important;
}
.eyebrow{
  color:var(--brand)!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
}
a{color:var(--brand)!important;}

.card,.metric,.workflow-card,.client-card,.coverage-source,.status-banner,.notice,.mini-alert,
.client-hero,.portal-session-card,.filter-card,.viz-card,.period-chart-card,.streaming-activity-card,
.top-tracks-card,#detail,.review-card,.rules-table-card,.compact-card{
  background:
    linear-gradient(135deg,rgba(245,192,68,.055),transparent 31%),
    linear-gradient(180deg,rgba(32,32,32,.94),rgba(23,23,23,.92))!important;
  border:1px solid var(--line)!important;
  color:var(--ink)!important;
  box-shadow:var(--shadow)!important;
}
.card,.metric,.workflow-card,.client-card,.status-banner,.notice,.mini-alert{border-radius:22px!important;}
.card{overflow:auto;}
.subtle,.notice.subtle,.fx-note{
  background:linear-gradient(135deg,rgba(245,192,68,.085),rgba(255,255,255,.025))!important;
}
.client-hero.polished,
.client-hero{
  position:relative;
  overflow:hidden;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 82% 35%, rgba(245,192,68,.19), transparent 28rem),
    linear-gradient(180deg,rgba(32,32,32,.92),rgba(17,17,17,.86))!important;
}
.client-hero::after{
  content:"";
  position:absolute;
  right:clamp(-2rem, -3vw, -.5rem);
  bottom:clamp(-3rem, -6vw, -1rem);
  width:clamp(150px,22vw,300px);
  aspect-ratio:1;
  background-image:var(--eqs-motif-url);
  background-repeat:no-repeat;
  background-size:contain;
  background-position:center;
  opacity:.12;
  transform:rotate(-8deg);
  pointer-events:none;
}
.client-hero > *{position:relative;z-index:1;}

.login.card{
  overflow:hidden;
  position:relative;
  max-width:430px;
}
.login.card::before{
  content:"";
  display:block;
  width:84px;
  height:42px;
  margin:0 0 18px;
  background-image:var(--eqs-logo-url);
  background-repeat:no-repeat;
  background-position:left center;
  background-size:contain;
}
.login.card::after{
  content:"";
  position:absolute;
  right:-50px;
  bottom:-60px;
  width:180px;
  aspect-ratio:1;
  background-image:var(--eqs-motif-url);
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.08;
  transform:rotate(-8deg);
  pointer-events:none;
}
.auth-hero .lede,
.hero .lede{font-size:clamp(1rem,1.28vw,1.18rem)!important;line-height:1.5!important;}

.button,button,
.button.primary{
  background:var(--brand)!important;
  color:#111111!important;
  border:1px solid rgba(245,192,68,.72)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.25)!important;
  font-weight:800!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease!important;
}
.button:hover,button:hover{
  transform:translateY(-1px);
  background:#ffd36a!important;
  border-color:#ffe6a0!important;
  filter:none!important;
}
button.secondary,.button.secondary,.ghost,.toolbar a,.client-actions a,.link-button{
  background:rgba(247,247,247,.04)!important;
  color:var(--brand)!important;
  border:1px solid rgba(247,247,247,.12)!important;
  box-shadow:none!important;
}
button.secondary:hover,.button.secondary:hover,.ghost:hover,.toolbar a:hover,.client-actions a:hover,.link-button:hover{
  background:rgba(245,192,68,.12)!important;
  border-color:rgba(245,192,68,.56)!important;
}
.danger-button{background:#e16b50!important;color:#111!important;border-color:#e16b50!important;}

input,select,textarea{
  background:rgba(17,17,17,.78)!important;
  color:var(--ink)!important;
  border:1px solid rgba(247,247,247,.13)!important;
  border-radius:14px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
input::placeholder,textarea::placeholder{color:rgba(247,247,247,.38)!important;}
input:focus,select:focus,textarea:focus{
  outline:2px solid rgba(245,192,68,.48)!important;
  outline-offset:2px!important;
  border-color:rgba(245,192,68,.72)!important;
}
label,th{color:var(--muted-strong)!important;}

.metric strong,.activity-summary-row strong,.client-card h3,.workflow-card h3,
.card-title-row h2,h2,h3,.period-row .period-meta strong,.bar-row span{
  color:var(--ink)!important;
}
.metric{
  min-height:120px!important;
  background:linear-gradient(145deg,rgba(245,192,68,.075),rgba(32,32,32,.94) 42%,rgba(23,23,23,.94))!important;
}
.metric span{color:var(--brand)!important;letter-spacing:.08em;text-transform:uppercase!important;font-size:11.5px!important;}
.metric strong{font-weight:850!important;}
.metric.good,.metric.warn,.metric.bad{
  background:linear-gradient(145deg,rgba(245,192,68,.12),rgba(23,23,23,.92) 56%)!important;
}

.workflow-card b,
.eqs-step-badge{
  background:rgba(245,192,68,.13)!important;
  color:var(--brand)!important;
  border:1px solid rgba(245,192,68,.28)!important;
}
.workflow-card.done b{background:var(--brand)!important;color:#111!important;}
.workflow-card.attention b{background:rgba(245,192,68,.18)!important;color:var(--brand)!important;}
.workflow-card.locked{opacity:.64;}
.client-totals span,.pill,.country-chip,.related-pill,.file-chip,.month-chip{
  background:rgba(247,247,247,.04)!important;
  border:1px solid rgba(247,247,247,.12)!important;
  color:rgba(247,247,247,.76)!important;
}
.pill.imported,.month-chip.imported{background:rgba(245,192,68,.14)!important;color:var(--brand)!important;border-color:rgba(245,192,68,.38)!important;}
.pill.error,.month-chip.missing{background:rgba(224,93,65,.15)!important;color:#ff9b80!important;border-color:rgba(224,93,65,.34)!important;}
.pill.excluded,.month-chip.pending{background:rgba(247,247,247,.055)!important;color:rgba(247,247,247,.56)!important;}

.table-scroll,table{color:var(--ink)!important;}
table{background:transparent!important;}
th,td{border-bottom:1px solid var(--line)!important;}
th{font-size:11px!important;letter-spacing:.11em!important;text-transform:uppercase!important;}
tr:hover td{background:rgba(245,192,68,.025)!important;}
.faded{background:rgba(247,247,247,.03)!important;opacity:.58;}

.status-banner.is-ready,
.status-banner.needs-review{
  background:linear-gradient(145deg,rgba(245,192,68,.095),rgba(23,23,23,.92))!important;
}
.status-dot,.is-ready .status-dot{background:var(--brand)!important;box-shadow:0 0 16px rgba(245,192,68,.38)!important;}
.warn,.mini-alert{background:rgba(245,192,68,.13)!important;color:var(--ink)!important;}
.success{background:rgba(245,192,68,.13)!important;}
.coverage-source.warn,.coverage-source.good{background:rgba(23,23,23,.88)!important;border-color:rgba(245,192,68,.26)!important;}
.coverage-message{color:var(--muted)!important;}

/* Client dashboard charts and statement visuals. */
.bar-row,
.viz-card .bar-row,
.platforms-card .bar-row{
  border-bottom:1px solid var(--line)!important;
}
.bar-row b,
.viz-card .bar-row b,
.platforms-card .bar-row b,
.period-row b,
.period-bar-fill,
.amount-track,
.amount-fill{
  background:linear-gradient(90deg,#f5c044 0%,#ffe6a0 48%,rgba(247,247,247,.52) 100%)!important;
  box-shadow:0 0 18px rgba(245,192,68,.08)!important;
}
.period-row:not(.current) b,
.bar-row:not(:first-child) b{opacity:.74!important;}
.period-row.current b{opacity:1!important;}
.bar-row em,.period-row em{color:rgba(247,247,247,.72)!important;}
.period-chart-card .card-title-row h2,
.period-chart-card h2{font-size:22px!important;line-height:1.05!important;}
.period-comparison-list{gap:0!important;}
.period-row{
  border-bottom:1px solid var(--line)!important;
}
.period-row .period-meta small{color:var(--muted)!important;}

.activity-summary-row article,
.country-chip,
.coverage-source,
.related-pill,
.portal-session-card,
.file-card,
.client-card{
  background:rgba(247,247,247,.035)!important;
  border:1px solid rgba(247,247,247,.10)!important;
}
.compact-country-list,.territory-map-list{scrollbar-color:rgba(245,192,68,.6) rgba(255,255,255,.06);}
.geo-map-wrap,.map-shell,.territory-map{
  background:radial-gradient(circle at 55% 45%,rgba(245,192,68,.08),transparent 46%),rgba(255,255,255,.025)!important;
  border-color:var(--line)!important;
}

/* Branded quick filters / tabs. */
.quick-filter-bar,.statement-quick-tabs,.client-period-tabs,.tab-row{
  background:rgba(17,17,17,.38)!important;
  border:1px solid var(--line)!important;
  border-radius:999px!important;
  padding:5px!important;
}
.quick-filter-bar a,.statement-quick-tabs a,.client-period-tabs a,.tab-row a,
.quick-filter-bar button,.statement-quick-tabs button,.client-period-tabs button,.tab-row button{
  background:transparent!important;
  border-color:transparent!important;
  color:rgba(247,247,247,.68)!important;
  box-shadow:none!important;
}
.quick-filter-bar .active,.statement-quick-tabs .active,.client-period-tabs .active,.tab-row .active,
.quick-filter-bar a.active,.statement-quick-tabs a.active,.client-period-tabs a.active,.tab-row a.active{
  background:var(--brand)!important;
  color:#111!important;
}

/* Admin tables/details need a touch more contrast on dark. */
.review-detail-card,.metadata-panel,.raw-preview,.source-preview,.admin-rules-grid .card{
  background:linear-gradient(180deg,rgba(32,32,32,.95),rgba(17,17,17,.92))!important;
}
code,pre,.mono{
  color:rgba(255,230,160,.82)!important;
}
pre,code{
  background:rgba(0,0,0,.24)!important;
  border-color:rgba(247,247,247,.1)!important;
}
hr{border-color:var(--line)!important;}

/* Client statement export / detail preview readability. */
.statement-line-preview th,.statement-line-preview td,
.compact-table th,.compact-table td{color:var(--ink)!important;}
.statement-line-preview td span,.compact-table td span{color:var(--muted)!important;}
.negative-line td{background:transparent!important;color:inherit!important;}

@media(max-width:1050px){
  .main-nav{justify-content:flex-start!important;overflow-x:auto!important;flex-wrap:nowrap!important;width:100%;padding-bottom:4px;}
  .main-nav a,.nav-logout-form .link-button{white-space:nowrap!important;}
  body::before{right:-30vw;width:86vw;opacity:.075;}
}
@media(max-width:720px){
  .topbar{padding:14px 16px!important;}
  .brand-logo-wrap{width:38px;height:38px;border-radius:13px;}
  .brand-logo{width:28px;max-height:28px;}
  .shell{padding-left:14px!important;padding-right:14px!important;}
  .hero h1,.page-head h1,.client-hero h1{letter-spacing:-.045em!important;}
  .card,.metric,.client-hero{border-radius:18px!important;}
  body::before{top:20vh;right:-54vw;width:120vw;opacity:.055;}
}

/* V6.2.2 Equals Music brand polish pass
   Purpose: catch older admin/client components not covered by v6.2.1 and normalise
   spacing, button sizing, panels, tables and form controls across the whole app. */
:root{
  --eqs-bg:#111111;
  --eqs-panel:#171717;
  --eqs-panel-2:#202020;
  --eqs-panel-3:#0f0f0f;
  --eqs-white:#f7f7f7;
  --eqs-yellow:#f5c044;
  --eqs-yellow-soft:#ffe6a0;
  --eqs-muted:rgba(247,247,247,.68);
  --eqs-muted-strong:rgba(247,247,247,.84);
  --eqs-border:rgba(247,247,247,.11);
  --eqs-border-strong:rgba(245,192,68,.34);
  --eqs-card-radius:22px;
  --eqs-control-radius:14px;
  --eqs-shadow:0 26px 70px rgba(0,0,0,.32);
  --eqs-logo-url:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/66bf6cf65546a2b089d4f956_Asset%208EM%20LOGO.svg");
  --eqs-motif-url:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/6696289f51dff0daa1439f03_sitemap-graphic_yellow.svg");
}

/* Hard reset older cream/green surfaces that were still leaking through. */
.card,
.metric,
.workflow-card,
.client-card,
.coverage-source,
.status-banner,
.notice,
.mini-alert,
.client-hero,
.portal-session-card,
.filter-card,
.viz-card,
.period-chart-card,
.streaming-activity-card,
.top-tracks-card,
#detail,
.review-card,
.rules-table-card,
.compact-card,
.action-box,
.callout-text,
.integrity-item,
.metadata-warning-card,
.metadata-panel,
.metadata-decision-card,
.metadata-detail-table,
.metadata-error-notice,
.metadata-raw-sample,
.raw-source-review-card,
.raw-row-card,
.raw-detail-table-card,
.source-preview,
.source-summary,
.review-panel,
.title-variant-card,
.accepted-title-panel,
.unmatched-panel,
.file-card,
.adjustment-summary-card,
.admin-adjustment-card,
.guardrail-card,
.issue-status,
.statement-issue-card,
.related-card,
.period-card,
.checkbox-card,
.decision-first-card,
.improved-decision-card,
.improved-raw-card,
.status-explainer,
.payment-inline-note,
.clean-summary,
.empty-state,
.bulk-action-bar,
.inline-note{
  background:
    radial-gradient(circle at 18% 0%, rgba(245,192,68,.075), transparent 22rem),
    linear-gradient(180deg, rgba(32,32,32,.945), rgba(18,18,18,.925)) !important;
  border:1px solid var(--eqs-border) !important;
  border-radius:var(--eqs-card-radius) !important;
  color:var(--eqs-white) !important;
  box-shadow:var(--eqs-shadow) !important;
}

/* Use consistent internal spacing across cards; avoid cramped/uneven legacy cards. */
.card,
.metric,
.workflow-card,
.client-card,
.coverage-source,
.status-banner,
.notice,
.mini-alert,
.portal-session-card,
.filter-card,
.viz-card,
.period-chart-card,
.streaming-activity-card,
.top-tracks-card,
#detail,
.review-card,
.rules-table-card,
.compact-card,
.action-box,
.callout-text,
.integrity-item,
.metadata-warning-card,
.metadata-panel,
.metadata-decision-card,
.raw-source-review-card,
.raw-row-card,
.title-variant-card,
.related-card,
.period-card,
.statement-issue-card{
  padding:clamp(16px,1.65vw,22px) !important;
}

.card-title-row,
.review-title-row,
.title-variant-topline,
.coverage-source-head,
.issue-grid,
.status-banner,
.page-actions,
.actions,
.button-row,
.form-actions,
.compact-actions,
.filter-actions,
.client-actions,
.metadata-save-actions,
.bulk-action-bar{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.card-title-row,
.review-title-row,
.coverage-source-head{
  justify-content:space-between !important;
  margin-bottom:14px !important;
  min-height:0 !important;
}
.card-title-row > div,
.review-title-row > div,
.coverage-source-head > div{min-width:0 !important;}

/* Typography scale: bring all remaining old headings/text into the Equals site rhythm. */
h1,h2,h3,h4,
.hero h1,
.page-head h1,
.client-hero h1,
.metric strong,
.workflow-card h3,
.client-card h3,
.period-row .period-meta strong,
.bar-row span,
.issue-status strong,
.activity-summary-row strong,
.coverage-source-head h3,
.title-variant-card strong,
.review-card strong,
.link-strong{
  color:var(--eqs-white) !important;
  font-family:"Stolzl","Stozl","Inter","Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  text-rendering:optimizeLegibility !important;
}
h2,.card-title-row h2{font-size:clamp(18px,1.55vw,23px) !important;line-height:1.08 !important;font-weight:800 !important;letter-spacing:-.03em !important;margin:0 !important;}
h3{font-size:clamp(16px,1.25vw,19px) !important;line-height:1.16 !important;margin:0 0 7px !important;}
.helper,.muted,small,td span,.coverage-message,.workflow-card p,.client-card p,.line-note,.inline-note,.metadata-warning-main,.status-explainer,
.title-variant-context,.title-variant-variants,.variant-chip em,.definition-list dt,.definition-list dd{
  color:var(--eqs-muted) !important;
}
.eyebrow,.subtle-eyebrow,.issue-label,.field-label,.metric span,.coverage-source-head p,th,label{
  color:var(--eqs-yellow) !important;
}
label{font-size:12.5px !important;line-height:1.2 !important;font-weight:800 !important;letter-spacing:.04em !important;}
.helper{font-size:13px !important;line-height:1.42 !important;margin:4px 0 0 !important;}

/* Consistent button system. Previous versions mixed pill links, form buttons and tab buttons. */
a.button,
.button,
button:not(.link-button):not([data-dot]):not(.eqs-proof__btn):not(.eqs-mmm-btn),
input[type="submit"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.45rem !important;
  min-height:40px !important;
  width:auto !important;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid rgba(245,192,68,.72) !important;
  background:var(--eqs-yellow) !important;
  color:#111111 !important;
  font:800 13px/1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.005em !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-shadow:0 12px 30px rgba(0,0,0,.25) !important;
  cursor:pointer !important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease !important;
}
a.button:hover,
.button:hover,
button:not(.link-button):not([data-dot]):not(.eqs-proof__btn):not(.eqs-mmm-btn):hover,
input[type="submit"]:hover{
  transform:translateY(-1px) !important;
  background:var(--eqs-yellow-soft) !important;
  border-color:var(--eqs-yellow-soft) !important;
  box-shadow:0 16px 36px rgba(0,0,0,.32),0 0 18px rgba(245,192,68,.12) !important;
  filter:none !important;
}
a.button.small,.button.small,button.small{min-height:34px !important;padding:0 12px !important;font-size:12px !important;}
a.button.secondary,
.button.secondary,
button.secondary,
.ghost,
.toolbar a,
.client-actions a,
.metadata-warning-action a.button.secondary,
.link-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:36px !important;
  padding:0 13px !important;
  border-radius:999px !important;
  background:rgba(247,247,247,.045) !important;
  border:1px solid rgba(247,247,247,.13) !important;
  color:var(--eqs-yellow) !important;
  box-shadow:none !important;
  font:800 12.5px/1 "Inter","Poppins",system-ui,sans-serif !important;
  white-space:nowrap !important;
}
.link-button{background:transparent !important;border-color:transparent !important;padding:0 !important;min-height:auto !important;color:var(--eqs-yellow) !important;box-shadow:none !important;}
a.button.secondary:hover,
.button.secondary:hover,
button.secondary:hover,
.ghost:hover,
.toolbar a:hover,
.client-actions a:hover,
.link-button:hover{
  background:rgba(245,192,68,.12) !important;
  border-color:rgba(245,192,68,.55) !important;
  color:var(--eqs-yellow-soft) !important;
  box-shadow:none !important;
}
.danger-button{background:#e1684f !important;color:#111 !important;border-color:#e1684f !important;}

/* Forms: matched dark controls, equal height, predictable button/input rhythm. */
input,select,textarea,
.compact-input,
.accepted-title-input{
  display:block !important;
  width:100% !important;
  min-height:42px !important;
  padding:10px 12px !important;
  border-radius:var(--eqs-control-radius) !important;
  border:1px solid rgba(247,247,247,.13) !important;
  background:rgba(10,10,10,.72) !important;
  color:var(--eqs-white) !important;
  font:600 14px/1.25 "Inter","Poppins",system-ui,sans-serif !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
textarea{min-height:96px !important;line-height:1.45 !important;resize:vertical !important;}
select{padding-right:34px !important;}
select option{background:#171717 !important;color:#f7f7f7 !important;}
input::placeholder,textarea::placeholder{color:rgba(247,247,247,.38) !important;}
input[type="checkbox"],input[type="radio"]{
  width:16px !important;height:16px !important;min-height:16px !important;padding:0 !important;display:inline-block !important;accent-color:var(--eqs-yellow) !important;
}
.checkbox-line,.checkbox-card{display:flex !important;align-items:flex-start !important;gap:10px !important;color:var(--eqs-muted-strong) !important;}
.inline-form,.compact-form,.assign-form,.inline-mini-form,.mini-currency-form{
  display:grid !important;
  gap:10px !important;
  align-items:end !important;
}
.inline-form{grid-template-columns:minmax(220px,1fr) auto !important;}
.compact-form{grid-template-columns:minmax(220px,1fr) auto !important;}
.inline-mini-form{grid-template-columns:minmax(140px,1fr) auto !important;}
.grid-form,.refined-form,.metadata-fix-form,.work-split-form,.close-period-form{
  display:grid !important;
  gap:12px !important;
  align-items:end !important;
}

/* Tables: dark shell, cleaner cells, no old white table islands. */
.table-scroll,.table-wrap,.activity-table-scroll{
  overflow:auto !important;
  border:1px solid rgba(247,247,247,.08) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.018) !important;
  box-shadow:none !important;
}
table,.compact-table,.dense-table,.wide-table{
  width:100% !important;
  background:transparent !important;
  color:var(--eqs-white) !important;
  border-collapse:collapse !important;
}
th,td{
  border-bottom:1px solid rgba(247,247,247,.08) !important;
  padding:10px 10px !important;
  vertical-align:top !important;
}
th{
  color:rgba(247,247,247,.52) !important;
  font-size:10.8px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
}
td{font-size:13px !important;line-height:1.35 !important;color:rgba(247,247,247,.84) !important;}
td strong{color:var(--eqs-white) !important;}
tr:hover td{background:rgba(245,192,68,.028) !important;}
.num{text-align:right !important;font-variant-numeric:tabular-nums !important;white-space:nowrap !important;}

/* Pills, chips and badges. */
.pill,.status-chip,.variant-chip,.file-chip,.client-totals span,.country-chip,.related-pill,.month-chip,.source-summary,.raw-field,
.definition-list div,.issue-label{
  background:rgba(247,247,247,.045) !important;
  border:1px solid rgba(247,247,247,.12) !important;
  color:rgba(247,247,247,.78) !important;
  border-radius:999px !important;
}
.variant-chip,.raw-field,.definition-list div,.source-summary{border-radius:14px !important;}
.status-chip.caution,.pill.attention,.pill.error,.warning,.warn,.notice.warning{background:rgba(245,192,68,.14) !important;color:var(--eqs-yellow-soft) !important;border-color:rgba(245,192,68,.34) !important;}
.status-good,.success,.pill.imported,.month-chip.imported{background:rgba(245,192,68,.13) !important;color:var(--eqs-yellow) !important;border-color:rgba(245,192,68,.34) !important;}

/* Client-dashboard chart consistency: one thin visual language everywhere. */
.bar-row,
.viz-card .bar-row,
.platforms-card .bar-row{
  display:grid !important;
  grid-template-columns:minmax(170px,.9fr) minmax(120px,1fr) max-content !important;
  gap:10px 16px !important;
  align-items:center !important;
  min-height:38px !important;
  padding:8px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.08) !important;
}
.bar-row span{font-size:13px !important;line-height:1.18 !important;font-weight:800 !important;color:var(--eqs-white) !important;}
.bar-row b{
  display:block !important;
  height:3px !important;
  width:var(--bar,0%) !important;
  min-width:0 !important;
  max-width:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--eqs-yellow),rgba(247,247,247,.54)) !important;
  opacity:.82 !important;
  box-shadow:none !important;
}
.bar-row.tiny-bar b{width:22px !important;opacity:.55 !important;}
.bar-row em{font-size:12.5px !important;font-weight:850 !important;color:rgba(247,247,247,.72) !important;text-align:right !important;white-space:nowrap !important;}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:minmax(120px,.45fr) minmax(160px,1fr) max-content !important;
  gap:12px 18px !important;
  align-items:center !important;
  min-height:42px !important;
  padding:10px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.08) !important;
  text-decoration:none !important;
}
.period-chart-card .period-row .period-meta{display:grid !important;gap:2px !important;min-width:0 !important;}
.period-chart-card .period-row .period-meta strong{font-size:14px !important;line-height:1.05 !important;font-weight:900 !important;color:var(--eqs-white) !important;letter-spacing:-.02em !important;}
.period-chart-card .period-row .period-meta small{font-size:10.5px !important;line-height:1.15 !important;font-weight:850 !important;letter-spacing:.06em !important;text-transform:uppercase !important;color:rgba(247,247,247,.56) !important;}

/* V6.3.7 pre-deploy storage status */
.compact-metrics{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.compact-metrics .metric{min-height:112px !important;}
.compact-metrics .metric strong{font-size:24px !important;}
.compact-metrics .metric small{display:block;overflow-wrap:anywhere;line-height:1.3;}
@media(max-width:900px){.compact-metrics{grid-template-columns:1fr !important;}}
.period-chart-card .period-row .period-bar-track{display:block !important;height:3px !important;border-radius:999px !important;background:rgba(247,247,247,.07) !important;overflow:hidden !important;}
.period-chart-card .period-row .period-bar-fill{display:block !important;height:100% !important;width:var(--bar,0%) !important;min-width:0 !important;max-width:100% !important;background:linear-gradient(90deg,var(--eqs-yellow),rgba(247,247,247,.54)) !important;border-radius:999px !important;box-shadow:none !important;}
.period-chart-card .period-row.current .period-bar-track,.period-chart-card .period-row.current .period-bar-fill{height:3px !important;}
.period-chart-card .period-row em{font-size:13px !important;line-height:1 !important;font-weight:850 !important;color:rgba(247,247,247,.76) !important;white-space:nowrap !important;text-align:right !important;}

/* Maps and small charts were one of the places old light styling remained visible. */
.geo-map-wrap,.geo-ocean,.geo-world-map,.map-shell,.territory-map{
  background:rgba(247,247,247,.024) !important;
  fill:rgba(247,247,247,.025) !important;
  border:1px solid rgba(247,247,247,.08) !important;
  border-radius:18px !important;
}
.geo-country{stroke:rgba(17,17,17,.72) !important;}
.geo-country.muted-country,.muted-country{fill:rgba(247,247,247,.10) !important;}
.country-chip{display:grid !important;grid-template-columns:minmax(0,1fr) max-content !important;gap:10px !important;align-items:center !important;border-radius:14px !important;padding:8px 10px !important;text-decoration:none !important;}
.country-chip strong{overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}

/* Review queue and metadata cards: make status/action spacing stable. */
.metadata-warning-card,.title-variant-card,.raw-row-card,.improved-decision-card,.improved-raw-card{
  display:grid !important;
  gap:12px !important;
}
.metadata-warning-action,.actions-cell{display:flex !important;gap:8px !important;align-items:center !important;flex-wrap:wrap !important;}
.variant-chip-list,.title-variant-variants{display:flex !important;gap:7px !important;flex-wrap:wrap !important;}
.variant-chip{display:inline-flex !important;align-items:flex-start !important;gap:6px !important;padding:7px 10px !important;}

/* Client statement view tabs: active states and spacing. */
.period-tabs,.period-card .period-tabs,.quick-filter-bar,.statement-quick-tabs,.client-period-tabs,.tab-row{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  flex-wrap:wrap !important;
  width:fit-content !important;
  max-width:100% !important;
  padding:5px !important;
  border-radius:999px !important;
  border:1px solid rgba(247,247,247,.10) !important;
  background:rgba(0,0,0,.24) !important;
}
.period-tab,.period-tabs a,.quick-filter-bar a,.statement-quick-tabs a,.client-period-tabs a,.tab-row a,
.quick-filter-bar button,.statement-quick-tabs button,.client-period-tabs button,.tab-row button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  color:rgba(247,247,247,.68) !important;
  background:transparent !important;
  border:1px solid transparent !important;
  font:800 12px/1 "Inter","Poppins",system-ui,sans-serif !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
.period-tab.active,.period-tabs a.active,.quick-filter-bar .active,.statement-quick-tabs .active,.client-period-tabs .active,.tab-row .active{
  background:var(--eqs-yellow) !important;
  color:#111111 !important;
  border-color:var(--eqs-yellow) !important;
}

/* Fix card overflow without clipping dropdowns/forms. */
.filter-card,.period-card,.portal-session-card,.admin-adjustment-card,.statement-issue-card,.work-split-form,.metadata-fix-form{overflow:visible !important;}
.card:has(.table-scroll),.viz-card,.compact-card,#detail{overflow:hidden !important;}

@media(max-width:1050px){
  .card-title-row,.review-title-row,.coverage-source-head{align-items:flex-start !important;}
  .inline-form,.compact-form,.inline-mini-form{grid-template-columns:1fr !important;}
  .bar-row,.viz-card .bar-row,.platforms-card .bar-row{grid-template-columns:minmax(0,1fr) max-content !important;}
  .bar-row b{grid-column:1 / -1 !important;grid-row:2 !important;}
  .period-chart-card .period-row{grid-template-columns:minmax(0,1fr) max-content !important;gap:7px 12px !important;}
  .period-chart-card .period-row .period-bar-track{grid-column:1 / -1 !important;grid-row:2 !important;}
}
@media(max-width:720px){
  .shell{padding-top:24px !important;}
  .card,.metric,.client-hero{padding:16px !important;border-radius:18px !important;}
  .page-head,.hero{gap:18px !important;}
  .actions,.button-row,.form-actions,.compact-actions,.filter-actions,.client-actions{align-items:stretch !important;}
  a.button,.button,button:not(.link-button):not([data-dot]),input[type="submit"]{width:100% !important;}
  .period-tabs,.period-card .period-tabs,.quick-filter-bar,.statement-quick-tabs,.client-period-tabs,.tab-row{width:100% !important;border-radius:18px !important;}
  .period-tab,.period-tabs a,.quick-filter-bar a,.statement-quick-tabs a,.client-period-tabs a,.tab-row a{flex:1 1 auto !important;}
  .num{text-align:left !important;}
}



/* V6.2.3 Equals Music thorough surface rebalance
   Last-pass override layer for the areas that still had legacy/light styles after the reskin:
   territory/map, data tables, compact tables, controls and text-on-button contrast. */
:root{
  --eqs-bg:#111111;
  --eqs-bg-soft:#151515;
  --eqs-panel:#171717;
  --eqs-panel-2:#202020;
  --eqs-panel-3:#252525;
  --eqs-white:#f7f7f7;
  --eqs-text:rgba(247,247,247,.90);
  --eqs-text-soft:rgba(247,247,247,.76);
  --eqs-muted:rgba(247,247,247,.62);
  --eqs-muted-soft:rgba(247,247,247,.48);
  --eqs-line:rgba(247,247,247,.105);
  --eqs-line-strong:rgba(247,247,247,.16);
  --eqs-yellow:#f5c044;
  --eqs-yellow-soft:#ffe6a0;
  --eqs-black:#111111;
  --bg:#111111;
  --panel:#171717;
  --ink:#f7f7f7;
  --muted:rgba(247,247,247,.62);
  --line:rgba(247,247,247,.105);
  --brand:#f5c044;
  --brand2:#f5c044;
  --cream:rgba(245,192,68,.10);
  --good:rgba(245,192,68,.13);
  --warn:rgba(245,192,68,.16);
  --bad:rgba(225,104,79,.14);
  --shadow:0 22px 70px rgba(0,0,0,.30);
  --radius:22px;
}

html,body{background:#111111 !important;color:var(--eqs-text) !important;}
body{
  background:
    radial-gradient(circle at 82% 8%, rgba(245,192,68,.075), transparent 30%),
    radial-gradient(circle at 10% 28%, rgba(245,192,68,.045), transparent 25%),
    #111111 !important;
}
body::before{
  content:"";
  position:fixed;
  inset:auto -11vw 6vh auto;
  width:min(44vw,620px);
  aspect-ratio:1;
  pointer-events:none;
  z-index:-1;
  opacity:.08;
  background:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/6696289f51dff0daa1439f03_sitemap-graphic_yellow.svg") center/contain no-repeat;
  transform:rotate(-7deg);
  filter:drop-shadow(0 0 22px rgba(245,192,68,.16));
}

/* Reassert base surfaces so no legacy cream blocks remain inside dense components. */
.card,.metric,.workflow-card,.client-card,.status-banner,.notice,.mini-alert,
.coverage-source,.metadata-warning-card,.title-variant-card,.raw-row-card,
.improved-decision-card,.improved-raw-card,.portal-session-card,.login,
.activity-summary-row article,.related-pill,.source-summary,.definition-list div,
.fx-note,.admin-adjustment-card,.adjustment-summary-card,.rules-table-card,
.raw-detail-table-card,.bank-transaction-card,.statement-issue-card,.mapping-preview-card{
  background:
    linear-gradient(145deg, rgba(245,192,68,.035), transparent 42%),
    rgba(23,23,23,.92) !important;
  border:1px solid var(--eqs-line) !important;
  color:var(--eqs-text) !important;
  box-shadow:0 16px 48px rgba(0,0,0,.24) !important;
}
.subtle,.warn,.notice.warn,.coverage-source.warn,.coverage-source.good,
.metric.good,.metric.warn,.metric.bad,.status-banner.is-ready,.status-banner.needs-review{
  background:
    linear-gradient(145deg, rgba(245,192,68,.08), transparent 44%),
    rgba(23,23,23,.96) !important;
  color:var(--eqs-text) !important;
  border-color:rgba(245,192,68,.22) !important;
}
.card-title-row h2,.card h2,.card h3,.metric strong,.client-card h3,.workflow-card h3,
.coverage-source-head h3,.activity-summary-row strong,.related-pill strong,
td strong,.link-strong,strong{color:var(--eqs-white) !important;}
.helper,.muted,.mono,.card p,.metric small,.client-card p,.workflow-card p,
td span,.coverage-message,.coverage-source-head p,.activity-summary-row span,
.activity-summary-row em,.related-pill span,.related-pill em,.definition-list dt,
.definition-list dd small,.client-facing-note,.line-note{
  color:var(--eqs-muted) !important;
}
.eyebrow,.card-title-row .helper strong,.coverage-source-head strong,
a:not(.button):not(.period-tab):not(.bar-row):not(.country-chip):not(.period-row),
.link-button{color:var(--eqs-yellow) !important;}

/* Buttons and action rows: correct contrast, spacing and no text blending into fills. */
.actions,.button-row,.form-actions,.compact-actions,.filter-actions,.client-actions,
.metadata-warning-action,.actions-cell,.toolbar{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
a.button,.button,button:not(.link-button):not([data-dot]),input[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:40px !important;
  padding:0 15px !important;
  border-radius:999px !important;
  border:1px solid var(--eqs-yellow) !important;
  background:var(--eqs-yellow) !important;
  color:#111111 !important;
  font:850 12.75px/1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.005em !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-shadow:0 12px 28px rgba(0,0,0,.20) !important;
  filter:none !important;
  cursor:pointer !important;
}
a.button *,.button *,button:not(.link-button):not([data-dot]) *{color:#111111 !important;}
a.button:hover,.button:hover,button:not(.link-button):not([data-dot]):hover,input[type="submit"]:hover{
  transform:translateY(-1px) !important;
  background:var(--eqs-yellow-soft) !important;
  border-color:var(--eqs-yellow-soft) !important;
  color:#111111 !important;
  filter:none !important;
}
a.button.secondary,.button.secondary,button.secondary,.ghost,.toolbar a,.client-actions a,
.metadata-warning-action a.button.secondary,.period-card .button.ghost{
  background:rgba(247,247,247,.045) !important;
  border-color:rgba(247,247,247,.16) !important;
  color:var(--eqs-white) !important;
  box-shadow:none !important;
}
a.button.secondary *,.button.secondary *,button.secondary *,.ghost *{color:var(--eqs-white) !important;}
a.button.secondary:hover,.button.secondary:hover,button.secondary:hover,.ghost:hover,.toolbar a:hover,.client-actions a:hover{
  background:rgba(245,192,68,.12) !important;
  border-color:rgba(245,192,68,.48) !important;
  color:var(--eqs-yellow-soft) !important;
}
a.button.small,.button.small,button.small{
  min-height:34px !important;
  padding:0 12px !important;
  font-size:12px !important;
}
.danger-button,.button.danger,button.danger{
  background:#e1684f !important;
  border-color:#e1684f !important;
  color:#111111 !important;
}
.link-button{
  background:transparent !important;
  border:0 !important;
  color:var(--eqs-yellow) !important;
  min-height:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

/* Forms: consistent dark controls with readable option text. */
label{color:var(--eqs-text-soft) !important;font-weight:800 !important;}
input,select,textarea,.compact-input,.accepted-title-input{
  min-height:42px !important;
  border:1px solid rgba(247,247,247,.14) !important;
  border-radius:13px !important;
  background:rgba(8,8,8,.72) !important;
  color:var(--eqs-white) !important;
  font:600 14px/1.25 "Inter","Poppins",system-ui,sans-serif !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
select option{background:#171717 !important;color:#f7f7f7 !important;}
input::placeholder,textarea::placeholder{color:rgba(247,247,247,.38) !important;}
input:focus,select:focus,textarea:focus{
  outline:2px solid rgba(245,192,68,.42) !important;
  outline-offset:2px !important;
  border-color:rgba(245,192,68,.72) !important;
}

/* Tables: force every table into a readable dark data-table treatment, even when not wrapped. */
.card > table:not(.unstyled-table),.notice > table:not(.unstyled-table){
  display:block !important;
  overflow:auto !important;
  width:100% !important;
  border:1px solid rgba(247,247,247,.09) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.018) !important;
}
.table-scroll,.table-wrap,.activity-table-scroll,.wide.table-scroll{
  overflow:auto !important;
  border:1px solid rgba(247,247,247,.09) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.018) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018) !important;
}
table,.compact-table,.dense-table,.wide-table,.admin-rules-table,.statement-line-preview,
.activity-breakdown-table,.metadata-detail-table,.accepted-title-table,.csv-preview-table{
  width:100% !important;
  min-width:760px !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
  color:var(--eqs-text) !important;
}
.compact-table,.dense-table{min-width:640px !important;}
.statement-line-preview,.csv-preview-table{min-width:980px !important;}
th,td,.compact-table th,.compact-table td,.dense-table th,.dense-table td{
  background:transparent !important;
  border-bottom:1px solid rgba(247,247,247,.075) !important;
  padding:10px 11px !important;
  vertical-align:top !important;
  text-align:left !important;
}
th,.compact-table th,.dense-table th{
  position:sticky !important;
  top:0 !important;
  z-index:1 !important;
  background:#1b1b1b !important;
  color:rgba(247,247,247,.62) !important;
  font:900 10.7px/1.2 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
td,.compact-table td,.dense-table td{
  color:rgba(247,247,247,.84) !important;
  font:500 13px/1.36 "Inter","Poppins",system-ui,sans-serif !important;
}
td strong{font-weight:800 !important;color:var(--eqs-white) !important;}
td span,td small,.identifier-cell span,.track-artist-cell span{color:rgba(247,247,247,.58) !important;}
tbody tr:nth-child(even) td{background:rgba(247,247,247,.012) !important;}
tbody tr:hover td{background:rgba(245,192,68,.035) !important;}
td.num,th.num,.num{text-align:right !important;font-variant-numeric:tabular-nums !important;white-space:nowrap !important;}
.negative-line td,.faded td{background:transparent !important;}
.faded{opacity:.72 !important;background:transparent !important;}

/* Charts and bar rows: thin, aligned and readable, with no oversized typography. */
.viz-card,.period-chart-card,.platforms-card,.territory-card,.top-tracks-card,#detail{
  background:
    linear-gradient(145deg, rgba(245,192,68,.032), transparent 44%),
    rgba(23,23,23,.94) !important;
  overflow:hidden !important;
}
.viz-card .card-title-row,.territory-card .card-title-row,.top-tracks-card .card-title-row,#detail .card-title-row{
  align-items:flex-start !important;
  gap:12px !important;
  margin-bottom:12px !important;
}
.card-title-row h2{font-size:19px !important;line-height:1.1 !important;letter-spacing:-.018em !important;}
.card-title-row .helper{font-size:12.5px !important;line-height:1.35 !important;color:var(--eqs-muted) !important;}
.bar-row,.viz-card .bar-row,.platforms-card .bar-row{
  display:grid !important;
  grid-template-columns:minmax(160px,.92fr) minmax(100px,1fr) max-content !important;
  gap:10px 14px !important;
  align-items:center !important;
  min-height:38px !important;
  padding:8px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.075) !important;
  text-decoration:none !important;
  color:var(--eqs-text) !important;
}
.bar-row span{
  color:var(--eqs-white) !important;
  font:800 12.75px/1.18 "Inter","Poppins",system-ui,sans-serif !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
.bar-row b{
  display:block !important;
  height:3px !important;
  width:var(--bar,0%) !important;
  min-width:0 !important;
  max-width:100% !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--eqs-yellow),rgba(247,247,247,.46)) !important;
  box-shadow:none !important;
  opacity:.84 !important;
}
.bar-row.tiny-bar b{width:20px !important;opacity:.52 !important;}
.bar-row em{color:rgba(247,247,247,.70) !important;font:850 12.25px/1 "Inter","Poppins",system-ui,sans-serif !important;text-align:right !important;white-space:nowrap !important;}
.period-chart-card .period-row{
  display:grid !important;
  grid-template-columns:minmax(115px,.43fr) minmax(160px,1fr) max-content !important;
  gap:10px 16px !important;
  align-items:center !important;
  min-height:40px !important;
  padding:9px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.075) !important;
  color:var(--eqs-text) !important;
  text-decoration:none !important;
}
.period-chart-card .period-meta strong{font:900 13.5px/1.05 "Inter","Poppins",system-ui,sans-serif !important;color:var(--eqs-white) !important;}
.period-chart-card .period-meta small{font:850 10.2px/1.15 "Inter","Poppins",system-ui,sans-serif !important;color:rgba(247,247,247,.54) !important;letter-spacing:.055em !important;text-transform:uppercase !important;}
.period-chart-card .period-bar-track{height:3px !important;border-radius:999px !important;background:rgba(247,247,247,.07) !important;overflow:hidden !important;}
.period-chart-card .period-bar-fill{display:block !important;height:100% !important;width:var(--bar,0%) !important;min-width:0 !important;background:linear-gradient(90deg,var(--eqs-yellow),rgba(247,247,247,.46)) !important;border-radius:999px !important;}
.period-chart-card .period-row em{font:850 12.6px/1 "Inter","Poppins",system-ui,sans-serif !important;color:rgba(247,247,247,.72) !important;text-align:right !important;white-space:nowrap !important;}

/* Territory / map: remove old pastel map styles and make chips + SVG fit the brand. */
.client-insights-layout{align-items:start !important;}
.insights-right,.insights-left{display:grid !important;gap:16px !important;align-content:start !important;}
.territory-card.local-map-card{padding:18px !important;overflow:hidden !important;}
.territory-card .card-title-row .helper{display:inline !important;color:var(--eqs-muted) !important;}
.geo-map-wrap{
  position:relative !important;
  height:286px !important;
  margin:0 0 12px !important;
  border:1px solid rgba(247,247,247,.09) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:
    radial-gradient(circle at 28% 20%, rgba(245,192,68,.12), transparent 32%),
    linear-gradient(180deg, rgba(247,247,247,.04), rgba(247,247,247,.018)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.geo-world-map{display:block !important;width:100% !important;height:100% !important;background:transparent !important;}
.geo-ocean{fill:rgba(247,247,247,.022) !important;stroke:none !important;}
.geo-country{
  stroke:rgba(17,17,17,.76) !important;
  stroke-width:.58 !important;
  vector-effect:non-scaling-stroke !important;
  transition:fill .16s ease,stroke .16s ease,filter .16s ease,opacity .16s ease !important;
}
.geo-country.muted-country,.muted-country,.geo-country.heat-0{fill:rgba(247,247,247,.105) !important;opacity:.62 !important;}
.geo-country.heat-1{fill:rgba(245,192,68,.32) !important;opacity:.94 !important;}
.geo-country.heat-2{fill:rgba(245,192,68,.46) !important;opacity:.96 !important;}
.geo-country.heat-3{fill:rgba(245,192,68,.62) !important;opacity:.98 !important;}
.geo-country.heat-4{fill:rgba(245,192,68,.78) !important;opacity:1 !important;}
.geo-country.heat-5{fill:var(--eqs-yellow) !important;opacity:1 !important;}
.geo-country.selected{stroke:var(--eqs-white) !important;stroke-width:1.45 !important;filter:drop-shadow(0 0 6px rgba(245,192,68,.35)) !important;}
.geo-country-link:hover .geo-country,.geo-country-link:focus .geo-country{stroke:var(--eqs-white) !important;stroke-width:1.25 !important;filter:brightness(1.12) drop-shadow(0 0 5px rgba(245,192,68,.28)) !important;}
.compact-country-list,.territory-map-list.compact-country-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:7px !important;
  max-height:214px !important;
  overflow:auto !important;
  padding-right:4px !important;
  margin-top:0 !important;
}
.country-chip,.territory-map-list .country-chip{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) max-content !important;
  align-items:center !important;
  gap:12px !important;
  min-height:38px !important;
  padding:8px 10px !important;
  border-radius:14px !important;
  border:1px solid rgba(247,247,247,.10) !important;
  background:rgba(247,247,247,.038) !important;
  color:var(--eqs-text) !important;
  text-decoration:none !important;
  box-shadow:none !important;
}
.country-chip strong{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font:800 12.25px/1.1 "Inter","Poppins",system-ui,sans-serif !important;color:var(--eqs-white) !important;}
.country-chip span{white-space:nowrap !important;font:850 11.9px/1 "Inter","Poppins",system-ui,sans-serif !important;color:rgba(247,247,247,.68) !important;font-variant-numeric:tabular-nums !important;}
.country-chip:hover,.territory-map-list .country-chip:hover{border-color:rgba(245,192,68,.44) !important;background:rgba(245,192,68,.095) !important;color:var(--eqs-white) !important;}
.territory-map-list .country-chip.heat-1{background:rgba(245,192,68,.070) !important;border-color:rgba(245,192,68,.16) !important;}
.territory-map-list .country-chip.heat-2{background:rgba(245,192,68,.095) !important;border-color:rgba(245,192,68,.20) !important;}
.territory-map-list .country-chip.heat-3{background:rgba(245,192,68,.125) !important;border-color:rgba(245,192,68,.26) !important;}
.territory-map-list .country-chip.heat-4{background:rgba(245,192,68,.16) !important;border-color:rgba(245,192,68,.34) !important;}
.territory-map-list .country-chip.heat-5{background:var(--eqs-yellow) !important;border-color:var(--eqs-yellow) !important;color:#111111 !important;}
.territory-map-list .country-chip.heat-5 strong,.territory-map-list .country-chip.heat-5 span{color:#111111 !important;}

/* Activity cards and related allocations: avoid old white cards and pale text. */
.activity-summary-row{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;margin:8px 0 12px !important;}
.activity-summary-row article{border-radius:16px !important;padding:12px !important;background:rgba(247,247,247,.04) !important;border:1px solid rgba(247,247,247,.10) !important;}
.activity-summary-row span{color:rgba(247,247,247,.60) !important;font:850 11.75px/1.2 "Inter","Poppins",system-ui,sans-serif !important;}
.activity-summary-row strong{color:var(--eqs-white) !important;font-size:22px !important;line-height:1.05 !important;letter-spacing:-.035em !important;}
.activity-summary-row em{color:rgba(247,247,247,.64) !important;font:750 12px/1.25 "Inter","Poppins",system-ui,sans-serif !important;}
.related-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;gap:10px !important;}
.related-pill{display:block !important;border-radius:16px !important;padding:12px !important;}
.related-pill b{color:var(--eqs-yellow) !important;font-size:20px !important;}

/* Tabs / filter strip: active yellow always uses black text; inactive remains readable. */
.period-tabs,.quick-filter-bar,.statement-quick-tabs,.client-period-tabs,.tab-row{
  background:rgba(0,0,0,.26) !important;
  border:1px solid rgba(247,247,247,.10) !important;
}
.period-tab,.period-tabs a,.quick-filter-bar a,.statement-quick-tabs a,.client-period-tabs a,.tab-row a,
.quick-filter-bar button,.statement-quick-tabs button,.client-period-tabs button,.tab-row button{
  color:rgba(247,247,247,.72) !important;
  background:transparent !important;
  border:1px solid transparent !important;
  min-height:34px !important;
}
.period-tab.active,.period-tabs a.active,.quick-filter-bar .active,.statement-quick-tabs .active,.client-period-tabs .active,.tab-row .active{
  background:var(--eqs-yellow) !important;
  border-color:var(--eqs-yellow) !important;
  color:#111111 !important;
}
.advanced-filters summary{color:var(--eqs-yellow) !important;}

@media(max-width:1150px){
  .client-insights-layout{grid-template-columns:1fr !important;}
  .geo-map-wrap{height:300px !important;}
}
@media(max-width:760px){
  .card,.metric,.client-hero,.territory-card.local-map-card{padding:16px !important;border-radius:18px !important;}
  .actions,.button-row,.form-actions,.compact-actions,.filter-actions,.client-actions{align-items:stretch !important;}
  a.button,.button,button:not(.link-button):not([data-dot]),input[type="submit"]{width:100% !important;white-space:normal !important;text-align:center !important;}
  .bar-row,.viz-card .bar-row,.platforms-card .bar-row{grid-template-columns:minmax(0,1fr) max-content !important;gap:7px 10px !important;}
  .bar-row b{grid-column:1 / -1 !important;grid-row:2 !important;}
  .bar-row em{grid-column:2 !important;text-align:right !important;}
  .period-chart-card .period-row{grid-template-columns:minmax(0,1fr) max-content !important;gap:7px 10px !important;}
  .period-chart-card .period-bar-track{grid-column:1 / -1 !important;grid-row:2 !important;}
  .geo-map-wrap{height:232px !important;}
  .compact-country-list,.territory-map-list.compact-country-list{max-height:260px !important;}
  .activity-summary-row{grid-template-columns:1fr !important;}
  td.num,th.num,.num{text-align:left !important;}
}


/* V6.2.4 precision alignment and export readability pass
   Final override for period performance after the dark rebrush. The previous
   rebrush let the label column expand as a fraction of the card, which pushed
   the bars too far right on wide screens. This fixes the card to a real
   three-column data layout: label | bar | amount, with the header helper aligned
   to the same bar/amount area. */
.period-chart-card .card-title-row{
  display:grid !important;
  grid-template-columns:190px minmax(220px,1fr) max-content !important;
  column-gap:16px !important;
  row-gap:4px !important;
  align-items:start !important;
  margin-bottom:20px !important;
}
.period-chart-card .card-title-row h2{
  grid-column:1 !important;
  margin:0 !important;
  font-size:22px !important;
  line-height:1.06 !important;
  letter-spacing:-.025em !important;
  white-space:normal !important;
}
.period-chart-card .card-title-row .helper{
  grid-column:2 / 4 !important;
  justify-self:start !important;
  align-self:start !important;
  max-width:760px !important;
  margin:1px 0 0 !important;
  text-align:left !important;
  color:rgba(247,247,247,.60) !important;
  font:700 13.25px/1.35 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.006em !important;
}
.period-chart-card .period-comparison-list{
  display:grid !important;
  gap:0 !important;
  margin:0 !important;
}
.period-chart-card .period-row,
.period-chart-card .period-row.current{
  display:grid !important;
  grid-template-columns:190px minmax(220px,1fr) max-content !important;
  grid-template-rows:44px !important;
  column-gap:16px !important;
  align-items:center !important;
  min-height:0 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.085) !important;
  color:var(--eqs-text) !important;
  text-decoration:none !important;
}
.period-chart-card .period-row:last-child{border-bottom:0 !important;}
.period-chart-card .period-row .period-meta{
  grid-column:1 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-rows:20px 16px !important;
  align-content:center !important;
  gap:3px !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.period-chart-card .period-row .period-meta strong{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--eqs-white) !important;
  font:900 16px/20px "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.024em !important;
  white-space:nowrap !important;
}
.period-chart-card .period-row .period-meta small{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:rgba(247,247,247,.56) !important;
  font:850 10.6px/16px "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.065em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-chart-card .period-row .period-bar-track{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:4px !important;
  margin:0 !important;
  padding:0 !important;
  align-self:center !important;
  border-radius:999px !important;
  background:rgba(247,247,247,.085) !important;
  overflow:hidden !important;
}
.period-chart-card .period-row .period-bar-track > b.period-bar-fill{
  display:block !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:clamp(0px,var(--bar,0%),100%) !important;
  min-width:0 !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--eqs-yellow),rgba(247,247,247,.54)) !important;
  opacity:.88 !important;
  box-shadow:none !important;
}
.period-chart-card .period-row.current .period-bar-track,
.period-chart-card .period-row.current .period-bar-track > b.period-bar-fill{
  height:4px !important;
}
.period-chart-card .period-row em{
  grid-column:3 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  display:block !important;
  min-width:122px !important;
  margin:0 !important;
  padding:0 !important;
  text-align:right !important;
  color:rgba(247,247,247,.76) !important;
  font:900 14px/1 "Inter","Poppins",system-ui,sans-serif !important;
  font-style:normal !important;
  font-variant-numeric:tabular-nums !important;
  letter-spacing:-.012em !important;
  white-space:nowrap !important;
}
@media(max-width:900px){
  .period-chart-card .card-title-row{
    grid-template-columns:1fr !important;
    row-gap:7px !important;
  }
  .period-chart-card .card-title-row h2,
  .period-chart-card .card-title-row .helper{
    grid-column:1 !important;
    text-align:left !important;
    justify-self:start !important;
    max-width:none !important;
  }
  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto 4px !important;
    gap:8px 14px !important;
    padding:12px 0 !important;
  }
  .period-chart-card .period-row .period-meta{grid-column:1 !important;grid-row:1 !important;}
  .period-chart-card .period-row em{grid-column:2 !important;grid-row:1 !important;min-width:0 !important;font-size:13px !important;}
  .period-chart-card .period-row .period-bar-track{grid-column:1 / -1 !important;grid-row:2 !important;}
}

/* Keep yellow active tab/button text black even where inner spans/strong tags inherit old colours. */
.button:not(.secondary):not(.ghost),
.button:not(.secondary):not(.ghost) *,
button:not(.secondary):not(.ghost):not(.link-button):not([data-dot]),
button:not(.secondary):not(.ghost):not(.link-button):not([data-dot]) *,
.period-tab.active,
.period-tab.active *,
.period-tabs a.active,
.period-tabs a.active *,
.quick-filter-bar .active,
.quick-filter-bar .active *,
.statement-quick-tabs .active,
.statement-quick-tabs .active *{
  color:#111111 !important;
}

/* V6.2.8 admin navigation, compact client controls and PDF-message polish support.
   This is a final specificity layer after the dark brand rebrush. */
.login.card .auth-error,
.login.card .notice.auth-error{
  display:block !important;
  margin:10px 0 14px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid rgba(245,192,68,.38) !important;
  background:rgba(245,192,68,.10) !important;
  color:var(--eqs-white,#f7f7f7) !important;
  font:750 13px/1.35 "Inter","Poppins",system-ui,sans-serif !important;
}
.login.card .auth-error::before,
.login.card .notice.auth-error::before{
  content:"Login issue";
  display:block;
  color:var(--eqs-yellow,#f5c044);
  font:900 10.5px/1.1 "Inter","Poppins",system-ui,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:4px;
}

.topbar{
  overflow:visible !important;
}
.main-nav.admin-main-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  flex-wrap:wrap !important;
  overflow:visible !important;
  padding:0 !important;
  min-width:0 !important;
}
.main-nav.admin-main-nav > a,
.main-nav.admin-main-nav .nav-menu > summary,
.main-nav.admin-main-nav .nav-logout-form .link-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:34px !important;
  height:34px !important;
  max-width:none !important;
  padding:0 12px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  font:800 12.4px/1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.006em !important;
  text-decoration:none !important;
  transform:none !important;
  filter:none !important;
  box-shadow:none !important;
}
.main-nav.admin-main-nav > a:hover,
.main-nav.admin-main-nav .nav-menu > summary:hover,
.main-nav.admin-main-nav .nav-menu[open] > summary,
.main-nav.admin-main-nav .nav-logout-form .link-button:hover{
  transform:none !important;
  color:#111111 !important;
  background:var(--eqs-yellow,#f5c044) !important;
  border-color:var(--eqs-yellow,#f5c044) !important;
}
.main-nav.admin-main-nav .nav-menu{
  position:relative !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
.main-nav.admin-main-nav .nav-menu > summary{
  cursor:pointer !important;
  list-style:none !important;
  user-select:none !important;
  background:rgba(247,247,247,.04) !important;
  color:rgba(247,247,247,.76) !important;
  border:1px solid rgba(247,247,247,.12) !important;
}
.main-nav.admin-main-nav .nav-menu > summary::-webkit-details-marker{display:none !important;}
.main-nav.admin-main-nav .nav-menu > summary::after{
  content:"";
  width:5px;
  height:5px;
  margin-left:7px;
  border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor;
  transform:translateY(-1px) rotate(45deg);
  opacity:.85;
}
.main-nav.admin-main-nav .nav-menu[open] > summary::after{transform:translateY(1px) rotate(225deg);}
.nav-menu-panel{
  position:absolute !important;
  z-index:50 !important;
  top:calc(100% + 8px) !important;
  left:0 !important;
  display:grid !important;
  gap:6px !important;
  min-width:214px !important;
  padding:8px !important;
  border-radius:16px !important;
  border:1px solid rgba(247,247,247,.12) !important;
  background:rgba(17,17,17,.98) !important;
  box-shadow:0 20px 44px rgba(0,0,0,.38) !important;
}
.nav-menu-panel--right{left:auto !important;right:0 !important;}
.nav-menu-panel a,
.main-nav.admin-main-nav .nav-menu-panel a{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  min-height:34px !important;
  padding:8px 10px !important;
  border:0 !important;
  border-radius:11px !important;
  background:transparent !important;
  color:rgba(247,247,247,.78) !important;
  font:760 12.7px/1.15 "Inter","Poppins",system-ui,sans-serif !important;
  box-shadow:none !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}
.nav-menu-panel a:hover,
.main-nav.admin-main-nav .nav-menu-panel a:hover{
  background:rgba(245,192,68,.13) !important;
  color:var(--eqs-yellow,#f5c044) !important;
}
.nav-logout-form{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
}
.main-nav.admin-main-nav .nav-logout-form .link-button{
  width:auto !important;
  min-width:0 !important;
  background:rgba(247,247,247,.04) !important;
  color:rgba(247,247,247,.76) !important;
  border:1px solid rgba(247,247,247,.12) !important;
  cursor:pointer !important;
  text-decoration:none !important;
}

.mini-currency-form{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  width:100% !important;
  margin:10px 0 12px !important;
}
.mini-currency-form select{
  flex:0 0 92px !important;
  width:92px !important;
  max-width:92px !important;
  min-height:32px !important;
  height:32px !important;
  padding:5px 9px !important;
  border-radius:10px !important;
  font-size:12px !important;
}
.mini-currency-form button.compact-action,
.mini-currency-form button.small.compact-action{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  min-height:32px !important;
  height:32px !important;
  padding:0 10px !important;
  border-radius:10px !important;
  font:850 11.2px/1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.005em !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}

@media(max-width:1180px){
  .topbar{grid-template-columns:1fr !important;gap:12px !important;}
  .main-nav.admin-main-nav{justify-content:flex-start !important;width:100% !important;}
  .nav-menu-panel--right{left:0 !important;right:auto !important;}
}
@media(max-width:760px){
  .main-nav.admin-main-nav{
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    padding-bottom:5px !important;
  }
  .main-nav.admin-main-nav .nav-menu{position:static !important;}
  .nav-menu-panel{
    position:fixed !important;
    left:14px !important;
    right:14px !important;
    top:78px !important;
    min-width:0 !important;
    width:auto !important;
  }
  .mini-currency-form{align-items:flex-start !important;}
  .mini-currency-form button.compact-action{width:auto !important;}
}

/* V6.2.9 admin nav, suspense contrast and statement close-out workflow polish */
.button.dark,
a.button.dark,
.button.dark *,
a.button.dark *{
  background:#202020 !important;
  color:#f7f7f7 !important;
  border:1px solid rgba(247,247,247,.16) !important;
  text-shadow:none !important;
}
.button.dark:hover,
a.button.dark:hover{
  background:#f5c044 !important;
  color:#111111 !important;
  border-color:#f5c044 !important;
}
.button.dark:hover *,
a.button.dark:hover *{color:#111111 !important;}
.status-banner .button.dark{flex:0 0 auto !important;white-space:nowrap !important;}
.status-banner.needs-review,
.status-banner.is-ready{
  overflow:visible !important;
}
.status-banner.needs-review p,
.status-banner.is-ready p{color:rgba(247,247,247,.72) !important;}

/* Only one menu can remain open via JS; this CSS prevents hover/open size shifts. */
.admin-main-nav details.nav-menu[open]{z-index:80 !important;}
.admin-main-nav .nav-menu-panel{
  z-index:90 !important;
  max-width:min(320px,calc(100vw - 32px)) !important;
}
.admin-main-nav .nav-menu-panel a{
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}
.admin-main-nav > a,
.admin-main-nav summary,
.admin-main-nav .link-button{
  will-change:auto !important;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease !important;
}

.statement-issue-card{
  overflow:visible !important;
}
.statement-issue-head{
  align-items:flex-start !important;
}
.issue-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:4px 0 16px;
}
.issue-steps article{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:3px 10px;
  align-items:start;
  padding:12px 13px;
  border:1px solid rgba(247,247,247,.12);
  border-radius:16px;
  background:rgba(247,247,247,.035);
}
.issue-steps article span{
  grid-row:1 / span 2;
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:999px;
  background:#f5c044;
  color:#111111;
  font:900 12px/1 Inter,Poppins,system-ui,sans-serif;
}
.issue-steps article strong{
  color:#f7f7f7;
  font:850 13.5px/1.1 Inter,Poppins,system-ui,sans-serif;
}
.issue-steps article small{
  color:rgba(247,247,247,.62);
  font:650 12px/1.25 Inter,Poppins,system-ui,sans-serif;
}
.issue-steps article.ready span{background:#cfe7c9;color:#111111;}
.issue-steps article.attention span{background:#f5c044;color:#111111;}
.fx-closeout-panel{
  display:grid;
  gap:12px;
  margin:15px 0 16px;
  padding:14px;
  border:1px solid rgba(245,192,68,.26);
  border-radius:20px;
  background:rgba(245,192,68,.075);
}
.fx-closeout-copy{
  display:grid;
  gap:3px;
}
.fx-closeout-copy strong{
  color:#f7f7f7;
  font:900 15px/1.2 Inter,Poppins,system-ui,sans-serif;
}
.fx-closeout-copy span{
  color:rgba(247,247,247,.68);
  font:650 13px/1.35 Inter,Poppins,system-ui,sans-serif;
}
.fx-requirement-list{display:grid;gap:10px;}
.fx-requirement{
  display:grid;
  gap:9px;
  padding:12px;
  border:1px solid rgba(247,247,247,.12);
  border-radius:16px;
  background:rgba(17,17,17,.52);
}
.fx-requirement.ready{border-color:rgba(207,231,201,.24);}
.fx-requirement.missing{border-color:rgba(245,192,68,.30);}
.fx-requirement-summary{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}
.fx-requirement-summary strong{
  display:block;
  color:#f7f7f7;
  font:900 14px/1.1 Inter,Poppins,system-ui,sans-serif;
}
.fx-requirement-summary small,
.fx-basis-line{
  display:block;
  margin:3px 0 0;
  color:rgba(247,247,247,.62);
  font:650 12px/1.25 Inter,Poppins,system-ui,sans-serif;
}
.fx-status-pill{
  flex:0 0 auto;
  padding:5px 8px;
  border-radius:999px;
  background:rgba(245,192,68,.13);
  border:1px solid rgba(245,192,68,.25);
  color:#f5c044;
  font:850 11.5px/1 Inter,Poppins,system-ui,sans-serif;
  white-space:nowrap;
}
.fx-requirement.ready .fx-status-pill{
  background:rgba(207,231,201,.12);
  border-color:rgba(207,231,201,.24);
  color:#cfe7c9;
}
.inline-fx-form{
  display:grid;
  grid-template-columns:minmax(110px,.8fr) minmax(140px,.9fr) minmax(170px,1.2fr) auto;
  gap:8px;
  align-items:end;
}
.inline-fx-form label{
  display:grid;
  gap:5px;
  color:rgba(247,247,247,.72);
  font:800 11.5px/1.1 Inter,Poppins,system-ui,sans-serif;
}
.inline-fx-form input{
  min-height:34px !important;
  height:34px !important;
  border-radius:10px !important;
  padding:6px 9px !important;
  background:#f7f7f7 !important;
  color:#111111 !important;
  border:1px solid rgba(247,247,247,.22) !important;
  font-size:12px !important;
}
.inline-fx-form button{
  min-height:34px !important;
  height:34px !important;
  padding:0 12px !important;
  border-radius:10px !important;
  font:850 11.75px/1 Inter,Poppins,system-ui,sans-serif !important;
}
.close-period-form{
  margin-top:8px;
  padding-top:14px;
  border-top:1px solid rgba(247,247,247,.12);
}
.close-period-form label small{
  display:block;
  margin-top:5px;
  color:rgba(247,247,247,.56) !important;
  font:650 11.5px/1.25 Inter,Poppins,system-ui,sans-serif;
}
.close-period-form button.needs-fx{
  background:rgba(245,192,68,.22) !important;
  color:#f5c044 !important;
  border:1px solid rgba(245,192,68,.34) !important;
}
@media(max-width:980px){
  .issue-steps{grid-template-columns:1fr;}
  .inline-fx-form{grid-template-columns:1fr 1fr;}
  .inline-fx-form button{width:max-content;}
}
@media(max-width:640px){
  .inline-fx-form{grid-template-columns:1fr;}
  .fx-requirement-summary{display:grid;}
}
.close-error,
.statement-issue-card .notice.warning.close-error{
  border-color:rgba(245,192,68,.34) !important;
  background:rgba(245,192,68,.10) !important;
  color:#f7f7f7 !important;
}
.close-error strong{color:#f5c044 !important;}
.close-error span{color:rgba(247,247,247,.76) !important;}


/* V6.3.0 notice spacing and non-overlapping admin dropdowns */
.admin-main-nav.has-open-menu details.nav-menu:not([open]) .nav-menu-panel,
.admin-main-nav details.nav-menu:not([open]) .nav-menu-panel{
  display:none !important;
  pointer-events:none !important;
}
.main-nav.admin-main-nav{
  isolation:isolate !important;
  position:relative !important;
  z-index:200 !important;
}
.main-nav.admin-main-nav .nav-menu{
  z-index:210 !important;
}
.main-nav.admin-main-nav .nav-menu[open]{
  z-index:300 !important;
}
.main-nav.admin-main-nav .nav-menu-panel{
  z-index:500 !important;
  top:calc(100% + 10px) !important;
  pointer-events:auto !important;
}
.main-nav.admin-main-nav .nav-menu > summary,
.main-nav.admin-main-nav .nav-menu > summary:hover,
.main-nav.admin-main-nav .nav-menu[open] > summary{
  min-width:0 !important;
  box-sizing:border-box !important;
  line-height:1 !important;
}

/* Any payment/due-date notices in the web UI should have enough breathing room
   around the text after the dark reskin. */
.payment-note,
.payment-callout,
.statement-payment-note,
.statement-note,
.notice.payment-note,
.notice.statement-note,
.notice.warning.close-error,
.close-error{
  padding:16px 18px !important;
  border-radius:18px !important;
  line-height:1.45 !important;
}
.payment-note p,
.payment-callout p,
.statement-payment-note p,
.statement-note p,
.notice.payment-note p,
.notice.statement-note p{
  margin:0 !important;
  max-width:72ch !important;
}

@media(max-width:760px){
  .main-nav.admin-main-nav .nav-menu[open] .nav-menu-panel{
    z-index:900 !important;
  }
}

/* V6.3.1 payment status message boxes and robust admin-menu exclusivity */
.payment-summary-metric{
  overflow:visible !important;
}
.payment-due-line{
  display:block !important;
  margin-top:5px !important;
  color:rgba(247,247,247,.70) !important;
  line-height:1.35 !important;
}
.payment-status-messages{
  display:grid !important;
  gap:7px !important;
  margin-top:11px !important;
}
.payment-status-message{
  display:block !important;
  padding:12px 14px !important;
  border-radius:15px !important;
  border:1px solid rgba(245,192,68,.26) !important;
  background:rgba(245,192,68,.085) !important;
  box-shadow:inset 0 0 0 1px rgba(17,17,17,.16) !important;
  color:rgba(247,247,247,.78) !important;
  line-height:1.45 !important;
}
.payment-status-message strong{
  display:block !important;
  color:#f5c044 !important;
  font:900 12px/1.25 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.01em !important;
}
.payment-status-message span{
  display:block !important;
  color:rgba(247,247,247,.76) !important;
  font:650 12.6px/1.45 "Inter","Poppins",system-ui,sans-serif !important;
}
.payment-status-message.subtle-message{
  background:rgba(247,247,247,.045) !important;
  border-color:rgba(247,247,247,.12) !important;
}
.payment-status-message.subtle-message span{color:rgba(247,247,247,.62) !important;}

/* Hard stop for overlapping admin menus: only .is-active can display a panel. */
.main-nav.admin-main-nav .nav-menu:not(.is-active) .nav-menu-panel,
.main-nav.admin-main-nav .nav-menu:not([open]) .nav-menu-panel{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.main-nav.admin-main-nav .nav-menu.is-active[open] .nav-menu-panel{
  display:grid !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.main-nav.admin-main-nav .nav-menu.is-active{
  z-index:1000 !important;
}
.main-nav.admin-main-nav .nav-menu.is-active .nav-menu-panel{
  z-index:1100 !important;
}

/* v6.3.2 - Bandcamp visibility + padded client notices */
.payment-status-messages{
  display:grid !important;
  gap:10px !important;
  margin-top:14px !important;
  width:100% !important;
}
.payment-status-message,
.metric .payment-status-message,
.payment-summary-metric .payment-status-message,
.notice.compact-note,
.notice.subtle.compact-note{
  display:block !important;
  box-sizing:border-box !important;
  width:100% !important;
  padding:14px 16px !important;
  border-radius:16px !important;
  border:1px solid rgba(245,192,68,.34) !important;
  background:rgba(245,192,68,.09) !important;
  color:#f7f7f7 !important;
  line-height:1.45 !important;
  overflow:visible !important;
}
.payment-status-message strong,
.payment-status-message span,
.payment-status-message p,
.payment-status-message small,
.notice.compact-note strong,
.notice.compact-note span{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:#f7f7f7 !important;
  line-height:1.45 !important;
}
.payment-status-message strong,
.notice.compact-note strong{
  color:#f5c044 !important;
  margin-bottom:4px !important;
  font-weight:900 !important;
}
.payment-status-message.subtle-message{
  border-color:rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.055) !important;
}
.payment-summary-metric,
.metric.summary-date-metric{
  overflow:visible !important;
}
.streaming-activity-card .activity-summary-row.three-up{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:12px !important;
}
.streaming-activity-card .activity-summary-row article small{
  display:block !important;
  margin-top:6px !important;
  color:rgba(247,247,247,.66) !important;
  font-size:11.5px !important;
  line-height:1.3 !important;
}
.streaming-activity-card .bandcamp-activity-card{
  border-color:rgba(245,192,68,.44) !important;
  background:rgba(245,192,68,.10) !important;
}
.activity-note{
  margin:10px 0 12px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.055) !important;
  color:rgba(247,247,247,.76) !important;
  font-size:12.5px !important;
  line-height:1.4 !important;
}
@media(max-width:900px){
  .streaming-activity-card .activity-summary-row.three-up{grid-template-columns:1fr !important;}
}


/* V6.3.8 presentation polish: square brand mark, login spacing, adjustment table width and safer client logo link. */
:root{
  --eqs-square-logo-url:url("https://cdn.prod.website-files.com/62cae20de81984827cb833ba/6a4e40c089ecf4565bdfc06f_emt.png");
}
.brand-logo-wrap{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  border-radius:14px !important;
  padding:7px !important;
  background:rgba(245,192,68,.10) !important;
  border:1px solid rgba(245,192,68,.32) !important;
}
.brand-logo{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
}
.brand-copy{
  padding-top:1px !important;
}

.login.card{
  padding:42px 44px 44px !important;
  overflow:hidden !important;
}
.login.card::before{
  width:174px !important;
  height:34px !important;
  margin:0 0 42px !important;
  background-size:contain !important;
  background-position:left center !important;
}
.login.card h2{
  margin:0 0 14px !important;
  line-height:1.06 !important;
}
.login.card label{
  display:block !important;
  margin:14px 0 7px !important;
  line-height:1.1 !important;
}
.login.card input{
  min-height:54px !important;
  margin:0 0 2px !important;
  padding:13px 16px !important;
}
.login.card button[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-height:54px !important;
  margin-top:18px !important;
  padding:0 26px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}
.login.card .helper{
  margin-top:14px !important;
}
@media(max-width:720px){
  .login.card{padding:30px 24px 32px !important;}
  .login.card::before{width:150px !important;margin-bottom:30px !important;}
  .login.card button[type="submit"]{width:100% !important;}
}

.adjustment-summary-card{
  overflow:visible !important;
}
.adjustment-summary-card .adjustment-table,
.adjustment-summary-card table.adjustment-table{
  width:100% !important;
  min-width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}
.adjustment-summary-card .adjustment-table th,
.adjustment-summary-card .adjustment-table td{
  box-sizing:border-box !important;
}
.adjustment-summary-card .adjustment-table th:nth-child(1),
.adjustment-summary-card .adjustment-table td:nth-child(1){
  width:155px !important;
  white-space:nowrap !important;
}
.adjustment-summary-card .adjustment-table th:nth-child(2),
.adjustment-summary-card .adjustment-table td:nth-child(2){
  width:auto !important;
  min-width:0 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}
.adjustment-summary-card .adjustment-table th.num,
.adjustment-summary-card .adjustment-table td.num{
  width:210px !important;
  text-align:right !important;
  white-space:nowrap !important;
}
.adjustment-summary-card .adjustment-table .inline-note{
  max-width:74ch !important;
}
@media(max-width:760px){
  .adjustment-summary-card .adjustment-table,
  .adjustment-summary-card table.adjustment-table{min-width:720px !important;}
}


/* V6.3.9 presentation cleanup: updated mark, cleaner adjustment table, hidden token fallback when email admin is configured. */
.brand-logo-wrap{
  padding:6px !important;
  background:rgba(245,192,68,.08) !important;
}
.brand-logo{
  object-fit:contain !important;
}
.login.card::before{
  width:168px !important;
  height:30px !important;
  margin-bottom:38px !important;
}
.login.card button[type="submit"]{
  margin-top:20px !important;
}

/* Keep the client adjustment table inside its card and make the row rules span the full width. */
.adjustment-summary-card{
  overflow:hidden !important;
  padding:26px 26px 30px !important;
}
.adjustment-summary-card > table.adjustment-table,
.adjustment-summary-card > table.compact-table.adjustment-table,
.adjustment-summary-card table.adjustment-table{
  display:table !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(247,247,247,.10) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.018) !important;
}
.adjustment-summary-card table.adjustment-table thead,
.adjustment-summary-card table.adjustment-table tbody,
.adjustment-summary-card table.adjustment-table tr{
  width:100% !important;
}
.adjustment-summary-card table.adjustment-table th,
.adjustment-summary-card table.adjustment-table td{
  padding:14px 16px !important;
  border-bottom:1px solid rgba(247,247,247,.075) !important;
  background:transparent !important;
}
.adjustment-summary-card table.adjustment-table tr:last-child td{
  border-bottom:0 !important;
}
.adjustment-summary-card table.adjustment-table th:nth-child(1),
.adjustment-summary-card table.adjustment-table td:nth-child(1){
  width:150px !important;
  white-space:nowrap !important;
}
.adjustment-summary-card table.adjustment-table th:nth-child(2),
.adjustment-summary-card table.adjustment-table td:nth-child(2){
  width:auto !important;
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}
.adjustment-summary-card table.adjustment-table th.num,
.adjustment-summary-card table.adjustment-table td.num{
  width:190px !important;
  text-align:right !important;
  white-space:nowrap !important;
}
.adjustment-summary-card table.adjustment-table .inline-note,
.adjustment-summary-card .inline-note{
  display:block !important;
  width:auto !important;
  max-width:70ch !important;
  margin:5px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:rgba(247,247,247,.58) !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
}
@media(max-width:760px){
  .adjustment-summary-card{padding:18px !important;overflow:auto !important;}
  .adjustment-summary-card table.adjustment-table{min-width:680px !important;}
}


/* v6.4.0 root/login and suspense button polish */
.status-banner a.button.dark,
.status-banner .button.dark,
a.button.dark,
.button.dark,
button.dark {
  background: #111111 !important;
  color: #f7f7f7 !important;
  border-color: rgba(247,247,247,.24) !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.28) !important;
}
.status-banner a.button.dark:hover,
.status-banner .button.dark:hover,
a.button.dark:hover,
.button.dark:hover,
button.dark:hover {
  background: #242424 !important;
  color: #ffffff !important;
  border-color: rgba(245,192,68,.55) !important;
}


/* v6.4.6 PDF/header and client logout polish */
.client-main-nav{align-items:center;gap:8px!important;}
.client-main-nav a,.client-main-nav .nav-logout-form .link-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px!important;border:1px solid rgba(245,192,68,.28)!important;border-radius:999px!important;background:rgba(255,255,255,.06)!important;color:var(--eqs-cream,#f8f0dc)!important;text-decoration:none!important;font-weight:850!important;white-space:nowrap!important;}
.client-main-nav a:hover,.client-main-nav .nav-logout-form .link-button:hover{background:var(--eqs-yellow,#f5c044)!important;color:#111111!important;border-color:var(--eqs-yellow,#f5c044)!important;}
.client-main-nav .nav-logout-form{display:inline-flex!important;margin:0!important;}
@media(max-width:720px){.client-main-nav{justify-content:flex-start!important;width:100%!important;overflow-x:auto!important;}}

/* V6.4.10 statement detail tabs
   Manual adjustments are visible to clients, but kept separate from royalty source rows. */
.statement-detail-card .detail-tab-input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.statement-detail-card .detail-tab-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:6px 0 16px !important;
  padding:4px !important;
  width:max-content !important;
  max-width:100% !important;
  border:1px solid rgba(247,247,247,.10) !important;
  border-radius:999px !important;
  background:rgba(247,247,247,.035) !important;
}
.statement-detail-card .detail-tab{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:6px 12px !important;
  border-radius:999px !important;
  color:rgba(247,247,247,.66) !important;
  font:850 12px/1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.035em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  user-select:none !important;
}
#detail-tab-royalty-lines:checked ~ .detail-tab-row .detail-tab-royalty-lines,
#detail-tab-adjustments:checked ~ .detail-tab-row .detail-tab-adjustments{
  background:var(--eqs-yellow) !important;
  color:#111111 !important;
}
.statement-detail-card .detail-panel-royalty-lines{display:block !important;}
.statement-detail-card .detail-panel-adjustments{display:none !important;}
#detail-tab-adjustments:checked ~ .detail-tab-panels .detail-panel-royalty-lines{display:none !important;}
#detail-tab-adjustments:checked ~ .detail-tab-panels .detail-panel-adjustments{display:block !important;}
#detail-tab-royalty-lines:checked ~ .detail-tab-panels .detail-panel-royalty-lines{display:block !important;}
.statement-detail-card .detail-panel-adjustments.adjustment-summary-card{
  padding:0 !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
}
.statement-detail-card .detail-adjustment-helper{
  margin:0 0 12px !important;
  max-width:860px !important;
  color:rgba(247,247,247,.58) !important;
}
.statement-detail-card .adjustment-summary-card table.adjustment-table th:nth-child(1),
.statement-detail-card .adjustment-summary-card table.adjustment-table td:nth-child(1){
  width:128px !important;
}
.statement-detail-card .adjustment-summary-card table.adjustment-table th:nth-child(3),
.statement-detail-card .adjustment-summary-card table.adjustment-table td:nth-child(3){
  width:150px !important;
  white-space:nowrap !important;
}
.statement-detail-card .adjustment-summary-card table.adjustment-table th.num,
.statement-detail-card .adjustment-summary-card table.adjustment-table td.num{
  width:160px !important;
}
@media(max-width:760px){
  .statement-detail-card .detail-tab-row{width:100% !important;border-radius:18px !important;}
  .statement-detail-card .detail-tab{flex:1 1 auto !important;justify-content:center !important;}
  .statement-detail-card .adjustment-summary-card table.adjustment-table{min-width:760px !important;}
}


/* V6.4.14 client portal mobile hardening
   Stacks statement cards, filters, charts and line previews cleanly on phones. */
@media (max-width: 820px){
  html,body{max-width:100%;overflow-x:hidden;}
  body{font-size:14px;}
  .topbar{
    position:sticky !important;
    top:0 !important;
    padding:12px 14px !important;
    gap:10px !important;
    align-items:flex-start !important;
  }
  .brand{max-width:100% !important;min-width:0 !important;gap:9px !important;}
  .brand-logo-wrap{width:42px !important;height:42px !important;min-width:42px !important;padding:6px !important;}
  .brand-logo{max-width:30px !important;max-height:30px !important;}
  .brand-copy{min-width:0 !important;}
  .brand-text,.brand-subtitle{max-width:calc(100vw - 90px) !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
  .client-main-nav{width:100% !important;justify-content:flex-start !important;overflow-x:auto !important;padding-bottom:2px !important;}
  .client-main-nav a,.client-main-nav .nav-logout-form .link-button{min-height:38px !important;padding:9px 13px !important;}
  .shell{width:100% !important;padding:18px 12px 54px !important;}
  .client-hero,.client-hero.polished{
    padding:24px 18px !important;
    border-radius:24px !important;
    margin-bottom:16px !important;
  }
  .client-hero h1{
    font-size:clamp(32px,12vw,48px) !important;
    line-height:.96 !important;
    overflow-wrap:anywhere !important;
    margin-bottom:12px !important;
  }
  .client-hero p{font-size:15px !important;line-height:1.45 !important;}
  .hero-separator{display:none !important;}
  .client-hero p strong,.client-hero p span{display:block !important;}
  .card,.metric,.notice{
    border-radius:20px !important;
    padding:16px !important;
    margin-bottom:14px !important;
    overflow:visible !important;
  }
  .metric{min-height:auto !important;}
  .metric strong,.hero-metric strong{
    font-size:clamp(26px,10vw,36px) !important;
    line-height:1.02 !important;
    overflow-wrap:anywhere !important;
  }
  .metric small{display:block !important;font-size:12.5px !important;line-height:1.4 !important;}
  .statement-metrics,.client-summary,.one-line-summary{grid-template-columns:1fr !important;gap:12px !important;margin:14px 0 !important;}
  .payment-status-messages{display:grid !important;gap:7px !important;margin-top:10px !important;}
  .card-title-row{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:8px !important;
  }
  .card-title-row h2{font-size:19px !important;line-height:1.15 !important;margin:0 !important;}
  .card-title-row .helper{font-size:12.5px !important;line-height:1.38 !important;margin:0 !important;}
  .button-row,.compact-actions,.actions,.filter-actions{width:100% !important;display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
  .button,button{width:100% !important;min-height:44px !important;text-align:center !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;}
  .link-button{width:auto !important;min-height:0 !important;display:inline-flex !important;}
  input,select{min-height:44px !important;font-size:16px !important;}
  .period-tabs{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
  .period-tab{display:flex !important;justify-content:center !important;align-items:center !important;min-height:44px !important;padding:10px 12px !important;white-space:normal !important;text-align:center !important;}
  .advanced-filters summary{min-height:40px !important;display:flex !important;align-items:center !important;}
  .filter-grid{grid-template-columns:1fr !important;gap:10px !important;}
  .compact-form,.mini-currency-form{display:grid !important;grid-template-columns:1fr !important;gap:9px !important;width:100% !important;}
  .portal-session-card form{width:100% !important;}
  .insights-grid,.client-insights-layout{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;margin:14px 0 !important;}
  .insights-left,.insights-right{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;min-width:0 !important;}
  .bar-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    padding:10px 0 12px !important;
  }
  .bar-row span,.bar-row em{white-space:normal !important;overflow:visible !important;text-overflow:clip !important;text-align:left !important;}
  .bar-row b{width:var(--bar,0%) !important;max-width:100% !important;min-width:5px !important;}
  .period-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    padding:12px 0 !important;
  }
  .period-row .period-bar-track{width:100% !important;display:block !important;}
  .period-row b,.period-bar-fill{width:var(--bar,0%) !important;max-width:100% !important;min-width:5px !important;}
  .period-row em{text-align:left !important;white-space:normal !important;}
  .geo-map-wrap{height:220px !important;border-radius:18px !important;}
  .compact-country-list,.territory-map-list{display:grid !important;grid-template-columns:1fr !important;max-height:260px !important;}
  .country-chip{display:grid !important;grid-template-columns:1fr auto !important;align-items:center !important;gap:8px !important;}
  .activity-summary-row,.activity-summary-row.two-up{grid-template-columns:1fr !important;gap:9px !important;}
  .activity-summary-row strong{font-size:24px !important;}
  .related-grid{grid-template-columns:1fr !important;}
  .fx-note,.compact-note{display:grid !important;gap:6px !important;line-height:1.4 !important;}
  .table-scroll{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border:1px solid rgba(247,247,247,.08) !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.018) !important;
    padding:0 !important;
  }
  .table-scroll table{margin:0 !important;}
}

@media (max-width: 640px){
  /* Convert client-facing summary tables into readable phone cards. */
  .top-tracks-card .table-scroll,
  #detail .table-scroll,
  .streaming-activity-card .table-scroll,
  .adjustment-summary-card{overflow:visible !important;border:0 !important;background:transparent !important;}

  .top-tracks-card table,
  .top-tracks-card thead,
  .top-tracks-card tbody,
  .top-tracks-card tr,
  .top-tracks-card th,
  .top-tracks-card td,
  .activity-breakdown-table,
  .activity-breakdown-table thead,
  .activity-breakdown-table tbody,
  .activity-breakdown-table tr,
  .activity-breakdown-table th,
  .activity-breakdown-table td,
  .statement-line-preview,
  .statement-line-preview thead,
  .statement-line-preview tbody,
  .statement-line-preview tr,
  .statement-line-preview th,
  .statement-line-preview td,
  .adjustment-summary-card table.adjustment-table,
  .adjustment-summary-card table.adjustment-table thead,
  .adjustment-summary-card table.adjustment-table tbody,
  .adjustment-summary-card table.adjustment-table tr,
  .adjustment-summary-card table.adjustment-table th,
  .adjustment-summary-card table.adjustment-table td{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  .top-tracks-card thead,
  .activity-breakdown-table thead,
  .statement-line-preview thead,
  .adjustment-summary-card table.adjustment-table thead{display:none !important;}

  .top-tracks-card tbody,
  .activity-breakdown-table tbody,
  .statement-line-preview tbody,
  .adjustment-summary-card table.adjustment-table tbody{display:grid !important;gap:10px !important;}

  .top-tracks-card tr,
  .activity-breakdown-table tr,
  .statement-line-preview tr,
  .adjustment-summary-card table.adjustment-table tr{
    display:grid !important;
    gap:0 !important;
    border:1px solid rgba(247,247,247,.10) !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.028) !important;
    overflow:hidden !important;
  }

  .top-tracks-card td,
  .activity-breakdown-table td,
  .statement-line-preview td,
  .adjustment-summary-card table.adjustment-table td{
    display:grid !important;
    grid-template-columns:minmax(92px,.36fr) minmax(0,1fr) !important;
    gap:10px !important;
    align-items:start !important;
    padding:10px 12px !important;
    border-bottom:1px solid rgba(247,247,247,.075) !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    text-align:left !important;
    background:transparent !important;
  }
  .top-tracks-card td:last-child,
  .activity-breakdown-table td:last-child,
  .statement-line-preview td:last-child,
  .adjustment-summary-card table.adjustment-table td:last-child{border-bottom:0 !important;}

  .top-tracks-card td::before,
  .activity-breakdown-table td::before,
  .statement-line-preview td::before,
  .adjustment-summary-card table.adjustment-table td::before{
    color:rgba(247,247,247,.52) !important;
    font-size:10.5px !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
    line-height:1.35 !important;
    text-transform:uppercase !important;
  }

  .top-tracks-card td:nth-child(1)::before{content:"Title";}
  .top-tracks-card td:nth-child(2)::before{content:"Royalty type";}
  .top-tracks-card td:nth-child(3)::before{content:"Payable";}

  .activity-breakdown-table td:nth-child(1)::before{content:"Type";}
  .activity-breakdown-table td:nth-child(2)::before{content:"Activity";}
  .activity-breakdown-table td:nth-child(3)::before{content:"Revenue";}

  .adjustment-summary-card table.adjustment-table td:nth-child(1)::before{content:"Date";}
  .adjustment-summary-card table.adjustment-table td:nth-child(2)::before{content:"Description";}
  .adjustment-summary-card table.adjustment-table td:nth-child(3)::before{content:"Amount";}

  .statement-line-preview td:nth-child(1)::before{content:"Period";}
  .statement-line-preview td:nth-child(2)::before{content:"Month";}
  .statement-line-preview td:nth-child(3)::before{content:"Title";}
  .statement-line-preview td:nth-child(4)::before{content:"Royalty type";}
  .statement-line-preview td:nth-child(5)::before{content:"Platform";}
  .statement-line-preview td:nth-child(6)::before{content:"Territory";}
  .statement-line-preview td:nth-child(7)::before{content:"Identifier";}
  .statement-line-preview td:nth-child(8)::before{content:"Line type";}
  .statement-line-preview td:nth-child(9)::before{content:"Payable";}

  .top-tracks-card .num,
  .activity-breakdown-table .num,
  .statement-line-preview .num,
  .adjustment-summary-card table.adjustment-table .num{text-align:left !important;}

  .identifier-cell span,
  .track-artist-cell span,
  .top-tracks-card td span{display:inline !important;}
  .statement-line-preview td.track-artist-cell strong,
  .top-tracks-card td strong{line-height:1.25 !important;}
}

@media (max-width: 420px){
  .shell{padding-left:10px !important;padding-right:10px !important;}
  .client-hero,.client-hero.polished{padding:22px 15px !important;border-radius:20px !important;}
  .card,.metric,.notice{padding:14px !important;border-radius:18px !important;}
  .period-tab{font-size:13px !important;}
  .country-chip{grid-template-columns:1fr !important;}
  .country-chip span{text-align:left !important;}
  .top-tracks-card td,
  .activity-breakdown-table td,
  .statement-line-preview td,
  .adjustment-summary-card table.adjustment-table td{
    grid-template-columns:1fr !important;
    gap:4px !important;
  }
}


/* V6.4.16 client mobile table and period-chart repair
   Fixes narrow-window regressions where earlier desktop column-width rules still
   applied after the table-to-card mobile conversion, causing values like Bandcamp
   and Streams to wrap one letter per line. Also isolates period bars so the fill
   cannot run through the amount label on compact widths. */
@media (max-width: 760px){
  .period-chart-card{
    overflow:hidden !important;
  }
  .period-chart-card .period-comparison-list{
    display:grid !important;
    gap:0 !important;
  }
  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto !important;
    gap:7px !important;
    padding:14px 0 !important;
    min-width:0 !important;
  }
  .period-chart-card .period-row .period-meta{
    grid-column:1 !important;
    grid-row:1 !important;
    min-width:0 !important;
  }
  .period-chart-card .period-row em{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    line-height:1.2 !important;
    font-size:14px !important;
  }
  .period-chart-card .period-row .period-bar-track,
  .period-chart-card .period-row.current .period-bar-track{
    grid-column:1 !important;
    grid-row:3 !important;
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    height:5px !important;
    min-height:5px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:999px !important;
    background:rgba(247,247,247,.10) !important;
    overflow:hidden !important;
  }
  .period-chart-card .period-row .period-bar-track > b.period-bar-fill,
  .period-chart-card .period-row.current .period-bar-track > b.period-bar-fill{
    display:block !important;
    position:absolute !important;
    inset:0 auto 0 0 !important;
    width:clamp(0px,var(--bar,0%),100%) !important;
    max-width:100% !important;
    min-width:0 !important;
    height:5px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,var(--brand2),var(--brand)) !important;
    opacity:.9 !important;
    box-shadow:none !important;
  }

  .top-tracks-card .table-scroll,
  #detail .table-scroll,
  .streaming-activity-card .activity-table-scroll,
  .adjustment-summary-card{
    overflow:visible !important;
    border:0 !important;
    background:transparent !important;
    padding:0 !important;
  }

  .top-tracks-card table,
  .top-tracks-card thead,
  .top-tracks-card tbody,
  .top-tracks-card tr,
  .top-tracks-card th,
  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table,
  .streaming-activity-card .activity-breakdown-table thead,
  .streaming-activity-card .activity-breakdown-table tbody,
  .streaming-activity-card .activity-breakdown-table tr,
  .streaming-activity-card .activity-breakdown-table th,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table,
  .adjustment-summary-card table.adjustment-table thead,
  .adjustment-summary-card table.adjustment-table tbody,
  .adjustment-summary-card table.adjustment-table tr,
  .adjustment-summary-card table.adjustment-table th,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview,
  #detail .statement-line-preview thead,
  #detail .statement-line-preview tbody,
  #detail .statement-line-preview tr,
  #detail .statement-line-preview th,
  #detail .statement-line-preview td{
    display:block !important;
    min-width:0 !important;
    max-width:100% !important;
    width:auto !important;
    table-layout:auto !important;
  }

  /* Beat older, more specific desktop nth-child width rules. */
  .top-tracks-card table th:nth-child(n),
  .top-tracks-card table td:nth-child(n),
  .streaming-activity-card .activity-breakdown-table th:nth-child(n),
  .streaming-activity-card .activity-breakdown-table td:nth-child(n),
  .adjustment-summary-card table.adjustment-table th:nth-child(n),
  .adjustment-summary-card table.adjustment-table td:nth-child(n),
  #detail .statement-line-preview th:nth-child(n),
  #detail .statement-line-preview td:nth-child(n){
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    white-space:normal !important;
  }

  .top-tracks-card thead,
  .streaming-activity-card .activity-breakdown-table thead,
  .adjustment-summary-card table.adjustment-table thead,
  #detail .statement-line-preview thead{
    display:none !important;
  }
  .top-tracks-card tbody,
  .streaming-activity-card .activity-breakdown-table tbody,
  .adjustment-summary-card table.adjustment-table tbody,
  #detail .statement-line-preview tbody{
    display:grid !important;
    gap:10px !important;
  }
  .top-tracks-card tr,
  .streaming-activity-card .activity-breakdown-table tr,
  .adjustment-summary-card table.adjustment-table tr,
  #detail .statement-line-preview tr{
    display:grid !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    border:1px solid rgba(247,247,247,.11) !important;
    border-radius:17px !important;
    background:rgba(255,255,255,.032) !important;
    overflow:hidden !important;
  }
  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview td{
    display:grid !important;
    grid-template-columns:minmax(104px,34%) minmax(0,1fr) !important;
    gap:10px !important;
    align-items:start !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    padding:10px 12px !important;
    border-bottom:1px solid rgba(247,247,247,.08) !important;
    background:transparent !important;
    text-align:left !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    hyphens:none !important;
  }
  .top-tracks-card td:last-child,
  .streaming-activity-card .activity-breakdown-table td:last-child,
  .adjustment-summary-card table.adjustment-table td:last-child,
  #detail .statement-line-preview td:last-child{
    border-bottom:0 !important;
  }
  .top-tracks-card td::before,
  .streaming-activity-card .activity-breakdown-table td::before,
  .adjustment-summary-card table.adjustment-table td::before,
  #detail .statement-line-preview td::before{
    content:attr(data-label) !important;
    grid-column:1 !important;
    grid-row:1 / span 8 !important;
    min-width:0 !important;
    color:rgba(247,247,247,.58) !important;
    font-size:11px !important;
    font-weight:900 !important;
    letter-spacing:.07em !important;
    line-height:1.35 !important;
    text-transform:uppercase !important;
  }
  .top-tracks-card td > *,
  .streaming-activity-card .activity-breakdown-table td > *,
  .adjustment-summary-card table.adjustment-table td > *,
  #detail .statement-line-preview td > *{
    grid-column:2 !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  .top-tracks-card td br,
  #detail .statement-line-preview td br{
    display:none !important;
  }
  .adjustment-summary-card table.adjustment-table .inline-note{
    display:block !important;
    grid-column:2 !important;
    margin-top:5px !important;
    color:var(--muted) !important;
    line-height:1.35 !important;
  }
  .top-tracks-card .num,
  .streaming-activity-card .activity-breakdown-table .num,
  .adjustment-summary-card table.adjustment-table .num,
  #detail .statement-line-preview .num{
    text-align:left !important;
    white-space:normal !important;
  }
  .top-tracks-card td strong,
  #detail .statement-line-preview td strong{
    display:block !important;
    line-height:1.22 !important;
  }
  .top-tracks-card td span,
  #detail .statement-line-preview td span{
    display:block !important;
    margin-top:4px !important;
    line-height:1.25 !important;
  }
  #detail .statement-line-preview .identifier-cell span,
  #detail .statement-line-preview .line-type-cell{
    overflow-wrap:anywhere !important;
  }
}

@media (max-width: 420px){
  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview td{
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:9px !important;
    padding:9px 10px !important;
  }
  .top-tracks-card td::before,
  .streaming-activity-card .activity-breakdown-table td::before,
  .adjustment-summary-card table.adjustment-table td::before,
  #detail .statement-line-preview td::before{
    font-size:10.25px !important;
    letter-spacing:.06em !important;
  }
}


/* V6.4.17 client mobile table density repair
   Replaces the earlier mobile card table conversion with a stricter, denser layout.
   The previous grid rows could stretch cells vertically on narrow screens, leaving
   huge blank areas. These final overrides force auto-height cards, compact label/value
   rows, and smaller payment-status text on phones. */
@media (max-width: 820px){
  .payment-summary-metric .payment-due-line,
  .summary-date-metric .payment-due-line{
    font-size:11.25px !important;
    line-height:1.28 !important;
    letter-spacing:.01em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }
  .payment-status-messages,
  .payment-status-message,
  .payment-status-message span,
  .payment-status-message strong{
    font-size:11.5px !important;
    line-height:1.3 !important;
  }
}

@media (max-width: 760px){
  .adjustment-summary-card,
  .top-tracks-card,
  .streaming-activity-card,
  #detail{
    overflow:visible !important;
  }

  .top-tracks-card .table-scroll,
  .streaming-activity-card .activity-table-scroll,
  .streaming-activity-card .table-scroll,
  #detail .table-scroll,
  .adjustment-summary-card{
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    padding:0 !important;
  }

  .top-tracks-card table,
  .top-tracks-card thead,
  .top-tracks-card tbody,
  .top-tracks-card tr,
  .top-tracks-card th,
  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table,
  .streaming-activity-card .activity-breakdown-table thead,
  .streaming-activity-card .activity-breakdown-table tbody,
  .streaming-activity-card .activity-breakdown-table tr,
  .streaming-activity-card .activity-breakdown-table th,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table,
  .adjustment-summary-card table.adjustment-table thead,
  .adjustment-summary-card table.adjustment-table tbody,
  .adjustment-summary-card table.adjustment-table tr,
  .adjustment-summary-card table.adjustment-table th,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview,
  #detail .statement-line-preview thead,
  #detail .statement-line-preview tbody,
  #detail .statement-line-preview tr,
  #detail .statement-line-preview th,
  #detail .statement-line-preview td{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    table-layout:auto !important;
  }

  .top-tracks-card thead,
  .streaming-activity-card .activity-breakdown-table thead,
  .adjustment-summary-card table.adjustment-table thead,
  #detail .statement-line-preview thead{
    display:none !important;
  }

  .top-tracks-card table,
  .streaming-activity-card .activity-breakdown-table,
  .adjustment-summary-card table.adjustment-table,
  #detail .statement-line-preview{
    display:block !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    margin:0 !important;
  }

  .top-tracks-card tbody,
  .streaming-activity-card .activity-breakdown-table tbody,
  .adjustment-summary-card table.adjustment-table tbody,
  #detail .statement-line-preview tbody{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    align-items:start !important;
  }

  .top-tracks-card tr,
  .streaming-activity-card .activity-breakdown-table tr,
  .adjustment-summary-card table.adjustment-table tr,
  #detail .statement-line-preview tr{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    border:1px solid rgba(247,247,247,.115) !important;
    border-radius:17px !important;
    background:rgba(255,255,255,.03) !important;
    overflow:hidden !important;
    align-content:start !important;
  }

  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview td{
    display:grid !important;
    grid-template-columns:minmax(104px,30%) minmax(0,1fr) !important;
    grid-auto-rows:min-content !important;
    align-items:start !important;
    align-content:start !important;
    justify-items:stretch !important;
    gap:3px 12px !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:8px 12px !important;
    border-bottom:1px solid rgba(247,247,247,.075) !important;
    background:transparent !important;
    text-align:left !important;
    vertical-align:top !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;
    hyphens:none !important;
    font-size:13px !important;
    line-height:1.28 !important;
  }

  .top-tracks-card td:nth-child(n),
  .streaming-activity-card .activity-breakdown-table td:nth-child(n),
  .adjustment-summary-card table.adjustment-table td:nth-child(n),
  #detail .statement-line-preview td:nth-child(n),
  .top-tracks-card th:nth-child(n),
  .streaming-activity-card .activity-breakdown-table th:nth-child(n),
  .adjustment-summary-card table.adjustment-table th:nth-child(n),
  #detail .statement-line-preview th:nth-child(n){
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }

  .top-tracks-card td:last-child,
  .streaming-activity-card .activity-breakdown-table td:last-child,
  .adjustment-summary-card table.adjustment-table td:last-child,
  #detail .statement-line-preview td:last-child{
    border-bottom:0 !important;
  }

  .top-tracks-card td::before,
  .streaming-activity-card .activity-breakdown-table td::before,
  .adjustment-summary-card table.adjustment-table td::before,
  #detail .statement-line-preview td::before{
    content:attr(data-label) !important;
    grid-column:1 !important;
    grid-row:1 !important;
    align-self:start !important;
    min-width:0 !important;
    max-width:100% !important;
    color:rgba(247,247,247,.58) !important;
    font-size:10.75px !important;
    font-weight:900 !important;
    letter-spacing:.075em !important;
    line-height:1.25 !important;
    text-transform:uppercase !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .top-tracks-card td > *,
  .streaming-activity-card .activity-breakdown-table td > *,
  .adjustment-summary-card table.adjustment-table td > *,
  #detail .statement-line-preview td > *{
    grid-column:2 !important;
    min-width:0 !important;
    max-width:100% !important;
    margin-top:0 !important;
  }

  .top-tracks-card td br,
  #detail .statement-line-preview td br{
    display:none !important;
  }

  .top-tracks-card td strong,
  .top-tracks-card td span,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table td strong,
  .adjustment-summary-card table.adjustment-table td span,
  .adjustment-summary-card table.adjustment-table td small,
  #detail .statement-line-preview td strong,
  #detail .statement-line-preview td span{
    line-height:1.22 !important;
  }

  .top-tracks-card td strong,
  #detail .statement-line-preview td strong{
    display:block !important;
    font-size:13.2px !important;
    font-weight:900 !important;
  }

  .top-tracks-card td span,
  #detail .statement-line-preview td span,
  .adjustment-summary-card table.adjustment-table .inline-note{
    display:block !important;
    margin-top:3px !important;
    font-size:12.4px !important;
  }

  .adjustment-summary-card table.adjustment-table .inline-note{
    grid-column:2 !important;
    max-width:100% !important;
    color:rgba(247,247,247,.58) !important;
  }

  .top-tracks-card .num,
  .streaming-activity-card .activity-breakdown-table .num,
  .adjustment-summary-card table.adjustment-table .num,
  #detail .statement-line-preview .num{
    text-align:left !important;
    white-space:normal !important;
    font-variant-numeric:tabular-nums !important;
  }

  .identifier-cell span,
  #detail .statement-line-preview .line-type-cell,
  #detail .statement-line-preview td[data-label="Platform"],
  .top-tracks-card td[data-label="Royalty type"],
  .streaming-activity-card .activity-breakdown-table td[data-label="Activity"]{
    overflow-wrap:anywhere !important;
  }

  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    grid-template-columns:minmax(0,1fr) max-content !important;
    grid-template-rows:auto auto !important;
    gap:6px 12px !important;
    padding:10px 0 !important;
  }
  .period-chart-card .period-row .period-meta{
    grid-column:1 !important;
    grid-row:1 !important;
  }
  .period-chart-card .period-row em{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:end !important;
    text-align:right !important;
    white-space:nowrap !important;
    font-size:12.4px !important;
    line-height:1.05 !important;
  }
  .period-chart-card .period-row .period-bar-track,
  .period-chart-card .period-row.current .period-bar-track{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    height:4px !important;
    min-height:4px !important;
    margin-top:2px !important;
  }
  .period-chart-card .period-row .period-bar-track > b.period-bar-fill,
  .period-chart-card .period-row.current .period-bar-track > b.period-bar-fill{
    height:4px !important;
  }
}

@media (max-width: 520px){
  .top-tracks-card td,
  .streaming-activity-card .activity-breakdown-table td,
  .adjustment-summary-card table.adjustment-table td,
  #detail .statement-line-preview td{
    grid-template-columns:1fr !important;
    gap:2px !important;
    padding:9px 10px !important;
    font-size:12.8px !important;
  }
  .top-tracks-card td::before,
  .streaming-activity-card .activity-breakdown-table td::before,
  .adjustment-summary-card table.adjustment-table td::before,
  #detail .statement-line-preview td::before,
  .top-tracks-card td > *,
  .streaming-activity-card .activity-breakdown-table td > *,
  .adjustment-summary-card table.adjustment-table td > *,
  #detail .statement-line-preview td > *,
  .adjustment-summary-card table.adjustment-table .inline-note{
    grid-column:1 !important;
  }
  .top-tracks-card td::before,
  .streaming-activity-card .activity-breakdown-table td::before,
  .adjustment-summary-card table.adjustment-table td::before,
  #detail .statement-line-preview td::before{
    font-size:10px !important;
    letter-spacing:.07em !important;
    margin-bottom:1px !important;
  }
  .period-chart-card .period-row,
  .period-chart-card .period-row.current{
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto !important;
    gap:5px !important;
  }
  .period-chart-card .period-row em{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-self:start !important;
    text-align:left !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    font-size:12px !important;
  }
  .period-chart-card .period-row .period-bar-track,
  .period-chart-card .period-row.current .period-bar-track{
    grid-column:1 !important;
    grid-row:3 !important;
  }
}

/* V6.4.18 - client account setup workflow polish */
.checkbox-row{
  display:flex !important;
  align-items:center;
  gap:10px;
  font-weight:800;
  color:var(--ink);
}
.checkbox-row input[type="checkbox"]{
  width:18px !important;
  height:18px !important;
  flex:0 0 auto;
  margin:0;
}
.setup-list{
  margin:0 0 14px;
  padding-left:22px;
  color:var(--muted);
}
.setup-list li{
  margin:0 0 10px;
}
.setup-list strong{
  color:var(--ink);
}
.setup-list code{
  background:rgba(245,192,68,.14);
  border:1px solid rgba(245,192,68,.24);
  border-radius:8px;
  padding:2px 6px;
  color:var(--ink);
}
.actions-cell form{
  display:inline-block;
  margin:0 6px 6px 0;
}
.notice.auth-error{
  background:rgba(195,57,35,.14) !important;
  border-color:rgba(195,57,35,.36) !important;
  color:#ffb6a6 !important;
}
.reset-complete-actions{
  display:none;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
.reset-complete-actions.is-visible{
  display:flex;
}
@media(max-width:720px){
  .setup-list{padding-left:18px;}
  .actions-cell form{display:block;margin:0 0 8px;}
  .actions-cell .small{width:100%;}
}

/* v6.4.20 licence builder */
.form-section { border: 1px solid rgba(20,18,14,.09); border-radius: 18px; padding: 18px; background: rgba(255,255,255,.56); margin-bottom: 14px; }
.form-section h3, .subcard h3 { margin: 0 0 8px; font-size: 1rem; }
.three-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.two-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.compact-fields label { gap: 6px; }
.subcard { border: 1px solid rgba(20,18,14,.1); border-radius: 18px; padding: 16px; background: rgba(255,255,255,.62); }
.licence-participant-row { display: grid; grid-template-columns: minmax(120px,1.2fr) minmax(120px,1.2fr) minmax(86px,.7fr) minmax(100px,.8fr) auto; gap: 8px; align-items: center; margin: 8px 0; }
.licence-participant-row select, .licence-participant-row input { min-width: 0; }
.checkline { display: inline-flex; align-items: center; gap: 7px; font-size: .83rem; color: var(--muted); white-space: nowrap; }
.checkline input { width: auto; }
.suggestion-panel { position: relative; z-index: 8; margin-top: 8px; border: 1px solid rgba(20,18,14,.12); border-radius: 16px; background: #fff; box-shadow: 0 16px 38px rgba(20,18,14,.12); overflow: hidden; }
.suggestion-item { width: 100%; display: grid; grid-template-columns: 1fr auto auto; gap: 10px; align-items: center; border: 0; border-bottom: 1px solid rgba(20,18,14,.08); background: #fff; color: var(--ink); text-align: left; padding: 10px 12px; cursor: pointer; }
.suggestion-item:hover { background: rgba(215,180,76,.12); }
.suggestion-item span, .suggestion-item em { color: var(--muted); font-style: normal; font-size: .82rem; }
.inline-form { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.inline-form select, .inline-form input { max-width: 130px; }
.pill { display: inline-flex; align-items: center; border-radius: 999px; background: rgba(30,130,76,.1); color: #26734d; padding: 2px 8px; font-weight: 700; font-size: .74rem; }
.licence-income-card h2::after { content: ''; display: inline-block; width: .5rem; height: .5rem; margin-left: .4rem; border-radius: 999px; background: var(--accent); vertical-align: middle; }
@media (max-width: 900px) {
  .three-cols, .two-cols { grid-template-columns: 1fr; }
  .licence-participant-row { grid-template-columns: 1fr; border: 1px solid rgba(20,18,14,.08); border-radius: 14px; padding: 10px; background: rgba(255,255,255,.72); }
  .suggestion-item { grid-template-columns: 1fr; gap: 2px; }
  .inline-form { display: grid; grid-template-columns: 1fr; }
  .inline-form select, .inline-form input { max-width: none; width: 100%; }
}


/* V6.4.21 Works & rights / lighter Licence Builder */
.inline-summary {
  border: 1px solid rgba(23, 21, 18, 0.10);
  background: rgba(244, 197, 66, 0.10);
  border-radius: 14px;
  padding: 12px 14px;
  color: var(--text-muted, #6f665f);
  font-size: 0.92rem;
}
.work-rights-group { margin: 16px 0; }
.work-rights-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 12px;
}
.work-rights-head h3 { margin: 0 0 4px; }
.work-rights-totals {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  color: var(--text-muted, #6f665f);
  font-size: 0.86rem;
}
.pill.warning {
  background: rgba(196, 134, 35, 0.15);
  color: #7a4d12;
  border-color: rgba(196, 134, 35, 0.24);
}
.works-rights-card .subcard { overflow: hidden; }
.suggestion-item em { color: var(--text-muted, #6f665f); }
@media (max-width: 760px) {
  .work-rights-head { display: block; }
  .work-rights-totals { justify-content: flex-start; margin-top: 8px; }
  .inline-summary { font-size: 0.86rem; padding: 10px 12px; }
}

/* V6.4.22 Works & splits migration / rights-led licence builder UI */
.toolbar-form {
  display: flex;
  align-items: end;
  gap: 12px;
  flex-wrap: wrap;
}
.toolbar-form .grow { flex: 1 1 360px; }
.compact-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.compact-stat-grid > div {
  border: 1px solid var(--line, rgba(0,0,0,.1));
  border-radius: 14px;
  padding: 12px 14px;
  background: rgba(255,255,255,.55);
}
.compact-stat-grid strong {
  display: block;
  font-size: 1.25rem;
  margin-top: 4px;
}
.rights-participant-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.rights-participant-edit {
  display: grid;
  grid-template-columns: minmax(220px, 1.8fr) repeat(6, minmax(92px, .8fr)) minmax(150px, 1.2fr);
  gap: 8px;
  align-items: end;
  padding: 12px;
  border: 1px solid var(--line, rgba(0,0,0,.1));
  border-radius: 16px;
  background: rgba(255,255,255,.55);
}
.rights-participant-edit .participant-name {
  display: grid;
  gap: 4px;
  align-self: center;
}
.rights-participant-edit .notes-field {
  grid-column: span 2;
}
.rights-participant-edit input,
.rights-participant-edit select {
  min-width: 0;
  width: 100%;
}
.check-stack {
  display: grid;
  gap: 6px;
  align-self: center;
}
.row-actions {
  display: flex;
  justify-content: flex-end;
  align-self: end;
}
.inline-remove {
  margin: -6px 12px 8px auto;
  display: flex;
  justify-content: flex-end;
}
.pill.good {
  background: rgba(62, 132, 72, .14);
  color: #2d6b38;
  border-color: rgba(62, 132, 72, .25);
}
.pill.warning {
  background: rgba(196, 142, 32, .16);
  color: #7a520d;
  border-color: rgba(196, 142, 32, .25);
}
@media (max-width: 1180px) {
  .rights-participant-edit {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .rights-participant-edit .participant-name,
  .rights-participant-edit .notes-field {
    grid-column: 1 / -1;
  }
}
@media (max-width: 720px) {
  .compact-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rights-participant-edit { grid-template-columns: 1fr; }
  .inline-remove { margin-right: 0; }
  .toolbar-form { align-items: stretch; }
  .toolbar-form button, .toolbar-form .button { width: 100%; justify-content: center; }
}

/* v6.4.23: Works rights ledger cleanup */
.truncate-cell,
.work-title-truncate {
  display: inline-block;
  max-width: min(52vw, 520px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
}
.work-title-block { min-width: 0; }
.work-title-block .helper { max-width: min(70vw, 680px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.work-rights-head { align-items: flex-start; gap: 18px; }
.share-picture-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 14px;
}
.share-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
  padding: 7px 10px;
  border: 1px solid rgba(23,21,18,.12);
  border-radius: 999px;
  background: rgba(244,197,66,.10);
  font-size: 12px;
  line-height: 1.2;
}
.share-chip.external { background: rgba(23,21,18,.04); }
.share-chip strong {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.share-chip em {
  font-style: normal;
  color: var(--muted);
  white-space: nowrap;
}
.rights-overview-card .card-title-row,
.works-rights-card .card-title-row { align-items: flex-start; }
.pass-through-box {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(23,21,18,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.50);
}
.pass-through-box label:not(.checkline) { margin-top: 10px; display: block; }
@media (max-width: 760px) {
  .truncate-cell,
  .work-title-truncate,
  .work-title-block .helper { max-width: 78vw; }
  .work-rights-head { flex-direction: column; }
  .share-chip { width: 100%; justify-content: space-between; border-radius: 14px; }
  .share-chip strong { max-width: 42vw; }
}

/* v6.4.24: Rights ledger tree, canonical merge display and quieter sync payees */
.rights-ledger-tree-card {
  background: linear-gradient(180deg, rgba(255,253,247,.96), rgba(255,255,255,.98));
}
.rights-tree-group {
  border: 1px solid rgba(23,21,18,.10);
  border-radius: 20px;
  background: rgba(255,255,255,.72);
  margin: 14px 0;
  overflow: hidden;
}
.rights-tree-group > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 18px;
  background: rgba(23,21,18,.035);
  border-bottom: 1px solid rgba(23,21,18,.08);
}
.rights-tree-group:not([open]) > summary { border-bottom: 0; }
.rights-tree-group > summary::-webkit-details-marker { display: none; }
.rights-tree-group > summary::before {
  content: '›';
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(244,197,66,.18);
  color: var(--ink);
  font-weight: 900;
  transform: rotate(0deg);
  transition: transform .18s ease;
  flex: 0 0 auto;
}
.rights-tree-group[open] > summary::before { transform: rotate(90deg); }
.rights-tree-group > summary > span:first-of-type {
  display: grid;
  gap: 2px;
  margin-right: auto;
}
.rights-tree-group > summary strong { font-size: 1rem; }
.rights-tree-group > summary em { font-style: normal; color: var(--muted); font-size: .84rem; }
.rights-tree-work-list { padding: 12px; display: grid; gap: 12px; }
.rights-tree-work-list .work-rights-group {
  margin: 0;
  border-color: rgba(23,21,18,.10);
  background: rgba(250,247,238,.70);
}
.work-audit-drawer {
  margin: 8px 0 12px;
  border: 1px dashed rgba(23,21,18,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.52);
}
.work-audit-drawer > summary {
  cursor: pointer;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 700;
  padding: 9px 12px;
}
.work-audit-drawer ul { margin: 0; padding: 0 12px 10px 28px; color: var(--muted); font-size: .82rem; }
.work-audit-drawer li { margin: 4px 0; }
.work-audit-drawer li span { margin-left: 6px; opacity: .82; }
.share-chip.sync-agreement {
  background: rgba(116,79,193,.10);
  border-color: rgba(116,79,193,.22);
}
.share-chip.sync-agreement b {
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #5e3fa1;
  background: rgba(116,79,193,.10);
  border-radius: 999px;
  padding: 2px 6px;
  white-space: nowrap;
}
.sync-participant-edit {
  background: linear-gradient(90deg, rgba(116,79,193,.075), rgba(255,255,255,.72));
  border-color: rgba(116,79,193,.20);
}
.participant-badges { display: flex; gap: 5px; flex-wrap: wrap; }
.pill.quiet { background: rgba(23,21,18,.07); color: var(--muted); }
.pill.sync-pill { background: rgba(116,79,193,.12); color: #5e3fa1; }
.guardrail-card { display: none !important; }
.works-rights-card .subcard,
.rights-participant-edit,
.compact-stat-grid > div,
.pass-through-box {
  background-color: rgba(255,255,255,.74);
}
@media (max-width: 760px) {
  .rights-tree-group > summary { align-items: flex-start; padding: 13px 14px; }
  .rights-tree-work-list { padding: 9px; }
  .work-audit-drawer ul { padding-left: 22px; }
  .share-chip.sync-agreement b { margin-left: auto; }
}

/* v6.4.25: Rights ledger presentation cleanup */
.rights-ledger-tree-card,
.rights-overview-card,
.works-search-card {
  background: var(--surface, #fffaf0);
}
.rights-tree-group,
.rights-artist-group,
.work-rights-group,
.participant-card {
  color: var(--ink, #171512);
}
.rights-tree-group {
  border-color: rgba(23,21,18,.14);
  background: #fffdf7;
  box-shadow: 0 10px 28px rgba(23,21,18,.045);
}
.rights-tree-group > summary {
  background: #171512;
  color: #fff8e9;
  border-bottom: 0;
}
.rights-tree-group > summary em { color: rgba(255,248,233,.72); }
.rights-tree-group > summary::before {
  background: rgba(244,197,66,.20);
  color: #f4c542;
}
.rights-tree-group > summary .pill.warning { background: rgba(244,197,66,.18); color: #f7d56d; border-color: rgba(244,197,66,.30); }
.rights-artist-tree-list { padding: 12px; display: grid; gap: 12px; }
.rights-artist-group {
  border: 1px solid rgba(23,21,18,.12);
  border-radius: 18px;
  background: #fffaf0;
  overflow: hidden;
}
.rights-artist-group > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 16px;
  background: rgba(244,197,66,.13);
  border-bottom: 1px solid rgba(23,21,18,.08);
}
.rights-artist-group:not([open]) > summary { border-bottom: 0; }
.rights-artist-group > summary::-webkit-details-marker { display: none; }
.rights-artist-group > summary > span:first-of-type { display: grid; gap: 2px; }
.rights-artist-group > summary strong { font-size: .98rem; color: var(--ink, #171512); }
.rights-artist-group > summary em { font-style: normal; color: var(--muted, #6f665f); font-size: .82rem; }
.rights-tree-work-list .work-rights-group,
.work-rights-group {
  border: 1px solid rgba(23,21,18,.12);
  background: #fffefa;
  border-radius: 18px;
  padding: 15px;
}
.work-title-truncate {
  max-width: min(62vw, 760px);
  font-size: 1.02rem;
  line-height: 1.25;
}
.work-meta-line {
  color: var(--muted, #6f665f);
  font-size: .84rem;
}
.work-rights-totals .pill,
.participant-badges .pill {
  white-space: nowrap;
}
.share-picture-strip {
  padding: 10px;
  border-radius: 14px;
  background: rgba(23,21,18,.035);
  border: 1px solid rgba(23,21,18,.08);
}
.share-chip {
  background: #fff;
  color: var(--ink, #171512);
  border-color: rgba(23,21,18,.12);
  box-shadow: 0 1px 0 rgba(23,21,18,.04);
}
.share-chip.external { background: #f7f2e8; }
.share-chip strong { color: var(--ink, #171512); }
.share-chip em { color: var(--muted, #6f665f); }
.share-chip.sync-agreement {
  background: #f5f0ff;
  color: #271b40;
  border-color: rgba(116,79,193,.22);
}
.compact-participants { gap: 8px; margin-top: 12px; }
.participant-card {
  border: 1px solid rgba(23,21,18,.10);
  background: #fff;
  border-radius: 15px;
  padding: 11px 12px;
}
.sync-participant-card {
  background: linear-gradient(90deg, rgba(116,79,193,.075), #fff 48%);
  border-color: rgba(116,79,193,.20);
}
.participant-summary-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(360px, 2.1fr);
  gap: 12px;
  align-items: center;
}
.participant-share-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(82px, 1fr));
  gap: 8px;
}
.participant-share-metrics span {
  display: grid;
  gap: 2px;
  padding: 7px 9px;
  border-radius: 12px;
  background: rgba(23,21,18,.035);
  min-width: 0;
}
.participant-share-metrics em {
  font-style: normal;
  color: var(--muted, #6f665f);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.participant-share-metrics strong {
  color: var(--ink, #171512);
  font-size: .85rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rights-edit-drawer {
  margin-top: 8px;
  border-top: 1px solid rgba(23,21,18,.08);
  padding-top: 8px;
}
.rights-edit-drawer > summary {
  cursor: pointer;
  color: var(--muted, #6f665f);
  font-size: .82rem;
  font-weight: 700;
  width: max-content;
}
.rights-edit-drawer[open] > summary { color: var(--ink, #171512); }
.rights-edit-drawer .rights-participant-edit {
  margin-top: 10px;
  background: #fffaf0;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  border-color: rgba(23,21,18,.12);
}
.rights-edit-drawer .notes-field,
.rights-edit-drawer .check-stack,
.rights-edit-drawer .row-actions { grid-column: span 2; }
.rights-edit-drawer .inline-remove {
  margin: 8px 0 0;
  justify-content: flex-start;
}
.work-audit-drawer {
  background: #fff;
  border-color: rgba(23,21,18,.14);
}
.work-audit-drawer > summary { color: var(--muted, #6f665f); }
@media (max-width: 1060px) {
  .participant-summary-row { grid-template-columns: 1fr; }
  .participant-share-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .rights-edit-drawer .rights-participant-edit { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .rights-tree-group > summary,
  .rights-artist-group > summary { align-items: flex-start; }
  .rights-artist-tree-list,
  .rights-tree-work-list { padding: 9px; }
  .work-rights-group { padding: 12px; }
  .work-title-truncate { max-width: 78vw; font-size: .98rem; }
  .share-picture-strip { padding: 8px; }
  .share-chip { width: 100%; border-radius: 12px; display: grid; grid-template-columns: 1fr auto auto; justify-content: stretch; }
  .share-chip b { grid-column: 1 / -1; width: max-content; }
  .participant-share-metrics { grid-template-columns: 1fr 1fr; }
  .rights-edit-drawer .rights-participant-edit { grid-template-columns: 1fr; }
  .rights-edit-drawer .notes-field,
  .rights-edit-drawer .check-stack,
  .rights-edit-drawer .row-actions { grid-column: 1 / -1; }
}


/* v6.4.26: Rights ledger contrast + admin style repair
   Keep the Works & splits rights ledger on the same dark admin surface as the rest of the portal.
   Previous light nested panels were inheriting white admin text, making content unreadable. */
.rights-overview-card,
.works-search-card,
.works-rights-card,
.rights-ledger-tree-card {
  background: rgba(18, 18, 17, .94) !important;
  border-color: rgba(244, 197, 66, .18) !important;
  color: rgba(255,255,255,.94) !important;
}
.rights-overview-card h1,
.rights-overview-card h2,
.works-search-card h1,
.works-search-card h2,
.works-rights-card h1,
.works-rights-card h2,
.rights-ledger-tree-card h1,
.rights-ledger-tree-card h2,
.rights-overview-card .eyebrow,
.works-rights-card .eyebrow,
.rights-ledger-tree-card .eyebrow {
  color: rgba(255,255,255,.96) !important;
}
.rights-overview-card .helper,
.works-search-card .helper,
.works-rights-card .helper,
.rights-ledger-tree-card .helper,
.rights-overview-card .muted,
.works-search-card .muted,
.works-rights-card .muted,
.rights-ledger-tree-card .muted {
  color: rgba(255,255,255,.64) !important;
}

/* Coverage stat cards */
.rights-overview-card .compact-stat-grid > div {
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  color: rgba(255,255,255,.95) !important;
  box-shadow: none !important;
}
.rights-overview-card .compact-stat-grid span,
.rights-overview-card .compact-stat-grid .muted {
  color: rgba(255,255,255,.62) !important;
}
.rights-overview-card .compact-stat-grid strong {
  color: rgba(255,255,255,.98) !important;
}

/* Tree shells */
.rights-tree-group {
  background: rgba(255,255,255,.035) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.18) !important;
}
.rights-tree-group > summary {
  background: rgba(8,8,7,.72) !important;
  color: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
}
.rights-tree-group > summary strong,
.rights-tree-group > summary em {
  color: rgba(255,255,255,.96) !important;
}
.rights-tree-group > summary em {
  color: rgba(255,255,255,.62) !important;
}
.rights-tree-group > summary::before {
  background: rgba(244,197,66,.18) !important;
  color: #f4c542 !important;
}
.rights-artist-tree-list,
.rights-tree-work-list {
  background: transparent !important;
}

/* Artist layer */
.rights-artist-group {
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  box-shadow: none !important;
}
.rights-artist-group > summary {
  background: rgba(244,197,66,.10) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  color: rgba(255,255,255,.94) !important;
}
.rights-artist-group > summary strong {
  color: rgba(255,255,255,.96) !important;
}
.rights-artist-group > summary em {
  color: rgba(255,255,255,.60) !important;
}

/* Work rows */
.rights-tree-work-list .work-rights-group,
.work-rights-group {
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.94) !important;
}
.work-rights-group .work-title-truncate,
.work-rights-group h3,
.work-title-block h3 {
  color: rgba(255,255,255,.96) !important;
}
.work-rights-group .work-meta-line,
.work-rights-group .helper,
.work-rights-group .muted,
.work-rights-group small {
  color: rgba(255,255,255,.58) !important;
}
.work-rights-totals .pill {
  border-color: rgba(255,255,255,.14) !important;
}
.work-rights-totals .pill.good {
  background: rgba(46, 204, 113, .14) !important;
  color: #bff4d2 !important;
}
.work-rights-totals .pill.warning {
  background: rgba(244,197,66,.16) !important;
  color: #f7d56d !important;
}

/* Share picture chips */
.share-picture-strip {
  background: rgba(0,0,0,.16) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.share-chip,
.share-chip.external {
  background: rgba(255,255,255,.075) !important;
  color: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  box-shadow: none !important;
}
.share-chip strong {
  color: rgba(255,255,255,.96) !important;
}
.share-chip em {
  color: rgba(255,255,255,.60) !important;
}
.share-chip.sync-agreement {
  background: rgba(129, 93, 214, .18) !important;
  border-color: rgba(154, 126, 225, .32) !important;
}
.share-chip.sync-agreement b,
.pill.sync-pill {
  background: rgba(154,126,225,.20) !important;
  color: #dacdff !important;
}

/* Participant rows */
.participant-card,
.sync-participant-card {
  background: rgba(255,255,255,.055) !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  color: rgba(255,255,255,.94) !important;
}
.participant-name strong,
.participant-card strong {
  color: rgba(255,255,255,.96) !important;
}
.participant-badges .pill.quiet {
  background: rgba(255,255,255,.08) !important;
  color: rgba(255,255,255,.62) !important;
}
.participant-share-metrics span {
  background: rgba(0,0,0,.14) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
}
.participant-share-metrics em {
  color: rgba(255,255,255,.52) !important;
}
.participant-share-metrics strong {
  color: rgba(255,255,255,.92) !important;
}
.rights-edit-drawer {
  border-top-color: rgba(255,255,255,.10) !important;
}
.rights-edit-drawer > summary {
  color: rgba(255,255,255,.65) !important;
}
.rights-edit-drawer[open] > summary {
  color: rgba(255,255,255,.92) !important;
}
.rights-edit-drawer .rights-participant-edit {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.11) !important;
}

/* Audit drawer */
.work-audit-drawer {
  background: rgba(0,0,0,.12) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.work-audit-drawer > summary,
.work-audit-drawer ul,
.work-audit-drawer li,
.work-audit-drawer li span {
  color: rgba(255,255,255,.58) !important;
}
.work-audit-drawer li strong {
  color: rgba(255,255,255,.84) !important;
}

/* Keep forms readable inside the rights page */
.works-search-card label,
.works-search-card input,
.works-search-card select,
.works-search-card textarea,
.works-rights-card label,
.works-rights-card input,
.works-rights-card select,
.works-rights-card textarea,
.rights-ledger-tree-card label,
.rights-ledger-tree-card input,
.rights-ledger-tree-card select,
.rights-ledger-tree-card textarea {
  color: rgba(255,255,255,.88) !important;
}
.works-search-card input,
.works-search-card select,
.works-search-card textarea,
.works-rights-card input,
.works-rights-card select,
.works-rights-card textarea,
.rights-ledger-tree-card input,
.rights-ledger-tree-card select,
.rights-ledger-tree-card textarea {
  background: rgba(255,255,255,.09) !important;
  border-color: rgba(255,255,255,.16) !important;
}
.works-search-card input::placeholder,
.works-rights-card input::placeholder,
.rights-ledger-tree-card input::placeholder {
  color: rgba(255,255,255,.42) !important;
}

@media (max-width: 760px) {
  .rights-overview-card .compact-stat-grid {
    grid-template-columns: 1fr 1fr !important;
  }
  .rights-tree-group > summary,
  .rights-artist-group > summary {
    gap: 10px !important;
  }
  .participant-share-metrics {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* v6.4.27: Licence builder + rights entity view refinement */
.licence-builder-card,
.licence-builder-card .licence-step-card,
.licence-builder-card .inline-summary,
.licence-builder-card .pass-through-box,
.card:has(.licence-form) {
  background: rgba(18, 18, 17, .94) !important;
  border-color: rgba(244, 197, 66, .16) !important;
  color: rgba(255,255,255,.94) !important;
}
.licence-builder-card .card-title-row,
.licence-builder-card h2,
.licence-builder-card h3,
.licence-builder-card label,
.licence-builder-card strong,
.licence-builder-card .helper,
.licence-builder-card .muted {
  color: rgba(255,255,255,.94) !important;
}
.licence-builder-card .helper,
.licence-builder-card .muted {
  color: rgba(255,255,255,.62) !important;
}
.licence-builder-card .licence-step-card {
  padding: 18px;
  border-radius: 22px;
  margin: 0 0 18px;
  box-shadow: none !important;
}
.licence-builder-card input,
.licence-builder-card select,
.licence-builder-card textarea {
  background: rgba(255,255,255,.085) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  color: rgba(255,255,255,.94) !important;
  box-shadow: none !important;
}
.licence-builder-card input::placeholder,
.licence-builder-card textarea::placeholder {
  color: rgba(255,255,255,.42) !important;
}
.licence-builder-card select option { color: #171512; }
.licence-builder-card .grid-form,
.licence-builder-card .compact-fields {
  gap: 14px 16px;
}
.licence-readiness-summary {
  margin-top: 12px;
  background: rgba(244,197,66,.10) !important;
  border: 1px solid rgba(244,197,66,.24) !important;
  color: rgba(255,255,255,.92) !important;
}
.licence-readiness-box {
  margin-top: 12px;
  padding: 13px 15px;
  border-radius: 16px;
  background: rgba(46,204,113,.10);
  border: 1px solid rgba(46,204,113,.22);
  color: rgba(255,255,255,.90);
}
.licence-readiness-box.needs-review {
  background: rgba(244,197,66,.10);
  border-color: rgba(244,197,66,.28);
}
.licence-readiness-box ul {
  margin: 8px 0 0 18px;
  padding: 0;
}
.licence-readiness-box li { margin: 4px 0; }
.suggestion-panel {
  background: #171512 !important;
  border-color: rgba(244,197,66,.25) !important;
  color: rgba(255,255,255,.92) !important;
}
.suggestion-item {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.09) !important;
  color: rgba(255,255,255,.92) !important;
}
.suggestion-item:hover { background: rgba(244,197,66,.12) !important; }
.suggestion-item strong { color: #fff !important; }
.suggestion-item span,
.suggestion-item em { color: rgba(255,255,255,.62) !important; }

.entity-rights-card .card-title-row,
.licence-readiness-card .card-title-row { align-items: flex-start; }
.entity-tree-group > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.entity-summary-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}
.entity-work-list {
  padding: 12px;
  display: grid;
  gap: 10px;
}
.entity-work-row {
  padding: 13px 14px;
  border-radius: 17px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.11);
  color: rgba(255,255,255,.92);
}
.entity-work-main {
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) minmax(360px, 2fr);
  gap: 14px;
  align-items: center;
}
.entity-work-main strong { color: rgba(255,255,255,.96) !important; }
.entity-share-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(82px, 1fr));
  gap: 8px;
}
.entity-share-metrics span {
  padding: 7px 9px;
  border-radius: 12px;
  background: rgba(0,0,0,.15);
  border: 1px solid rgba(255,255,255,.08);
  display: grid;
  gap: 2px;
  min-width: 0;
}
.entity-share-metrics em {
  font-style: normal;
  color: rgba(255,255,255,.52);
  font-size: .68rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.entity-share-metrics strong {
  color: rgba(255,255,255,.92);
  font-size: .85rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.entity-work-badges {
  margin-top: 9px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.rights-gap-line {
  margin: 9px 0 0;
  color: #f7d56d;
  font-size: .84rem;
}
.rights-gap-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
}
.rights-gap-card {
  padding: 12px 13px;
  border-radius: 16px;
  background: rgba(244,197,66,.10);
  border: 1px solid rgba(244,197,66,.22);
}
.rights-gap-card strong { color: #fff; display: block; }
.rights-gap-card p { margin: 7px 0 0; color: #f7d56d; font-size: .85rem; }
.canonical-audit-index {
  padding: 0 !important;
  overflow: hidden;
}
.canonical-audit-index > summary {
  list-style: none;
  cursor: pointer;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: rgba(8,8,7,.72);
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.canonical-audit-index > summary::-webkit-details-marker { display: none; }
.canonical-audit-index > summary strong { color: rgba(255,255,255,.95); display: block; }
.canonical-audit-index > summary em { color: rgba(255,255,255,.58); font-style: normal; }
.compact-rights-edit .rights-participant-edit { grid-template-columns: repeat(4, minmax(120px, 1fr)); }

@media (max-width: 980px) {
  .entity-work-main { grid-template-columns: 1fr; }
  .entity-share-metrics { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .compact-rights-edit .rights-participant-edit { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .licence-builder-card .licence-step-card { padding: 14px; border-radius: 18px; }
  .licence-builder-card .grid-form.three-cols,
  .licence-builder-card .grid-form.two-cols,
  .licence-builder-card .compact-fields { grid-template-columns: 1fr !important; }
  .entity-tree-group > summary { align-items: flex-start; gap: 10px; }
  .entity-summary-badges { justify-content: flex-start; }
  .entity-work-list { padding: 9px; }
  .entity-share-metrics { grid-template-columns: 1fr 1fr; }
  .compact-rights-edit .rights-participant-edit { grid-template-columns: 1fr; }
}


/* V6.4.34 client period performance vertical bar chart
   Replace the fragile row/progress-bar strip with a compact vertical comparison.
   The default chart shows up to six recent periods; on small screens only the
   first four are shown, with the full history available in the look-back drawer. */
.period-vertical-card.period-chart-card .card-title-row{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin-bottom:18px !important;
}
.period-vertical-card.period-chart-card .card-title-row h2{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
  white-space:normal !important;
}
.period-vertical-card.period-chart-card .card-title-row .helper{
  max-width:300px !important;
  margin:2px 0 0 !important;
  color:rgba(247,247,247,.58) !important;
  text-align:right !important;
  font:750 12.5px/1.35 "Inter","Poppins",system-ui,sans-serif !important;
}
.period-vertical-chart{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:end !important;
  min-height:232px !important;
  margin-top:4px !important;
  padding:4px 0 0 !important;
}
.period-column{
  display:grid !important;
  grid-template-rows:auto 148px auto !important;
  gap:9px !important;
  min-width:0 !important;
  padding:0 !important;
  color:var(--eqs-text,#f7f7f7) !important;
  text-decoration:none !important;
}
.period-column-value{
  display:block !important;
  min-height:18px !important;
  color:rgba(247,247,247,.72) !important;
  font:900 11.6px/1.1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.02em !important;
  text-align:center !important;
  font-variant-numeric:tabular-nums !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-column-barslot{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  height:148px !important;
  width:100% !important;
  padding:0 8px !important;
  border-bottom:1px solid rgba(247,247,247,.16) !important;
  background:linear-gradient(180deg,rgba(247,247,247,.03),rgba(247,247,247,.015)) !important;
  border-radius:18px 18px 10px 10px !important;
  box-sizing:border-box !important;
}
.period-column-bar{
  display:block !important;
  width:min(100%,30px) !important;
  height:clamp(4px,var(--bar,0%),100%) !important;
  min-height:4px !important;
  border-radius:12px 12px 5px 5px !important;
  background:linear-gradient(180deg,var(--eqs-yellow,#f5c044),rgba(247,247,247,.58)) !important;
  opacity:.88 !important;
  box-shadow:none !important;
}
.period-column.current .period-column-bar{
  opacity:1 !important;
  box-shadow:0 0 0 1px rgba(245,192,68,.26),0 12px 30px rgba(245,192,68,.12) !important;
}
.period-column.current .period-column-value,
.period-column.current .period-column-label strong{color:var(--eqs-white,#fff) !important;}
.period-column-label{
  display:grid !important;
  gap:3px !important;
  min-width:0 !important;
  text-align:center !important;
}
.period-column-label strong{
  display:block !important;
  margin:0 !important;
  color:rgba(247,247,247,.88) !important;
  font:900 12.5px/1.1 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-column-label small{
  display:block !important;
  margin:0 !important;
  color:rgba(247,247,247,.45) !important;
  font:850 9.5px/1.15 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-history-details{
  margin-top:16px !important;
  border-top:1px solid rgba(247,247,247,.10) !important;
  padding-top:12px !important;
}
.period-history-details summary{
  cursor:pointer !important;
  color:rgba(247,247,247,.70) !important;
  font:850 12.5px/1.2 "Inter","Poppins",system-ui,sans-serif !important;
  letter-spacing:.02em !important;
}
.period-history-list{
  display:grid !important;
  gap:0 !important;
  margin-top:10px !important;
  max-height:240px !important;
  overflow:auto !important;
  padding-right:4px !important;
}
.period-history-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) max-content !important;
  gap:12px !important;
  align-items:center !important;
  padding:9px 0 !important;
  border-bottom:1px solid rgba(247,247,247,.07) !important;
  color:var(--eqs-text,#f7f7f7) !important;
  text-decoration:none !important;
}
.period-history-row:last-child{border-bottom:0 !important;}
.period-history-row span{display:grid !important;gap:2px !important;min-width:0 !important;}
.period-history-row strong{color:rgba(247,247,247,.88) !important;font:850 13px/1.1 "Inter","Poppins",system-ui,sans-serif !important;}
.period-history-row small{color:rgba(247,247,247,.48) !important;font:750 10px/1.1 "Inter","Poppins",system-ui,sans-serif !important;text-transform:uppercase !important;letter-spacing:.055em !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;}
.period-history-row em{color:rgba(247,247,247,.76) !important;font:900 13px/1 "Inter","Poppins",system-ui,sans-serif !important;font-style:normal !important;font-variant-numeric:tabular-nums !important;white-space:nowrap !important;}
@media(max-width:900px){
  .period-vertical-card.period-chart-card .card-title-row{display:block !important;margin-bottom:15px !important;}
  .period-vertical-card.period-chart-card .card-title-row .helper{max-width:none !important;text-align:left !important;margin-top:6px !important;}
  .period-vertical-chart{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:9px !important;min-height:202px !important;}
  .period-column{grid-template-rows:auto 122px auto !important;gap:7px !important;}
  .period-column:nth-child(n+5){display:none !important;}
  .period-column-value{font-size:10.7px !important;}
  .period-column-barslot{height:122px !important;padding:0 5px !important;border-radius:15px 15px 9px 9px !important;}
  .period-column-bar{width:min(100%,24px) !important;}
  .period-column-label strong{font-size:11.5px !important;}
}
@media(max-width:420px){
  .period-vertical-chart{gap:7px !important;}
  .period-column-value{font-size:10px !important;}
  .period-column-barslot{padding:0 4px !important;}
  .period-column-label small{font-size:8.7px !important;}
}

/* V6.4.35 period performance and open-period client copy polish */
.clean-payment-status.open-status .payment-status-messages{
  margin-top:10px !important;
  display:grid !important;
  gap:6px !important;
}
.clean-payment-status.open-status .payment-status-message{
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:14px !important;
  padding:9px 11px !important;
}
.clean-payment-status.open-status .payment-status-message span{
  color:var(--muted) !important;
  font-size:13px !important;
  line-height:1.35 !important;
}
.period-viz-35-card{
  overflow:hidden !important;
}
.period-viz-35-card .card-title-row{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:22px !important;
  margin-bottom:18px !important;
}
.period-viz-35-card .card-title-row h2{
  margin:0 !important;
}
.period-viz-35-card .card-title-row .helper{
  max-width:360px !important;
  text-align:right !important;
  line-height:1.25 !important;
}
.period-viz-35-shell{
  position:relative !important;
}
.period-viz-35-controls{
  display:flex !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:-4px 0 12px !important;
}
.period-viz-35-controls .button.mini,
.period-viz-35-controls button.mini{
  min-height:0 !important;
  padding:7px 12px !important;
  border-radius:999px !important;
  font-size:12px !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.period-viz-35-window{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x proximity !important;
  -webkit-overflow-scrolling:touch !important;
  padding:6px 0 2px !important;
}
.period-viz-35-window::-webkit-scrollbar{
  height:6px !important;
}
.period-viz-35-window::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.16) !important;
  border-radius:999px !important;
}
.period-viz-35-bars{
  display:flex !important;
  align-items:flex-end !important;
  gap:18px !important;
  min-height:238px !important;
  padding:8px 4px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.12) !important;
}
.period-viz-35-bar{
  scroll-snap-align:center !important;
  flex:0 0 124px !important;
  min-width:124px !important;
  height:218px !important;
  display:grid !important;
  grid-template-rows:auto minmax(118px,1fr) auto !important;
  align-items:end !important;
  justify-items:center !important;
  text-decoration:none !important;
  color:var(--ink) !important;
  opacity:.48 !important;
  transition:opacity .16s ease, transform .16s ease !important;
}
.period-viz-35-bar:hover,
.period-viz-35-bar.selected,
.period-viz-35-bar.latest{
  opacity:1 !important;
}
.period-viz-35-bar:hover{
  transform:translateY(-2px) !important;
}
.period-viz-35-value{
  display:block !important;
  margin:0 0 8px !important;
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:900 !important;
  text-align:center !important;
  white-space:nowrap !important;
  font-variant-numeric:tabular-nums !important;
}
.period-viz-35-bar.latest .period-viz-35-value,
.period-viz-35-bar.selected .period-viz-35-value{
  color:var(--ink) !important;
  font-size:13px !important;
}
.period-viz-35-slot{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  width:58px !important;
  height:136px !important;
  border-bottom:1px solid rgba(255,255,255,.16) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015)) !important;
  border-radius:16px 16px 0 0 !important;
}
.period-viz-35-slot b{
  display:block !important;
  width:30px !important;
  height:max(6px,min(var(--bar,0%),100%)) !important;
  min-height:6px !important;
  max-height:100% !important;
  border-radius:999px 999px 4px 4px !important;
  background:rgba(255,255,255,.28) !important;
  box-shadow:none !important;
}
.period-viz-35-bar.latest .period-viz-35-slot b,
.period-viz-35-bar.selected .period-viz-35-slot b{
  background:linear-gradient(180deg,var(--brand),var(--brand2)) !important;
  box-shadow:0 12px 22px rgba(244,197,66,.18) !important;
}
.period-viz-35-bar.open-period:not(.selected) .period-viz-35-slot b{
  background:rgba(255,255,255,.20) !important;
  outline:1px dashed rgba(255,255,255,.32) !important;
  outline-offset:2px !important;
}
.period-viz-35-label{
  display:block !important;
  margin-top:10px !important;
  text-align:center !important;
  max-width:118px !important;
}
.period-viz-35-label strong{
  display:block !important;
  color:var(--ink) !important;
  font-size:16px !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
}
.period-viz-35-label small{
  display:block !important;
  margin-top:6px !important;
  color:var(--muted) !important;
  font-size:10.5px !important;
  line-height:1.05 !important;
  font-weight:850 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
.period-viz-35-bar.latest .period-viz-35-label strong,
.period-viz-35-bar.selected .period-viz-35-label strong{
  color:var(--ink) !important;
}
@media(max-width:760px){
  .period-viz-35-card .card-title-row{
    display:block !important;
    margin-bottom:12px !important;
  }
  .period-viz-35-card .card-title-row .helper{
    max-width:none !important;
    text-align:left !important;
    margin-top:6px !important;
    font-size:13px !important;
  }
  .period-viz-35-controls{
    justify-content:flex-start !important;
    margin:0 0 10px !important;
  }
  .period-viz-35-bars{
    gap:12px !important;
    min-height:194px !important;
  }
  .period-viz-35-bar{
    flex-basis:98px !important;
    min-width:98px !important;
    height:178px !important;
    grid-template-rows:auto minmax(86px,1fr) auto !important;
  }
  .period-viz-35-slot{
    width:48px !important;
    height:98px !important;
  }
  .period-viz-35-slot b{
    width:24px !important;
  }
  .period-viz-35-value{
    font-size:11px !important;
  }
  .period-viz-35-label strong{
    font-size:14px !important;
  }
  .period-viz-35-label small{
    font-size:9.5px !important;
  }
}

/* V6.4.36 adjustment tools + professional period chart pass */
.adjustment-admin-card .card-title-row{align-items:flex-start!important;}
.admin-adjustments-table td small{display:block;margin-top:3px;color:var(--muted)!important;font-size:11.5px;line-height:1.25;}
.admin-adjustments-table .adjustment-action-cell{white-space:nowrap;}
.admin-adjustments-table .adjustment-action-cell form{margin:0;display:inline-block;}
.button.mini,button.mini{min-height:0!important;padding:7px 11px!important;font-size:12px!important;line-height:1!important;border-radius:999px!important;}

.period-viz-35-card{
  overflow:hidden!important;
  padding-bottom:22px!important;
}
.period-viz-35-card .card-title-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,360px)!important;
  align-items:start!important;
  gap:22px!important;
  margin-bottom:16px!important;
}
.period-viz-35-card .card-title-row .helper{
  max-width:360px!important;
  justify-self:end!important;
  color:rgba(247,247,247,.58)!important;
  font-size:15px!important;
  line-height:1.25!important;
  text-align:right!important;
}
.period-viz-35-shell{position:relative!important;}
.period-viz-35-controls{
  position:absolute!important;
  right:0!important;
  bottom:-8px!important;
  z-index:3!important;
  display:flex!important;
  gap:8px!important;
  margin:0!important;
}
.period-viz-35-controls .button.mini,
.period-viz-35-controls button.mini{
  min-height:32px!important;
  padding:8px 12px!important;
  background:rgba(247,247,247,.06)!important;
  border:1px solid rgba(247,247,247,.12)!important;
  color:rgba(247,247,247,.72)!important;
  box-shadow:none!important;
}
.period-viz-35-window{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:8px 0 34px!important;
  scrollbar-width:thin!important;
  scroll-padding-inline:24px!important;
}
.period-viz-35-window::-webkit-scrollbar{height:4px!important;}
.period-viz-35-window::-webkit-scrollbar-thumb{background:rgba(247,247,247,.12)!important;border-radius:999px!important;}
.period-viz-35-bars{
  --period-bar-h:156px;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:clamp(18px,3.2vw,34px)!important;
  min-height:228px!important;
  min-width:max-content!important;
  padding:12px 16px 0!important;
  border-bottom:1px solid rgba(247,247,247,.13)!important;
}
.period-viz-35-bar{
  flex:0 0 118px!important;
  min-width:118px!important;
  height:210px!important;
  display:grid!important;
  grid-template-rows:32px var(--period-bar-h) auto!important;
  align-items:end!important;
  justify-items:center!important;
  gap:8px!important;
  color:var(--eqs-white)!important;
  text-decoration:none!important;
  opacity:.62!important;
  filter:saturate(.72)!important;
  transition:opacity .16s ease,transform .16s ease,filter .16s ease!important;
}
.period-viz-35-bar:hover{opacity:.88!important;transform:translateY(-2px)!important;filter:saturate(.9)!important;}
.period-viz-35-bar.selected,
.period-viz-35-bar.latest{opacity:1!important;filter:none!important;}
.period-viz-35-value{
  grid-row:1!important;
  display:block!important;
  margin:0!important;
  color:rgba(247,247,247,.50)!important;
  font-size:12.5px!important;
  line-height:1!important;
  font-weight:850!important;
  text-align:center!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.period-viz-35-bar.latest .period-viz-35-value,
.period-viz-35-bar.selected .period-viz-35-value{
  color:var(--eqs-white)!important;
  font-size:13.5px!important;
  letter-spacing:-.01em!important;
}
.period-viz-35-slot{
  grid-row:2!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  width:72px!important;
  height:var(--period-bar-h)!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid rgba(247,247,247,.20)!important;
  border-radius:0!important;
  position:relative!important;
}
.period-viz-35-slot::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:48px;
  height:100%;
  transform:translateX(-50%);
  border-radius:16px 16px 0 0;
  background:linear-gradient(180deg,rgba(247,247,247,.035),rgba(247,247,247,.012));
  opacity:.7;
}
.period-viz-35-slot b{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  width:34px!important;
  height:max(5px,min(var(--bar,0%),100%))!important;
  min-height:5px!important;
  max-height:100%!important;
  border-radius:11px 11px 2px 2px!important;
  background:rgba(247,247,247,.22)!important;
  box-shadow:none!important;
}
.period-viz-35-bar.latest .period-viz-35-slot b,
.period-viz-35-bar.selected .period-viz-35-slot b{
  width:40px!important;
  background:linear-gradient(180deg,#f7c94a 0%,#eeb83a 58%,rgba(247,247,247,.58) 100%)!important;
  box-shadow:0 16px 28px rgba(244,197,66,.14)!important;
}
.period-viz-35-bar.open-period:not(.selected) .period-viz-35-slot b{
  background:rgba(247,247,247,.18)!important;
  outline:1px dashed rgba(247,247,247,.30)!important;
  outline-offset:3px!important;
}
.period-viz-35-label{
  grid-row:3!important;
  display:grid!important;
  gap:5px!important;
  margin:0!important;
  text-align:center!important;
  max-width:124px!important;
}
.period-viz-35-label strong{
  display:block!important;
  color:rgba(247,247,247,.70)!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
  white-space:nowrap!important;
}
.period-viz-35-label small{
  display:block!important;
  color:rgba(247,247,247,.40)!important;
  font-size:9.5px!important;
  line-height:1.05!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  max-width:122px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.period-viz-35-bar.latest .period-viz-35-label strong,
.period-viz-35-bar.selected .period-viz-35-label strong{color:var(--eqs-white)!important;font-size:17px!important;}
.period-viz-35-bar.latest .period-viz-35-label small,
.period-viz-35-bar.selected .period-viz-35-label small{color:rgba(247,247,247,.62)!important;}
@media(min-width:900px){
  .period-viz-35-bars:has(.period-viz-35-bar:nth-child(1):last-child),
  .period-viz-35-bars:has(.period-viz-35-bar:nth-child(2):last-child),
  .period-viz-35-bars:has(.period-viz-35-bar:nth-child(3):last-child){
    min-width:0!important;
    width:max-content!important;
  }
}
@media(max-width:760px){
  .period-viz-35-card{padding-bottom:18px!important;}
  .period-viz-35-card .card-title-row{display:block!important;margin-bottom:8px!important;}
  .period-viz-35-card .card-title-row .helper{text-align:left!important;max-width:none!important;font-size:12.5px!important;margin-top:5px!important;}
  .period-viz-35-controls{position:static!important;justify-content:flex-start!important;margin:0 0 8px!important;}
  .period-viz-35-window{padding-bottom:10px!important;}
  .period-viz-35-bars{--period-bar-h:106px;gap:14px!important;min-height:168px!important;padding:8px 8px 0!important;}
  .period-viz-35-bar{flex-basis:92px!important;min-width:92px!important;height:158px!important;grid-template-rows:26px var(--period-bar-h) auto!important;gap:6px!important;}
  .period-viz-35-slot{width:58px!important;}
  .period-viz-35-slot::before{width:40px!important;border-radius:13px 13px 0 0!important;}
  .period-viz-35-slot b{width:26px!important;}
  .period-viz-35-bar.latest .period-viz-35-slot b,.period-viz-35-bar.selected .period-viz-35-slot b{width:31px!important;}
  .period-viz-35-value{font-size:10.5px!important;}
  .period-viz-35-bar.latest .period-viz-35-value,.period-viz-35-bar.selected .period-viz-35-value{font-size:11.5px!important;}
  .period-viz-35-label strong{font-size:13px!important;}
  .period-viz-35-bar.latest .period-viz-35-label strong,.period-viz-35-bar.selected .period-viz-35-label strong{font-size:14px!important;}
  .period-viz-35-label small{font-size:8.8px!important;max-width:92px!important;}
}

/* V6.4.37 all-period status + chart visibility + neutral workbook negatives */
.period-viz-35-bar{
  opacity:.78!important;
  filter:saturate(.88)!important;
}
.period-viz-35-bar:hover{
  opacity:.94!important;
  filter:saturate(.96)!important;
}
.period-viz-35-bar.selected,
.period-viz-35-bar.latest{
  opacity:1!important;
  filter:none!important;
}
.period-viz-35-bar:not(.selected):not(.latest) .period-viz-35-value{
  color:rgba(247,247,247,.66)!important;
}
.period-viz-35-bar:not(.selected):not(.latest) .period-viz-35-label strong{
  color:rgba(247,247,247,.84)!important;
}
.period-viz-35-bar:not(.selected):not(.latest) .period-viz-35-label small{
  color:rgba(247,247,247,.55)!important;
}
.period-viz-35-bar:not(.selected):not(.latest) .period-viz-35-slot b{
  background:rgba(247,247,247,.34)!important;
}
.period-viz-35-bar.open-period:not(.selected):not(.latest) .period-viz-35-slot b{
  background:rgba(247,247,247,.27)!important;
}


/* v6.7.4 — Bank of England close-out preparation */
.boe-latest-form{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px 12px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid rgba(245,192,68,.18);
}
.boe-latest-form button{
  margin:0;
  background:#f5c044;
  border-color:#f5c044;
  color:#111111;
  font-weight:900;
}
.boe-latest-form button:hover,
.boe-latest-form button:focus-visible{
  background:#ffd66f;
  border-color:#ffd66f;
  color:#111111;
}
.boe-latest-form small{
  flex:1 1 320px;
  color:rgba(247,247,247,.62);
  font:650 12px/1.35 Inter,Poppins,system-ui,sans-serif;
}
.closeout-payable-preview{
  display:grid;
  gap:13px;
  margin:15px 0;
  padding:16px;
  border:1px solid rgba(207,231,201,.28);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(207,231,201,.10),rgba(17,17,17,.62));
  box-shadow:0 14px 34px rgba(0,0,0,.16);
}
.closeout-payable-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
}
.closeout-payable-heading h3{
  margin:3px 0 0;
  color:#f7f7f7;
  font:900 17px/1.15 Inter,Poppins,system-ui,sans-serif;
}
.closeout-payable-heading > strong{
  color:#f5c044;
  font:950 clamp(24px,3vw,34px)/1 Inter,Poppins,system-ui,sans-serif;
  letter-spacing:-.03em;
  white-space:nowrap;
}
.closeout-payable-breakdown{
  display:grid;
  gap:7px;
  padding:12px;
  border:1px solid rgba(247,247,247,.10);
  border-radius:15px;
  background:rgba(17,17,17,.44);
}
.closeout-payable-breakdown > div{
  display:flex;
  justify-content:space-between;
  gap:16px;
  color:rgba(247,247,247,.70);
  font:700 12.5px/1.3 Inter,Poppins,system-ui,sans-serif;
}
.closeout-payable-breakdown > div strong{
  color:#f7f7f7;
  font-weight:850;
  white-space:nowrap;
}
.closeout-payable-breakdown .closeout-payable-total{
  margin-top:3px;
  padding-top:10px;
  border-top:1px solid rgba(245,192,68,.22);
  color:#f7f7f7;
  font-size:14px;
}
.closeout-payable-breakdown .closeout-payable-total strong{
  color:#f5c044;
  font-size:17px;
}
.closeout-payable-preview > p{
  margin:0;
  color:rgba(247,247,247,.64);
  font:650 12.5px/1.4 Inter,Poppins,system-ui,sans-serif;
}
.close-period-form input[readonly]{
  cursor:not-allowed;
  color:#f7f7f7;
  background:rgba(247,247,247,.065);
}
.close-period-form button:disabled{
  cursor:not-allowed;
  opacity:.58;
}
@media (max-width:720px){
  .closeout-payable-heading{align-items:flex-start;flex-direction:column;gap:8px;}
  .closeout-payable-breakdown > div{align-items:flex-start;flex-direction:column;gap:2px;}
  .boe-latest-form{align-items:stretch;flex-direction:column;}
  .boe-latest-form button{width:100%;}
}

/* v6.7.4 — internal payee BoE preparation */
.internal-payee-fx-panel{
  display:grid;
  gap:9px;
  margin:12px 0 14px;
  padding:13px;
  border:1px solid rgba(245,192,68,.22);
  border-radius:16px;
  background:rgba(245,192,68,.055);
}
.internal-payee-fx-panel > strong{color:#f7f7f7;font:850 14px/1.2 Inter,Poppins,system-ui,sans-serif;}
.internal-payee-fx-panel > p{margin:0;color:rgba(247,247,247,.67);font:650 12px/1.4 Inter,Poppins,system-ui,sans-serif;}
.internal-payee-fx-list{display:grid;gap:6px;}
.internal-payee-fx-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border:1px solid rgba(247,247,247,.09);
  border-radius:11px;
  background:rgba(17,17,17,.34);
  color:rgba(247,247,247,.72);
  font:700 11.5px/1.3 Inter,Poppins,system-ui,sans-serif;
}
.internal-payee-fx-row strong{color:#f7f7f7;font-weight:850;text-align:right;}
.internal-payee-fx-row.ready{border-color:rgba(207,231,201,.22);}
.internal-payee-fx-row.missing{border-color:rgba(245,192,68,.25);}
.internal-payee-fx-row.missing strong{color:#f5c044;}
.internal-payee-payable-preview{margin:12px 0 14px;}
@media (max-width:720px){
  .internal-payee-fx-row{align-items:flex-start;flex-direction:column;}
  .internal-payee-fx-row strong{text-align:left;}
}

/* v6.7.5 source-settlement workflow */
.issue-steps{grid-template-columns:repeat(4,minmax(0,1fr));}
.source-settlement-panel{
  display:grid;
  gap:12px;
  margin:15px 0 16px;
  padding:14px;
  border:1px solid rgba(247,247,247,.14);
  border-radius:20px;
  background:rgba(247,247,247,.035);
}
.source-settlement-form{
  grid-template-columns:minmax(175px,1.2fr) minmax(135px,.8fr) minmax(145px,.9fr) minmax(140px,.9fr);
}
.inline-fx-form select{
  min-height:34px !important;
  height:34px !important;
  border-radius:10px !important;
  padding:6px 9px !important;
  background:#f7f7f7 !important;
  color:#111111 !important;
  border:1px solid rgba(247,247,247,.22) !important;
  font-size:12px !important;
}
@media(max-width:980px){
  .issue-steps{grid-template-columns:repeat(2,minmax(0,1fr));}
  .source-settlement-form{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px){
  .issue-steps{grid-template-columns:1fr;}
  .source-settlement-form{grid-template-columns:1fr;}
}

/* v6.7.6 — CSV-first source intake rules */
.source-intake-rules .section-heading,
.card .section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.source-rule-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
}
.source-rule-card {
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(255,255,255,.045);
  padding: 1rem;
  min-width: 0;
}
.source-rule-card.pending {
  border-style: dashed;
  background: rgba(255,255,255,.025);
}
.source-rule-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .9rem;
}
.source-rule-head > div {
  display: flex;
  align-items: center;
  gap: .5rem;
  flex-wrap: wrap;
}
.source-rule-head small {
  color: var(--muted, #a9adb7);
  text-align: right;
}
.source-rule-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .7rem;
  margin: 0 0 .9rem;
}
.source-rule-facts div {
  padding: .65rem .7rem;
  border-radius: 10px;
  background: rgba(0,0,0,.18);
}
.source-rule-facts dt {
  color: var(--muted, #a9adb7);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.source-rule-facts dd {
  margin: .2rem 0 0;
  font-weight: 650;
}
.source-rule-form {
  align-items: end;
  margin-top: .9rem;
}
.source-rule-form label {
  min-width: 150px;
}
.source-rule-form label span {
  display: flex;
  align-items: center;
  gap: .4rem;
}
.source-rule-form input {
  max-width: 110px;
}
.helper.tiny {
  font-size: .74rem;
  line-height: 1.45;
}
@media (max-width: 680px) {
  .source-rule-head,
  .card .section-heading {
    display: block;
  }
  .source-rule-head small {
    display: block;
    text-align: left;
    margin-top: .35rem;
  }
  .source-rule-facts {
    grid-template-columns: 1fr;
  }
}

/* v6.8.1 immutable statement issue + separate payment confirmation */
.issue-steps{grid-template-columns:repeat(5,minmax(0,1fr));}
.paid-confirmation-panel{
  display:grid;
  gap:14px;
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(247,247,247,.14);
  border-radius:18px;
  background:rgba(247,247,247,.04);
}
.paid-confirmation-panel h3{margin:0 0 4px;}
.paid-confirmation-panel .paid-form{
  display:grid;
  grid-template-columns:minmax(145px,.75fr) minmax(145px,.75fr) minmax(220px,1.4fr) auto;
  gap:10px;
  align-items:end;
}
.paid-confirmation-panel .paid-form label{display:grid;gap:5px;}
.issued-document-note{margin-top:14px;}
@media(max-width:1100px){
  .issue-steps{grid-template-columns:repeat(3,minmax(0,1fr));}
  .paid-confirmation-panel .paid-form{grid-template-columns:1fr 1fr;}
}
@media(max-width:720px){
  .issue-steps{grid-template-columns:1fr;}
  .paid-confirmation-panel .paid-form{grid-template-columns:1fr;}
}


/* V6.9.5 client status alignment, threshold note and period helper spacing */
.payment-summary-metric.clean-payment-status{
  justify-content:flex-start !important;
  align-items:stretch !important;
}
.payment-summary-metric.clean-payment-status .client-threshold-note{
  display:block !important;
  margin-top:7px !important;
  max-width:none !important;
  color:var(--muted) !important;
  font-size:12px !important;
  line-height:1.32 !important;
}
@media (min-width:901px){
  .period-viz-35-card .card-title-row .helper{
    max-width:390px !important;
    white-space:nowrap !important;
  }
}
@media (max-width:900px){
  .period-viz-35-card .card-title-row .helper{
    max-width:none !important;
    white-space:normal !important;
  }
}

/* ==========================================================================
   v7.0.0 — Admin workspace redesign
   Scoped to .admin-ui / admin-specific classes so client statements are not
   restyled by the admin information-architecture work.
   ========================================================================== */
.admin-ui { background:#f5f5f2; color:#161616; }
.admin-ui .topbar.admin-topbar { position:sticky; top:0; z-index:60; height:72px; padding:0 28px; border-bottom:1px solid #deded9; background:rgba(250,250,247,.96); backdrop-filter:blur(16px); }
.admin-topbar-actions { margin-left:auto; display:flex; align-items:center; gap:16px; }
.admin-session-badge { display:inline-flex; align-items:center; min-height:30px; padding:0 10px; border:1px solid #d7d7d1; border-radius:999px; background:#fff; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.admin-mobile-menu { display:none; position:relative; }
.admin-mobile-menu summary { cursor:pointer; font-weight:700; }
.admin-mobile-menu-panel { position:absolute; right:0; top:calc(100% + 10px); width:220px; padding:10px; background:#fff; border:1px solid #ddd; border-radius:12px; box-shadow:0 18px 50px rgba(0,0,0,.12); }
.admin-mobile-menu-panel a { display:block; padding:9px 10px; border-radius:8px; color:#171717; text-decoration:none; }

.admin-layout { display:grid; grid-template-columns:248px minmax(0,1fr); min-height:calc(100vh - 72px); }
.admin-sidebar { position:sticky; top:72px; align-self:start; height:calc(100vh - 72px); overflow:auto; padding:26px 18px 32px; border-right:1px solid #dfdfda; background:#fafaf7; }
.admin-nav-group { display:grid; gap:3px; margin:0 0 22px; }
.admin-nav-label { padding:0 10px 7px; color:#888781; font-size:10px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.admin-nav-link { display:block; padding:9px 10px; border-radius:9px; color:#4a4a46; text-decoration:none; font-size:13px; font-weight:650; line-height:1.25; }
.admin-nav-link small { display:block; margin-top:2px; color:#9a9992; font-size:10px; font-weight:500; }
.admin-nav-link:hover { background:#efefeb; color:#111; }
.admin-nav-link.active { background:#171717; color:#fff; }
.admin-nav-link.active small { color:#c9c9c3; }
.admin-nav-system { margin-top:28px; padding-top:20px; border-top:1px solid #e2e2dd; }

.admin-ui .admin-shell { width:100%; max-width:1540px; padding:38px 42px 72px; margin:0; }
.admin-page-head { display:flex; justify-content:space-between; align-items:flex-start; gap:32px; margin:0 0 28px; }
.admin-page-head > div:first-child { max-width:820px; }
.admin-page-head h1 { margin:.1rem 0 .55rem; font-size:clamp(30px,3vw,46px); line-height:1.03; letter-spacing:-.035em; }
.admin-page-head p:not(.eyebrow) { margin:0; max-width:760px; color:#6b6a65; font-size:14px; line-height:1.65; }
.admin-page-head .actions { flex:0 0 auto; align-items:center; }

.admin-panel { margin:0 0 20px; padding:22px; border:1px solid #deded9; border-radius:16px; background:#fff; box-shadow:0 1px 0 rgba(0,0,0,.02); }
.admin-panel-warn { border-color:#dfcaa4; background:#fffdf8; }
.admin-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin:0 0 18px; }
.admin-panel-head h2 { margin:1px 0 5px; font-size:19px; line-height:1.2; letter-spacing:-.018em; }
.admin-panel-head p { margin:0; color:#77756f; font-size:12.5px; line-height:1.55; }
.admin-panel-head > a { flex:none; font-size:12px; font-weight:700; }
.admin-grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-bottom:20px; }
.admin-grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:20px; }
.admin-card-stack { display:grid; gap:12px; }
.admin-subcard { padding:16px; border:1px solid #e5e5e0; border-radius:12px; background:#fafaf8; }
.admin-subcard-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:8px; }
.admin-subcard-head small, .admin-subcard > p { color:#77756f; font-size:12px; line-height:1.5; }

.admin-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0 0 18px; }
.admin-kpi-grid article, .admin-kpi-card { padding:16px 17px; border:1px solid #deded9; border-radius:13px; background:#fff; }
.admin-kpi-grid article > span, .admin-kpi-card > span { display:block; color:#77756f; font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.admin-kpi-grid article > strong, .admin-kpi-card > strong { display:block; margin:5px 0 3px; font-size:25px; line-height:1; letter-spacing:-.03em; }
.admin-kpi-grid article > small, .admin-kpi-card > small { display:block; color:#92918a; font-size:10.5px; line-height:1.35; }
.admin-kpi-grid article.good { border-color:#bfd5c5; background:#fbfdfb; }
.admin-kpi-grid article.warn { border-color:#e2c79a; background:#fffaf1; }

.admin-attention-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:24px; }
.admin-attention-card { min-height:132px; padding:16px; border:1px solid #deded9; border-radius:13px; background:#fff; display:flex; flex-direction:column; }
.admin-attention-card > div { display:flex; align-items:center; gap:8px; }
.admin-attention-card p { margin:9px 0 14px; color:#6e6d67; font-size:12px; line-height:1.5; }
.admin-attention-card a { margin-top:auto; font-size:12px; font-weight:800; }
.admin-attention-card.warn { border-color:#e4c992; background:#fffaf0; }
.admin-attention-card.good { border-color:#c5d7c9; background:#fbfdfb; }
.admin-status-dot { width:8px; height:8px; border-radius:50%; background:#999; }
.admin-attention-card.warn .admin-status-dot { background:#a86e17; }
.admin-attention-card.good .admin-status-dot { background:#2f7a48; }

.admin-table { width:100%; border-collapse:separate; border-spacing:0; font-size:12px; }
.admin-table thead th { padding:10px 10px; border-bottom:1px solid #dcdcd7; color:#7d7c76; font-size:9.5px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; text-align:left; white-space:nowrap; }
.admin-table tbody td { padding:13px 10px; border-bottom:1px solid #ecece8; vertical-align:top; }
.admin-table tbody tr:last-child td { border-bottom:0; }
.admin-table td small { display:block; margin-top:3px; color:#92918b; font-size:10.5px; line-height:1.35; }
.admin-table .num { text-align:right; }
.statement-board-table td:first-child { min-width:170px; }
.admin-row-actions { white-space:nowrap; text-align:right; }
.admin-row-actions > a { display:inline-block; margin-left:10px; font-size:11px; font-weight:750; }

.admin-status-chip { display:inline-flex; align-items:center; min-height:24px; padding:0 8px; border-radius:999px; background:#efefeb; color:#5f5e58; font-size:9.5px; font-weight:800; white-space:nowrap; }
.admin-status-chip.good, .admin-status-chip.closed, .admin-status-chip.paid { background:#e9f3eb; color:#2f6d42; }
.admin-status-chip.open { background:#eef1f4; color:#4c5964; }
.admin-status-chip.warn, .admin-status-chip.needs-review, .admin-status-chip.blocked { background:#fbecd0; color:#8a5a11; }
.admin-status-chip.neutral { background:#efefeb; color:#66645e; }

.admin-list { display:grid; }
.admin-list-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:11px 0; border-bottom:1px solid #ecece8; font-size:12px; }
.admin-list-row:last-child { border-bottom:0; }
.admin-list-row > div, .admin-list-row > span:first-child { min-width:0; }
.admin-list-row strong { font-size:12px; }
.admin-list-row small { display:block; margin-top:2px; color:#92918b; font-size:10.5px; }

.admin-tabs { display:flex; gap:4px; overflow:auto; margin:0 0 20px; padding:4px; border:1px solid #deded9; border-radius:12px; background:#eeeEEa; }
.admin-tabs a { display:flex; align-items:center; gap:7px; padding:9px 12px; border-radius:9px; color:#686762; text-decoration:none; font-size:11.5px; font-weight:750; white-space:nowrap; }
.admin-tabs a span { min-width:20px; padding:2px 6px; border-radius:999px; background:rgba(0,0,0,.06); text-align:center; font-size:9px; }
.admin-tabs a.active { background:#fff; color:#111; box-shadow:0 1px 4px rgba(0,0,0,.07); }
.profile-tabs { margin-top:-8px; }

.admin-filter-bar { display:grid; grid-template-columns:repeat(4,minmax(120px,1fr)) minmax(170px,1.4fr) auto auto; gap:10px; align-items:end; }
.admin-filter-bar label { display:grid; gap:5px; color:#7b7974; font-size:9.5px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.admin-filter-bar select, .admin-filter-bar input { min-height:38px; margin:0; font-size:11px; text-transform:none; letter-spacing:0; }
.admin-filter-bar > a { align-self:center; font-size:11px; font-weight:700; }

.admin-row-menu { position:relative; display:inline-block; }
.admin-row-menu > summary { cursor:pointer; list-style:none; padding:6px 9px; border:1px solid #d7d7d2; border-radius:8px; background:#fff; font-size:10.5px; font-weight:750; }
.admin-row-menu > summary::-webkit-details-marker { display:none; }
.admin-row-menu > div { position:absolute; right:0; z-index:20; width:150px; padding:8px; border:1px solid #ddd; border-radius:10px; background:#fff; box-shadow:0 18px 50px rgba(0,0,0,.14); }
.admin-row-menu form { margin:0 0 5px; }
.admin-row-menu button { width:100%; min-height:32px; font-size:10px; }

.admin-import-dropzone { padding:28px; }
.admin-import-form { display:grid; gap:16px; }
.admin-file-picker { position:relative; display:flex; align-items:center; justify-content:center; flex-direction:column; min-height:190px; padding:30px; border:1.5px dashed #bdbdb5; border-radius:14px; background:#fafaf7; cursor:pointer; text-align:center; }
.admin-file-picker:hover { border-color:#777; background:#f7f7f3; }
.admin-file-picker > span { font-size:17px; font-weight:750; }
.admin-file-picker > small { margin-top:6px; color:#8d8b85; }
.admin-file-picker input { margin-top:18px; max-width:460px; }
.admin-import-submit { justify-self:start; min-width:220px; }

.admin-disclosure { margin-top:12px; border:1px solid #e0e0db; border-radius:10px; background:#fafaf8; }
.admin-disclosure > summary, details.admin-disclosure-panel > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 14px; cursor:pointer; list-style:none; font-size:11.5px; font-weight:750; }
.admin-disclosure > summary::-webkit-details-marker, details.admin-disclosure-panel > summary::-webkit-details-marker { display:none; }
.admin-disclosure > summary small, details.admin-disclosure-panel > summary small { display:block; margin-top:2px; color:#94928d; font-size:10px; font-weight:500; }
.admin-disclosure-fields, .admin-disclosure-content { display:grid; gap:12px; padding:0 14px 15px; }
.admin-disclosure.compact { margin-top:15px; }
.admin-disclosure-panel { padding:0; overflow:visible; }
.admin-disclosure-panel > summary { padding:17px 20px; }
.admin-disclosure-panel .admin-disclosure-content { padding:0 20px 20px; }
.admin-accounting-detail { margin:14px 0; background:#fff; }
.admin-accounting-detail > summary { font-size:12px; }

.admin-result-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0 0 22px; }
.admin-result-grid > div { padding:13px; border:1px solid #e5e5e0; border-radius:11px; background:#fafaf8; }
.admin-result-grid span { display:block; color:#85837d; font-size:9px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.admin-result-grid strong { display:block; margin:5px 0 3px; font-size:13px; }
.admin-result-grid small { color:#97958f; font-size:9.5px; line-height:1.35; }

.admin-client-directory { display:grid; }
.admin-client-row { display:grid; grid-template-columns:38px minmax(220px,1.8fr) minmax(140px,1fr) minmax(140px,1fr) 20px; gap:14px; align-items:center; padding:13px 4px; border-bottom:1px solid #ecece8; color:#222; text-decoration:none; }
.admin-client-row:last-child { border-bottom:0; }
.admin-client-row:hover { background:#fafaf7; }
.admin-client-avatar { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:#efefeb; font-size:13px; font-weight:800; }
.admin-client-main strong, .admin-client-row > div > span { display:block; font-size:12px; }
.admin-client-row small { display:block; margin-top:2px; color:#99968f; font-size:10px; }
.admin-row-chevron { justify-self:end; color:#aaa79f; font-size:24px; font-weight:300; }
.admin-client-directory.compact .admin-client-row { grid-template-columns:38px 1fr auto 20px; }

.admin-form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.admin-inline-form, .admin-inline-actions { display:flex; align-items:end; gap:10px; flex-wrap:wrap; }
.admin-inline-form label { display:grid; gap:5px; }
.admin-inline-warning { padding:9px 11px; border-radius:8px; background:#fff1d8; color:#805616; font-size:11px; }
.narrow-form { max-width:640px; }

.admin-closeout-summary { display:grid; grid-template-columns:minmax(0,1fr) 170px; gap:12px; margin:16px 0 12px; }
.admin-closeout-amount, .admin-closeout-status { padding:16px; border:1px solid #e1e1dc; border-radius:12px; background:#fafaf8; }
.admin-closeout-amount span, .admin-closeout-status span { display:block; color:#85837e; font-size:9px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.admin-closeout-amount strong { display:block; margin:5px 0; font-size:24px; letter-spacing:-.025em; }
.admin-closeout-status strong { display:block; margin:5px 0; font-size:16px; }
.admin-closeout-amount small, .admin-closeout-status small { color:#94918b; font-size:10px; }
.admin-closeout-checklist { display:grid; margin:0 0 18px; border:1px solid #e1e1dc; border-radius:12px; overflow:hidden; }
.admin-check-row { display:grid; grid-template-columns:27px 1fr; gap:10px; align-items:center; padding:11px 13px; border-bottom:1px solid #ecece8; color:#222; text-decoration:none; background:#fff; }
.admin-check-row:last-child { border-bottom:0; }
.admin-check-row.good { background:#fbfdfb; }
.admin-check-row.warn { background:#fffaf1; }
.admin-check-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#efefeb; font-size:10px; font-weight:800; }
.admin-check-row.good .admin-check-icon { background:#e4f0e7; color:#2e7042; }
.admin-check-row.warn .admin-check-icon { background:#f8e7c8; color:#8a5b15; }
.admin-check-row strong { display:block; font-size:11.5px; }
.admin-check-row small { display:block; margin-top:2px; color:#8e8c86; font-size:10px; }

.admin-preview-bar { position:sticky; top:72px; z-index:55; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:8px 24px; border-bottom:1px solid #cfd5dc; background:#f0f4f8; color:#364453; font-size:11px; }
.admin-preview-bar > div { display:flex; gap:9px; align-items:baseline; }
.admin-preview-bar span { color:#6f7d89; }
.admin-preview-bar a { font-weight:800; }

.admin-ui .page-head, .admin-ui .hero.compact-hero { margin-bottom:24px; }
.admin-ui .card { border-color:#deded9; border-radius:14px; box-shadow:none; }
.admin-ui .status-banner { border-radius:13px; }
.admin-ui button, .admin-ui .button { border-radius:9px; }
.admin-ui input, .admin-ui select, .admin-ui textarea { border-radius:8px; }
.admin-ui table { font-variant-numeric:tabular-nums; }

@media (max-width:1180px) {
  .admin-layout { grid-template-columns:210px minmax(0,1fr); }
  .admin-ui .admin-shell { padding:32px 26px 60px; }
  .admin-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-attention-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-result-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .admin-filter-bar { grid-template-columns:repeat(3,minmax(140px,1fr)); }
}
@media (max-width:860px) {
  .admin-ui .topbar.admin-topbar { height:64px; padding:0 16px; }
  .admin-layout { display:block; }
  .admin-sidebar { display:none; }
  .admin-mobile-menu { display:block; }
  .admin-ui .admin-shell { padding:24px 14px 50px; }
  .admin-page-head { display:grid; gap:16px; }
  .admin-page-head .actions { justify-content:flex-start; flex-wrap:wrap; }
  .admin-grid-2, .admin-grid-3, .admin-attention-grid, .admin-result-grid { grid-template-columns:1fr; }
  .admin-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .admin-filter-bar { grid-template-columns:1fr 1fr; }
  .admin-client-row { grid-template-columns:34px 1fr 20px; }
  .admin-client-row > div:nth-child(3), .admin-client-row > div:nth-child(4), .admin-client-row > .admin-status-chip { display:none; }
  .admin-closeout-summary { grid-template-columns:1fr; }
  .admin-preview-bar { top:64px; align-items:flex-start; padding:8px 14px; }
  .admin-preview-bar > div { display:block; }
}
@media (max-width:520px) {
  .admin-session-badge { display:none; }
  .admin-kpi-grid { grid-template-columns:1fr 1fr; }
  .admin-filter-bar { grid-template-columns:1fr; }
  .admin-page-head h1 { font-size:32px; }
}

/* ==========================================================================
   v7.0.2 — Admin visual-system repair
   The v7 admin IA originally used light surfaces, while the legacy portal
   brand layer applies dark-theme !important rules. This final scoped layer
   deliberately owns the admin palette so old client/global CSS cannot create
   low-contrast hybrid surfaces. Client and admin-preview pages are untouched.
   ========================================================================== */
body.admin-ui {
  --admin-bg:#101010;
  --admin-sidebar:#141414;
  --admin-surface:#181818;
  --admin-surface-2:#1d1d1b;
  --admin-surface-3:#222220;
  --admin-line:rgba(247,247,247,.115);
  --admin-line-soft:rgba(247,247,247,.075);
  --admin-line-gold:rgba(245,192,68,.30);
  --admin-text:#f4f3ef;
  --admin-muted:#b8b6b0;
  --admin-faint:#9d9a93;
  --admin-yellow:#f5c044;
  --admin-good:#88caa0;
  --admin-bad:#ef927d;
  color-scheme:dark;
  background:
    radial-gradient(circle at 88% 12%,rgba(245,192,68,.055),transparent 31rem),
    linear-gradient(180deg,#121212 0%,#0f0f0f 100%) !important;
  color:var(--admin-text) !important;
}
body.admin-ui::before { opacity:.035 !important; }
body.admin-ui::after { background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 30%,rgba(0,0,0,.10)) !important; }

body.admin-ui .topbar.admin-topbar {
  height:72px !important;
  padding:0 28px !important;
  background:rgba(16,16,16,.97) !important;
  border-bottom:1px solid var(--admin-line) !important;
  box-shadow:none !important;
  backdrop-filter:blur(18px) !important;
}
body.admin-ui .brand-text { color:var(--admin-text) !important; }
body.admin-ui .brand-subtitle { color:var(--admin-yellow) !important; }
body.admin-ui .admin-session-badge {
  border:1px solid rgba(245,192,68,.30) !important;
  background:rgba(245,192,68,.09) !important;
  color:var(--admin-yellow) !important;
}
body.admin-ui .admin-topbar-actions .link-button {
  color:var(--admin-muted) !important;
  text-decoration:underline;
  text-decoration-color:rgba(184,182,176,.45);
  text-underline-offset:3px;
}

body.admin-ui .admin-layout {
  grid-template-columns:252px minmax(0,1fr);
  background:transparent !important;
}
body.admin-ui .admin-sidebar {
  top:72px;
  height:calc(100vh - 72px);
  padding:26px 16px 34px;
  background:rgba(20,20,20,.97) !important;
  border-right:1px solid var(--admin-line) !important;
  box-shadow:12px 0 34px rgba(0,0,0,.12);
}
body.admin-ui .admin-nav-group { gap:4px; margin-bottom:22px; }
body.admin-ui .admin-nav-label {
  padding:0 11px 7px;
  color:#77756f !important;
  font-size:10px;
  letter-spacing:.12em;
}
body.admin-ui .admin-nav-link {
  padding:9px 11px;
  border:1px solid transparent;
  color:#c9c7c1 !important;
  font-size:13.5px;
  font-weight:650;
}
body.admin-ui .admin-nav-link small { color:#85827c !important; font-size:10.5px; }
body.admin-ui .admin-nav-link:hover {
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(255,255,255,.055);
  color:var(--admin-text) !important;
}
body.admin-ui .admin-nav-link.active {
  background:rgba(245,192,68,.105) !important;
  border-color:rgba(245,192,68,.28) !important;
  color:var(--admin-yellow) !important;
  box-shadow:inset 3px 0 0 var(--admin-yellow);
}
body.admin-ui .admin-nav-link.active small { color:#b7b2a7 !important; }
body.admin-ui .admin-nav-system { border-top-color:var(--admin-line) !important; }

body.admin-ui .admin-shell {
  position:relative;
  z-index:1;
  width:100% !important;
  max-width:1540px !important;
  margin:0 !important;
  padding:38px 42px 72px !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-page-head { margin-bottom:30px; }
body.admin-ui .admin-page-head > div:first-child { max-width:800px; }
body.admin-ui .admin-page-head h1,
body.admin-ui .page-head h1,
body.admin-ui .hero h1 {
  color:var(--admin-text) !important;
  font-size:clamp(32px,2.7vw,43px) !important;
  line-height:1.04 !important;
  letter-spacing:-.038em !important;
  font-weight:800 !important;
}
body.admin-ui .admin-page-head p:not(.eyebrow),
body.admin-ui .page-head p,
body.admin-ui .lede,
body.admin-ui .helper {
  color:var(--admin-muted) !important;
  font-size:14px !important;
  line-height:1.58 !important;
}
body.admin-ui .eyebrow {
  color:var(--admin-yellow) !important;
  font-size:10.5px !important;
  letter-spacing:.14em !important;
}
body.admin-ui h1,
body.admin-ui h2,
body.admin-ui h3,
body.admin-ui h4,
body.admin-ui strong,
body.admin-ui label {
  color:var(--admin-text) !important;
}
body.admin-ui .muted,
body.admin-ui .mono,
body.admin-ui small,
body.admin-ui .compact-note,
body.admin-ui .empty-state {
  color:var(--admin-muted) !important;
}

/* Core admin surfaces, including older admin pages that still use generic cards. */
body.admin-ui .admin-panel,
body.admin-ui .admin-subcard,
body.admin-ui .admin-kpi-grid article,
body.admin-ui .admin-kpi-card,
body.admin-ui .admin-attention-card,
body.admin-ui .admin-result-grid > div,
body.admin-ui .admin-closeout-amount,
body.admin-ui .admin-closeout-status,
body.admin-ui .card,
body.admin-ui .metric,
body.admin-ui .workflow-card,
body.admin-ui .client-card,
body.admin-ui .status-banner,
body.admin-ui .coverage-source,
body.admin-ui .metadata-warning-card,
body.admin-ui .title-variant-card,
body.admin-ui .raw-row-card,
body.admin-ui .improved-decision-card,
body.admin-ui .improved-raw-card,
body.admin-ui .source-summary,
body.admin-ui .fx-note,
body.admin-ui .admin-adjustment-card,
body.admin-ui .adjustment-summary-card,
body.admin-ui .rules-table-card,
body.admin-ui .raw-detail-table-card,
body.admin-ui .bank-transaction-card,
body.admin-ui .statement-issue-card,
body.admin-ui .mapping-preview-card {
  background:var(--admin-surface) !important;
  border:1px solid var(--admin-line) !important;
  color:var(--admin-text) !important;
  box-shadow:0 10px 30px rgba(0,0,0,.14) !important;
}
body.admin-ui .admin-panel { padding:22px !important; border-radius:15px !important; }
body.admin-ui .admin-subcard,
body.admin-ui .admin-result-grid > div,
body.admin-ui .admin-closeout-amount,
body.admin-ui .admin-closeout-status { background:var(--admin-surface-2) !important; }
body.admin-ui .admin-panel-warn,
body.admin-ui .admin-attention-card.warn,
body.admin-ui .admin-kpi-grid article.warn,
body.admin-ui .warn,
body.admin-ui .notice.warn,
body.admin-ui .warning {
  background:linear-gradient(145deg,rgba(245,192,68,.07),transparent 52%),var(--admin-surface) !important;
  border-color:rgba(245,192,68,.26) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-attention-card.good,
body.admin-ui .admin-kpi-grid article.good,
body.admin-ui .notice.success,
body.admin-ui .success {
  background:linear-gradient(145deg,rgba(75,157,106,.08),transparent 55%),var(--admin-surface) !important;
  border-color:rgba(136,202,160,.24) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-panel-head { margin-bottom:18px; }
body.admin-ui .admin-panel-head h2 { color:var(--admin-text) !important; font-size:19px; }
body.admin-ui .admin-panel-head p,
body.admin-ui .admin-subcard-head small,
body.admin-ui .admin-subcard > p,
body.admin-ui .admin-attention-card p {
  color:var(--admin-muted) !important;
  font-size:12.5px !important;
  line-height:1.55 !important;
}

body.admin-ui .admin-kpi-grid { gap:12px; margin-bottom:20px; }
body.admin-ui .admin-kpi-grid article,
body.admin-ui .admin-kpi-card { min-height:106px; padding:16px 17px !important; }
body.admin-ui .admin-kpi-grid article > span,
body.admin-ui .admin-kpi-card > span {
  color:var(--admin-faint) !important;
  font-size:10px !important;
}
body.admin-ui .admin-kpi-grid article > strong,
body.admin-ui .admin-kpi-card > strong {
  color:var(--admin-text) !important;
  margin:7px 0 5px;
  font-size:28px !important;
}
body.admin-ui .admin-kpi-grid article > small,
body.admin-ui .admin-kpi-card > small { color:var(--admin-muted) !important; font-size:11px !important; }
body.admin-ui .admin-attention-card { min-height:138px; padding:17px !important; }
body.admin-ui .admin-attention-card > div strong { font-size:14px !important; }
body.admin-ui .admin-attention-card a,
body.admin-ui .admin-panel-head > a,
body.admin-ui .admin-row-actions > a { color:var(--admin-yellow) !important; }
body.admin-ui .admin-status-dot { background:#777 !important; }
body.admin-ui .admin-attention-card.warn .admin-status-dot { background:var(--admin-yellow) !important; }
body.admin-ui .admin-attention-card.good .admin-status-dot { background:var(--admin-good) !important; }

/* Tables: dark, legible and quieter than the surrounding cards. */
body.admin-ui .table-wrap,
body.admin-ui .table-scroll { border-color:var(--admin-line) !important; box-shadow:none !important; }
body.admin-ui table,
body.admin-ui .admin-table,
body.admin-ui .compact-table,
body.admin-ui .dense-table {
  color:var(--admin-text) !important;
  background:transparent !important;
}
body.admin-ui th,
body.admin-ui .admin-table thead th {
  color:#9f9c95 !important;
  border-bottom-color:rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.018) !important;
  font-size:10px !important;
}
body.admin-ui td,
body.admin-ui .admin-table tbody td {
  color:#e9e8e4 !important;
  border-bottom-color:var(--admin-line-soft) !important;
  background:transparent !important;
  font-size:12.5px !important;
}
body.admin-ui td span,
body.admin-ui td small,
body.admin-ui .admin-table td small { color:var(--admin-muted) !important; }
body.admin-ui tbody tr:hover td { background:rgba(255,255,255,.018) !important; }

/* Inputs and controls. */
body.admin-ui input,
body.admin-ui select,
body.admin-ui textarea {
  min-height:40px;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:9px !important;
  background:#121212 !important;
  color:var(--admin-text) !important;
  box-shadow:none !important;
}
body.admin-ui input::placeholder,
body.admin-ui textarea::placeholder { color:#75736d !important; opacity:1; }
body.admin-ui input:focus,
body.admin-ui select:focus,
body.admin-ui textarea:focus {
  border-color:rgba(245,192,68,.58) !important;
  outline:2px solid rgba(245,192,68,.12) !important;
  outline-offset:1px;
}
body.admin-ui .admin-filter-bar label { color:var(--admin-faint) !important; }

body.admin-ui button,
body.admin-ui .button,
body.admin-ui .v660-button {
  border:1px solid rgba(255,255,255,.13) !important;
  border-radius:9px !important;
  background:var(--admin-surface-3) !important;
  color:var(--admin-text) !important;
  box-shadow:none !important;
}
body.admin-ui .button.primary,
body.admin-ui button.primary,
body.admin-ui .admin-import-submit {
  background:var(--admin-yellow) !important;
  border-color:var(--admin-yellow) !important;
  color:#111 !important;
}
body.admin-ui .button.secondary,
body.admin-ui button.secondary { background:#1b1b1b !important; color:var(--admin-text) !important; }
body.admin-ui .danger-button,
body.admin-ui button.danger {
  background:rgba(200,75,56,.15) !important;
  border-color:rgba(239,146,125,.33) !important;
  color:#f3a795 !important;
}
body.admin-ui button:hover,
body.admin-ui .button:hover { filter:none !important; border-color:rgba(245,192,68,.48) !important; }
body.admin-ui .button.primary:hover,
body.admin-ui button.primary:hover,
body.admin-ui .admin-import-submit:hover { background:#ffd161 !important; }

/* Status language has one visual vocabulary across the admin. */
body.admin-ui .admin-status-chip,
body.admin-ui .pill {
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.055) !important;
  color:#c9c7c1 !important;
}
body.admin-ui .admin-status-chip.good,
body.admin-ui .admin-status-chip.closed,
body.admin-ui .admin-status-chip.paid,
body.admin-ui .pill.imported {
  border-color:rgba(136,202,160,.22) !important;
  background:rgba(75,157,106,.12) !important;
  color:#a5d9b8 !important;
}
body.admin-ui .admin-status-chip.open {
  border-color:rgba(168,183,197,.20) !important;
  background:rgba(143,158,172,.10) !important;
  color:#c4ced6 !important;
}
body.admin-ui .admin-status-chip.warn,
body.admin-ui .admin-status-chip.needs-review,
body.admin-ui .admin-status-chip.blocked,
body.admin-ui .pill.warning {
  border-color:rgba(245,192,68,.25) !important;
  background:rgba(245,192,68,.105) !important;
  color:#f7ca5a !important;
}
body.admin-ui .admin-status-chip.neutral { color:#b7b4ae !important; }

body.admin-ui .admin-list-row,
body.admin-ui .admin-client-row { border-bottom-color:var(--admin-line-soft) !important; }
body.admin-ui .admin-list-row small,
body.admin-ui .admin-client-row small { color:var(--admin-muted) !important; }
body.admin-ui .admin-client-row { color:var(--admin-text) !important; }
body.admin-ui .admin-client-row:hover { background:rgba(255,255,255,.025) !important; }
body.admin-ui .admin-client-avatar {
  background:rgba(245,192,68,.10) !important;
  border:1px solid rgba(245,192,68,.20);
  color:var(--admin-yellow) !important;
}
body.admin-ui .admin-row-chevron { color:#716f69 !important; }

body.admin-ui .admin-tabs {
  border-color:var(--admin-line) !important;
  background:#111 !important;
}
body.admin-ui .admin-tabs a { color:var(--admin-muted) !important; }
body.admin-ui .admin-tabs a span { background:rgba(255,255,255,.07) !important; color:#aaa7a0 !important; }
body.admin-ui .admin-tabs a.active {
  background:rgba(245,192,68,.11) !important;
  color:var(--admin-yellow) !important;
  box-shadow:none !important;
}

body.admin-ui .admin-file-picker {
  border-color:rgba(245,192,68,.26) !important;
  background:rgba(245,192,68,.035) !important;
}
body.admin-ui .admin-file-picker:hover { border-color:rgba(245,192,68,.55) !important; background:rgba(245,192,68,.055) !important; }
body.admin-ui .admin-file-picker > span { color:var(--admin-text) !important; }
body.admin-ui .admin-file-picker > small { color:var(--admin-muted) !important; }

body.admin-ui .admin-disclosure,
body.admin-ui .admin-accounting-detail,
body.admin-ui details.admin-disclosure-panel,
body.admin-ui .rights-edit-drawer {
  border-color:var(--admin-line) !important;
  background:var(--admin-surface-2) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-disclosure > summary,
body.admin-ui details.admin-disclosure-panel > summary { color:var(--admin-text) !important; }
body.admin-ui .admin-disclosure > summary small,
body.admin-ui details.admin-disclosure-panel > summary small { color:var(--admin-muted) !important; }

body.admin-ui .admin-row-menu > summary {
  border-color:var(--admin-line) !important;
  background:#141414 !important;
  color:var(--admin-muted) !important;
}
body.admin-ui .admin-row-menu > div,
body.admin-ui .admin-mobile-menu-panel {
  border-color:var(--admin-line) !important;
  background:#1a1a1a !important;
  color:var(--admin-text) !important;
  box-shadow:0 18px 50px rgba(0,0,0,.40) !important;
}
body.admin-ui .admin-mobile-menu-panel a { color:var(--admin-text) !important; }

body.admin-ui .admin-inline-warning,
body.admin-ui .mini-alert {
  border:1px solid rgba(245,192,68,.24) !important;
  background:rgba(245,192,68,.08) !important;
  color:#e9cf8e !important;
}
body.admin-ui .notice {
  border-color:var(--admin-line) !important;
  background:var(--admin-surface-2) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .notice p,
body.admin-ui .notice small { color:var(--admin-muted) !important; }

body.admin-ui .admin-closeout-checklist { border-color:var(--admin-line) !important; }
body.admin-ui .admin-check-row {
  border-bottom-color:var(--admin-line-soft) !important;
  background:var(--admin-surface-2) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-check-row.good { background:linear-gradient(90deg,rgba(75,157,106,.07),transparent 46%),var(--admin-surface-2) !important; }
body.admin-ui .admin-check-row.warn { background:linear-gradient(90deg,rgba(245,192,68,.07),transparent 46%),var(--admin-surface-2) !important; }
body.admin-ui .admin-check-icon { background:rgba(255,255,255,.07) !important; color:#bbb8b1 !important; }
body.admin-ui .admin-check-row.good .admin-check-icon { background:rgba(75,157,106,.15) !important; color:#a5d9b8 !important; }
body.admin-ui .admin-check-row.warn .admin-check-icon { background:rgba(245,192,68,.13) !important; color:#f5c044 !important; }
body.admin-ui .admin-check-row small { color:var(--admin-muted) !important; }

/* Keep legacy admin page sections readable under the new shell. */
body.admin-ui .metric span,
body.admin-ui .workflow-card p,
body.admin-ui .client-card p,
body.admin-ui .status-banner p,
body.admin-ui .definition-list dt,
body.admin-ui .definition-list dd small,
body.admin-ui .coverage-message,
body.admin-ui .checkline small,
body.admin-ui .check-row small { color:var(--admin-muted) !important; }
body.admin-ui .toolbar a,
body.admin-ui .client-actions a {
  border-color:var(--admin-line) !important;
  background:var(--admin-surface-2) !important;
  color:var(--admin-text) !important;
}
body.admin-ui .subtle,
body.admin-ui .faded { background:#151515 !important; color:var(--admin-text) !important; opacity:1 !important; }

@media (max-width:1180px) {
  body.admin-ui .admin-layout { grid-template-columns:216px minmax(0,1fr); }
  body.admin-ui .admin-shell { padding:32px 26px 60px !important; }
}
@media (max-width:860px) {
  body.admin-ui .topbar.admin-topbar { height:64px !important; padding:0 16px !important; }
  body.admin-ui .admin-shell { padding:24px 14px 50px !important; }
  body.admin-ui .admin-page-head h1,
  body.admin-ui .page-head h1 { font-size:34px !important; }
}

/* ==========================================================================
   v7.0.3 — Collapsible admin navigation
   Turns the v7 sidebar into a compact accordion: top-level operational areas
   behave like dropdown menu rows, with the current area expanded by default.
   Admin only; no client portal styling is affected.
   ========================================================================== */
body.admin-ui .admin-sidebar {
  padding:20px 14px 30px;
}
body.admin-ui .admin-nav-home {
  display:block;
  margin:0 0 12px;
  padding:11px 12px;
  border:1px solid transparent;
  border-radius:10px;
  color:#d3d0c9 !important;
  text-decoration:none;
  font-size:13.5px;
  font-weight:700;
  line-height:1.25;
}
body.admin-ui .admin-nav-home small {
  display:block;
  margin-top:2px;
  color:#85827c !important;
  font-size:10.5px;
  font-weight:500;
}
body.admin-ui .admin-nav-home:hover {
  background:rgba(255,255,255,.045) !important;
  border-color:rgba(255,255,255,.06);
  color:var(--admin-text) !important;
}
body.admin-ui .admin-nav-home.active {
  background:rgba(245,192,68,.105) !important;
  border-color:rgba(245,192,68,.28) !important;
  color:var(--admin-yellow) !important;
  box-shadow:inset 3px 0 0 var(--admin-yellow);
}
body.admin-ui .admin-nav-home.active small { color:#b7b2a7 !important; }

body.admin-ui .admin-nav-section {
  margin:0 0 7px;
  border:1px solid var(--admin-line-soft);
  border-radius:11px;
  background:rgba(255,255,255,.012);
  overflow:hidden;
}
body.admin-ui .admin-nav-section-system { margin-top:18px; }
body.admin-ui .admin-nav-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:42px;
  padding:0 12px;
  cursor:pointer;
  list-style:none;
  color:#aaa7a0 !important;
  font-size:11px;
  font-weight:800;
  letter-spacing:.075em;
  text-transform:uppercase;
  user-select:none;
  transition:background .16s ease,color .16s ease,border-color .16s ease;
}
body.admin-ui .admin-nav-summary::-webkit-details-marker { display:none; }
body.admin-ui .admin-nav-summary::marker { content:""; }
body.admin-ui .admin-nav-summary:hover {
  background:rgba(255,255,255,.035);
  color:#d7d4ce !important;
}
body.admin-ui .admin-nav-section[open] {
  border-color:rgba(255,255,255,.11);
  background:rgba(255,255,255,.018);
}
body.admin-ui .admin-nav-section[open] > .admin-nav-summary {
  color:#d8d5ce !important;
  background:rgba(255,255,255,.025);
  border-bottom:1px solid var(--admin-line-soft);
}
body.admin-ui .admin-nav-chevron {
  position:relative;
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  transform-origin:center;
  opacity:.72;
  transition:transform .16s ease;
}
body.admin-ui .admin-nav-section[open] .admin-nav-chevron {
  transform:rotate(225deg) translate(-1px,-1px);
}
body.admin-ui .admin-nav-children {
  display:grid;
  gap:2px;
  padding:6px;
}
body.admin-ui .admin-nav-children .admin-nav-link {
  position:relative;
  padding:8px 10px 8px 24px;
  border-radius:8px;
  color:#bbb8b1 !important;
  font-size:12.5px;
  font-weight:600;
}
body.admin-ui .admin-nav-children .admin-nav-link::before {
  content:"";
  position:absolute;
  left:11px;
  top:50%;
  width:4px;
  height:4px;
  margin-top:-2px;
  border-radius:50%;
  background:#5e5b55;
}
body.admin-ui .admin-nav-children .admin-nav-link:hover {
  background:rgba(255,255,255,.04) !important;
  border-color:transparent !important;
  color:var(--admin-text) !important;
}
body.admin-ui .admin-nav-children .admin-nav-link.active {
  background:rgba(245,192,68,.10) !important;
  border-color:transparent !important;
  color:var(--admin-yellow) !important;
  box-shadow:none;
}
body.admin-ui .admin-nav-children .admin-nav-link.active::before {
  background:var(--admin-yellow);
  box-shadow:0 0 0 3px rgba(245,192,68,.10);
}
@media (max-width:1180px) {
  body.admin-ui .admin-layout { grid-template-columns:232px minmax(0,1fr); }
}

/* ==========================================================================
   v7.0.6 — statement accounting language + period helper readability
   ========================================================================== */
.period-viz-35-card .card-title-row{
  min-width:0!important;
}
.period-viz-35-card .card-title-row .helper{
  min-width:0!important;
  max-width:430px!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:break-word!important;
}
@media(max-width:900px){
  .period-viz-35-card .card-title-row .helper{
    max-width:none!important;
  }
}

/* ==========================================================================
   v7.0.10 — Equals detail readability + adjustment reconciliation + preview bar
   ========================================================================== */

/* Equals has two extra accounting columns. Give that table its own horizontal
   schedule instead of forcing eleven columns through the nine-column client grid. */
#detail .table-scroll.equals-detail-scroll{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch;
}
#detail .statement-line-preview.equals-internal-line-preview{
  width:100% !important;
  min-width:1680px !important;
  table-layout:fixed !important;
}
#detail .statement-line-preview.equals-internal-line-preview th,
#detail .statement-line-preview.equals-internal-line-preview td{
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(1),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(1){width:90px !important;min-width:90px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(2),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(2){width:90px !important;min-width:90px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(3),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(3){width:260px !important;min-width:260px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(4),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(4){width:190px !important;min-width:190px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(5),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(5){width:180px !important;min-width:180px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(6),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(6){width:150px !important;min-width:150px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(7),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(7){width:210px !important;min-width:210px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(8),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(8){width:120px !important;min-width:120px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(9),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(9){width:140px !important;min-width:140px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(10),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(10){width:130px !important;min-width:130px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(11),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(11){width:140px !important;min-width:140px !important;}
#detail .statement-line-preview.equals-internal-line-preview th:nth-child(n+9),
#detail .statement-line-preview.equals-internal-line-preview td:nth-child(n+9){
  white-space:nowrap !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  font-variant-numeric:tabular-nums;
}

.equals-adjustment-activity-card .card-title-row > div{min-width:0;}
.equals-adjustment-activity-card .helper{display:block;margin-top:4px;max-width:820px;}
.equals-adjustment-activity-table{min-width:980px !important;}
.equals-adjustment-activity-table th:nth-child(1),.equals-adjustment-activity-table td:nth-child(1){width:92px;white-space:nowrap;}
.equals-adjustment-activity-table th:nth-child(2),.equals-adjustment-activity-table td:nth-child(2){width:105px;white-space:nowrap;}
.equals-adjustment-activity-table th:nth-child(3),.equals-adjustment-activity-table td:nth-child(3){min-width:170px;}
.equals-adjustment-activity-table th:nth-child(4),.equals-adjustment-activity-table td:nth-child(4){width:130px;}
.equals-adjustment-activity-table th:last-child,.equals-adjustment-activity-table td:last-child{width:160px;white-space:nowrap;}
.equals-adjustment-activity-table .inline-note{display:block;margin-top:3px;color:var(--muted);font-size:11px;}

/* Admin preview is one slim brand-consistent strip beneath the normal header. */
body.admin-preview-ui .admin-preview-bar{
  position:sticky;
  top:72px;
  z-index:55;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:9px 24px;
  border-bottom:1px solid rgba(247,247,247,.10);
  background:#181818;
  color:#f4f3ef;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
  font-size:11px;
}
body.admin-preview-ui .admin-preview-bar > div{display:flex;gap:9px;align-items:baseline;min-width:0;}
body.admin-preview-ui .admin-preview-bar strong{color:#f5c044 !important;}
body.admin-preview-ui .admin-preview-bar span{color:#aaa7a0 !important;overflow-wrap:break-word;}
body.admin-preview-ui .admin-preview-bar a{color:#f5c044 !important;font-weight:800;text-decoration:none;white-space:nowrap;}
body.admin-preview-ui .admin-preview-bar a:hover{color:#ffcf5d !important;text-decoration:underline;}

@media(max-width:900px){
  #detail .statement-line-preview.equals-internal-line-preview{min-width:0 !important;}
  .equals-adjustment-activity-table{min-width:760px !important;}
  body.admin-preview-ui .admin-preview-bar{top:64px;padding:9px 14px;align-items:flex-start;}
  body.admin-preview-ui .admin-preview-bar > div{display:block;}
}
@media(max-width:900px){
  #detail .statement-line-preview.equals-internal-line-preview th:nth-child(n),
  #detail .statement-line-preview.equals-internal-line-preview td:nth-child(n){
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  #detail .statement-line-preview.equals-internal-line-preview th:nth-child(n+9),
  #detail .statement-line-preview.equals-internal-line-preview td:nth-child(n+9){
    white-space:normal !important;
  }
}


/* ==========================================================================
   v7.0.11 — Equals structural detail table + always-visible adjustment schedule
   ========================================================================== */
body .equals-adjustment-schedule-card{
  margin-top:16px;
}
body .equals-adjustment-schedule-card .card-title-row > div{
  min-width:0;
}
body .equals-adjustment-schedule-card .helper{
  display:block;
  max-width:920px;
  margin-top:4px;
}
body .equals-adjustment-scroll{
  overflow-x:auto !important;
  overflow-y:hidden !important;
}
body .equals-adjustment-schedule-table{
  width:100% !important;
  min-width:1120px !important;
  table-layout:auto !important;
}
body .equals-adjustment-schedule-table th,
body .equals-adjustment-schedule-table td{
  vertical-align:top !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
}
body .equals-adjustment-schedule-table th:nth-child(1),
body .equals-adjustment-schedule-table td:nth-child(1){width:92px;white-space:nowrap !important;}
body .equals-adjustment-schedule-table th:nth-child(2),
body .equals-adjustment-schedule-table td:nth-child(2){width:102px;white-space:nowrap !important;}
body .equals-adjustment-schedule-table th:nth-child(3),
body .equals-adjustment-schedule-table td:nth-child(3){min-width:170px;}
body .equals-adjustment-schedule-table th:nth-child(4),
body .equals-adjustment-schedule-table td:nth-child(4){width:120px;}
body .equals-adjustment-schedule-table th:nth-child(5),
body .equals-adjustment-schedule-table td:nth-child(5){min-width:270px;}
body .equals-adjustment-schedule-table th:nth-child(6),
body .equals-adjustment-schedule-table td:nth-child(6){width:150px;white-space:nowrap !important;}
body .equals-adjustment-schedule-table th:nth-child(7),
body .equals-adjustment-schedule-table td:nth-child(7){width:170px;}
body .equals-treatment{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  border-radius:999px;
  padding:4px 9px;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.02em;
}
body .equals-treatment.included{
  background:rgba(136,202,160,.12);
  border:1px solid rgba(136,202,160,.28);
  color:#a7d9b8;
}
body .equals-treatment.reference{
  background:rgba(245,192,68,.09);
  border:1px solid rgba(245,192,68,.22);
  color:#f5c044;
}

/* The internal account uses a deliberately reduced nine-column preview. Identifier
   detail is nested beneath the title rather than consuming another full column. */
#detail .equals-detail-scroll{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch;
}
#detail .statement-line-preview.equals-line-preview-v711{
  width:100% !important;
  min-width:1320px !important;
  table-layout:fixed !important;
}
#detail .statement-line-preview.equals-line-preview-v711 th,
#detail .statement-line-preview.equals-line-preview-v711 td{
  padding:9px 10px !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  vertical-align:top !important;
}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(1),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(1){width:92px !important;min-width:92px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(2),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(2){width:90px !important;min-width:90px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(3),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(3){width:290px !important;min-width:290px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(4),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(4){width:180px !important;min-width:180px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(5),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(5){width:170px !important;min-width:170px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(6),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(6){width:150px !important;min-width:150px !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(7),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(7){width:150px !important;min-width:150px !important;white-space:nowrap !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(8),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(8){width:130px !important;min-width:130px !important;white-space:nowrap !important;}
#detail .statement-line-preview.equals-line-preview-v711 th:nth-child(9),
#detail .statement-line-preview.equals-line-preview-v711 td:nth-child(9){width:150px !important;min-width:150px !important;white-space:nowrap !important;}
#detail .equals-line-preview-v711 .equals-inline-identifier{
  display:block !important;
  margin-top:5px;
  color:rgba(247,247,247,.48) !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10.5px;
  line-height:1.35;
  overflow-wrap:anywhere;
}

@media(max-width:640px){
  body .equals-adjustment-scroll{overflow:visible !important;border:0 !important;background:transparent !important;}
  body .equals-adjustment-schedule-table,
  body .equals-adjustment-schedule-table thead,
  body .equals-adjustment-schedule-table tbody,
  body .equals-adjustment-schedule-table tr,
  body .equals-adjustment-schedule-table th,
  body .equals-adjustment-schedule-table td{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  body .equals-adjustment-schedule-table thead{display:none !important;}
  body .equals-adjustment-schedule-table tbody{display:grid !important;gap:10px !important;}
  body .equals-adjustment-schedule-table tr{border:1px solid rgba(247,247,247,.10) !important;border-radius:16px !important;overflow:hidden !important;}
  body .equals-adjustment-schedule-table td{display:grid !important;grid-template-columns:112px minmax(0,1fr) !important;gap:10px !important;padding:9px 11px !important;border-bottom:1px solid rgba(247,247,247,.07) !important;white-space:normal !important;}
  body .equals-adjustment-schedule-table td:last-child{border-bottom:0 !important;}
  body .equals-adjustment-schedule-table td::before{color:rgba(247,247,247,.50);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;}
  body .equals-adjustment-schedule-table td:nth-child(1)::before{content:"Period";}
  body .equals-adjustment-schedule-table td:nth-child(2)::before{content:"Date";}
  body .equals-adjustment-schedule-table td:nth-child(3)::before{content:"Account";}
  body .equals-adjustment-schedule-table td:nth-child(4)::before{content:"Type";}
  body .equals-adjustment-schedule-table td:nth-child(5)::before{content:"Description";}
  body .equals-adjustment-schedule-table td:nth-child(6)::before{content:"Statement impact";}
  body .equals-adjustment-schedule-table td:nth-child(7)::before{content:"Equals treatment";}

  #detail .statement-line-preview.equals-line-preview-v711{min-width:0 !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(1)::before{content:"Period" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(2)::before{content:"Month" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(3)::before{content:"Title / artist / identifier" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(4)::before{content:"Royalty type" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(5)::before{content:"Source / licensee" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(6)::before{content:"Territory" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(7)::before{content:"Underlying receipts" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(8)::before{content:"Equals retained rate" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(9)::before{content:"Equals income" !important;}
  #detail .statement-line-preview.equals-line-preview-v711 td:nth-child(n){width:100% !important;min-width:0 !important;white-space:normal !important;}
}


/* v7.0.12 — Equals adjustment counter-entry presentation */
body .equals-adjustment-schedule-table{min-width:1260px !important;}
body .equals-adjustment-schedule-table th:nth-child(6),
body .equals-adjustment-schedule-table td:nth-child(6),
body .equals-adjustment-schedule-table th:nth-child(7),
body .equals-adjustment-schedule-table td:nth-child(7){width:142px;white-space:nowrap !important;}
body .equals-adjustment-schedule-table th:nth-child(8),
body .equals-adjustment-schedule-table td:nth-child(8){width:176px;}
@media(max-width:760px){
  body .equals-adjustment-schedule-table td:nth-child(6)::before{content:"Client impact" !important;}
  body .equals-adjustment-schedule-table td:nth-child(7)::before{content:"Equals impact" !important;}
  body .equals-adjustment-schedule-table td:nth-child(8)::before{content:"Equals treatment" !important;}
}

/* v7.0.13 — Equals platform-fee recovery transparency */
body .equals-treatment.pass-through{
  background:rgba(247,247,247,.06);
  border:1px solid rgba(247,247,247,.16);
  color:rgba(247,247,247,.78);
}
body .equals-adjustment-schedule-table td[data-label="Equals impact"] .inline-note{
  display:block;
  margin-top:4px;
  white-space:normal;
  color:rgba(247,247,247,.52);
  line-height:1.35;
}


/* v7.0.15 — obvious historical statement navigation + earlier-period close-out queue */
body.admin-ui .admin-statement-period-switcher {
  display:grid; grid-template-columns:minmax(220px,1fr) auto auto; gap:14px; align-items:end;
  margin:0 0 18px; padding:15px 16px; border:1px solid rgba(255,255,255,.12); border-radius:14px;
  background:rgba(255,255,255,.045);
}
body.admin-ui .admin-statement-period-current span,
body.admin-ui .admin-statement-period-form label > span { display:block; color:var(--admin-muted,#aaa); font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
body.admin-ui .admin-statement-period-current strong { display:block; margin:3px 0 4px; font-size:22px; line-height:1.05; }
body.admin-ui .admin-statement-period-current small { display:block; max-width:610px; color:var(--admin-muted,#aaa); line-height:1.4; }
body.admin-ui .admin-statement-period-form { display:flex; gap:9px; align-items:end; }
body.admin-ui .admin-statement-period-form label { margin:0; min-width:155px; }
body.admin-ui .admin-statement-period-form select { width:100%; min-width:155px; margin-top:5px; }
body.admin-ui .admin-period-closeout-jump { white-space:nowrap; }
body.admin-ui .prior-period-closeout-panel { border-color:rgba(225,181,86,.35); }
body.admin-ui .prior-period-closeout-panel .admin-panel-head { background:rgba(225,181,86,.055); }
@media (max-width:900px) {
  body.admin-ui .admin-statement-period-switcher { grid-template-columns:1fr; align-items:stretch; }
  body.admin-ui .admin-statement-period-form { align-items:end; }
  body.admin-ui .admin-statement-period-form label { flex:1; }
  body.admin-ui .admin-period-closeout-jump { justify-self:start; }
}
