:root {
  --canvas: var(--elevenx-canvas);
  --surface: var(--elevenx-surface);
  --raised: var(--elevenx-surface-raised);
  --soft: var(--elevenx-surface-soft);
  --ink: var(--elevenx-foreground);
  --muted: var(--elevenx-muted);
  --faint: var(--elevenx-faint);
  --primary: var(--elevenx-primary);
  --primary-hover: var(--elevenx-primary-hover);
  --on-primary: var(--elevenx-on-primary);
  --border: var(--elevenx-border);
  --border-soft: var(--elevenx-border-soft);
  --focus: var(--elevenx-focus);
  --success: var(--elevenx-success);
  --warning: var(--elevenx-warning);
  --danger: var(--elevenx-danger);
  --radius: var(--elevenx-radius);
}

* { box-sizing: border-box; }
html, body { min-height: 100%; }
body { margin: 0; background: var(--canvas); color: var(--ink); font-family: var(--elevenx-font); font-size: var(--elevenx-font-body); line-height: var(--elevenx-leading-body); font-optical-sizing: auto; }
button, input, select, textarea { font: inherit; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
h1, h2, h3, h4, p { margin: 0; }
h1, h2, h3, h4, strong, b { font-weight: 600; }
h3, h4 { font-size: var(--elevenx-font-title-3); line-height: 1.33; }
a { color: var(--primary); }
[hidden] { display: none !important; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.muted { color: var(--muted); }
.eyebrow { color: var(--muted); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); letter-spacing: normal; text-transform: none; }

.auth-root:empty { min-height: 100dvh; background: var(--canvas); }
.auth-root .elevenx-auth-brand { color: var(--ink); }
.elevenx-auth-brand .elevenx-logo { display: block; width: min(220px, 68vw); height: auto; }
.auth-product-name { display: grid; text-align: left; }
.auth-product-name small { color: var(--muted); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); letter-spacing: normal; text-transform: none; }
.auth-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; text-align: center; }
.auth-appearance { position: fixed; top: 16px; right: 16px; }

.product-brand { gap: 10px; }
.elevenx-product-brand .elevenx-logo { display: block; height: 26px; width: auto; }
.product-name { display: inline-flex; align-items: center; color: var(--elevenx-chrome-muted); font-size: var(--elevenx-font-footnote); line-height: 1; font-weight: var(--elevenx-weight-semibold); letter-spacing: normal; text-transform: none; }

.workspace { min-height: calc(100dvh - 64px); display: grid; grid-template-columns: 280px minmax(0, 1fr); }
.directory-facts { display: grid; gap: 0; margin: 24px 0; border: 1px solid var(--border-soft); border-radius: 16px; overflow: hidden; }
.directory-fact { display: grid; grid-template-columns: minmax(100px, 160px) minmax(0, 1fr); gap: 20px; padding: 18px 20px; border-bottom: 1px solid var(--border-soft); }
.directory-fact:last-child { border-bottom: 0; }
.directory-fact dt { color: var(--muted); }
.directory-fact dd { margin: 0; display: grid; gap: 6px; min-width: 0; }
.directory-fact-value { white-space: pre-wrap; overflow-wrap: anywhere; }
.directory-provenance { font-size: var(--elevenx-font-footnote); overflow-wrap: anywhere; }
.directory-provenance summary { cursor: pointer; color: var(--muted); }
.directory-provenance small, .directory-provenance a { display: block; margin-top: 6px; }
.source-navigation [aria-pressed="true"] { background: var(--primary); color: var(--on-primary); }
@media (max-width: 600px) { .directory-fact { grid-template-columns: 1fr; gap: 8px; padding: 16px; } }
.opponent-portal { grid-column: 1 / -1; width: min(1120px, 100%); margin: 0 auto; padding: 48px 40px 64px; }
.portal-heading { display: grid; gap: 10px; margin-bottom: 36px; }
.portal-heading h1 { font-size: clamp(24px, 3vw, 34px); line-height: 1.3; letter-spacing: -.025em; }
.portal-view-switch { display: inline-flex; max-width: 100%; }
.opponent-schedule { color: var(--muted); font-size: var(--elevenx-font-footnote); }
.opponent-empty { grid-column: 1 / -1; padding: 24px; border: 1px dashed var(--border); border-radius: 20px; color: var(--muted); font-size: var(--elevenx-font-footnote); }
.opponent-period { margin-top: 28px; }
.opponent-period-heading { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 14px; }
.opponent-period-heading h2 { font-size: 20px; }
.opponent-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.opponent-card { min-width: 0; display: grid; justify-items: start; gap: 14px; padding: 24px; border: 1px solid var(--border); border-radius: 20px; background: var(--surface); color: var(--ink); text-align: left; cursor: pointer; }
.opponent-card:hover { border-color: var(--primary); background: var(--raised); }
.opponent-card:disabled { cursor: wait; opacity: .65; }
.opponent-card strong { font-size: 21px; line-height: 1.4; }
.opponent-flag { display: flex; align-items: center; height: 64px; }
.opponent-flag img { width: 96px; height: 64px; object-fit: contain; object-position: left center; filter: drop-shadow(0 0 1px #0004); }
.opponent-card-meta { color: var(--muted); font-size: var(--elevenx-font-footnote); overflow-wrap: anywhere; }
.portal-other { margin-top: 36px; padding-top: 20px; border-top: 1px solid var(--border-soft); }
.portal-other summary { cursor: pointer; padding: 8px 0; }
.portal-other p { margin: 12px 0; }
.portal-back { margin-bottom: 24px; }
#createCountryActivity { margin-top: 20px; }
@media (max-width: 720px) {
  .opponent-portal { padding: 28px 16px 48px; }
  .opponent-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .opponent-card { padding: 18px 14px; gap: 12px; }
  .opponent-card strong { font-size: 18px; }
}
@media (max-width: 380px) {
  .opponent-grid { grid-template-columns: 1fr; }
}
.activity-rail { min-width: 0; border-right: 1px solid var(--border-soft); padding: 30px 22px 60px; background: var(--soft); }
.rail-heading, .section-heading, .report-header, .aside-heading, .title-line, .form-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.rail-heading { margin-bottom: 18px; }
.rail-heading .elevenx-icon-button { background: var(--elevenx-fill); color: var(--ink); }
.state-card { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 0; color: var(--muted); font-size: var(--elevenx-font-footnote); line-height: 1.4; text-align: center; }
.activity-list { display: grid; gap: 8px; }
.activity-card { width: 100%; min-height: 0; display: grid; gap: 9px; border-radius: 12px; padding: 14px; background: transparent; color: var(--ink); text-align: left; }
.activity-card:hover { background: var(--elevenx-fill); }
.activity-card.active { background: var(--elevenx-fill); }
.activity-card strong { font-size: var(--elevenx-font-headline); font-weight: 600; line-height: 1.47; }
.activity-card-meta { display: flex; flex-wrap: wrap; gap: 5px 10px; color: var(--muted); font-size: var(--elevenx-font-footnote); }
.activity-card > .elevenx-badge { justify-self: start; }
.report-mini-list { display: grid; gap: 2px; }
.report-mini { white-space: normal; overflow-wrap: anywhere; }

.content { min-width: 0; padding: 44px 54px 80px; }
.content:has(> .welcome-card:not([hidden])) { display: grid; align-items: center; }
.welcome-card { align-self: center; }
.report-header { align-items: flex-end; margin-bottom: 22px; }
.report-header .eyebrow { margin: 9px 0 5px; }
.report-header .muted { margin-top: 8px; font-size: var(--elevenx-font-footnote); }
.title-line { justify-content: flex-start; }
.notice { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; border: 1px solid var(--border); border-radius: 10px; padding: 11px 14px; background: var(--raised); color: var(--muted); font-size: var(--elevenx-font-footnote); }
.notice.danger { border-color: color-mix(in srgb, var(--danger) 50%, var(--border)); background: var(--elevenx-danger-soft); color: var(--danger); }
.tabs { max-width: 100%; overflow-x: auto; }
.detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; padding-top: 26px; }
.detail-main { min-width: 0; }
.section-heading { align-items: flex-start; margin-bottom: 15px; }
.section-heading p { margin-top: 5px; color: var(--muted); font-size: var(--elevenx-font-callout); line-height: 1.5; }

.compact-form, .edit-card { display: grid; gap: 16px; border-radius: 12px; padding: 20px; background: var(--surface); }
.compact-form { margin-bottom: 14px; }
.edit-card { margin-bottom: 18px; padding: 18px; }
.compact-form label, .edit-card label { display: grid; gap: 5px; color: var(--muted); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); }
.edit-card fieldset { min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0; border: 0; padding: 0; }
.edit-card legend { grid-column: 1 / -1; margin-bottom: 9px; color: var(--ink); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); }
.or-label { align-self: end; padding-bottom: 12px; color: var(--faint); font-size: var(--elevenx-font-footnote); text-align: center; }

.elevenx-field { width: 100%; min-width: 0; background-color: var(--elevenx-control); }
textarea.elevenx-field { min-height: 88px; resize: vertical; line-height: var(--elevenx-leading-body); }
input.elevenx-file { width: 100%; min-width: 0; }
.form-actions { justify-content: flex-end; }
.form-message { min-height: 0; color: var(--danger); font-size: var(--elevenx-font-footnote); }
.form-message:empty { display: none; }

.facts-list { display: grid; gap: 14px; }
.fact-group { border: 1px solid var(--border-soft); border-radius: 12px; overflow: hidden; background: var(--surface); }
.fact-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--border-soft); }
.fact-heading small { display: block; margin-top: 4px; color: var(--muted); font-size: var(--elevenx-font-footnote); }
.accepted-value { max-width: 52%; text-align: right; }
.accepted-value strong { display: block; overflow-wrap: anywhere; font-size: var(--elevenx-font-subheadline); }
.accepted-value small { color: var(--muted); font-size: var(--elevenx-font-footnote); }
.candidate-list { display: grid; }
.candidate-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 13px; padding: 13px 16px; border-bottom: 1px solid var(--border-soft); }
.candidate-row:last-child { border-bottom: 0; }
.candidate-value { font-size: var(--elevenx-font-subheadline); font-weight: var(--elevenx-weight-semibold); overflow-wrap: anywhere; }
.candidate-meta { display: flex; flex-wrap: wrap; gap: 5px 9px; margin-top: 6px; color: var(--muted); font-size: var(--elevenx-font-footnote); }
.candidate-meta a { overflow-wrap: anywhere; }
.candidate-actions { display: flex; align-items: center; gap: 7px; }
.candidate-actions input { width: 145px; font-size: var(--elevenx-font-footnote); }
.manual-override { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(145px, 1fr) auto auto; gap: 8px; padding: 12px 16px; background: var(--soft); }
.manual-override input { font-size: var(--elevenx-font-footnote); }
.unverified { color: var(--warning); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); }
.policy-section { margin-top: 34px; border-top: 1px solid var(--border-soft); padding-top: 25px; }
#identityWorkspace { overflow-wrap: anywhere; }
#identityWorkspace form { display: grid; gap: 12px; }
#identityWorkspace .form-actions { flex-wrap: wrap; margin-bottom: 10px; }
#identityWorkspace .form-actions span { flex: 1 1 180px; }
#identityWorkspace .edit-card:empty { display: none; }
#identityWorkspace [data-common-record] { scroll-margin-top: 80px; }
#identityWorkspace [data-common-record]:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
#policyChanges { margin: 0; padding-left: 20px; color: var(--muted); font-size: var(--elevenx-font-footnote); line-height: 1.7; }

.artifact-links { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
#previewFrame { width: 100%; min-height: 660px; border: 1px solid var(--border); border-radius: 12px; background: white; }
.timeline { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.timeline li { position: relative; border-left: 2px solid var(--border); padding: 3px 0 3px 16px; }
.timeline strong { display: block; font-size: var(--elevenx-font-footnote); }
.timeline span { display: block; margin-top: 4px; color: var(--muted); font-size: var(--elevenx-font-footnote); }

.collaboration-panel { min-width: 0; display: grid; align-content: start; gap: 22px; }
.collaboration-panel > section { border-radius: 12px; padding: 20px; background: var(--surface); }
.aside-heading { margin-bottom: 12px; }
.count { color: var(--muted); font-size: var(--elevenx-font-footnote); }
.comment-form { display: grid; gap: 8px; }
.comment-form textarea { min-height: 76px; font-size: var(--elevenx-font-body); }
.comment-form button { justify-self: end; }
.small-empty { padding: 10px 0; color: var(--muted); font-size: var(--elevenx-font-footnote); text-align: center; }
.comment-list, .job-list, .proposal-list { display: grid; gap: 8px; margin: 12px 0; }
.comment-item, .job-item, .proposal-item { border-radius: 9px; padding: 12px; background: var(--elevenx-fill); }
.comment-item { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; }
.comment-item p, .proposal-item p { overflow-wrap: anywhere; font-size: var(--elevenx-font-footnote); line-height: 1.55; }
.proposal-change-list { margin: 8px 0; padding-left: 18px; color: var(--muted); font-size: var(--elevenx-font-footnote); line-height: 1.55; }
.item-meta { display: block; margin-top: 5px; color: var(--faint); font-size: var(--elevenx-font-footnote); }
.job-line { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.job-line strong { font-size: var(--elevenx-font-footnote); }
.status { color: var(--muted); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); }
.status.succeeded { color: var(--success); }
.status.failed, .status.cancelled, .status.timed_out, .status.interrupted { color: var(--danger); }
.job-item > p { margin-top: 6px; color: var(--muted); font-size: var(--elevenx-font-footnote); }
.wide { width: 100%; }
.toast { position: fixed; z-index: 80; top: 76px; left: 50%; transform: translateX(-50%); }

@media (max-width: 980px) {
  .workspace { grid-template-columns: 230px minmax(0, 1fr); }
  .content { padding-right: 28px; padding-left: 28px; }
  .detail-layout { grid-template-columns: minmax(0, 1fr); }
  .collaboration-panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .workspace { display: block; }
  .activity-rail { border-right: 0; border-bottom: 1px solid var(--border-soft); padding: 20px 16px; }
  .activity-list { display: flex; overflow-x: auto; }
  .activity-card { min-width: 230px; }
  .content { padding: 28px 16px 60px; min-height: 50dvh; }
  .detail-layout { display: flex; flex-direction: column; }
  .collaboration-panel { display: grid; grid-template-columns: 1fr; order: 2; }
  .edit-card fieldset { grid-template-columns: 1fr; }
  .or-label { padding: 0; }
  .candidate-row { grid-template-columns: 1fr; }
  .candidate-actions { flex-wrap: wrap; }
  .candidate-actions input { width: 100%; }
  .manual-override { grid-template-columns: 1fr; }
  .report-header { align-items: flex-start; }
  .account-copy { display: none; }
  #previewFrame { min-height: 480px; }
}

@media (pointer: coarse) { .elevenx-field, .elevenx-file { min-height: var(--elevenx-control-height-touch); } }

@media (max-width: 480px) {
  .topbar-session elevenx-appearance-selector { min-width: 112px; max-width: 140px; }
  #platformLink { display: none; }
  .elevenx-product-brand .elevenx-logo { height: 22px; }
  .report-header { display: grid; }
  .section-heading { align-items: flex-start; }
}

@media print {
  .topbar, .activity-rail, .tabs, .collaboration-panel, .report-header button, .notice { display: none !important; }
  .workspace { display: block; }
  .content { padding: 0; }
}

/* v2: team master tools, refs, photo thumbnails, artifact warnings */
.master-tools { margin-block: 18px; }
.master-tools > summary { cursor:pointer; min-height:44px; padding-block:12px; font-weight:600; }
.master-tools-body { display:grid; gap:12px; }
.compact-asset-form { grid-template-columns: 1fr; }
.refs-box { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.refs-box label { display: grid; gap: 5px; color: var(--muted); font-size: var(--elevenx-font-footnote); font-weight: var(--elevenx-weight-semibold); }
.asset-thumb { display: block; height: 96px; max-width: 120px; object-fit: contain; border: 1px solid var(--border-soft); border-radius: 8px; background: var(--surface); }
.artifact-warnings { margin: 0 0 12px 0; padding-left: 18px; color: var(--warning); font-size: var(--elevenx-font-footnote); }
@media (max-width: 720px) { .refs-box { grid-template-columns: 1fr; } }

/* Stored photo comparison keeps portraits uncropped for human inspection. */
#photoComparison > label { display: grid; gap: 8px; margin-block: 12px; }
.photo-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 16px; }
.photo-candidate { min-width: 0; padding: 16px; border: 1px solid var(--border); border-radius: 12px; overflow-wrap: anywhere; }
.photo-candidate h5, .photo-current h5 { margin: 0 0 12px; font-size: inherit; }
.photo-candidate p { margin-block: 10px; }
.photo-candidate > a { display: block; margin-block: 8px; }
.photo-candidate > input { width: 100%; margin-block: 12px; }
.photo-images { display: flex; flex-wrap: wrap; gap: 12px; }
.photo-images figure, .photo-current figure { flex: 1 1 110px; min-width: 0; margin: 0; }
.photo-images img, .photo-current img { display: block; width: 100%; height: 190px; object-fit: contain; border: 1px solid var(--border); border-radius: 8px; }
.photo-images figcaption, .photo-current figcaption { margin-top: 6px; font-size: 12px; }
.photo-current { max-width: 240px; margin-bottom: 20px; }
.photo-warning { font-weight: 600; }

.structured-form label { display:grid; gap:6px; min-width:0; margin-block:10px; }
.structured-form input[type=checkbox] { width:auto; justify-self:start; }
.structured-rows { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:12px; }
.structured-rows fieldset { min-width:0; border:1px solid var(--border); border-radius:12px; padding:12px; }
.structured-form textarea { min-height:120px; width:100%; }

/* Give generated documents the full reading width without hiding collaboration. */
.detail-layout.preview-active { grid-template-columns: minmax(0, 1fr); }
.preview-active .collaboration-panel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
#renderButton { flex-shrink: 0; white-space: nowrap; }
@media (max-width: 720px) {
  .preview-active .collaboration-panel { grid-template-columns: minmax(0, 1fr); }
  #previewPanel .section-heading { flex-wrap: wrap; }
}

/* Team directory keeps the roster in view before exposing individual sources. */
.detail-layout.directory-active { grid-template-columns: minmax(0, 1fr); }
.team-management { margin-block: 20px; }
.team-management > summary, details.policy-section > summary { cursor: pointer; padding: 12px 0; min-height: 44px; font-weight: 600; }
.directory-controls { display: flex; flex-wrap: wrap; gap: 20px; align-items: end; justify-content: space-between; margin: 24px 0 16px; }
.directory-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.directory-filters button { min-height: 44px; }
.directory-filters [aria-pressed="true"] { background: var(--primary); color: var(--on-primary); border-color: var(--primary); }
.directory-search { display: grid; gap: 6px; min-width: 0; width: min(100%, 260px); }
.directory-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr)); gap: 20px; margin-block: 16px 28px; }
.directory-card { display: flex; flex-direction: column; text-align: left; padding: 0; border: 1px solid var(--border); border-radius: 16px; overflow: hidden; background: var(--surface); color: var(--ink); cursor: pointer; min-width: 0; transition: border-color .15s, box-shadow .15s; }
.directory-card:hover { border-color: var(--primary); box-shadow: 0 4px 14px rgb(0 0 0 / .08); }
.directory-photo { position: relative; width: 100%; aspect-ratio: 4 / 3; background: var(--soft); overflow: hidden; display: grid; place-items: center; }
.directory-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.directory-photo-fallback { color: var(--muted); font-size: 12px; text-align: center; padding: 16px; }
.directory-photo-count { color:var(--muted); font-size:14px; }
.directory-photo-header { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-block:20px; }
.directory-photo-header h3 { margin:0; overflow-wrap:anywhere; }
.directory-summary { display: flex; flex-direction: column; gap: 6px; padding: 18px; min-width: 0; overflow-wrap: anywhere; }
.directory-name { font-size: 18px; line-height: 1.4; }
.directory-original { color: var(--muted); font-size: 12px; }
.directory-position { color: var(--primary); font-weight: 600; }
.directory-club { font-size: 14px; }
.directory-basics { color: var(--muted); font-size: 12px; }
.directory-profile { display: flex; gap: 24px; align-items: center; margin-block: 24px; padding: 24px; border-radius: 20px; background: var(--soft); }
.directory-profile .directory-photo { width: 160px; flex: 0 0 160px; aspect-ratio: 3 / 4; border-radius: 12px; background: var(--surface); }
.directory-profile .directory-name { font-size: 24px; }
@media (max-width: 560px) {
  .directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .directory-summary { padding: 12px; }
  .directory-name { font-size: 16px; }
  .directory-profile { padding: 12px; gap: 8px; align-items: start; }
  .directory-profile .directory-photo { width: 90px; flex-basis: 90px; }
  .directory-profile .directory-name { font-size: 20px; }
  .directory-filters { gap: 6px; }
  .directory-filters .elevenx-button { padding-inline: 12px; }
}
@media (prefers-reduced-motion: reduce) { .directory-card { transition: none; } }
.source-navigation { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-block: 20px; }
.source-navigation select { flex: 1 1 220px; width: auto; min-width: 0; max-width: 460px; }
#sourceReview { display: block; overflow-wrap: anywhere; }
#sourceReview details { margin-top: 8px; }
#sourceReview li { margin-block: 8px; white-space: pre-wrap; }

/* Web reports use ElevenX Foundation tokens and preserve document structure. */
.report-view-switch { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.report-view-switch button[aria-pressed="true"] { background:var(--elevenx-selection); color:var(--primary); border-color:var(--primary); }
.web-report { min-width:0; color:var(--ink); font:inherit; line-height:var(--elevenx-leading-body); }
.web-report h3,.web-report h4,.web-report p { margin:0; }
.web-report h3 { font-size:var(--elevenx-font-title-2); }
.web-report h4 { font-size:var(--elevenx-font-headline); }
.wr-header { padding:8px 0; margin-bottom:12px; }
.wr-eyebrow,.wr-secondary { color:var(--muted); font-size:var(--elevenx-font-footnote); }
.wr-eyebrow { display:block; margin-bottom:8px; font-weight:500; }
.wr-header .wr-secondary { margin:0; }
.wr-tools { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.wr-search { flex:1 1 220px; }.wr-search input { width:100%; min-height:44px; }
.wr-select { display:grid; gap:6px; min-width:0; margin-bottom:16px; font-size:var(--elevenx-font-footnote); color:var(--muted); }
.wr-select select { min-height:44px; max-width:100%; }
.wr-section-title { display:flex; align-items:center; gap:8px; margin:20px 0 12px; }
.wr-badge { display:inline-block; background:var(--elevenx-fill); border-radius:999px; color:var(--ink); padding:3px 8px; font-size:var(--elevenx-font-caption); font-weight:500; }
.wr-details { border:1px solid var(--border-soft); border-radius:20px; background:var(--surface); margin:12px 0; padding:0 16px; }
.wr-details>summary { cursor:pointer; min-height:44px; padding:12px 0; font-weight:500; overflow-wrap:anywhere; }
.wr-details>p,.wr-details>ul { padding-bottom:16px; }.wr-details>ul { padding-left:18px; font-size:var(--elevenx-font-footnote); color:var(--warning); }
.wr-photo-credits { display:grid; gap:16px; padding-bottom:16px; }
.wr-photo-credit { min-width:0; border-top:1px solid var(--border-soft); padding-top:12px; }
.wr-photo-credit h5 { margin:0 0 8px; font-size:var(--elevenx-font-footnote); font-weight:500; overflow-wrap:anywhere; }
.wr-photo-credit dl { display:grid; grid-template-columns:minmax(6.5em,max-content) minmax(0,1fr); gap:4px 12px; margin:0; font-size:var(--elevenx-font-footnote); }
.wr-photo-credit dt { color:var(--muted); }.wr-photo-credit dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
.wr-phase-evidence { padding-bottom:16px; font-size:var(--elevenx-font-footnote); overflow-wrap:anywhere; }
.wr-phase-evidence section { border-top:1px solid var(--border-soft); padding-top:12px; margin-top:12px; }
.wr-phase-evidence h5 { margin:0 0 8px; font-size:inherit; font-weight:500; }
.wr-phase-evidence dl { margin:0; }.wr-phase-evidence dt { color:var(--muted); margin-top:8px; }
.wr-phase-evidence dd { margin:2px 0 0; white-space:pre-wrap; }
.wr-photo { height:120px; display:flex; align-items:center; justify-content:center; background:var(--soft); color:var(--muted); font-size:var(--elevenx-font-caption); border-radius:12px; overflow:hidden; }
.wr-photo img { width:100%; height:100%; object-fit:contain; }
.wr-sheet-header { display:grid; grid-template-columns:1fr 1.4fr 1.2fr; gap:20px; padding:20px; border:1px solid var(--border-soft); border-radius:20px; background:var(--surface); }
.wr-sheet-header p,.wr-sheet-header li { font-size:var(--elevenx-font-footnote); overflow-wrap:anywhere; }.wr-sheet-header h4:not(:first-child) { margin-top:12px; }.wr-sheet-header ul { margin:8px 0 0; padding-left:16px; }
.wr-crest { width:48px; height:56px; object-fit:contain; margin-bottom:8px; }
.wr-coach { display:grid; grid-template-columns:70px 1fr; gap:12px; }.wr-coach .wr-photo { height:90px; }.wr-coach strong { display:block; font-size:var(--elevenx-font-footnote); }
.wr-sheet-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; }.wr-sheet-columns>section { min-width:0; }
.wr-sheet-field { display:grid; gap:24px; background:var(--soft); padding:16px; border:1px solid var(--border-soft); border-radius:20px; overflow:auto; }
.wr-field-row { display:flex; align-items:start; justify-content:space-evenly; gap:8px; min-width:max-content; }
.wr-sheet-player { display:flex; flex-direction:column; gap:4px; align-items:center; text-align:center; width:105px; min-width:105px; }
.wr-sheet-player .wr-photo { width:80px; height:95px; }.wr-sheet-player strong { font-size:var(--elevenx-font-footnote); overflow-wrap:anywhere; }.wr-sheet-player .wr-secondary { font-size:var(--elevenx-font-caption); overflow-wrap:anywhere; }
.wr-bench-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(105px,1fr)); gap:20px 8px; align-items:start; padding:16px; border:1px solid var(--border-soft); border-radius:20px; background:var(--surface); }.wr-bench-grid .wr-sheet-player { width:100%; }
.wr-match { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin:16px 0; padding:20px; background:var(--surface); border:1px solid var(--border-soft); border-radius:20px; }.wr-score { font-size:var(--elevenx-font-title-2); font-variant-numeric:tabular-nums; }
.wr-phase-band { display:flex; gap:16px; overflow:auto; padding-bottom:8px; }.wr-phase-cell { min-width:260px; flex:1 0 260px; max-width:400px; border:1px solid var(--border-soft); border-radius:20px; background:var(--surface); padding:16px; }.wr-phase-cell>h4 { min-height:44px; margin-bottom:12px; }
.wr-phase-content { display:grid; gap:16px; }
.wr-pitch { position:relative; aspect-ratio:4/5; max-height:360px; background:var(--soft); border:1px solid var(--border); border-radius:12px; }
.wr-pitch:before { content:''; position:absolute; inset:5%; border:1px solid var(--border); }.wr-pitch:after { content:''; position:absolute; top:50%; left:5%; right:5%; border-top:1px solid var(--border); }.wr-center-circle { position:absolute; width:25%; aspect-ratio:1; border:1px solid var(--border); border-radius:50%; top:50%; left:50%; transform:translate(-50%,-50%); }
.wr-marker { position:absolute; transform:translate(-50%,-50%); z-index:1; width:28px; height:28px; display:grid; place-items:center; background:var(--raised); color:var(--ink); border:1px solid var(--border); border-radius:50%; font-size:var(--elevenx-font-footnote); font-weight:600; }
.wr-lineup { list-style:none; padding:0; margin:0; }.wr-lineup li { display:flex; align-items:center; gap:8px; padding:6px 0; border-bottom:1px solid var(--border-soft); font-size:var(--elevenx-font-caption); }
.wr-events { margin:0; padding-left:16px; font-size:var(--elevenx-font-footnote); }
.wr-article { background:var(--surface); border:1px solid var(--border-soft); border-radius:20px; padding:20px; margin-bottom:16px; }.wr-article h4 { margin:8px 0; }
.wr-card-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.wr-bilingual { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; border-top:1px solid var(--border-soft); padding-top:16px; }.wr-bilingual>section { min-width:0; }
.wr-article-text { white-space:pre-wrap; margin:12px 0!important; overflow-wrap:anywhere; }.wr-article-text mark { background:var(--elevenx-warning-soft); color:var(--ink); box-shadow:inset 0 -2px var(--warning); }
.wr-source { display:inline-flex; align-items:center; min-height:44px; color:var(--primary); text-decoration:underline; }
.wr-table-scroll { overflow:auto; max-height:650px; border:1px solid var(--border-soft); border-radius:20px; margin-top:16px; }.wr-table { width:100%; border-collapse:separate; border-spacing:0; background:var(--surface); font-size:var(--elevenx-font-footnote); }.wr-table caption { text-align:left; padding:12px 16px; font-weight:600; }.wr-table th,.wr-table td { padding:12px 16px; text-align:left; border-bottom:1px solid var(--border-soft); min-width:100px; }.wr-table thead th { position:sticky; top:0; background:var(--raised); z-index:2; white-space:pre-line; }.wr-table tbody th { min-width:180px; }.wr-table .wr-window-start { border-left:2px solid var(--border); }.wr-table tbody tr:hover td,.wr-table tbody tr:hover th { background:var(--soft); }
.wr-empty { padding:24px!important; text-align:center; background:var(--soft); border-radius:20px; color:var(--muted); }
.web-report :focus-visible,.report-view-switch :focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
@media(max-width:1000px) { .wr-sheet-columns { grid-template-columns:1fr; }.wr-sheet-header { grid-template-columns:1fr 1fr; }.wr-sheet-header>div:last-child { grid-column:1/-1; } }
@media(max-width:600px) { .wr-article,.wr-sheet-header { padding:16px; }.wr-sheet-header,.wr-bilingual { grid-template-columns:1fr; }.wr-sheet-header>div:last-child { grid-column:auto; }.wr-select { width:100%; } }

/* Separate identity, club and dated personal facts for scanning. */
.directory-summary { width:100%; box-sizing:border-box; gap:16px; }
.directory-identity { display:flex; align-items:center; gap:12px; }
.directory-number { flex:none; font-size:40px; line-height:1; font-weight:700; color:var(--primary); font-variant-numeric:tabular-nums; }
.directory-names { display:flex; flex-direction:column; gap:4px; min-width:0; }
.directory-names h3 { margin:0; }
.directory-position { font-size:20px; line-height:1.3; }
.directory-club { display:flex; flex-direction:column; gap:6px; }
.directory-club-value { display:flex; align-items:flex-start; gap:8px; line-height:1.5; }
.directory-club-flag { width:24px; height:18px; object-fit:contain; flex:none; margin-top:2px; }
.directory-label { color:var(--muted); font-size:12px; font-weight:400; }
.directory-basics { display:flex; flex-wrap:wrap; gap:12px 16px; padding-top:12px; border-top:1px solid var(--border); }
.directory-basic { display:flex; flex-direction:column; gap:4px; }
.directory-value { font-size:14px; color:var(--ink); font-variant-numeric:tabular-nums; white-space:nowrap; }
.directory-profile .directory-summary { flex:1; width:auto; }
@media (max-width:480px) {
  .directory-grid { grid-template-columns:minmax(0,1fr); }
  .directory-profile { flex-wrap:wrap; }
}

/* One filter state drives cards and the horizontally contained table. */
.directory-controls { justify-content:flex-start; gap:12px; }
.directory-select { display:grid; gap:6px; min-width:0; width:220px; max-width:100%; flex:0 1 220px; }
.directory-select select { min-width:0; width:100%; }
.directory-view-switch { display:flex; gap:8px; }
.directory-view-switch [aria-pressed="true"] { background:var(--primary); color:var(--on-primary); }
.directory-source { padding:0 18px 16px; color:var(--muted); text-align:left; }
.directory-table-wrap { max-width:100%; overflow-x:auto; margin-block:16px 28px; }
.directory-table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; }
.directory-table th,.directory-table td { padding:12px; border-bottom:1px solid var(--border); vertical-align:middle; }
.directory-table th { white-space:nowrap; color:var(--muted); font-weight:600; }
.directory-table td { min-width:70px; }
.directory-table td:nth-child(4),.directory-table td:nth-child(5) { min-width:180px; }
.directory-table td:last-child { min-width:180px; }
.directory-table small { display:block; color:var(--muted); margin-top:4px; }
.directory-table .directory-photo { width:56px; height:70px; border-radius:8px; }
.directory-table .directory-club-flag { margin-right:8px; }
.directory-table .elevenx-button { text-align:left; }
.directory-table td:nth-child(4) { min-width:220px; }
.directory-table td:nth-child(6),.directory-table td:nth-child(7) { white-space:nowrap; }
.directory-table .elevenx-button { background:transparent; border-color:transparent; border-radius:8px; padding-inline:0; color:var(--primary); }
.directory-table .elevenx-button:hover { text-decoration:underline; }
.directory-staff-role { color:var(--muted); font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.directory-staff-table td:nth-child(2),.directory-staff-table td:nth-child(3) { min-width:180px; overflow-wrap:anywhere; }
.directory-staff-table td:nth-child(4),.directory-staff-table td:nth-child(5) { min-width:70px; }
.directory-groups { min-width:0; }
.directory-group { min-width:0; margin-block:20px 32px; }
.directory-group-title { margin:0; padding-block:12px; border-bottom:1px solid var(--border); font-size:18px; }

.directory-person-row { cursor:pointer; }
.directory-person-row:hover,.directory-person-row:focus-within { background:var(--soft); }
.related-records { margin-block:28px; min-width:0; }
.related-records > section { margin-block:24px; }
.related-records > section > button { margin:4px 8px 4px 0; }
.related-records details { padding:12px; border:1px solid var(--border); border-radius:12px; margin-block:10px; overflow-wrap:anywhere; }
.related-records summary { cursor:pointer; min-height:32px; }
.related-records .directory-table td:last-child { min-width:220px; }
.activity-periods { display:flex; flex-wrap:wrap; gap:8px; margin-block:16px; }
.match-profile { padding:24px; margin-block:20px; background:var(--soft); border-radius:20px; }
.match-profile h3,.match-profile h4 { margin:0 0 12px; }
.match-profile h4 { font-size:24px; }
.match-score { display:block; font-size:36px; font-variant-numeric:tabular-nums; }
.match-table caption { text-align:left; padding-block:12px; color:var(--muted); }
.match-table td:nth-child(n) { min-width:110px; }
.match-table td:nth-child(2) { min-width:180px; }
.match-table td:nth-child(3) { font-weight:600; white-space:nowrap; }

/* Team-sheet web surface: decorative field beneath readable player cards. */
.wr-sheet-field { padding:0; background:color-mix(in srgb,var(--success) 12%,var(--surface)); }
.wr-pitch-canvas { position:relative; isolation:isolate; display:grid; gap:28px; min-width:540px; padding:30px 18px; background:repeating-linear-gradient(0deg,transparent 0 10%,color-mix(in srgb,var(--success) 5%,transparent) 10% 20%); }
.wr-pitch-lines { position:absolute; z-index:-1; inset:12px; border:2px solid color-mix(in srgb,var(--success) 45%,var(--border)); pointer-events:none; color:color-mix(in srgb,var(--success) 45%,var(--border)); }
.wr-pitch-lines span { position:absolute; display:block; border:2px solid currentColor; }
.wr-pitch-halfway { top:50%; left:0; right:0; border-width:1px 0 0!important; }
.wr-pitch-circle { width:24%; aspect-ratio:1; top:50%; left:50%; transform:translate(-50%,-50%); border-radius:50%; }
.wr-pitch-area-top,.wr-pitch-area-bottom { width:60%; height:14%; left:20%; }
.wr-pitch-area-top { top:-2px; }.wr-pitch-area-bottom { bottom:-2px; }
.wr-pitch-goal-top,.wr-pitch-goal-bottom { width:28%; height:6%; left:36%; }
.wr-pitch-goal-top { top:-2px; }.wr-pitch-goal-bottom { bottom:-2px; }
.wr-sheet-player { border:1px solid var(--border-soft); border-radius:12px; background:var(--surface); color:var(--ink); padding:8px 6px; width:116px; min-width:116px; gap:6px; }
.wr-sheet-player strong { line-height:1.4; }.wr-sheet-player .wr-photo { width:76px; height:90px; }
.wr-club { display:flex; align-items:baseline; justify-content:center; flex-wrap:wrap; gap:4px; font-size:var(--elevenx-font-caption); overflow-wrap:anywhere; max-width:100%; }
.wr-club-flag { flex:none; object-fit:contain; align-self:center; }
.wr-bench-positions { display:grid; gap:16px; }
.wr-bench-position { border:1px solid var(--border-soft); border-radius:20px; padding:12px; background:var(--surface); }
.wr-bench-position>.wr-section-title { margin:0 0 12px; }
.wr-bench-grid { background:none; border:0; padding:0; border-radius:0; grid-template-columns:repeat(auto-fit,minmax(116px,1fr)); gap:12px; }
.wr-bench-grid .wr-sheet-player { min-width:0; }
.wr-sheet-columns { grid-template-columns:repeat(auto-fit,minmax(min(100%,660px),1fr)); }

/* Media library uses the existing ElevenX theme and keeps reading separate. */
.media-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:16px; margin:16px 0; }
.media-tabs { display:flex; flex-wrap:wrap; gap:8px; }
.media-toolbar button { min-height:44px; }
.media-tabs .elevenx-button[aria-pressed="true"], .source-navigation .elevenx-button[aria-pressed="true"] { background:var(--primary);color:var(--on-primary);border-color:transparent; }
.media-tabs .elevenx-button[aria-pressed="true"]:hover, .source-navigation .elevenx-button[aria-pressed="true"]:hover { background:var(--primary-hover);color:var(--on-primary); }
.media-search { display:grid; gap:6px; width:min(100%,280px); }
.media-meta { color:var(--elevenx-muted); font-size:.875rem; display:flex;flex-wrap:wrap;gap:12px; }
.media-list { display:grid; gap:8px; }
.media-list-row { width:100%;display:grid;grid-template-columns:110px minmax(180px,1fr) minmax(100px,180px) auto;gap:16px;align-items:center;text-align:left;padding:18px;border:1px solid var(--elevenx-border-soft);border-radius:12px;background:var(--elevenx-surface);color:var(--elevenx-foreground);font:inherit;cursor:pointer; }
.media-list-row:hover { background:var(--elevenx-surface-raised); }
.media-list-row:focus-visible { outline:2px solid var(--elevenx-focus);outline-offset:2px; }
.media-badges { display:flex;flex-wrap:wrap;gap:6px; }
.media-badge { font-size:.8125rem;line-height:1.5;border-radius:8px;padding:3px 8px;background:var(--elevenx-fill);color:var(--elevenx-foreground); }
.media-reading-page { margin:20px 0; }
.media-reading-title { font-size:1.4rem;line-height:1.5;overflow-wrap:anywhere; }
.media-reading { margin-top:24px;gap:24px; }
.media-reading section { min-width:0; }
.media-reading p { white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8; }
.media-source-link { display:inline-block;margin:14px 0; }
@media(max-width:1000px) { .media-list-row { grid-template-columns:100px 1fr; } .media-list-row .media-badges { grid-column:2; } }
@media(max-width:600px) { .media-list-row { grid-template-columns:1fr;gap:8px; } .media-list-row .media-badges { grid-column:auto; } .media-reading { display:grid;grid-template-columns:1fr; } }
.media-detail-actions { display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap; }
.collaboration-section { padding:16px 0;border-top:1px solid var(--elevenx-border-soft); }
.collaboration-section summary { cursor:pointer;min-height:44px;line-height:44px;font-weight:600; }
.collaboration-section summary .count { margin-left:8px;font-weight:400; }
.media-reading-page .wr-bilingual { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:700px) { .media-reading-page .wr-bilingual { grid-template-columns:1fr; } }

.fact-evidence > summary { cursor: pointer; padding: 12px 16px; color: var(--muted); }
.fact-evidence[open] > summary { border-bottom: 1px solid var(--border); }
.staff-evidence { margin-top: 8px; overflow-wrap: anywhere; }
.staff-evidence > summary { cursor: pointer; padding-block: 10px; }
.staff-evidence p { margin-block: 6px; }
.source-edit-options > summary { cursor: pointer; padding: 10px; }
.source-edit-controls { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px 0; }

.directory-fact-value,.accepted-value strong,.candidate-value { white-space:pre-wrap; overflow-wrap:anywhere; }
.manual-override > .form-message,.manual-override > small { grid-column:1 / -1; }

.wr-marker-entered { border-width:2px; border-color:var(--primary); }
.wr-marker-in { position:absolute; top:calc(100% + 2px); left:50%; transform:translateX(-50%); padding:0 4px; background:var(--surface); color:var(--ink); border:1px solid var(--border); border-radius:4px; font-size:12px; line-height:16px; }

.structured-player { min-width:0; align-self:start; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.structured-player>summary { cursor:pointer; padding:12px; overflow-wrap:anywhere; font-weight:600; }
.structured-player>fieldset { border:0; }
.structured-player>summary:focus-visible { outline:2px solid var(--focus); outline-offset:2px; border-radius:12px; }

.authority-diff-group { margin-block: 1rem; }
.authority-diff-group h5 { font-size: 1rem; margin-block: .5rem; }
.authority-diff-item { padding-block: .4rem; }
.authority-diff-item summary { cursor: pointer; }
.authority-diff-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; padding-block: .5rem; }
.authority-diff-values pre { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
.authority-photo-preview { margin:12px 0; }.authority-photo-preview img { width:100%; max-width:180px; height:140px; object-fit:contain; background:var(--soft); border-radius:12px; }
.authority-photo-evidence { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:4px 12px; font-size:var(--elevenx-font-footnote); }
.authority-photo-evidence dt { color:var(--muted); }.authority-photo-evidence dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
@media (max-width: 640px) { .authority-diff-values { grid-template-columns: 1fr; } }

.authority-check, .edit-card label.authority-check { display: flex; align-items: center; gap: .6rem; min-height: 44px; cursor: pointer; }
.authority-check input[type="checkbox"] { width: 1.15rem; height: 1.15rem; min-height: 0; flex: 0 0 auto; margin: 0; }
.detail-layout:has(.authority-field) { grid-template-columns: minmax(0, 1fr); }
.authority-field .structured-player fieldset { grid-template-columns: repeat(auto-fit,minmax(min(100%,160px),1fr)); }
.authority-field .structured-player button { align-self: end; justify-self: start; }

.artifact-menu { margin:12px 0; width:fit-content; max-width:100%; }
.artifact-menu>summary { cursor:pointer; display:list-item; list-style-position:inside; }
.artifact-menu .artifact-links { margin:8px 0 0; padding:12px; border:1px solid var(--border-soft); border-radius:12px; background:var(--surface); }
.wr-field-row-pair { justify-content:center; gap:24px; }

.media-video { display:block; width:100%; max-width:960px; aspect-ratio:16/9; border:0; border-radius:12px; margin:20px auto 8px; background:var(--soft); }

.media-list-summary { grid-column:1 / -1; display:grid; gap:6px; line-height:1.8; overflow-wrap:anywhere; }
.media-summary-label { color:var(--elevenx-muted); font-size:.8125rem; }

.media-list-row { grid-template-columns:100px minmax(180px,1fr) minmax(100px,200px); }
.media-reading-notes { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; }
@media(max-width:1000px) { .media-list-row { grid-template-columns:100px 1fr; } }
@media(max-width:600px) { .media-list-row { grid-template-columns:1fr; } }

/* Keep document actions together and the reading area unobstructed. */
.report-header { align-items: flex-start; display: flex; position: relative; }
.report-heading { min-width: 0; display: grid; justify-items: start; gap: 8px; }
#reportTitle { scroll-margin-top: 84px; }
.report-toolbar, .portal-utilities, .country-utilities { display: flex; align-items: center; gap: 8px; }
.report-toolbar { flex: 0 0 auto; }
.country-utilities { border-top: 1px solid var(--border-soft); padding-top: 20px; margin-top: 24px; flex-wrap: wrap; }
.report-popover { position: relative; }
.report-popover > summary { cursor: pointer; list-style: none; min-height: 44px; }
.report-popover > summary::-webkit-details-marker { display: none; }
.report-popover > summary:focus-visible, .report-menu-body summary:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.report-more { min-width: 44px; font-size: 24px; line-height: 1; }
.report-menu-body { position: absolute; z-index: 30; top: calc(100% + 8px); right: 0; width: min(380px, calc(100vw - 32px)); max-height: min(72dvh, 720px); overflow: auto; display: grid; gap: 12px; padding: 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); box-shadow: 0 12px 36px #0002; }
.report-menu-body .elevenx-button { min-height: 44px; white-space: normal; text-align: start; }
.report-menu-body .tabs, .report-menu-body .source-navigation, .report-menu-body .collaboration-panel { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 0; margin: 0; border: 0; }
.report-menu-nav .active { background: var(--soft); color: var(--ink); }
.report-menu-nav .elevenx-button, #refreshButton, #reportSourceActions .elevenx-button { justify-content: flex-start; background: transparent; border-radius: 8px; }
.report-menu-nav .elevenx-button:hover, #refreshButton:hover, #reportSourceActions .elevenx-button:hover { background: var(--soft); }
.report-menu-nav .elevenx-button[aria-pressed="true"] { background: var(--soft); }
.report-menu-body .source-edit-controls { display: grid; min-width: 0; }
.report-menu-body .source-navigation select { width: 100%; }
.report-menu-body > div:empty, .report-menu-body p:empty { display: none; }
.report-menu-body .collaboration-section { padding: 12px 0; border-bottom: 1px solid var(--border-soft); }
.report-menu-body .collaboration-section summary, .report-metadata > summary, .report-menu-body .source-edit-options > summary { min-height: 44px; display: flex; align-items: center; gap: 8px; cursor: pointer; }
.report-menu-body .collaboration-section summary::before, .report-metadata > summary::before, .report-menu-body .source-edit-options > summary::before { content: '›'; }
.report-menu-body details[open] > summary::before { content: '⌄'; }
.report-metadata p { overflow-wrap: anywhere; font-size: var(--elevenx-font-footnote); }
.output-menu-body { width: min(240px, calc(100vw - 84px)); }
.output-menu-body .artifact-links { display: grid; margin: 0; gap: 8px; }
.detail-layout { grid-template-columns: minmax(0, 1fr); padding-top: 0; }
.report-view-switch { margin-top: 0; }
.media-collection-country { margin-bottom: 16px; }
.media-collection-country label { display: grid; gap: 8px; max-width: 320px; }
.media-collection-country select { width: 100%; }
@media(max-width:600px) {
  .report-header { gap: 8px; }
  .report-heading h2 { font-size: 22px; }
  .report-toolbar .elevenx-button { padding-inline: 12px; }
  .portal-heading-row { gap: 16px; align-items: flex-start; flex-wrap: wrap; }
  .report-menu-body { position: fixed; top: auto; bottom: 16px; right: 16px; width: calc(100vw - 32px); max-height: calc(100dvh - 110px); }
}
@media print { .report-toolbar, .country-utilities { display: none !important; } }

.team-primary-nav { display:grid; gap:4px; }
.team-primary-nav [aria-pressed="true"] { background:var(--soft); color:var(--ink); }
.team-documents { margin-top:20px; }
.team-documents>summary { padding:12px; cursor:pointer; }
.team-page-filter { display:flex; align-items:center; gap:12px; margin:16px 0; }
.team-page-filter select { width:min(360px,100%); }

/* Player facts use independent, responsive blocks with source credits. */
.player-profile-facts { grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:12px; border:0; overflow:visible; }
.player-profile-facts .directory-fact { display:flex; flex-direction:column; gap:8px; border:1px solid var(--border-soft); border-radius:12px; padding:18px; }
.player-profile-facts .directory-fact dt { font-size:13px; }
.player-profile-facts .directory-fact-value { margin:0; font-size:18px; font-weight:600; line-height:1.5; }
.directory-source-name { font-size:12px; color:var(--muted); }
.directory-source-name a { color:inherit; text-underline-offset:3px; }
.player-profile-facts .directory-provenance { margin-top:6px; }
#reportAuthorityPanel { margin:12px 0; }

.source-tag { width:fit-content; display:inline-flex; align-items:center; max-width:100%; padding:4px 9px; border:1px solid var(--border-soft); border-radius:999px; color:var(--muted); font-size:12px; font-weight:500; overflow-wrap:anywhere; }
.source-tag a { color:inherit; text-decoration:none; }
.player-edit-field h4 { margin:0 0 12px; }
.player-edit-field .candidate-row { align-items:center; }

/* Team workspace uses compact, contextual navigation and keeps secondary panels apart. */
.team-page-tabs,.compact-switch,.sheet-language-toolbar { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.team-page-tabs { margin:0 0 20px; }
.team-page-tabs [aria-pressed="true"],.compact-switch [aria-pressed="true"] { background:var(--accent, #61adff); color:var(--on-accent, #102132); }
.context-actions { display:grid; gap:6px; min-width:180px; }
.context-actions .elevenx-button { text-align:left; justify-content:flex-start; }
.context-panel { margin:16px 0 24px; padding:20px; border:1px solid var(--border-soft); border-radius:14px; }
.context-evidence { padding:12px 0; border-bottom:1px solid var(--border-soft); overflow-wrap:anywhere; }
.team-link-hub { display:flex; gap:12px; flex-wrap:wrap; margin:20px 0; }
.source-tags { display:flex; gap:8px; flex-wrap:wrap; }
.source-run { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0; }
.source-collect-form { display:grid; gap:16px; }
.source-collect-form fieldset { display:grid; gap:10px; }
.source-field-comparison { margin:12px 0; padding:16px; border:1px solid var(--border-soft); border-radius:12px; }
.directory-club-country { font-size:12px; color:var(--muted); }
.match-lineup-section { margin:24px 0; }
.match-lineup-pitch { position:relative; height:480px; margin:16px 0; border:2px solid var(--border-soft); border-radius:12px; background:repeating-linear-gradient(180deg,rgba(32,105,63,.22) 0 60px,rgba(32,105,63,.32) 60px 120px); }
.match-lineup-pitch::before { content:''; position:absolute; top:50%; width:100%; border-top:1px solid rgba(255,255,255,.25); }
.match-lineup-pitch::after { content:''; position:absolute; left:40%; top:40%; width:20%; height:20%; border:1px solid rgba(255,255,255,.25); border-radius:50%; }
.match-pitch-player { position:absolute; transform:translate(-50%,-50%); z-index:1; display:grid; justify-items:center; text-align:center; width:110px; gap:4px; font-size:12px; }
.match-shirt { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:var(--accent,#61adff); color:var(--on-accent,#102132); font-weight:700; }
.match-lineup-lists { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.match-player-list,.match-event-timeline ol { list-style:none; margin:0; padding:0; }
.match-player-list li { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:9px 0; border-bottom:1px solid var(--border-soft); }
.match-player-event { font-size:12px; color:var(--muted); }
.match-event-timeline li { display:grid; grid-template-columns:60px 100px 1fr; gap:12px; padding:12px 0; border-bottom:1px solid var(--border-soft); }
.media-translated-segment { margin:20px 0; }
@media(max-width:640px){.match-lineup-lists{grid-template-columns:1fr}.match-pitch-player{width:76px;font-size:11px}.match-lineup-pitch{height:420px}.match-event-timeline li{grid-template-columns:50px 70px 1fr}.context-panel{padding:14px}}
.media-segment-editor { display:grid; gap:16px; }
.media-segment-inputs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.media-segment-inputs textarea { min-height:180px; }
@media(max-width:640px){.media-segment-inputs{grid-template-columns:1fr}}
.person-source-editor { display:grid; gap:16px; }
.person-source-loading { color:var(--muted); }
.person-source-row .candidate-actions { flex-wrap:wrap; }
.person-source-select { width:100%; max-width:28rem; min-width:0; margin-bottom:12px; }
.person-source-warnings { margin-top:16px; }
.team-update-form { display:grid; gap:16px; max-width:760px; }
.team-update-form fieldset { display:grid; gap:12px; }
.team-update-steps { list-style:none; padding:0; }
.team-update-steps li { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:12px 0; border-bottom:1px solid var(--border-soft); }
.team-update-steps li strong { flex:1; min-width:180px; }
@media(max-width:640px){.person-source-row{align-items:flex-start}.person-source-row .candidate-actions{width:100%}}

/* Reading and editing keep a shared rhythm without changing fixed document output. */
.directory-detail-actions { justify-content:flex-start; flex-wrap:wrap; margin:20px 0; }
.directory-detail-actions > :first-child { margin-right:auto; }
.person-source-editor { grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); align-items:start; }
.person-source-loading,.person-source-warnings { grid-column:1 / -1; }
.person-source-editor .player-edit-field { min-width:0; padding:16px; overflow:visible; }
.person-source-editor .player-edit-field h4 { margin:0 0 12px; }
.person-source-editor .candidate-row { padding:12px 0; grid-template-columns:minmax(0,1fr); gap:10px; }
.person-source-editor .manual-override { grid-template-columns:minmax(0,1fr) auto auto; padding:12px 0 0; border-top:1px solid var(--border-soft); background:transparent; align-items:start; }
.person-source-editor .manual-override > textarea { grid-column:1 / -1; }
.person-source-editor .manual-override > .elevenx-button { padding-inline:12px; }
.person-source-editor .person-source-select { margin:0; max-width:100%; }
.person-source-editor .person-source-history { overflow-wrap:anywhere; }
.person-source-editor .person-source-history > div { margin-top:12px; }
.person-source-editor .candidate-actions { justify-content:flex-start; }
.person-source-editor .player-edit-field > div:last-child:not(.candidate-list):not(.manual-override) { margin-top:12px; }
.sheet-language-toolbar { margin:0 0 20px; row-gap:10px; }
.team-page-filter { min-width:0; flex-wrap:wrap; }
.team-page-filter select { flex:0 1 360px; }
.web-report > .wr-select, #systemPrintLanguageControl { width:min(100%,360px); }
.media-list-summary { display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.match-profile:empty { display:none; }
.match-page-header { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px 24px; padding:24px; margin:20px 0 24px; background:var(--soft); border-radius:16px; }
.match-page-date { grid-column:1 / -1; color:var(--muted); font-size:var(--elevenx-font-footnote); }
.match-page-title { display:flex; flex-wrap:wrap; align-items:center; gap:8px; align-self:center; overflow-wrap:anywhere; }
.match-page-versus { font-size:var(--elevenx-font-footnote); color:var(--muted); font-weight:400; }
.match-page-opponent { display:inline-flex; align-items:center; gap:8px; min-width:0; }
.match-page-result { display:flex; flex-direction:column; align-items:center; gap:4px; }
.match-page-result .match-score { line-height:1.2; white-space:nowrap; }
.match-phase-select { display:grid; gap:8px; width:min(100%,360px); }
.match-lineup-section > h3 { display:flex; align-items:center; gap:8px; }
.match-event-timeline li > :nth-child(4) { grid-column:3; }
.match-event-timeline li > * { min-width:0; overflow-wrap:anywhere; }
@media(max-width:600px) {
  .content { padding-inline:16px; }
  .directory-detail-actions { gap:8px; }
  .directory-detail-actions .elevenx-button { padding-inline:12px; }
  .directory-profile { flex-wrap:nowrap; gap:16px; }
  .directory-profile .directory-summary { padding:0; min-width:0; }
  .directory-profile .directory-name { font-size:20px; overflow-wrap:anywhere; }
  .match-page-header { padding:16px; gap:12px; }
  .match-page-title { font-size:18px; }
  .match-page-result .match-score { font-size:28px; }
  .match-event-timeline li { grid-template-columns:42px 64px minmax(0,1fr); gap:8px; }
}
@media(max-width:360px) {
  .directory-profile { flex-wrap:wrap; }
  .person-source-editor .manual-override { grid-template-columns:1fr 1fr; }
  .person-source-editor .manual-override > .elevenx-field { grid-column:1 / -1; }
}
@media(max-width:720px) {
  .activity-rail:has(.team-primary-nav) { padding-block:16px; }
  .activity-rail:has(.team-primary-nav) .portal-back { margin-bottom:12px; }
  .activity-rail:has(.team-primary-nav) .rail-heading { margin-bottom:12px; }
  .team-primary-nav { display:flex; flex-wrap:wrap; gap:4px; }
  .team-primary-nav > .elevenx-sidebar-item { width:auto; flex:0 0 auto; padding:10px 12px; min-height:44px; }
  .activity-rail:has(.team-primary-nav) .country-utilities { padding-top:12px; margin-top:12px; }
}

.match-pitch-scroll { max-width:100%; overflow-x:auto; margin:16px 0; border-radius:12px; }
.match-pitch-scroll .match-lineup-pitch { min-width:480px; margin:0; }
.match-pitch-player { width:12%; max-width:110px; overflow-wrap:anywhere; }
@media(max-width:640px) { .match-pitch-scroll .match-lineup-pitch { height:560px; } }
@media(min-width:721px) {
  .activity-rail { position:sticky; top:64px; align-self:start; max-height:calc(100dvh - 64px); overflow-y:auto; }
}

/* Values remain primary; source selection and provenance live at the upper right. */
.player-profile-facts .directory-fact { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; }
.player-profile-facts .directory-fact > dt { grid-column:1; }
.player-profile-facts .directory-fact > .source-tag { grid-column:2; grid-row:1; justify-self:end; margin:0; }
.player-profile-facts .directory-fact > dd { grid-column:1 / -1; }
.person-field-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.person-source-editor .person-field-heading h4 { margin:0; min-width:0; overflow-wrap:anywhere; }
.person-field-sources { display:flex; align-items:center; justify-content:flex-end; gap:4px; min-width:0; flex:0 1 auto; max-width:65%; }
.person-source-editor .person-source-select { width:auto; max-width:100%; min-width:0; font-size:12px; min-height:32px; padding:4px 28px 4px 10px; border-radius:999px; }
.person-source-link { flex:none; text-decoration:none; }
.person-source-editor .candidate-row > div > .source-tag,
.person-source-editor .candidate-row > div > .candidate-meta > .source-tag { display:none; }
.person-source-editor .person-source-row > div > .candidate-value { font-size:18px; line-height:1.5; }
.person-source-editor .person-source-history { margin-top:8px; }
.person-source-editor .person-field-heading { margin-bottom:8px; }
.person-source-editor .player-edit-field > .person-field-heading { margin-top:0; }
.photo-candidate > h5.source-tag { margin-left:auto; }

.person-source-editor .person-field-heading { gap:8px; }
.person-source-editor .person-field-heading h4 { font-size:14px; line-height:1.5; }
.person-source-editor .candidate-row > div > .candidate-value { font-size:18px; line-height:1.5; }
