:root {
	--oca-navy: #001d4a;
	--oca-teal: #00b5ab;
	--oca-sky: #319cf9;
	--oca-purple: #7134dd;
	--oca-pink: #f52d7c;
	--oca-orange: #fd7d00;
	--oca-yellow: #fcbc00;
	--oca-lime: #a0cc00;
	--oca-coral: #fc5948;
	--oca-ink: #12233d;
	--oca-muted: #59687c;
	--oca-teal-ink: #007a73;
	--oca-sky-ink: #176cb2;
	--oca-orange-ink: #974900;
	--oca-pink-ink: #b81f5b;
	--oca-control-border: #7c8da1;
	--oca-line: #dbe3ed;
	--oca-bg: #f4f7fb;
	--oca-white: #fff;
	--oca-shadow: 0 10px 28px rgba(0, 29, 74, 0.08);
}

/* Ballot administration and official Results */
.oca-ballots-hero,.oca-results-hero{background:linear-gradient(120deg,#001d4a 0%,#063f70 58%,#007d80 100%);color:#fff}.oca-ballots-hero h1,.oca-ballots-hero p,.oca-results-hero h1,.oca-results-hero p{color:#fff}.oca-report-format-key,.oca-certified-seal{display:flex;align-items:center;gap:10px}.oca-report-format-key span{padding:10px 13px;border:1px solid rgba(255,255,255,.32);border-radius:10px;background:rgba(255,255,255,.11);font-weight:800;letter-spacing:.04em}.oca-certified-seal{padding:14px 18px;border-radius:14px;background:#e7f7c8;color:#355f00;font-weight:800}.oca-record-browser{display:grid;gap:16px}.oca-record-event,.oca-record-stage,.oca-record-unit,.oca-audit-log{border:1px solid #cbd9e8;border-radius:16px;background:#fff;overflow:hidden}.oca-record-event>summary,.oca-record-stage>summary,.oca-record-unit>summary,.oca-audit-log>summary{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:14px;padding:18px 20px;cursor:pointer;list-style:none;color:#001d4a}.oca-record-stage>summary{grid-template-columns:auto minmax(220px,1fr) minmax(150px,.5fr) auto}.oca-record-event>summary::-webkit-details-marker,.oca-record-stage>summary::-webkit-details-marker,.oca-record-unit>summary::-webkit-details-marker,.oca-audit-log>summary::-webkit-details-marker{display:none}.oca-record-event>summary>.dashicons,.oca-record-stage>summary>.dashicons,.oca-record-unit>summary>.dashicons{color:#319cf9;transition:transform .2s}.oca-record-event[open]>summary>.dashicons,.oca-record-stage[open]>summary>.dashicons,.oca-record-unit[open]>summary>.dashicons{transform:rotate(90deg)}.oca-record-event>summary small,.oca-record-stage>summary small{display:block;color:#319cf9;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.oca-record-event>summary strong,.oca-record-stage>summary strong{display:block;font-size:18px;margin-top:2px}.oca-record-count{padding:7px 11px;border-radius:999px;background:#eef6ff;color:#315472;font-weight:700}.oca-record-event__body,.oca-record-stage__body,.oca-record-unit__body,.oca-audit-log>div{padding:18px;border-top:1px solid #d9e4ef;background:#f7faff}.oca-record-stage{margin:0 0 13px}.oca-record-unit{margin:0 0 10px;border-radius:12px}.oca-record-unit>summary{padding:14px 16px}.oca-record-unit__body{background:#fff}.oca-record-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:0 0 14px}.oca-report-links,.oca-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.oca-report-links.is-compact .oca-button{min-height:32px}.oca-clear-form{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.oca-clear-form input[type=text]{width:190px;min-height:38px}.oca-clear-form.is-compact input[type=text]{width:125px;min-height:32px}.oca-confirm-check{display:flex;align-items:center;gap:4px;font-size:12px;color:#5c6f84}.oca-record-table,.oca-official-results-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d5e1ed;border-radius:12px;overflow:hidden}.oca-record-table th,.oca-record-table td,.oca-official-results-table th,.oca-official-results-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e2eaf2;vertical-align:middle}.oca-record-table th,.oca-official-results-table th{background:#eef6fb;color:#17385f;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.oca-record-table tr:last-child td,.oca-official-results-table tr:last-child td{border-bottom:0}.oca-mini-status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f7;font-weight:700}.oca-mini-status.is-submitted{background:#e9f8d1;color:#3f6800}.oca-mini-status.is-draft{background:#fff1cc;color:#805000}.oca-record-empty{padding:26px;text-align:center;color:#5d7087;border:1px dashed #aec5da;border-radius:12px}.oca-impact-warning{display:flex;gap:12px;padding:15px;margin:0 0 14px;border:1px solid #ffcf72;border-left:5px solid #fd7d00;border-radius:12px;background:#fff8e8;color:#6c4300}.oca-impact-warning p{margin:4px 0 0}.oca-correction-reason{padding:18px;margin-top:18px;border:1px solid #ffc56e;border-radius:12px;background:#fff9ed}.oca-correction-reason label,.oca-correction-reason span{display:block}.oca-correction-reason span{font-weight:800;margin-bottom:7px}.oca-correction-reason textarea{width:100%}.oca-correction-reason p{color:#74531f;margin:8px 0 0}.oca-flat-payload{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.oca-flat-payload div{padding:12px;border:1px solid #d8e3ed;border-radius:10px;background:#fff}.oca-flat-payload dt{font-size:11px;text-transform:uppercase;color:#637890}.oca-flat-payload dd{margin:5px 0 0;font-weight:700}.oca-audit-log{margin-top:22px}.oca-audit-log>summary{grid-template-columns:auto 1fr auto}.oca-official-result-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:16px}.oca-official-result-heading strong,.oca-official-result-heading span{display:block}.oca-official-result-heading strong{font-size:18px;color:#001d4a}.oca-official-result-heading span{color:#60738b;margin-top:4px}.oca-advancing-label{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e7f7c8;color:#3c6900;font-weight:800}.oca-advancement-record{display:flex;gap:10px;margin-top:16px;padding:14px;border:1px solid #cce5a4;border-radius:12px;background:#f5fce9;color:#355e00}.oca-advancement-record p{margin:3px 0 0}.oca-certified-units{margin-top:18px;padding-top:16px;border-top:1px solid #d7e3ef}.oca-certified-units>strong{display:block;margin-bottom:9px}.oca-certified-units>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #edf2f7}.oca-operations-status.is-impacted{background:#ffe8bd;color:#784500;border-color:#f8c15c}.oca-button--danger{background:#fff;border-color:#efb6b0;color:#b42318}.oca-button--danger:hover{background:#fff1f0;border-color:#fc5948;color:#8f170e}

@media(max-width:900px){.oca-record-event>summary,.oca-record-stage>summary{grid-template-columns:auto 1fr}.oca-record-event>summary>:nth-child(n+3),.oca-record-stage>summary>:nth-child(n+3){grid-column:2}.oca-record-toolbar{justify-content:flex-start}.oca-clear-form:not(.is-compact){align-items:stretch;flex-direction:column;width:100%}.oca-clear-form:not(.is-compact) input[type=text]{width:100%}.oca-flat-payload{grid-template-columns:1fr}.oca-official-result-heading{align-items:flex-start;flex-direction:column}.oca-certified-units>div{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.oca-report-format-key{display:none}.oca-record-event__body,.oca-record-stage__body,.oca-record-unit__body{padding:10px}.oca-record-event>summary,.oca-record-stage>summary,.oca-record-unit>summary{padding:14px 12px}.oca-report-links{width:100%}.oca-report-links .oca-button{flex:1}.oca-row-actions{min-width:250px}.oca-table-scroll{overflow:auto}.oca-record-table,.oca-official-results-table{min-width:720px}}

/* Stages & Heats operational scoring */
.oca-operations-hero { background: linear-gradient(135deg, #001d4a 0%, #073d76 67%, #006f89 100%); }
.oca-operations-hero h1,
.oca-operations-hero p { color: #fff; }
.oca-operations-hero .oca-eyebrow { color: #66fff1; }
.oca-operations-hero__stats { display: flex; align-items: stretch; gap: 10px; }
.oca-operations-hero__stats > span { display: grid; min-width: 96px; padding: 13px 17px; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.8); text-align: center; }
.oca-operations-hero__stats strong { color: #fff; font-size: 24px; line-height: 1; }
.oca-operations-list { display: grid; gap: 14px; }
.oca-operations-event,
.oca-operations-stage { border: 1px solid var(--oca-line); border-radius: 16px; background: #fff; box-shadow: 0 8px 24px rgba(0,29,74,.055); overflow: hidden; }
.oca-operations-event > summary,
.oca-operations-stage > summary { display: grid; align-items: center; cursor: pointer; list-style: none; }
.oca-operations-event > summary::-webkit-details-marker,
.oca-operations-stage > summary::-webkit-details-marker { display: none; }
.oca-operations-event > summary { grid-template-columns: 28px minmax(220px,1fr) auto; gap: 12px; padding: 20px 22px; background: linear-gradient(90deg,#fff,#f5f9fe); }
.oca-operations-event__identity,
.oca-operations-stage > summary > span:nth-child(2),
.oca-operations-unit__identity { display: grid; gap: 3px; min-width: 0; }
.oca-operations-event__identity small,
.oca-operations-stage > summary small { color: var(--oca-sky); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.oca-operations-event__identity strong { color: var(--oca-navy); font-size: 19px; }
.oca-operations-event__meta { color: var(--oca-muted); font-size: 13px; }
.oca-operations-chevron { color: var(--oca-sky); transition: transform .18s ease; }
details[open] > summary > .oca-operations-chevron { transform: rotate(90deg); }
.oca-operations-event__body { display: grid; gap: 12px; padding: 14px; border-top: 1px solid var(--oca-line); background: #f4f7fb; }
.oca-operations-stage { border-radius: 13px; box-shadow: none; }
.oca-operations-stage > summary { grid-template-columns: 26px minmax(180px,1fr) minmax(140px,.55fr) minmax(140px,.5fr) auto; gap: 14px; padding: 17px 18px; }
.oca-operations-stage > summary strong { color: var(--oca-navy); font-size: 16px; }
.oca-operations-stage__method,
.oca-operations-stage__progress { color: var(--oca-muted); font-size: 13px; }
.oca-operations-stage__body { padding: 0 17px 17px; border-top: 1px solid #e7eef6; }
.oca-operations-readiness { display: flex; gap: 12px; margin: 15px 0; padding: 14px 16px; border: 1px solid #ffd59f; border-radius: 11px; background: #fff9ef; color: #783d00; }
.oca-operations-readiness > .dashicons { color: #d36500; }
.oca-operations-readiness p { margin: 3px 0; }
.oca-operations-readiness a { color: #004b91; font-weight: 700; }
.oca-operations-units { display: grid; gap: 8px; margin-top: 14px; }
.oca-operations-unit { display: grid; grid-template-columns: 36px minmax(220px,1fr) 75px auto 125px; align-items: center; gap: 13px; min-height: 72px; padding: 12px 13px; border: 1px solid #dbe6f1; border-left: 4px solid #91a7bc; border-radius: 11px; background: #fff; }
.oca-operations-unit.is-ready { border-left-color: var(--oca-teal); }
.oca-operations-unit.is-in_progress { border-left-color: var(--oca-orange); }
.oca-operations-unit.is-scored { border-left-color: var(--oca-purple); }
.oca-operations-unit.is-certified { border-left-color: var(--oca-lime); background: #fcfff7; }
.oca-operations-unit__icon { display: grid; place-items: center; width: 35px; height: 35px; border-radius: 10px; background: #edf5ff; color: var(--oca-sky); }
.oca-operations-unit__identity strong { overflow: hidden; color: var(--oca-navy); text-overflow: ellipsis; white-space: nowrap; }
.oca-operations-unit__identity span { overflow: hidden; color: var(--oca-muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.oca-operations-unit__roster { display: grid; color: var(--oca-muted); font-size: 11px; text-align: center; }
.oca-operations-unit__roster strong { color: var(--oca-navy); font-size: 17px; }
.oca-operations-unit .oca-button { justify-content: center; }
.oca-operations-status { display: inline-flex; align-items: center; justify-content: center; min-width: 84px; padding: 6px 10px; border-radius: 999px; background: #eef2f6; color: #536474; font-size: 11px; font-weight: 800; white-space: nowrap; }
.oca-operations-status.is-ready { background: #dcfaf5; color: #006a63; }
.oca-operations-status.is-in_progress { background: #fff1df; color: #9a4a00; }
.oca-operations-status.is-scored,
.oca-operations-status.is-calculated { background: #eee7ff; color: #5520b0; }
.oca-operations-status.is-attention { background: #ffe4e1; color: #a52014; }
.oca-operations-status.is-approved { background: #e4f0ff; color: #07528f; }
.oca-operations-status.is-certified { background: #eaf7d0; color: #456700; }
.oca-operations-stage__footer { display: flex; align-items: center; gap: 15px; margin-top: 14px; padding-top: 14px; border-top: 1px solid #e7eef6; }
.oca-operations-stage__footer > div { display: grid; margin-right: auto; color: var(--oca-muted); font-size: 11px; }
.oca-operations-stage__footer > div strong { color: var(--oca-navy); font-size: 18px; }
.oca-operations-stage__footer > .oca-operations-stage__live-action { display: flex; align-items: center; margin-right: 0; }
.oca-unit-ballot-progress { color: #075c9f !important; font-size: 11px !important; font-weight: 800; }
.oca-ballot-rule-strip { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-bottom: 14px; padding: 11px; border: 1px solid #d8e7f4; border-radius: 11px; background: #f2f9ff; }
.oca-ballot-rule-strip > span { display: grid; gap: 2px; padding: 8px; border-radius: 8px; background: #fff; }
.oca-ballot-rule-strip strong { color: var(--oca-navy); }
.oca-ballot-rule-strip small, .oca-score-field-limits { color: var(--oca-muted); font-size: 11px; }
.oca-component-aggregation-banner { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; padding: 13px 15px; border: 1px solid #c6b4f1; border-left: 4px solid var(--oca-purple); border-radius: 11px; background: #f8f5ff; color: var(--oca-navy); }
.oca-component-aggregation-banner > .dashicons { flex: 0 0 auto; width: 29px; height: 29px; color: var(--oca-purple); font-size: 29px; }
.oca-component-aggregation-banner > span:last-child { display: grid; gap: 2px; }
.oca-component-aggregation-banner small { color: #6846a8; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.oca-component-aggregation-banner strong { font-size: 14px; }
.oca-component-aggregation-banner em { color: var(--oca-muted); font-size: 11px; font-style: normal; }
.oca-judge-portal-callout { align-items: center; }
.oca-judge-portal-callout > div { flex: 1; }
.oca-judge-portal-callout p { margin: 3px 0 6px; }
.oca-judge-portal-callout code { color: var(--oca-navy); }
.oca-certified-lock { display: inline-flex; align-items: center; gap: 7px; color: #496800; font-weight: 800; }

.oca-operational-modal__dialog { width: min(1180px,100%); }
.oca-operational-score-form { display: grid; grid-template-rows: minmax(0,1fr) auto; min-height: 0; }
.oca-operational-roster-strip { display: flex; gap: 7px; overflow-x: auto; margin-bottom: 17px; padding-bottom: 6px; }
.oca-operational-roster-strip span { flex: 0 0 auto; padding: 7px 10px; border-radius: 999px; background: #edf5ff; color: #073d76; font-size: 12px; font-weight: 700; }
.oca-operational-ballots { display: grid; gap: 16px; }
.oca-operational-ballot { border: 1px solid #dce6f0; border-radius: 14px; background: #fff; overflow: hidden; }
.oca-operational-ballot > header { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 14px 16px; border-bottom: 1px solid #e3ebf3; background: #f8fbff; }
.oca-operational-ballot > header > div { display: grid; gap: 2px; }
.oca-operational-ballot > header small { color: var(--oca-muted); }
.oca-operational-ballot > header strong { color: var(--oca-navy); }
.oca-operational-ballot__number { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--oca-navy); color: #fff; font-weight: 800; }
.oca-score-entry { padding: 16px; border-bottom: 1px solid #e6edf4; }
.oca-score-entry:last-child { border-bottom: 0; }
.oca-score-entry__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.oca-score-entry__heading strong { color: var(--oca-navy); font-size: 15px; }
.oca-score-entry__heading small { color: var(--oca-muted); }
.oca-attempt-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 9px; }
.oca-attempt-card { display: grid; gap: 7px; padding: 10px; border: 1px solid #dce6f0; border-radius: 9px; background: #fafcff; }
.oca-attempt-card label { display: grid; gap: 5px; color: var(--oca-navy); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.oca-score-adjustments { display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: 9px; margin-top: 12px; padding: 12px; border-radius: 10px; background: #fff8ef; }
.oca-score-adjustments > strong { grid-column: 1/-1; color: #7e4100; }
.oca-score-adjustments > label { display: grid; gap: 5px; }
.oca-ranking-entry-list { padding: 10px 16px 16px; }
.oca-ranking-entry-list__head,
.oca-ranking-entry-list > label { display: grid; grid-template-columns: minmax(220px,1fr) 180px; align-items: center; gap: 12px; padding: 9px; }
.oca-ranking-entry-list__head { color: var(--oca-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.oca-ranking-entry-list > label { border-top: 1px solid #e6edf4; }
.oca-proficiency-score-grid,
.oca-rubric-ballot-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 10px; }
.oca-proficiency-score-grid label,
.oca-rubric-score-field { display: grid; gap: 6px; }
.oca-proficiency-event-overall { margin: 18px; border: 1px solid #b8dedb; border-radius: 13px; background: #f4fcfb; overflow: hidden; }
.oca-proficiency-event-overall > header { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-bottom: 1px solid #cbe8e5; background: #e9f9f7; }
.oca-proficiency-event-overall > header > .dashicons { width: 30px; height: 30px; color: var(--oca-teal-ink); font-size: 30px; }
.oca-proficiency-event-overall > header > div { display: grid; gap: 2px; }
.oca-proficiency-event-overall > header small { color: var(--oca-teal-ink); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.oca-proficiency-event-overall > header strong { color: var(--oca-navy); font-size: 15px; }
.oca-proficiency-event-overall > header p { margin: 0; color: var(--oca-muted); font-size: 11px; }
.oca-proficiency-event-overall__entries { display: grid; }
.oca-rubric-score-field > span { display: grid; gap: 2px; }
.oca-rubric-score-field small { color: var(--oca-muted); font-weight: 400; }
.oca-adjustment-score-row { display: grid; grid-template-columns: minmax(180px,1fr) 90px 120px; align-items: end; gap: 8px; }
.oca-adjustment-score-row > span,
.oca-adjustment-score-row label { display: grid; gap: 3px; }
.oca-adjustment-score-row small { color: #765537; }
.oca-adjustment-note { grid-column: 1/-1; }
.oca-pairwise-score { display: grid; gap: 15px; padding: 16px; }
.oca-pairwise-score__choices { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 9px; }
.oca-pairwise-score__choices label { cursor: pointer; }
.oca-pairwise-score__choices input { position: absolute; opacity: 0; }
.oca-pairwise-score__choices span { display: grid; gap: 3px; min-height: 58px; padding: 12px; border: 2px solid #dbe5ef; border-radius: 11px; background: #fff; }
.oca-pairwise-score__choices input:checked + span { border-color: var(--oca-purple); background: #f3eeff; color: #5120aa; }
.oca-pairwise-score__choices span:not(strong) { font-size: 12px; }
.oca-pairwise-numeric { display: grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 10px; }
.oca-pairwise-numeric label { display: grid; gap: 5px; }
.oca-event-component-ballots,.oca-battle-result-rounds,.oca-match-control { display:grid; gap:18px; }
.oca-event-component-ballot,.oca-battle-result-round { border:1px solid #c9d8eb; border-radius:14px; background:#f8fbff; overflow:hidden; }
.oca-event-component-ballot>header,.oca-battle-result-round>header { display:flex; align-items:center; gap:12px; padding:14px 18px; background:#edf6ff; border-bottom:1px solid #c9d8eb; color:var(--oca-navy); }
.oca-event-component-ballot>header>div,.oca-battle-result-round>header>div { display:grid; gap:2px; }
.oca-event-component-ballot>header small,.oca-battle-result-round>header small { color:#49627f; }
.oca-event-component-ballot>header strong span { display:inline-block; margin-left:6px; padding:2px 7px; border-radius:999px; background:#fff; color:#49627f; font-size:11px; }
.oca-event-component-ballot>.oca-score-entry,.oca-event-component-ballot>.oca-ranking-entry-list,.oca-event-component-ballot>.oca-proficiency-score-grid,.oca-event-component-ballot>p,.oca-battle-result-round>.oca-pairwise-score__choices,.oca-battle-result-round>.oca-pairwise-numeric,.oca-battle-result-round>.oca-match-direction-note,.oca-battle-result-round>.oca-match-judge-vote { margin:16px; }
.oca-match-control__format { display:flex; align-items:center; gap:14px; padding:16px 18px; border:1px solid #a9c8eb; border-radius:14px; background:#eff8ff; color:var(--oca-navy); }
.oca-match-control__format>.dashicons { width:32px; height:32px; font-size:32px; color:var(--oca-sky); }
.oca-match-control__format>div { display:grid; gap:2px; }
.oca-match-control__format small,.oca-match-control__format span { color:#49627f; }
.oca-pairwise-score__choices { padding:0; border:0; }
.oca-pairwise-score__choices legend { grid-column:1/-1; margin-bottom:6px; font-weight:700; color:var(--oca-navy); }
.oca-pairwise-score__choices.is-compact { grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.oca-pairwise-score__choices span strong { font-size:14px; color:var(--oca-navy); }
.oca-match-tie-resolution { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; padding:16px; border:1px dashed #b89bea; border-radius:12px; background:#faf7ff; }
.oca-match-tie-resolution label,.oca-match-notes { display:grid; gap:6px; font-weight:700; color:var(--oca-navy); }
.oca-match-direction-note { display:flex; align-items:center; gap:8px; color:#405b79; }
.oca-match-judge-vote { display:grid; gap:9px; padding:14px; border-radius:12px; background:#fff; }

.oca-calculation-steps { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-bottom: 18px; }
.oca-calculation-steps span { display: flex; align-items: center; gap: 8px; padding: 10px; border-radius: 10px; background: #eef2f6; color: #6e7c89; font-weight: 700; }
.oca-calculation-steps b { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 50%; background: #fff; }
.oca-calculation-steps .is-current { background: #e6f7ff; color: #00528e; }
.oca-calculation-steps .is-complete { background: #eaf7d0; color: #466800; }
.oca-certified-review-banner { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; padding: 14px 16px; border: 1px solid #cfe6a5; border-radius: 12px; background: #f4fbe7; color: #3f5f00; }
.oca-certified-review-banner > .dashicons { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #e2f3bd; }
.oca-certified-review-banner > div { display: grid; gap: 2px; }
.oca-certified-review-banner strong { font-size: 14px; }
.oca-certified-review-banner small { color: #526b21; }
.oca-calculation-intro,
.oca-certification-complete { display: flex; align-items: flex-start; gap: 15px; margin-bottom: 16px; padding: 20px; border: 1px solid #b9d9f4; border-radius: 14px; background: #f1f9ff; }
.oca-calculation-intro > .dashicons,
.oca-certification-complete > .dashicons { width: 34px; height: 34px; color: var(--oca-sky); font-size: 34px; }
.oca-calculation-intro h3,
.oca-certification-complete h3 { margin: 0; color: var(--oca-navy); }
.oca-calculation-intro p,
.oca-certification-complete p { margin: 5px 0 0; }
.oca-result-review { margin-bottom: 16px; border: 1px solid #dce6f0; border-radius: 12px; overflow: hidden; }
.oca-result-review__head,
.oca-result-review__row { display: grid; grid-template-columns: 65px minmax(220px,1fr) minmax(120px,.5fr) minmax(150px,.55fr); align-items: center; gap: 10px; padding: 10px 13px; }
.oca-result-review__head { background: var(--oca-navy); color: #fff; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.oca-result-review__row { border-top: 1px solid #e4ebf2; }
.oca-result-review__row > span { display: grid; gap: 2px; }
.oca-result-review__row small { color: var(--oca-muted); }
.oca-result-review__row .is-advancing { color: #567a00; font-weight: 800; }
.oca-result-review.is-proficiency .oca-result-review__head,.oca-result-review.is-proficiency .oca-result-review__row{grid-template-columns:minmax(220px,1fr) minmax(160px,.65fr) minmax(150px,.55fr)}.oca-result-review__components{grid-column:1/-1!important;display:flex!important;gap:8px!important;flex-wrap:wrap;padding:9px 0 2px;border-top:1px dashed #cedbe8}.oca-result-review__components>span{display:grid;min-width:165px;padding:8px 10px;border-radius:9px;background:#f1f7fc}.oca-result-review__components strong{color:#173451;font-size:12px}.oca-result-review__components small{color:#526b88}
.oca-official-component-row td{padding:7px 12px 12px!important;background:#f7fbfe}.oca-official-component-row td>div{display:flex;gap:8px;flex-wrap:wrap}.oca-official-component-row span{display:grid;min-width:170px;padding:8px 10px;border:1px solid #d5e3ef;border-radius:9px;background:#fff}.oca-official-component-row small{color:#526b88}
.oca-cutoff-resolution,
.oca-advancement-approval,
.oca-certification-step { padding: 18px; border: 1px solid #dce6f0; border-radius: 14px; background: #fff; }
.oca-cutoff-resolution > header,
.oca-advancement-approval > header { display: flex; gap: 13px; margin-bottom: 14px; }
.oca-cutoff-resolution > header > .dashicons { color: var(--oca-coral); }
.oca-advancement-approval > header > .dashicons { color: var(--oca-sky); }
.oca-cutoff-resolution h3,
.oca-advancement-approval h3 { margin: 0; color: var(--oca-navy); }
.oca-cutoff-resolution p,
.oca-advancement-approval p { margin: 4px 0; }
.oca-cutoff-options { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-bottom: 12px; }
.oca-cutoff-options label { cursor: pointer; }
.oca-cutoff-options input { position: absolute; opacity: 0; }
.oca-cutoff-options span { display: grid; gap: 3px; min-height: 62px; padding: 12px; border: 2px solid #dce6f0; border-radius: 11px; }
.oca-cutoff-options input:checked + span { border-color: var(--oca-purple); background: #f4efff; }
.oca-cutoff-options small { color: var(--oca-muted); }
.oca-cutoff-entry-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 7px; margin: 12px 0; padding: 12px; border-radius: 10px; background: #f5f8fc; }
.oca-cutoff-entry-grid[hidden] { display: none; }
.oca-cutoff-entry-grid label { display: flex; align-items: center; gap: 7px; font-weight: 700; }
.oca-approval-check { display: flex; align-items: flex-start; gap: 11px; margin: 15px 0; padding: 15px; border: 2px solid #b6d7f0; border-radius: 11px; background: #f5fbff; }
.oca-approval-check input { margin-top: 4px; }
.oca-approval-check span { display: grid; gap: 4px; }
.oca-approval-check small { color: var(--oca-muted); }
.oca-approval-audit { display: flex; align-items: center; gap: 11px; padding: 13px; border-radius: 10px; background: #edf8d7; color: #466400; }
.oca-approval-audit > div { display: grid; gap: 3px; }

@media (max-width: 900px) {
	.oca-operations-event > summary,
	.oca-operations-stage > summary { grid-template-columns: 26px 1fr; }
	.oca-operations-event__meta,
	.oca-operations-stage__method,
	.oca-operations-stage__progress,
	.oca-operations-stage > summary > .oca-operations-status { grid-column: 2; }
	.oca-operations-unit { grid-template-columns: 35px minmax(0,1fr) auto; }
	.oca-operations-unit__roster { display: none; }
	.oca-operations-unit > .oca-operations-status { grid-column: 2; justify-self: start; }
	.oca-operations-unit > .oca-button { grid-column: 3; grid-row: 1 / span 2; }
	.oca-calculation-steps { grid-template-columns: 1fr 1fr; }
	.oca-cutoff-options { grid-template-columns: 1fr; }
	.oca-result-review { overflow-x: auto; }
	.oca-result-review__head,
	.oca-result-review__row { min-width: 650px; }
}

.oca-compops {
	box-sizing: border-box;
	margin: 18px 20px 0 0;
	color: var(--oca-ink);
	font-size: 14px;
}

.oca-compops *,
.oca-compops *::before,
.oca-compops *::after {
	box-sizing: inherit;
}

.oca-app-header {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 104px;
	padding: 22px 28px;
	overflow: hidden;
	border-radius: 18px 18px 0 0;
	background: linear-gradient(118deg, var(--oca-navy) 0%, #08356f 58%, #144c8d 100%);
	color: var(--oca-white);
}

.oca-app-header::after {
	position: absolute;
	right: -75px;
	top: -135px;
	width: 330px;
	height: 330px;
	border: 55px solid rgba(0, 181, 171, 0.19);
	border-radius: 50%;
	content: "";
}

.oca-brand,
.oca-header-actions {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 15px;
}

.oca-brand__mark {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 10px);
	align-items: end;
	gap: 5px;
	width: 50px;
	height: 50px;
	padding: 9px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.12);
}

.oca-brand__mark span {
	display: block;
	border-radius: 5px;
}

.oca-brand__mark span:nth-child(1) { height: 16px; background: var(--oca-teal); }
.oca-brand__mark span:nth-child(2) { height: 27px; background: var(--oca-sky); }
.oca-brand__mark span:nth-child(3) { height: 21px; background: var(--oca-pink); }

.oca-brand__name {
	font-size: 24px;
	font-weight: 400;
	letter-spacing: -0.4px;
}

.oca-brand__name strong { font-weight: 750; }

.oca-brand__tagline {
	margin-top: 3px;
	color: rgba(255, 255, 255, 0.7);
	font-size: 12px;
}

.oca-header-actions { justify-content: flex-end; }

.oca-competition-picker {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.oca-competition-picker > span {
	color: rgba(255, 255, 255, 0.72);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.oca-competition-picker select {
	min-width: 245px;
	max-width: 360px;
	margin: 0;
	border-color: rgba(255, 255, 255, 0.35);
	background-color: rgba(255, 255, 255, 0.98);
	color: var(--oca-navy);
}

.oca-section-nav-shell {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: stretch;
	position: sticky;
	top: 32px;
	z-index: 90;
	border-bottom: 1px solid var(--oca-line);
	background: var(--oca-white);
	box-shadow: var(--oca-shadow);
}

@media (max-width: 782px) {
	.oca-section-nav-shell { top: 46px; }
}

.oca-section-nav {
	display: flex;
	min-width: 0;
	gap: 5px;
	padding: 0 24px;
	background: var(--oca-white);
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-inline: contain;
	scroll-behavior: smooth;
	scrollbar-color: var(--oca-sky) #edf4fa;
	scrollbar-width: thin;
}

.oca-section-nav::-webkit-scrollbar { height: 8px; }
.oca-section-nav::-webkit-scrollbar-track { background: #edf4fa; }
.oca-section-nav::-webkit-scrollbar-thumb { border: 2px solid #edf4fa; border-radius: 99px; background: var(--oca-sky); }

.oca-section-nav-scroll {
	display: none;
	place-items: center;
	position: relative;
	z-index: 2;
	width: 46px;
	min-width: 46px;
	margin: 0;
	padding: 0;
	border: 0;
	background: linear-gradient(90deg, #fff 72%, rgba(255,255,255,.78));
	color: var(--oca-navy);
	cursor: pointer;
}

.oca-section-nav-shell.is-overflowing .oca-section-nav-scroll { display: grid; }
.oca-section-nav-scroll--next { background: linear-gradient(270deg, #fff 72%, rgba(255,255,255,.78)); }
.oca-section-nav-scroll:hover:not(:disabled),
.oca-section-nav-scroll:focus-visible:not(:disabled) { background: #eaf7ff; color: var(--oca-sky-ink); }
.oca-section-nav-scroll:disabled { color: #aab8c8; cursor: default; opacity: .58; }
.oca-section-nav-scroll .dashicons { width: 22px; height: 22px; font-size: 22px; }

.oca-section-nav a {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 7px;
	padding: 17px 18px 14px;
	border-bottom: 3px solid transparent;
	color: var(--oca-muted);
	font-weight: 650;
	white-space: nowrap;
	text-decoration: none;
}

.oca-section-nav a:hover,
.oca-section-nav a:focus { color: var(--oca-navy); }

.oca-section-nav a.is-active {
	border-bottom-color: var(--oca-teal-ink);
	color: var(--oca-navy);
}

.oca-section-nav .dashicons {
	width: 17px;
	height: 17px;
	font-size: 17px;
}

.oca-main {
	min-height: 520px;
	padding: 28px;
	border-radius: 0 0 18px 18px;
	background: var(--oca-bg);
}

.oca-hero-card {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 22px;
	padding: 28px 30px;
	overflow: hidden;
	border: 1px solid rgba(49, 156, 249, 0.19);
	border-radius: 16px;
	background: linear-gradient(132deg, #fff 0%, #f4fbff 62%, #eef9f8 100%);
	box-shadow: var(--oca-shadow);
}

.oca-hero-card--compact { padding-block: 24px; }

.oca-eyebrow {
	margin-bottom: 6px;
	color: var(--oca-purple);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.oca-hero-card h1,
.oca-empty-state h1 {
	margin: 0;
	color: var(--oca-navy);
	font-size: clamp(25px, 3vw, 34px);
	font-weight: 760;
	line-height: 1.15;
	letter-spacing: -0.035em;
}

.oca-hero-card p,
.oca-empty-state p,
.oca-panel__heading p {
	margin: 8px 0 0;
	color: var(--oca-muted);
	line-height: 1.55;
}

.oca-status {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 750;
}

.oca-status::before {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: currentColor;
	content: "";
}

.oca-status--draft { background: #fff4d8; color: #8d6200; }
.oca-status--active { background: #dcf8f4; color: #087a73; }
.oca-status--archived { background: #e9edf3; color: #5d687a; }

.oca-detail-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 22px;
}

.oca-detail-card {
	display: flex;
	gap: 14px;
	min-height: 132px;
	padding: 20px;
	border: 1px solid var(--oca-line);
	border-radius: 14px;
	background: var(--oca-white);
	box-shadow: 0 5px 16px rgba(0, 29, 74, 0.045);
}

.oca-detail-card__icon {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 11px;
	background: #e9f6ff;
	color: var(--oca-sky-ink);
}

.oca-detail-card:nth-child(2) .oca-detail-card__icon { background: #e2f8f5; color: var(--oca-teal-ink); }
.oca-detail-card:nth-child(3) .oca-detail-card__icon { background: #f2ebff; color: var(--oca-purple); }
.oca-detail-card:nth-child(4) .oca-detail-card__icon { background: #fff0f5; color: var(--oca-pink-ink); }

.oca-detail-card__label {
	margin: 2px 0 7px;
	color: var(--oca-muted);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.oca-detail-card__value {
	color: var(--oca-navy);
	font-size: 16px;
	font-weight: 730;
	line-height: 1.3;
}

.oca-detail-card__secondary {
	margin-top: 5px;
	color: var(--oca-muted);
	font-size: 12px;
	line-height: 1.35;
}

.oca-panel {
	margin-bottom: 22px;
	padding: 24px 26px;
	border: 1px solid var(--oca-line);
	border-radius: 15px;
	background: var(--oca-white);
	box-shadow: 0 5px 18px rgba(0, 29, 74, 0.04);
}

.oca-panel__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 22px;
}

.oca-panel__heading h2 {
	margin: 0;
	color: var(--oca-navy);
	font-size: 19px;
	line-height: 1.3;
}

.oca-actions,
.oca-form-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.oca-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 38px;
	padding: 8px 15px;
	border: 1px solid transparent;
	border-radius: 9px;
	font-size: 13px;
	font-weight: 680;
	line-height: 1.2;
	cursor: pointer;
	text-decoration: none;
	transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}

.oca-button:hover,
.oca-button:focus {
	transform: translateY(-1px);
	box-shadow: 0 5px 13px rgba(0, 29, 74, 0.12);
}

.oca-button .dashicons {
	width: 17px;
	height: 17px;
	font-size: 17px;
}

.oca-button--primary { background: var(--oca-navy); color: #fff; }
.oca-button--primary:hover,
.oca-button--primary:focus { background: #073873; color: #fff; }
.oca-button--secondary { border-color: #c8d5e5; background: #fff; color: var(--oca-navy); }
.oca-button--secondary:hover,
.oca-button--secondary:focus { border-color: var(--oca-sky-ink); color: var(--oca-navy); }
.oca-button--light { background: #fff; color: var(--oca-navy); }
.oca-button--light:hover,
.oca-button--light:focus { color: var(--oca-navy); }
.oca-button--warning { border-color: #ffd39d; background: #fff5e9; color: #9a4c00; }
.oca-button--danger { background: #b42318; color: #fff; }
.oca-button--danger:hover,
.oca-button--danger:focus { background: #8f1c13; color: #fff; }
.oca-button--danger:disabled { transform: none; border-color: #cbd2db; background: #e8ecf1; color: #5f6b7a; cursor: not-allowed; box-shadow: none; }
.oca-button--ghost { background: transparent; color: var(--oca-muted); }
.oca-button--large { min-height: 45px; padding: 11px 20px; font-size: 14px; }

.oca-danger-zone {
	border-color: #f2b8b5;
	background: #fffafa;
}

.oca-danger-zone .oca-eyebrow { color: #b42318; }

.oca-delete-form {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding-top: 19px;
	border-top: 1px solid #f4d2d0;
}

.oca-check-row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	max-width: 720px;
	line-height: 1.5;
}

.oca-check-row input { margin-top: 2px; }

.oca-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.oca-field--full { grid-column: 1 / -1; }

.oca-field label {
	display: block;
	margin-bottom: 7px;
	color: var(--oca-ink);
	font-size: 13px;
	font-weight: 680;
}

.oca-field label span { color: var(--oca-pink-ink); }

.oca-field input[type="text"],
.oca-field input[type="date"],
.oca-field input[type="time"] {
	width: 100%;
	min-height: 43px;
	margin: 0;
	padding: 8px 11px;
	border: 1px solid #bdcadb;
	border-radius: 8px;
	background: #fff;
	color: var(--oca-ink);
}

.oca-field input:focus {
	border-color: var(--oca-sky-ink);
	box-shadow: 0 0 0 3px rgba(23, 108, 178, 0.2);
}

.oca-input-action {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) auto;
	gap: 10px;
}

.oca-space-list { display: grid; gap: 10px; margin-top: 16px; }
.oca-space-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px; border: 1px solid #d5e0ec; border-radius: 11px; background: #f9fbfd; }
.oca-space-row__icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px; background: #e8f7f6; color: #087d77; }
.oca-space-row__icon .dashicons { width: 20px; height: 20px; font-size: 20px; }
.oca-space-row .oca-field label { margin-bottom: 5px; }
.oca-space-row__actions { display: flex; gap: 4px; }
.oca-space-row__actions .oca-icon-button { width: 34px; height: 34px; }
.oca-add-space--footer { margin-top: 12px; }

.oca-help {
	margin: 7px 0 0;
	color: var(--oca-muted);
	font-size: 12px;
}

.oca-help.is-success { color: #087a73; font-weight: 650; }

.oca-form-actions {
	justify-content: flex-end;
	padding: 2px 0 18px;
}

.oca-inline-notice {
	margin-bottom: 18px;
	padding: 13px 16px;
	border: 1px solid;
	border-left-width: 4px;
	border-radius: 9px;
	background: #fff;
}

.oca-inline-notice--success { border-color: #99ddd6; border-left-color: var(--oca-teal-ink); color: #075f5a; }
.oca-inline-notice--error { border-color: #f0b5b0; border-left-color: var(--oca-coral); color: #8f1c13; }
.oca-inline-notice--warning { border-color: #f5d697; border-left-color: var(--oca-yellow); color: #795200; }
.oca-inline-notice ul { margin-bottom: 0; }

.oca-empty-state {
	max-width: 720px;
	margin: 35px auto;
	padding: 52px 38px;
	border: 1px solid var(--oca-line);
	border-radius: 18px;
	background: #fff;
	box-shadow: var(--oca-shadow);
	text-align: center;
}

.oca-empty-state__icon {
	display: grid;
	place-items: center;
	width: 70px;
	height: 70px;
	margin: 0 auto 20px;
	border-radius: 21px;
	background: linear-gradient(145deg, #e2f8f5, #eaf4ff);
	color: var(--oca-teal-ink);
}

.oca-empty-state__icon .dashicons {
	width: 34px;
	height: 34px;
	font-size: 34px;
}

.oca-empty-state p { max-width: 510px; margin: 12px auto 23px; }

.oca-wizard-steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin-bottom: 22px;
}

.oca-wizard-step {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 78px;
	padding: 14px;
	border: 1px solid var(--oca-line);
	border-radius: 13px;
	background: #fff;
	color: var(--oca-muted);
	text-decoration: none;
	transition: border-color 120ms ease, box-shadow 120ms ease, transform 120ms ease;
}

.oca-wizard-step:hover,
.oca-wizard-step:focus {
	transform: translateY(-1px);
	border-color: #aabed6;
	box-shadow: 0 7px 18px rgba(0, 29, 74, 0.07);
	color: var(--oca-navy);
}

.oca-wizard-step.is-active {
	border-color: var(--oca-teal-ink);
	background: linear-gradient(145deg, #fff, #effbf9);
	box-shadow: 0 7px 19px rgba(0, 181, 171, 0.1);
	color: var(--oca-navy);
}

.oca-wizard-step__number {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 31px;
	height: 31px;
	border-radius: 10px;
	background: #eef2f7;
	color: var(--oca-muted);
	font-weight: 800;
}

.oca-wizard-step.is-active .oca-wizard-step__number {
	background: var(--oca-teal-ink);
	color: #fff;
}

.oca-wizard-step__copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
}

.oca-wizard-step__copy strong {
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 13px;
}

.oca-wizard-step__copy .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.oca-wizard-step__copy small {
	overflow: hidden;
	font-size: 11px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.oca-format-key,
.oca-count-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 11px;
	border: 1px solid #cfdeed;
	border-radius: 9px;
	background: rgba(255, 255, 255, 0.86);
	color: var(--oca-navy);
	font-size: 12px;
	font-weight: 680;
}

.oca-format-key .dashicons {
	width: 17px;
	height: 17px;
	color: var(--oca-teal-ink);
	font-size: 17px;
}

.oca-panel--table { padding: 0; overflow: hidden; }
.oca-panel__heading--padded { margin: 0; padding: 22px 24px; }

.oca-table-scroll {
	overflow-x: auto;
	border-top: 1px solid var(--oca-line);
}

.oca-bulk-grid,
.oca-data-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}

.oca-bulk-grid { min-width: 760px; table-layout: fixed; }
.oca-data-table { min-width: 760px; }

.oca-bulk-grid th,
.oca-data-table th {
	padding: 11px 13px;
	border-bottom: 1px solid var(--oca-line);
	background: #f5f8fc;
	color: #506077;
	font-size: 11px;
	font-weight: 780;
	letter-spacing: 0.055em;
	text-align: left;
	text-transform: uppercase;
}

.oca-bulk-grid th:nth-child(2),
.oca-bulk-grid th:nth-child(3) { width: 25%; }
.oca-bulk-grid th:nth-child(4) { width: 20%; }
.oca-bulk-grid th:nth-child(5) { width: 20%; }

.oca-bulk-grid td,
.oca-data-table td {
	padding: 11px 13px;
	border-bottom: 1px solid #e8edf3;
	color: var(--oca-ink);
	vertical-align: middle;
}

.oca-bulk-grid td { padding: 0; border-right: 1px solid #e8edf3; }
.oca-bulk-grid tbody tr:last-child td,
.oca-bulk-grid tbody tr:last-child th,
.oca-data-table tbody tr:last-child td { border-bottom: 0; }

.oca-bulk-grid input {
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 8px 12px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.oca-bulk-grid input:focus {
	position: relative;
	z-index: 1;
	outline: 2px solid var(--oca-sky-ink);
	outline-offset: -2px;
	box-shadow: inset 0 0 0 1px var(--oca-sky-ink);
}

.oca-bulk-grid .oca-row-number {
	width: 46px;
	padding: 0;
	background: #f1f4f8;
	color: #59687c;
	text-align: center;
}

.oca-table-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 22px;
	border-top: 1px solid var(--oca-line);
	background: #fbfcfe;
}

.oca-table-footer p {
	display: flex;
	align-items: flex-start;
	gap: 7px;
	margin: 0;
	color: var(--oca-muted);
	font-size: 12px;
}

.oca-table-footer p .dashicons {
	width: 17px;
	height: 17px;
	color: var(--oca-sky-ink);
	font-size: 17px;
}

.oca-directory-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 13px;
	margin-bottom: 20px;
}

.oca-directory-stats > div {
	display: flex;
	align-items: baseline;
	gap: 9px;
	padding: 16px 19px;
	border: 1px solid var(--oca-line);
	border-radius: 12px;
	background: #fff;
}

.oca-directory-stats strong { color: var(--oca-navy); font-size: 24px; }
.oca-directory-stats span { color: var(--oca-muted); font-size: 12px; font-weight: 650; }

.oca-data-table tbody tr:hover { background: #fbfdff; }
.oca-data-table td strong { color: var(--oca-navy); }
.oca-actions-column { width: 112px; text-align: right !important; }
.oca-row-actions { display: flex; justify-content: flex-end; gap: 6px; }
.oca-row-actions form { margin: 0; }

.oca-icon-button {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 1px solid #d3dde9;
	border-radius: 8px;
	background: #fff;
	color: var(--oca-muted);
	cursor: pointer;
}

.oca-icon-button:hover,
.oca-icon-button:focus { border-color: var(--oca-coral); color: #b42318; }
.oca-icon-button:disabled { border-color: #cbd2db; background: #e8ecf1; color: #5f6b7a; cursor: not-allowed; }
.oca-icon-button .dashicons { width: 17px; height: 17px; font-size: 17px; }
.oca-icon-button--danger { color: #b42318; }

.oca-entry-type,
.oca-number-chip,
.oca-rosterless {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 760;
	letter-spacing: 0.035em;
}

.oca-entry-type--individual { background: #e8f5ff; color: #1368ae; }
.oca-entry-type--team { background: #f1eaff; color: #6030b7; }
.oca-number-chip { margin-left: 5px; background: #e2f8f5; color: #087a73; }
.oca-rosterless { background: #fff1e4; color: #98500a; }
.oca-muted-text { color: var(--oca-muted); font-size: 12px; }

.oca-mini-empty {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 24px;
	border-top: 1px solid var(--oca-line);
	background: #fbfcfe;
}

.oca-mini-empty > .dashicons { color: #59687c; }
.oca-mini-empty > div { flex: 1; }
.oca-mini-empty strong { color: var(--oca-navy); }
.oca-mini-empty p { margin: 3px 0 0; color: var(--oca-muted); }

.oca-next-step {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 20px 22px;
	border-radius: 13px;
	background: linear-gradient(115deg, var(--oca-navy), #124b87);
	color: #fff;
}

.oca-next-step > div { display: flex; flex-direction: column; gap: 4px; }
.oca-next-step strong { font-size: 16px; }
.oca-next-step span { color: rgba(255, 255, 255, 0.72); font-size: 12px; }
.oca-next-step .oca-button { background: #fff; color: var(--oca-navy); }
.oca-next-step .oca-button .dashicons { color: var(--oca-navy); }

.oca-team-name-field { max-width: 680px; margin-bottom: 28px; }
.oca-roster-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 14px; }
.oca-roster-heading h2 { margin: 0; color: var(--oca-navy); font-size: 18px; }
.oca-roster-heading p { margin: 5px 0 0; color: var(--oca-muted); }
.oca-roster-tools { display: flex; align-items: center; gap: 10px; }
.oca-roster-tools input { min-width: 220px; min-height: 38px; margin: 0; border-color: #c4d0df; border-radius: 8px; }
.oca-selected-count { min-width: 72px; color: var(--oca-purple); font-size: 12px; font-weight: 750; text-align: right; }

.oca-roster-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	max-height: 430px;
	padding: 3px;
	overflow-y: auto;
}

.oca-roster-person {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 12px;
	border: 1px solid var(--oca-line);
	border-radius: 11px;
	background: #fff;
	cursor: pointer;
}

.oca-roster-person:hover { border-color: #abc4df; background: #fbfdff; }
.oca-roster-person:has(input:checked) { border-color: var(--oca-teal-ink); background: #f0fbfa; box-shadow: 0 0 0 2px rgba(0, 122, 115, 0.14); }
.oca-roster-person input { flex: 0 0 auto; margin: 0; }
.oca-person-avatar { flex: 0 0 auto; display: grid; place-items: center; width: 35px; height: 35px; border-radius: 10px; background: #eaf2fd; color: var(--oca-navy); font-size: 11px; font-weight: 800; }
.oca-roster-person > span:last-child { display: flex; min-width: 0; flex-direction: column; }
.oca-roster-person strong { overflow: hidden; color: var(--oca-navy); text-overflow: ellipsis; white-space: nowrap; }
.oca-roster-person small { margin-top: 2px; color: var(--oca-muted); }
.oca-roster-person[hidden] { display: none; }

.oca-team-selection-error,
.oca-numbering-feedback {
	margin-bottom: 13px;
	padding: 10px 12px;
	border-radius: 8px;
	background: #fff0ef;
	color: #9d241a;
	font-size: 12px;
	font-weight: 650;
}

.oca-rosterless-callout { display: flex; gap: 13px; padding: 18px; border: 1px dashed #e0ba85; border-radius: 11px; background: #fffaf3; }
.oca-rosterless-callout .dashicons { color: var(--oca-orange-ink); }
.oca-rosterless-callout strong { color: var(--oca-navy); }
.oca-rosterless-callout p { margin: 4px 0 0; color: var(--oca-muted); }
.oca-team-actions { margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--oca-line); }

.oca-modal-open { overflow: hidden; }
.oca-modal[hidden] { display: none; }
.oca-modal { position: fixed; z-index: 100100; inset: 0; display: grid; place-items: center; padding: 20px; }
.oca-modal__backdrop { position: absolute; inset: 0; background: rgba(0, 18, 47, 0.64); backdrop-filter: blur(2px); }
.oca-modal__dialog { position: relative; width: min(440px, 100%); padding: 30px; border-radius: 17px; background: #fff; box-shadow: 0 25px 65px rgba(0, 20, 51, 0.3); text-align: center; }
.oca-modal__icon { display: grid; place-items: center; width: 54px; height: 54px; margin: 0 auto 15px; border-radius: 16px; background: #fff1df; color: var(--oca-orange-ink); }
.oca-modal__icon .dashicons { width: 28px; height: 28px; font-size: 28px; }
.oca-modal__dialog h2 { margin: 0; color: var(--oca-navy); font-size: 22px; }
.oca-modal__dialog p { margin: 10px 0 23px; color: var(--oca-muted); font-size: 14px; line-height: 1.55; }
.oca-modal__actions { display: flex; justify-content: center; gap: 9px; }

.oca-auto-number-panel { padding: 20px 22px; background: linear-gradient(120deg, #fff, #f5f9ff); }
.oca-auto-number-title { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; }
.oca-auto-number-title > .dashicons { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 11px; background: #f0eaff; color: var(--oca-purple); font-size: 21px; line-height: 39px; }
.oca-auto-number-title h2 { margin: 0; color: var(--oca-navy); font-size: 18px; }
.oca-auto-number-title p { margin: 3px 0 0; color: var(--oca-muted); font-size: 12px; }
.oca-auto-number-controls { display: flex; align-items: flex-end; gap: 13px; flex-wrap: wrap; }

.oca-segmented { display: flex; padding: 3px; border: 1px solid #cbd7e5; border-radius: 9px; background: #edf2f8; }
.oca-segmented button { min-height: 33px; padding: 6px 11px; border: 0; border-radius: 6px; background: transparent; color: var(--oca-muted); cursor: pointer; font-size: 12px; font-weight: 680; }
.oca-segmented button.is-active { background: #fff; color: var(--oca-navy); box-shadow: 0 2px 7px rgba(0, 29, 74, 0.12); }
.oca-selection-buttons { display: flex; gap: 5px; }
.oca-starting-number { display: flex; flex-direction: column; gap: 4px; color: var(--oca-muted); font-size: 10px; font-weight: 750; letter-spacing: 0.05em; text-transform: uppercase; }
.oca-starting-number input { width: 112px; min-height: 38px; margin: 0; border-color: #c4d0df; border-radius: 8px; }
.oca-button--preview { background: var(--oca-purple); color: #fff; }
.oca-button--preview:hover,
.oca-button--preview:focus { background: #5925bb; color: #fff; }
.oca-numbering-feedback { margin: 14px 0 0; background: #e8f7f5; color: #087a73; }
.oca-numbering-feedback.is-error { background: #fff0ef; color: #9d241a; }
.oca-entry-number-table .oca-select-column { width: 45px; }
.oca-entry-number-table .oca-entry-number-input { width: 150px; min-height: 37px; margin: 0; border-color: #c4d0df; border-radius: 7px; font-weight: 700; }
.oca-entry-number-table tr:has(.oca-entry-select:checked) { background: #f1fbfa; }
.oca-roster-summary { color: var(--oca-muted) !important; font-size: 12px; }
.oca-entry-number-table tr[hidden] { display: none; }

.oca-event-form-actions {
	margin-top: 23px;
	padding-top: 20px;
	border-top: 1px solid var(--oca-line);
}

.oca-event-type-field {
	margin: 0;
	padding: 0;
	border: 0;
}

.oca-event-type-field legend {
	margin-bottom: 8px;
	color: var(--oca-ink);
	font-size: 13px;
	font-weight: 680;
}

.oca-event-type-field legend span { color: var(--oca-pink-ink); }

.oca-event-type-options {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 11px;
}

.oca-event-type-option {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 86px;
	margin: 0;
	padding: 14px;
	border: 1px solid var(--oca-line);
	border-radius: 12px;
	background: #fff;
	cursor: pointer;
}

.oca-event-type-field .oca-event-type-option { display: flex; margin: 0; }

.oca-event-type-option:hover { border-color: #aabfd8; }
.oca-event-type-option:has(input:checked) { border-color: var(--oca-teal-ink); background: #f0fbfa; box-shadow: 0 0 0 2px rgba(0, 122, 115, 0.14); }
.oca-event-type-option > input { position: absolute; top: 10px; right: 10px; margin: 0; }
.oca-event-type-icon { flex: 0 0 auto; display: grid; place-items: center; width: 39px; height: 39px; border-radius: 11px; background: #eaf4ff; color: var(--oca-sky-ink); }
.oca-event-type-option:nth-child(2) .oca-event-type-icon { background: #f0eaff; color: var(--oca-purple); }
.oca-event-type-option:nth-child(3) .oca-event-type-icon { background: #fff1e4; color: var(--oca-orange-ink); }
.oca-event-type-option > span:last-child { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.oca-event-type-option strong { color: var(--oca-navy); font-size: 13px; }
.oca-event-type-option small { color: var(--oca-muted); font-size: 11px; font-weight: 400; line-height: 1.35; }

.oca-event-list { border-top: 1px solid var(--oca-line); }

.oca-event-card {
	position: relative;
	display: grid;
	grid-template-columns: minmax(220px, 1.5fr) minmax(190px, 1fr) 120px auto;
	align-items: center;
	gap: 22px;
	min-height: 104px;
	padding: 18px 22px 18px 28px;
	border-bottom: 1px solid #e8edf3;
	background: #fff;
}

.oca-event-card:last-child { border-bottom: 0; }
.oca-event-card:hover { background: #fbfdff; }
.oca-event-card__accent { position: absolute; inset: 17px auto 17px 0; width: 5px; border-radius: 0 5px 5px 0; background: var(--oca-sky); }
.oca-event-card__accent--rostered_team { background: var(--oca-purple); }
.oca-event-card__accent--rosterless_team { background: var(--oca-orange); }
.oca-event-card__main { min-width: 0; }
.oca-event-card__title { display: flex; align-items: center; gap: 8px; min-width: 0; }
.oca-event-card__title h3 { overflow: hidden; margin: 0; color: var(--oca-navy); font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.oca-code-chip { display: inline-flex; flex: 0 0 auto; padding: 3px 7px; border-radius: 6px; background: #edf2f8; color: #56667d; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; font-weight: 750; }

.oca-event-type-badge {
	display: inline-flex;
	margin-top: 7px;
	padding: 4px 8px;
	border-radius: 999px;
	background: #e8f5ff;
	color: #1368ae;
	font-size: 10px;
	font-weight: 750;
}

.oca-event-type-badge--rostered_team { background: #f1eaff; color: #6030b7; }
.oca-event-type-badge--rosterless_team { background: #fff1e4; color: #98500a; }
.oca-event-card__schedule { display: flex; align-items: center; gap: 10px; color: var(--oca-muted); }
.oca-event-card__schedule > .dashicons { flex: 0 0 auto; width: 19px; height: 19px; color: var(--oca-teal-ink); font-size: 19px; }
.oca-event-card__schedule > div { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.oca-event-card__schedule strong { overflow: hidden; color: var(--oca-ink); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.oca-event-card__schedule small { color: var(--oca-muted); font-size: 10px; }
.oca-event-space { display: inline-flex; align-items: center; gap: 4px; color: #087d77; font-size: 10px; font-weight: 750; }
.oca-event-space .dashicons { width: 13px; height: 13px; font-size: 13px; }
.oca-component-summary { overflow: hidden; max-width: 100%; color: #53677f; font-size: 10px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.oca-component-summary.is-empty { color: #59687c; font-style: italic; }
.oca-event-card__entries { display: flex; flex-direction: column; align-items: center; }
.oca-event-card__entries strong { color: var(--oca-navy); font-size: 22px; }
.oca-event-card__entries span { color: var(--oca-muted); font-size: 10px; text-align: center; }
.oca-event-card__actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.oca-event-card__actions form { margin: 0; }

.oca-event-components-field { margin: 5px 0 0; padding: 18px; border: 1px solid var(--oca-line); border-radius: 12px; background: #f8fafc; }
.oca-event-components-field legend { padding: 0 6px; color: var(--oca-navy); font-size: 13px; font-weight: 750; }
.oca-event-components-field > .oca-help { margin: 8px 0 0; }
.oca-component-builder { margin-top: 14px; }
.oca-component-builder[hidden],
.oca-ranked-partial-settings[hidden],
.oca-ranked-value-field[hidden] { display: none; }
.oca-component-list { display: grid; gap: 8px; margin-bottom: 10px; }
.oca-component-row { display: grid; grid-template-columns: 25px minmax(180px, 1fr) minmax(120px, 0.45fr) auto; align-items: end; gap: 9px; padding: 11px; border: 1px solid #d9e2ec; border-radius: 10px; background: #fff; }
.oca-component-row.is-dragging { opacity: 0.55; }
.oca-component-handle { align-self: center; color: #59687c; cursor: grab; }
.oca-component-row__actions { display: flex; align-self: center; gap: 3px; }
.oca-component-row__actions .oca-icon-button { width: 31px; height: 31px; }
.oca-event-components-modal__dialog { display: flex; width: min(850px, 100%); max-height: min(90vh, 820px); padding: 0; overflow: hidden; flex-direction: column; text-align: left; }
.oca-event-components-modal .oca-inline-notice { margin: 14px 24px 0; }
.oca-event-components-form { display: flex; min-height: 0; flex: 1; flex-direction: column; padding: 18px 24px 0; }
.oca-event-components-form .oca-component-builder { min-height: 0; overflow-y: auto; }
.oca-event-components-intro { display: flex; align-items: flex-start; gap: 9px; padding: 10px 12px; border: 1px solid #bdddf8; border-radius: 9px; background: #f0f8ff; }
.oca-event-components-intro .dashicons { flex: 0 0 auto; color: var(--oca-sky-ink); }
.oca-event-components-intro p { margin: 0; color: #3d6080; font-size: 11px; line-height: 1.5; }
.oca-event-components-form .oca-event-modal-actions { margin-inline: -24px; }

.oca-event-entry-modal__dialog {
	display: flex;
	width: min(780px, 100%);
	max-height: min(88vh, 780px);
	padding: 0;
	overflow: hidden;
	flex-direction: column;
	text-align: left;
}

.oca-event-modal-header { display: flex; flex: 0 0 auto; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 24px 26px 18px; border-bottom: 1px solid var(--oca-line); }
.oca-event-modal-header h2 { margin: 0; color: var(--oca-navy); font-size: 24px; }
.oca-event-modal-header p { margin: 7px 0 0; color: var(--oca-muted); line-height: 1.45; }
.oca-modal-x { flex: 0 0 auto; display: grid; place-items: center; width: 35px; height: 35px; border-radius: 9px; color: var(--oca-muted); text-decoration: none; }
.oca-modal-x:hover,
.oca-modal-x:focus { background: #eef2f7; color: var(--oca-navy); }
.oca-modal-x .dashicons { width: 23px; height: 23px; font-size: 23px; }
.oca-event-modal-meta { display: flex; align-items: center; gap: 13px; padding: 11px 26px; border-bottom: 1px solid var(--oca-line); background: #f8fafd; color: var(--oca-muted); font-size: 11px; }
.oca-event-modal-meta .oca-event-type-badge { margin: 0; }
.oca-event-modal-meta strong { color: var(--oca-navy); }
.oca-event-entry-modal .oca-inline-notice { margin: 15px 26px 0; }
.oca-event-entries-form { display: flex; min-height: 0; flex: 1; flex-direction: column; }
.oca-event-entry-tools { display: flex; align-items: center; justify-content: space-between; gap: 13px; padding: 15px 26px; }
.oca-event-entry-tools > label { flex: 1; }
.oca-event-entry-tools input[type="search"] { width: 100%; min-height: 39px; margin: 0; border-color: #c4d0df; border-radius: 8px; }
.oca-event-entry-tools > div { display: flex; gap: 5px; }
.oca-event-selected-count { flex: 0 0 auto; color: var(--oca-purple); font-size: 11px; font-weight: 750; }

.oca-event-entry-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	min-height: 110px;
	padding: 3px 26px 18px;
	overflow-y: auto;
}

.oca-event-entry-option { position: relative; display: flex; align-items: center; gap: 10px; min-height: 69px; padding: 11px 12px; border: 1px solid var(--oca-line); border-radius: 11px; background: #fff; cursor: pointer; }
.oca-event-entry-option:hover { border-color: #aec2da; }
.oca-event-entry-option:has(input:checked) { border-color: var(--oca-teal-ink); background: #f0fbfa; }
.oca-event-entry-option > input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.oca-entry-checkmark { flex: 0 0 auto; display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #bdc9d7; border-radius: 8px; background: #fff; color: transparent; }
.oca-event-entry-option:has(input:checked) .oca-entry-checkmark { border-color: var(--oca-teal-ink); background: var(--oca-teal-ink); color: #fff; }
.oca-entry-checkmark .dashicons { width: 18px; height: 18px; font-size: 18px; }
.oca-event-entry-copy { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 3px; }
.oca-event-entry-copy strong { overflow: hidden; color: var(--oca-navy); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.oca-event-entry-copy small { overflow: hidden; color: var(--oca-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.oca-event-entry-option[hidden] { display: none; }

.oca-event-no-entries { display: flex; align-items: center; gap: 15px; margin: 18px 26px; padding: 19px; border: 1px dashed #e0ba85; border-radius: 11px; background: #fffaf3; }
.oca-event-no-entries > .dashicons { flex: 0 0 auto; color: var(--oca-orange-ink); }
.oca-event-no-entries > div { flex: 1; }
.oca-event-no-entries strong { color: var(--oca-navy); }
.oca-event-no-entries p { margin: 4px 0 0; color: var(--oca-muted); }
.oca-event-modal-actions { flex: 0 0 auto; justify-content: flex-end; margin: 0; padding: 16px 26px; border-top: 1px solid var(--oca-line); background: #fbfcfe; }

.oca-stage-hero { background: linear-gradient(115deg, var(--oca-navy) 0%, #07376f 62%, #144e8b 100%); }
.oca-stage-hero .oca-eyebrow { color: #8ff7ef; }
.oca-stage-hero h1 { color: #fff; }
.oca-stage-hero p { color: #d6e7f7; }
.oca-stage-hero__stats { display: flex; flex: 0 0 auto; gap: 9px; }
.oca-stage-hero__stats > span { display: flex; min-width: 91px; padding: 11px 13px; border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 11px; background: rgba(255, 255, 255, 0.08); flex-direction: column; }
.oca-stage-hero__stats strong { color: #fff; font-size: 23px; line-height: 1; }
.oca-stage-hero__stats span { color: #d6e7f7; font-size: 10px; font-weight: 650; }
.oca-stage-waiting { display: flex; align-items: center; gap: 9px; margin: 0 0 18px; padding: 11px 14px; border: 1px solid #c8dff5; border-radius: 10px; background: #f3f9ff; color: #46627f; font-size: 12px; }
.oca-stage-waiting .dashicons { color: var(--oca-sky-ink); }
.oca-stage-waiting a { margin-left: auto; color: #176cb2; font-weight: 700; }
.oca-empty-actions { display: flex; justify-content: center; padding: 0 24px 24px; }
.oca-stage-events-panel { overflow: hidden; }
.oca-stage-event-list { border-top: 1px solid var(--oca-line); }
.oca-stage-event { border-bottom: 1px solid var(--oca-line); background: #fff; }
.oca-stage-event:last-child { border-bottom: 0; }
.oca-stage-event > summary { display: grid; grid-template-columns: minmax(230px, 1.2fr) minmax(200px, 1fr) auto; align-items: center; gap: 20px; min-height: 87px; padding: 15px 22px; cursor: pointer; list-style: none; }
.oca-stage-event > summary::-webkit-details-marker,
.oca-configured-events > summary::-webkit-details-marker { display: none; }
.oca-stage-event > summary:hover { background: #f9fbfd; }
.oca-stage-event[open] > summary { border-bottom: 1px solid var(--oca-line); background: #f8fbff; }
.oca-stage-event__identity { display: flex; min-width: 0; align-items: center; gap: 12px; }
.oca-stage-event__identity > span:last-child { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.oca-stage-event__identity strong { overflow: hidden; color: var(--oca-navy); font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.oca-stage-event__identity small { color: var(--oca-muted); font-size: 10px; }
.oca-stage-event__chevron { flex: 0 0 auto; color: var(--oca-sky-ink); transition: transform 150ms ease; }
.oca-stage-event[open] .oca-stage-event__chevron { transform: rotate(90deg); }
.oca-stage-event__pipeline { overflow: hidden; color: #5e7189; font-size: 11px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.oca-stage-event__meta { display: flex; align-items: center; justify-content: flex-end; gap: 15px; }
.oca-stage-event__meta > span:not(.oca-config-status) { display: flex; color: var(--oca-muted); font-size: 9px; flex-direction: column; text-align: center; }
.oca-stage-event__meta > span strong { color: var(--oca-navy); font-size: 15px; }
.oca-config-status { display: inline-flex; align-items: center; min-height: 24px; padding: 4px 8px; border-radius: 999px; font-size: 9px; font-weight: 780; white-space: nowrap; }
.oca-config-status.is-complete { background: #e6f8f1; color: #08755d; }
.oca-config-status.is-incomplete { background: #fff3df; color: #96540f; }
.oca-stage-event__body { padding: 21px; background: #f7f9fc; }
.oca-stage-errors { margin: 0 0 16px; }
.oca-stage-editor-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 15px; }
.oca-stage-editor-heading h3 { margin: 0; color: var(--oca-navy); font-size: 16px; }
.oca-stage-editor-heading p { margin: 5px 0 0; color: var(--oca-muted); font-size: 11px; }
.oca-stage-editor-heading form { margin: 0; }
.oca-stage-flow { display: grid; grid-template-columns: 180px minmax(0, 1fr); align-items: center; gap: 14px; margin-bottom: 15px; padding: 13px 15px; border: 1px solid #cfe1f2; border-radius: 11px; background: linear-gradient(100deg, #eff8ff, #f5fcfb); }
.oca-stage-flow__label { display: flex; align-items: center; gap: 9px; }
.oca-stage-flow__label > .dashicons { color: var(--oca-teal-ink); }
.oca-stage-flow__label > span { display: flex; flex-direction: column; }
.oca-stage-flow__label strong { color: var(--oca-navy); font-size: 11px; }
.oca-stage-flow__label small { color: var(--oca-muted); font-size: 8px; }
.oca-stage-flow__track { display: flex; align-items: center; justify-content: flex-end; gap: 7px; overflow-x: auto; padding: 3px 0; }
.oca-flow-entry,
.oca-flow-stage { display: flex; flex: 0 0 auto; min-width: 86px; padding: 7px 9px; border: 1px solid #bfd3e7; border-radius: 8px; background: #fff; flex-direction: column; text-align: center; }
.oca-flow-entry strong,
.oca-flow-stage strong { max-width: 120px; overflow: hidden; color: var(--oca-navy); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.oca-flow-entry small,
.oca-flow-stage small { color: var(--oca-muted); font-size: 8px; }
.oca-flow-stage.is-final { border-color: #bca7e7; background: #f5f0ff; }
.oca-flow-stage.is-invalid { border-color: #e59991; background: #fff3f2; }
.oca-flow-arrow { flex: 0 0 auto; color: #596f87; }
.oca-stage-card-list { display: grid; gap: 13px; }
.oca-stage-card { position: relative; padding: 17px; border: 1px solid #d5dee9; border-left: 4px solid var(--oca-sky); border-radius: 12px; background: #fff; box-shadow: 0 3px 12px rgba(0, 29, 74, 0.04); }
.oca-stage-card:nth-child(2n) { border-left-color: var(--oca-purple); }
.oca-stage-card:nth-child(3n) { border-left-color: var(--oca-teal-ink); }
.oca-stage-card.is-stage-invalid { border-color: #e5aaa4; border-left-color: var(--oca-coral); }
.oca-stage-card__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.oca-stage-sequence { color: var(--oca-sky-ink); font-size: 10px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.oca-stage-fields { display: grid; grid-template-columns: minmax(85px, 0.55fr) minmax(180px, 1.6fr) minmax(210px, 1.45fr) minmax(105px, 0.65fr) minmax(120px, 0.75fr); gap: 10px; }
.oca-stage-fields > .oca-field { min-width: 0; }
.oca-stage-fields .oca-field label { font-size: 10px; }
.oca-stage-fields input,
.oca-stage-fields select { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; min-height: 37px; }
.oca-stage-legend { display: flex; align-items: stretch; gap: 0; margin-top: 14px; border: 1px solid var(--oca-line); border-radius: 9px; background: #f8fafc; }
.oca-stage-legend > span:not(.oca-stage-validation) { display: flex; min-width: 120px; padding: 9px 13px; border-right: 1px solid var(--oca-line); flex-direction: column; }
.oca-stage-legend small { color: var(--oca-muted); font-size: 8px; font-weight: 650; text-transform: uppercase; }
.oca-stage-legend strong { color: var(--oca-navy); font-size: 12px; }
.oca-stage-validation { align-self: center; margin-left: auto; padding: 8px 12px; color: #aa3026; font-size: 10px; font-weight: 700; }
.oca-stage-card__actions { display: flex; gap: 7px; margin-top: 13px; }
.oca-stage-configure-link.is-disabled { cursor: not-allowed; opacity: 0.55; pointer-events: none; }
.oca-button--configure { border: 1px solid #cbb9ed; background: #f5f0ff; color: #6231b9; }
.oca-button--configure:hover { border-color: var(--oca-purple); background: #ede3ff; color: #4f219e; }
.oca-stage-delete { position: absolute; right: 15px; bottom: 15px; margin: 0; }
.oca-stage-blank,
.oca-stage-all-done { display: flex; align-items: center; gap: 13px; padding: 23px; border: 1px dashed #bfd0e1; border-radius: 11px; background: #fff; }
.oca-stage-blank > .dashicons { color: var(--oca-sky-ink); }
.oca-stage-all-done { margin: 18px; border-color: #a8dbcd; background: #f3fbf8; }
.oca-stage-all-done > .dashicons { color: var(--oca-teal-ink); }
.oca-stage-blank strong,
.oca-stage-all-done strong { color: var(--oca-navy); }
.oca-stage-blank p,
.oca-stage-all-done p { margin: 4px 0 0; color: var(--oca-muted); }
.oca-build-event { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-top: 17px; padding: 17px 18px; border: 1px solid #9ddbd4; border-radius: 12px; background: linear-gradient(105deg, #eefbf8, #f4f9ff); }
.oca-build-event > div { display: flex; min-width: 0; align-items: center; gap: 12px; }
.oca-build-event > div > .dashicons { display: grid; flex: 0 0 auto; place-items: center; width: 37px; height: 37px; border-radius: 10px; background: var(--oca-teal-ink); color: #fff; }
.oca-build-event > div > div { display: flex; flex-direction: column; }
.oca-build-event strong { color: var(--oca-navy); font-size: 13px; }
.oca-build-event p { max-width: 650px; margin: 4px 0 0; color: var(--oca-muted); font-size: 10px; line-height: 1.45; }
.oca-build-event form { flex: 0 0 auto; margin: 0; }
.oca-configured-events { overflow: hidden; }
.oca-configured-events > summary { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; cursor: pointer; list-style: none; }
.oca-configured-events > summary > span:first-child { display: flex; align-items: center; gap: 11px; }
.oca-configured-events > summary .dashicons { color: var(--oca-teal-ink); }
.oca-configured-events > summary span span { display: flex; flex-direction: column; }
.oca-configured-events > summary strong { color: var(--oca-navy); font-size: 15px; }
.oca-configured-events > summary small { color: var(--oca-muted); font-size: 10px; }
.oca-configured-summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px; border: 1px solid #b9ded4; border-radius: 11px; background: #f4fbf9; }
.oca-configured-summary > div:first-child { display: flex; align-items: center; gap: 12px; }
.oca-configured-summary > div:first-child > .dashicons { color: var(--oca-teal-ink); }
.oca-configured-summary strong { color: var(--oca-navy); }
.oca-configured-summary p { margin: 4px 0 0; color: var(--oca-muted); }
.oca-configured-summary__actions { display: flex; gap: 7px; }
.oca-configured-summary__actions form { margin: 0; }

.oca-stage-config-modal__dialog { display: flex; width: min(1000px, 100%); height: min(94vh, 940px); max-height: min(94vh, 940px); padding: 0; overflow: hidden; flex-direction: column; text-align: left; }
.oca-stage-config-modal .oca-inline-notice { flex: 0 0 auto; margin: 14px 24px 0; }
.oca-measured-form,
.oca-ranked-form,
.oca-proficiency-form,
.oca-elimination-form,
.oca-round-robin-form,
.oca-pool-bracket-form,
.oca-head-to-head-form,
.oca-team-match-form {
	display: flex;
	width: 100%;
	min-height: 0;
	flex: 1 1 0%;
	align-self: stretch;
	flex-direction: column;
	overflow: hidden;
}
.oca-stage-config-scroll { min-height: 0; padding: 19px 24px 26px; overflow-x: hidden; overflow-y: auto; flex: 1 1 auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; background: #f5f7fa; scrollbar-gutter: stable; }
.oca-stage-config-modal__dialog form > .oca-stage-config-scroll { flex: 1 1 auto; }
.oca-stage-config-modal__dialog form > .oca-event-modal-actions { flex: 0 0 auto; }
.oca-config-section { margin: 0 0 15px; padding: 19px; border: 1px solid #dbe2eb; border-radius: 12px; background: #fff; box-shadow: 0 3px 11px rgba(0, 29, 74, 0.035); }
.oca-config-section:last-child { margin-bottom: 0; }
.oca-config-section__heading { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.oca-config-section__heading > span { display: grid; flex: 0 0 auto; place-items: center; width: 29px; height: 29px; border-radius: 9px; background: var(--oca-navy); color: #fff; font-size: 12px; font-weight: 800; }
.oca-config-section__heading h3 { margin: 0; color: var(--oca-navy); font-size: 16px; }
.oca-config-section__heading p { margin: 4px 0 0; color: var(--oca-muted); font-size: 10px; }
.oca-config-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.oca-config-grid .oca-field { min-width: 0; }
.oca-config-grid .oca-field > input:not([type="checkbox"]):not([type="radio"]),
.oca-config-grid .oca-field > select,
.oca-config-grid .oca-field > textarea { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; margin-left: 0; margin-right: 0; }
.oca-config-grid .oca-field > select { min-height: 43px; }
.oca-scoresheet-details-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.75fr) minmax(0, 1.35fr); }
.oca-scoresheet-calculation-guide { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid #c7b7eb; border-radius: 10px; background: #f7f3ff; }
.oca-scoresheet-calculation-guide > div { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.oca-scoresheet-calculation-guide small { color: #765da8; font-size: 8px; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.oca-scoresheet-calculation-guide strong { color: var(--oca-navy); font-size: 10px; line-height: 1.45; }
.oca-scoresheet-calculation-guide > .dashicons { color: var(--oca-purple); }
.oca-ranked-partial-settings { margin-top: 11px; padding-top: 13px; border-top: 1px solid var(--oca-line); }

.oca-rubric-form,
.oca-rubric-scoresheet-form {
	display: flex;
	width: 100%;
	min-height: 0;
	flex: 1 1 0%;
	align-self: stretch;
	flex-direction: column;
	overflow: hidden;
}
.oca-rubric-library-heading,
.oca-rubric-subheading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 10px; }
.oca-rubric-library-heading > div,
.oca-rubric-subheading > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-rubric-library-heading strong,
.oca-rubric-subheading strong { color: var(--oca-navy); font-size: 12px; }
.oca-rubric-library-heading small,
.oca-rubric-subheading small { color: var(--oca-muted); font-size: 9px; }
.oca-rubric-library { display: grid; gap: 7px; margin-bottom: 14px; }
.oca-rubric-library-card { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 62px; padding: 10px 12px; border: 1px solid #d7e0ea; border-radius: 10px; background: #f8fafc; }
.oca-rubric-library-card > div:first-child { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.oca-rubric-library-card > div:last-child { display: flex; flex: 0 0 auto; gap: 4px; }
.oca-detached-action-form { display: none; }
.oca-rubric-library-card__title { display: flex; align-items: center; gap: 7px; }
.oca-rubric-library-card__title strong { overflow: hidden; color: var(--oca-navy); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.oca-rubric-library-card__title span { padding: 3px 6px; border-radius: 999px; background: #e4f7f5; color: #087870; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.oca-rubric-library-card small { overflow: hidden; color: var(--oca-muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.oca-rubric-empty { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; padding: 14px; border: 1px dashed #bdcbd9; border-radius: 10px; background: #f9fbfd; }
.oca-rubric-empty > .dashicons { color: var(--oca-purple); }
.oca-rubric-empty strong { color: var(--oca-navy); font-size: 12px; }
.oca-rubric-empty p { margin: 3px 0 0; font-size: 10px; }
.oca-rubric-source-field { max-width: 440px; margin-bottom: 11px; }
.oca-rubric-assignment-list { display: grid; gap: 8px; }
.oca-rubric-assignment { display: grid; grid-template-columns: minmax(180px, 0.75fr) minmax(390px, 1.4fr); align-items: center; gap: 15px; padding: 11px; border: 1px solid #d0d9e4; border-radius: 10px; background: #f2f4f7; opacity: 1; }
.oca-rubric-assignment.is-enabled { border-color: #9edbd6; background: #f2fbfa; opacity: 1; }
.oca-rubric-enable { display: flex; align-items: center; gap: 9px; margin: 0; cursor: pointer; }
.oca-rubric-enable > input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.oca-rubric-enable > span { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid #b8c5d3; border-radius: 8px; background: #fff; color: transparent; }
.oca-rubric-enable > input:checked + span { border-color: var(--oca-teal-ink); background: var(--oca-teal-ink); color: #fff; }
.oca-rubric-enable strong { color: var(--oca-navy); font-size: 11px; }
.oca-rubric-ballot-rules { display: grid; grid-template-columns: 1.2fr 0.8fr 1fr; gap: 7px; }
.oca-rubric-ballot-rules label { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
.oca-rubric-ballot-rules label > span { color: var(--oca-muted); font-size: 8px; font-weight: 750; text-transform: uppercase; }
.oca-rubric-ballot-rules input,
.oca-rubric-ballot-rules select { width: 100%; min-height: 34px; margin: 0; border-color: #cbd6e2; border-radius: 7px; font-size: 10px; }
.oca-separate-deduction-settings { margin-top: 15px; padding: 14px; border: 1px solid #d9e1ea; border-radius: 11px; background: #f8fafc; }
.oca-custom-floor-field[hidden],
.oca-custom-precision-field[hidden],
.oca-advancement-value-field[hidden],
.oca-best-n-stages-field[hidden],
.oca-criterion-numeric-settings[hidden],
.oca-criterion-yes-no-settings[hidden],
.oca-criterion-rating-settings[hidden] { display: none; }
.oca-best-n-components-field[hidden],
.oca-rubric-component-weights[hidden] { display: none; }
.oca-rubric-formula { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-top: 11px; padding: 10px 12px; border: 1px solid #b8dedb; border-radius: 9px; background: #f0fbfa; }
.oca-rubric-formula strong { color: #087870; font-size: 11px; }
.oca-rubric-formula span { color: #4b6a6b; font-size: 9px; text-align: right; }
.oca-rubric-component-weights { display: grid; gap: 9px; margin-top: 12px; padding: 13px; border: 1px solid #d7c9f5; border-radius: 10px; background: #faf8ff; }
.oca-rubric-component-weights > strong { color: var(--oca-purple); }
.oca-rubric-component-weights > small { color: var(--oca-muted); }
.oca-rubric-component-weights > div { display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: 8px; }
.oca-rubric-component-weights label { display: grid; grid-template-columns: minmax(0,1fr) 105px; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid #e2daf5; border-radius: 8px; background: #fff; }
.oca-rubric-component-weights label > span { display: grid; min-width: 0; }
.oca-rubric-component-weights label small { color: var(--oca-muted); }
.oca-rubric-criteria-list,
.oca-rubric-deduction-list { display: grid; gap: 9px; }
.oca-rubric-list-footer { display: flex; justify-content: flex-end; margin-top: 10px; }
.oca-rubric-criterion-row,
.oca-rubric-deduction-row { padding: 13px; border: 1px solid #d7e0ea; border-radius: 10px; background: #f8fafc; }
.oca-rubric-criterion-row.is-dragging,
.oca-rubric-deduction-row.is-dragging { opacity: 0.5; }
.oca-rubric-row-top { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.oca-rubric-row-top > .oca-rubric-drag { color: #59687c; cursor: grab; }
.oca-rubric-row-top > strong { flex: 1; color: var(--oca-purple); font-size: 10px; letter-spacing: 0.04em; text-transform: uppercase; }
.oca-rubric-row-top > div { display: flex; gap: 3px; }
.oca-rubric-row-top .oca-icon-button { width: 29px; height: 29px; }
.oca-rubric-criterion-row > .oca-toggle-row,
.oca-rubric-deduction-row > .oca-config-checks { margin-top: 11px; }
.oca-criterion-numeric-settings,
.oca-criterion-yes-no-settings,
.oca-criterion-rating-settings { margin-top: 11px; padding-top: 11px; border-top: 1px solid var(--oca-line); }
.oca-scoresheet-range-preview { display: grid; grid-template-columns: 150px 150px 1fr; align-items: center; gap: 8px; margin-top: 12px; padding: 11px; border: 1px solid #c7b7eb; border-radius: 10px; background: #f7f3ff; }
.oca-scoresheet-range-preview > span { display: flex; flex-direction: column; gap: 2px; }
.oca-scoresheet-range-preview small { color: #765da8; font-size: 8px; font-weight: 750; text-transform: uppercase; }
.oca-scoresheet-range-preview strong { color: var(--oca-purple); font-size: 18px; }
.oca-scoresheet-range-preview p { margin: 0; font-size: 9px; text-align: right; }
.oca-scoresheet-deduction-settings { margin-top: 14px; padding: 14px; border: 1px solid #d9e1ea; border-radius: 11px; background: #f8fafc; }
.oca-scoresheet-deductions-control { margin-bottom: 12px; }
.oca-inline-hint { display: flex; align-items: flex-start; gap: 7px; margin: 0 0 11px; padding: 9px 10px; border: 1px solid #c9ddf1; border-radius: 8px; background: #f3f8fd; color: #49657e; font-size: 9px; line-height: 1.45; }
.oca-inline-hint .dashicons { flex: 0 0 auto; width: 15px; height: 15px; color: var(--oca-sky-ink); font-size: 15px; }
.oca-config-checks { display: flex; gap: 12px; margin-top: 14px; }
.oca-adjustment-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.oca-check-card { display: flex; min-width: 0; align-items: flex-start; gap: 10px; padding: 11px 12px; border: 1px solid #cbd6e2; border-radius: 9px; background: #fff; cursor: pointer; }
.oca-check-card:hover { border-color: #9bc7ee; background: #f8fbff; }
.oca-check-card:focus-within { border-color: var(--oca-sky-ink); box-shadow: 0 0 0 3px rgba(23, 108, 178, 0.2); }
.oca-check-card > input[type="checkbox"] { position: static; width: 18px; height: 18px; margin: 1px 0 0; opacity: 1; accent-color: var(--oca-teal-ink); flex: 0 0 auto; }
.oca-check-card > span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.oca-check-card strong { color: var(--oca-navy); font-size: 10px; line-height: 1.25; }
.oca-check-card small { color: var(--oca-muted); font-size: 8px; line-height: 1.35; }
.oca-check-card:has(input:checked) { border-color: var(--oca-teal-ink); background: #f0fbfa; box-shadow: inset 3px 0 0 var(--oca-teal-ink); }
.oca-toggle-row { display: inline-flex; align-items: center; gap: 9px; margin: 0; cursor: pointer; }
.oca-toggle-row > input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.oca-toggle-row > span { position: relative; width: 37px; height: 21px; border-radius: 999px; background: #bdc8d4; transition: background 120ms ease; }
.oca-toggle-row > span::after { position: absolute; top: 3px; left: 3px; width: 15px; height: 15px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25); content: ''; transition: transform 120ms ease; }
.oca-toggle-row > input:checked + span { background: var(--oca-teal-ink); }
.oca-toggle-row > input:checked + span::after { transform: translateX(16px); }
.oca-toggle-row > input:focus + span { box-shadow: 0 0 0 3px rgba(23, 108, 178, 0.28); }
.oca-toggle-row strong { color: var(--oca-ink); font-size: 11px; }
.oca-penalty-settings { margin-top: 15px; }
.oca-penalty-settings[hidden],
.oca-best-n-field[hidden] { display: none; }
.oca-penalty-application { max-width: 310px; margin-bottom: 14px; }
.oca-penalty-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 8px; }
.oca-penalty-list-heading > div { display: flex; flex-direction: column; }
.oca-penalty-list-heading strong { color: var(--oca-navy); font-size: 12px; }
.oca-penalty-list-heading small { color: var(--oca-muted); font-size: 9px; }
.oca-penalty-list { display: grid; gap: 7px; }
.oca-penalty-row { display: grid; grid-template-columns: 24px minmax(180px, 1fr) minmax(130px, 0.55fr) 34px; align-items: end; gap: 9px; padding: 10px; border: 1px solid var(--oca-line); border-radius: 9px; background: #f8fafc; }
.oca-penalty-row > .dashicons { align-self: center; color: #59687c; cursor: grab; }
.oca-penalty-row .oca-icon-button { align-self: center; }
.oca-tiebreak-builder { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.oca-tiebreak-column { min-width: 0; padding: 12px; border: 1px solid var(--oca-line); border-radius: 10px; background: #f8fafc; }
.oca-tiebreak-column__heading { display: flex; margin-bottom: 9px; flex-direction: column; }
.oca-tiebreak-column__heading strong { color: var(--oca-navy); font-size: 11px; }
.oca-tiebreak-column__heading small { color: var(--oca-muted); font-size: 9px; }
.oca-tiebreak-bank,
.oca-tiebreak-order { display: grid; min-height: 58px; gap: 7px; }
.oca-tiebreak-order { padding: 5px; border: 1px dashed #b8c8da; border-radius: 8px; background: #fff; }
.oca-tiebreak-item { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 7px 8px; border: 1px solid #d3dce7; border-radius: 8px; background: #fff; cursor: grab; }
.oca-tiebreak-item > .dashicons { flex: 0 0 auto; color: #59687c; }
.oca-tiebreak-item > span:nth-of-type(2) { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.oca-tiebreak-item strong { color: var(--oca-navy); font-size: 10px; }
.oca-tiebreak-item small { color: var(--oca-muted); font-size: 8px; }
.oca-tiebreak-item button { min-height: 28px; border: 0; border-radius: 6px; background: #e9f4ff; color: #176bac; font-size: 9px; font-weight: 750; cursor: pointer; }
.oca-tiebreak-item > div { display: flex; gap: 2px; }
.oca-tiebreak-item > div button { display: grid; place-items: center; width: 27px; padding: 0; background: #edf1f6; color: #526780; }
.oca-tiebreak-item > div button:last-child { color: #ae3329; }
.oca-tiebreak-item.is-ordered { border-color: #b9a5e4; background: #f8f4ff; }
.oca-tiebreak-item.is-disabled { border-color: #cbd2db; background: #eef1f5; opacity: 1; cursor: not-allowed; }
.oca-tiebreak-item.is-disabled strong,
.oca-tiebreak-item.is-disabled small { color: #5f6b7a; }
.oca-tiebreak-empty { padding: 10px; color: var(--oca-muted); font-size: 9px; text-align: center; }
.oca-tiebreak-empty[hidden] { display: none; }
.oca-tie-note { display: flex; align-items: flex-start; gap: 9px; margin-top: 12px; padding: 10px 12px; border: 1px solid #f0d29b; border-radius: 9px; background: #fff9ef; }
.oca-tie-note > .dashicons { flex: 0 0 auto; color: var(--oca-orange-ink); }
.oca-tie-note p { margin: 0; color: #72532e; font-size: 10px; line-height: 1.45; }
.oca-score-treatment { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.oca-score-treatment label { position: relative; display: flex; min-height: 72px; align-items: center; padding: 12px; border: 1px solid var(--oca-line); border-radius: 10px; cursor: pointer; }
.oca-score-treatment label:has(input:checked) { border-color: var(--oca-teal-ink); background: #f0fbfa; }
.oca-score-treatment input { margin: 0 10px 0 0; }
.oca-score-treatment label span { display: flex; flex-direction: column; }
.oca-score-treatment strong { color: var(--oca-navy); font-size: 12px; }
.oca-score-treatment small { color: var(--oca-muted); font-size: 9px; }

/* Proficiency configuration */
.oca-stage-card:not(.is-proficiency) .oca-stage-proficiency-advance-note { display: none; }
.oca-stage-card.is-proficiency .oca-stage-advance-field { display: none; }
.oca-stage-card:not(.is-round-robin) .oca-stage-round-robin-note { display: none; }
.oca-stage-card.is-round-robin .oca-stage-advance-field { display: none; }
.oca-stage-card:not(.is-elimination) .oca-stage-elimination-note { display: none; }
.oca-stage-card.is-elimination .oca-stage-heat-field,
.oca-stage-card.is-elimination .oca-stage-advance-field,
.oca-stage-card.is-elimination .oca-stage-proficiency-advance-note { display: none; }
.oca-stage-card.is-elimination .oca-stage-fields { grid-template-columns: minmax(85px, .5fr) minmax(190px, 1.25fr) minmax(230px, 1.4fr) minmax(170px, .85fr); }
.oca-stage-elimination-note > div { display: flex; min-height: 37px; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid #bca9e7; border-radius: 7px; background: #f7f3ff; color: #5426a5; }
.oca-stage-elimination-note .dashicons { color: var(--oca-purple); }
.oca-stage-elimination-note strong { font-size: 10px; line-height: 1.3; }
.oca-stage-card:not(.is-pool-bracket) .oca-stage-pool-bracket-note { display: none; }
.oca-stage-card.is-pool-bracket .oca-stage-heat-field,
.oca-stage-card.is-pool-bracket .oca-stage-advance-field,
.oca-stage-card.is-pool-bracket .oca-stage-proficiency-advance-note,
.oca-stage-card.is-pool-bracket .oca-stage-round-robin-note,
.oca-stage-card.is-pool-bracket .oca-stage-elimination-note { display: none; }
.oca-stage-card.is-pool-bracket .oca-stage-fields { grid-template-columns: minmax(85px, .5fr) minmax(190px, 1.25fr) minmax(230px, 1.4fr) minmax(190px, .9fr); }
.oca-stage-pool-bracket-note > div { display: flex; min-height: 37px; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid #83cdc6; border-radius: 7px; background: linear-gradient(135deg, #eefbf9, #f3f7ff); color: #075f5a; }
.oca-stage-pool-bracket-note .dashicons { color: var(--oca-teal-ink); }
.oca-stage-pool-bracket-note strong { font-size: 10px; line-height: 1.3; }
.oca-stage-proficiency-advance-note > div { display: flex; min-height: 37px; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid #a8d8d3; border-radius: 7px; background: #f0fbfa; color: #075f5a; }
.oca-stage-proficiency-advance-note .dashicons { color: var(--oca-teal-ink); }
.oca-stage-proficiency-advance-note strong { font-size: 10px; line-height: 1.3; }
.oca-stage-round-robin-note > div { display: flex; min-height: 37px; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid #a9ccec; border-radius: 7px; background: #f1f8ff; color: #155c92; }
.oca-stage-round-robin-note .dashicons { color: var(--oca-sky); }
.oca-stage-round-robin-note strong { font-size: 10px; line-height: 1.3; }

/* Round Robin configuration */
.oca-round-robin-modal__dialog { width: min(1080px, 100%); }
.oca-round-robin-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 14px; overflow: hidden; border: 1px solid #c5d9ea; border-radius: 11px; background: linear-gradient(135deg, #f6fbff, #f4f1ff); }
.oca-round-robin-facts > span { display: flex; min-width: 0; min-height: 62px; justify-content: center; padding: 10px 13px; border-right: 1px solid #d9e5ef; flex-direction: column; }
.oca-round-robin-facts > span:last-child { border-right: 0; }
.oca-round-robin-facts small { color: #587087; font-size: 8px; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; }
.oca-round-robin-facts strong { margin-top: 3px; color: var(--oca-navy); font-size: 18px; }
.oca-round-robin-points-example { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 12px; margin-top: 13px; padding: 12px 14px; border: 1px solid #b9ddd8; border-radius: 10px; background: #f3fbfa; }
.oca-round-robin-points-example > span:not(.dashicons) { display: flex; min-width: 0; flex-direction: column; gap: 3px; color: #597168; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.oca-round-robin-points-example strong { color: var(--oca-navy); font-size: 11px; letter-spacing: 0; text-transform: none; }
.oca-round-robin-points-example > .dashicons { color: var(--oca-teal-ink); }
.oca-round-robin-advancement-preview { display: flex; align-items: center; gap: 10px; margin-top: 13px; padding: 11px 14px; border: 1px solid #c2b1e8; border-radius: 10px; background: #f8f5ff; }
.oca-round-robin-advancement-preview > .dashicons { color: var(--oca-purple); }
.oca-round-robin-advancement-preview > span:last-child { display: flex; flex-direction: column; gap: 2px; }
.oca-round-robin-advancement-preview small { color: #745daa; font-size: 8px; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; }
.oca-round-robin-advancement-preview strong { color: var(--oca-navy); font-size: 11px; }
.oca-round-robin-schedule { display: grid; gap: 7px; }
.oca-round-robin-round { overflow: hidden; border: 1px solid #d5e0eb; border-radius: 9px; background: #fff; }
.oca-round-robin-round > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; cursor: pointer; list-style: none; }
.oca-round-robin-round > summary::-webkit-details-marker { display: none; }
.oca-round-robin-round > summary > span:first-child { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-round-robin-round > summary strong { color: var(--oca-navy); font-size: 11px; }
.oca-round-robin-round > summary small { color: var(--oca-muted); font-size: 8px; }
.oca-round-robin-round > summary > .dashicons { color: var(--oca-sky); transition: transform .18s ease; }
.oca-round-robin-round[open] > summary > .dashicons { transform: rotate(180deg); }
.oca-round-robin-match-list { display: grid; gap: 6px; padding: 0 12px 12px; }
.oca-round-robin-match-list > div { display: grid; grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr); align-items: center; gap: 8px; min-height: 34px; padding: 5px 10px; border: 1px solid #e1e7ee; border-radius: 7px; background: #f8fafc; color: var(--oca-navy); font-size: 9px; font-weight: 700; }
.oca-round-robin-match-list > div span:last-child { text-align: right; }
.oca-round-robin-match-list > div strong { color: var(--oca-purple); font-size: 8px; text-align: center; text-transform: uppercase; }
.oca-round-robin-match-list > div.is-bye { grid-template-columns: minmax(0, 1fr) auto; border-color: #f0d6a3; background: #fffaf0; }
.oca-round-robin-match-list > div.is-bye strong { color: #8b5a0c; }
.oca-round-robin-more { display: flex; align-items: center; gap: 7px; margin-top: 9px; color: #5d6e83; font-size: 9px; }
.oca-round-robin-more .dashicons { color: var(--oca-purple); }
.oca-proficiency-scale-layout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr); gap: 16px; }
.oca-proficiency-levels { box-sizing: border-box; width: 100%; min-height: 174px; resize: vertical; }
.oca-proficiency-level-preview { padding: 14px 16px; border: 1px solid #c9d8e8; border-radius: 11px; background: linear-gradient(145deg, #f7fbff, #eef7ff); }
.oca-proficiency-level-preview > strong { display: block; margin-bottom: 9px; color: var(--oca-navy); font-size: 11px; }
.oca-proficiency-level-preview ol { display: grid; gap: 5px; margin: 0 0 10px 20px; color: var(--oca-navy); font-size: 10px; font-weight: 700; }
.oca-proficiency-level-preview li::marker { color: var(--oca-purple); font-weight: 800; }
.oca-proficiency-level-preview small { color: var(--oca-muted); font-size: 9px; line-height: 1.45; }
.oca-proficiency-source-summary { display: flex; align-items: flex-start; gap: 11px; margin-top: 14px; padding: 13px 15px; border: 1px solid #c9d8e8; border-radius: 10px; background: #f7faff; }
.oca-proficiency-source-summary > .dashicons { flex: 0 0 auto; color: var(--oca-sky-ink); }
.oca-proficiency-source-summary strong { color: var(--oca-navy); font-size: 11px; }
.oca-proficiency-source-summary p { margin: 3px 0 0; color: var(--oca-muted); font-size: 9px; line-height: 1.45; }
.oca-proficiency-assessment-builder { margin-top: 15px; }
.oca-proficiency-dimensions { margin-top: 16px; padding-top: 15px; border-top: 1px solid var(--oca-line); }
.oca-proficiency-dimensions-heading { margin-bottom: 12px; }
.oca-proficiency-dimension-list { display: grid; gap: 11px; margin: 0 0 11px; }
.oca-proficiency-dimension-row { display: grid; grid-template-columns: 46px minmax(0, 1fr); overflow: hidden; border: 1px solid #c8d6e5; border-radius: 12px; background: #fff; box-shadow: 0 3px 10px rgba(0, 29, 74, 0.035); transition: border-color 120ms ease, box-shadow 120ms ease, transform 120ms ease; }
.oca-proficiency-dimension-row:hover { border-color: #8faac6; box-shadow: 0 5px 15px rgba(0, 29, 74, 0.07); }
.oca-proficiency-dimension-row.is-dragging { opacity: .58; transform: scale(.995); }
.oca-proficiency-dimension-rail { display: flex; align-items: center; gap: 9px; padding: 11px 7px; border-right: 1px solid #d7e1ec; background: linear-gradient(180deg, #f5f9fd, #edf4fa); flex-direction: column; }
.oca-proficiency-dimension-index { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 8px; background: var(--oca-navy); color: #fff; font-size: 10px; font-weight: 800; }
.oca-proficiency-dimension-handle { width: 20px; height: 20px; color: #59687c; font-size: 20px; cursor: grab; }
.oca-proficiency-dimension-handle:active { cursor: grabbing; }
.oca-proficiency-dimension-main { min-width: 0; padding: 12px 13px 13px; }
.oca-proficiency-dimension-heading { display: flex; min-height: 33px; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 10px; padding-bottom: 9px; border-bottom: 1px solid #e3e9f0; }
.oca-proficiency-dimension-heading > div:first-child { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-proficiency-dimension-heading strong { color: var(--oca-navy); font-size: 11px; }
.oca-proficiency-dimension-heading small { color: var(--oca-muted); font-size: 8px; }
.oca-proficiency-dimension-fields { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(260px, 1.3fr); align-items: start; gap: 12px; }
.oca-proficiency-dimension-fields input { min-height: 42px; }
.oca-proficiency-dimension-fields textarea { box-sizing: border-box; width: 100%; min-height: 58px; resize: vertical; }
.oca-proficiency-dimension-actions { display: flex; flex: 0 0 auto; overflow: hidden; gap: 0; border: 1px solid #cbd6e2; border-radius: 8px; background: #fff; }
.oca-proficiency-dimension-actions .oca-icon-button { width: 34px; height: 32px; border: 0; border-right: 1px solid #dbe3ec; border-radius: 0; background: transparent; }
.oca-proficiency-dimension-actions .oca-icon-button:last-child { border-right: 0; }
.oca-proficiency-dimension-actions .oca-icon-button:hover { background: #edf5fc; }
.oca-proficiency-dimension-actions .oca-icon-button--danger:hover { background: #fff1ef; }
.oca-add-proficiency-dimension--footer { width: 100%; min-height: 43px; justify-content: center; border: 1px dashed #9db5ce; background: #f8fbff; color: var(--oca-navy); }
.oca-add-proficiency-dimension--footer:hover { border-color: var(--oca-sky-ink); background: #eef7ff; color: var(--oca-navy); }
.oca-proficiency-ballot-preview { overflow: hidden; border: 1px solid #cbd8e6; border-radius: 11px; background: #fff; }
.oca-proficiency-ballot-preview > div { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(170px, .65fr); align-items: center; gap: 14px; padding: 11px 13px; border-bottom: 1px solid #e2e8f0; }
.oca-proficiency-ballot-preview > div:last-child { border-bottom: 0; }
.oca-proficiency-ballot-preview > div:nth-child(even) { background: #f8fafc; }
.oca-proficiency-ballot-preview span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-proficiency-ballot-preview strong { color: var(--oca-navy); font-size: 11px; }
.oca-proficiency-ballot-preview small { color: var(--oca-muted); font-size: 9px; }
.oca-proficiency-ballot-preview select { width: 100%; min-height: 36px; opacity: 1; }
.oca-proficiency-ballot-preview > p { margin: 0; padding: 16px; color: var(--oca-muted); font-size: 10px; text-align: center; }
.oca-proficiency-no-ties > .dashicons { color: var(--oca-teal-ink); }
.oca-proficiency-source-summary[hidden],
.oca-proficiency-assessment-builder[hidden],
.oca-proficiency-overall-field[hidden],
.oca-proficiency-dimensions[hidden],
.oca-proficiency-threshold-field[hidden] { display: none; }

/* Event-wide elimination brackets */
.oca-elimination-modal__dialog {
	box-sizing: border-box;
	width: min(1120px, 100%);
}
.oca-elimination-form {
	display: flex;
	width: 100%;
	min-height: 0;
	flex: 1 1 0%;
	align-self: stretch;
	flex-direction: column;
	overflow: hidden;
}
.oca-elimination-form .oca-stage-config-scroll { min-height: 0; }
.oca-elimination-form .oca-event-modal-actions { position: relative; z-index: 2; width: 100%; box-sizing: border-box; }
.oca-bracket-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid #cad7e5; border-radius: 11px; background: linear-gradient(135deg, #f7fbff, #f6f2ff); }
.oca-bracket-facts > span { display: flex; min-width: 0; min-height: 64px; justify-content: center; padding: 11px 14px; border-right: 1px solid #dce4ed; flex-direction: column; }
.oca-bracket-facts > span:last-child { border-right: 0; }
.oca-bracket-facts small { color: #5d6f84; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.oca-bracket-facts strong { margin-top: 3px; color: var(--oca-navy); font-size: 19px; }
.oca-bracket-control-bar { display: flex; align-items: center; gap: 8px; margin-top: 14px; padding-top: 13px; border-top: 1px solid var(--oca-line); }
.oca-bracket-adjustment-note { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; color: #53667d; font-size: 9px; }
.oca-bracket-adjustment-note .dashicons { color: var(--oca-purple); }
.oca-bracket-preview { overflow: hidden; border: 1px solid #c6d5e5; border-radius: 12px; background: #f5f8fc; }
.oca-bracket-preview__heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 15px; border-bottom: 1px solid #d5e0eb; background: linear-gradient(100deg, var(--oca-navy), #123e75); }
.oca-bracket-preview__heading > div { display: flex; flex-direction: column; gap: 2px; }
.oca-bracket-preview__heading strong { color: #fff; font-size: 13px; }
.oca-bracket-preview__heading small { color: #cfe3f6; font-size: 9px; }
.oca-bracket-preview-status { color: #fff; font-size: 9px; font-weight: 750; }
.oca-opening-match-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 14px; }
.oca-opening-match { overflow: hidden; border: 1px solid #d1dce8; border-radius: 10px; background: #fff; box-shadow: 0 3px 10px rgba(0, 29, 74, .04); }
.oca-opening-match__heading { display: flex; align-items: center; justify-content: space-between; padding: 7px 10px; border-bottom: 1px solid #e3e9f0; background: #f7f9fc; color: #5a6d83; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.oca-bracket-slot { min-height: 54px; padding: 7px; border-bottom: 1px solid #e5eaf0; transition: background 120ms ease, box-shadow 120ms ease; }
.oca-bracket-slot:last-child { border-bottom: 0; }
.oca-bracket-slot.is-drop-target { background: #effaf8; box-shadow: inset 0 0 0 2px var(--oca-teal-ink); }
.oca-bracket-entry { display: grid; grid-template-columns: 33px minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 38px; padding: 5px 8px; border: 1px solid #bda9e8; border-radius: 8px; background: #f8f4ff; cursor: grab; }
.oca-bracket-entry.is-dragging { opacity: .45; }
.oca-bracket-seed { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 7px; background: var(--oca-purple); color: #fff; font-size: 9px; font-weight: 850; }
.oca-bracket-seed input { box-sizing: border-box; width: 27px !important; min-width: 0 !important; min-height: 27px !important; margin: 0 !important; padding: 0 2px !important; border: 0 !important; border-radius: 7px !important; background: var(--oca-purple) !important; color: #fff !important; font-size: 9px !important; font-weight: 850 !important; text-align: center; box-shadow: none !important; appearance: textfield; }
.oca-bracket-seed input::-webkit-inner-spin-button { margin: 0; appearance: none; }
.oca-bracket-entry-copy { display: flex; min-width: 0; flex-direction: column; gap: 1px; }
.oca-bracket-entry-copy strong { overflow: hidden; color: var(--oca-navy); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.oca-bracket-entry-copy small { color: #66788d; font-size: 8px; }
.oca-bracket-entry .dashicons { color: #6b7a8d; }
.oca-bracket-bye { display: flex; min-height: 38px; align-items: center; justify-content: center; gap: 6px; border: 1px dashed #b7c5d4; border-radius: 8px; background: #f8fafc; color: #63758a; font-size: 9px; font-weight: 800; }
.oca-bracket-bye .dashicons { color: var(--oca-teal-ink); }
.oca-opening-match.is-bye { border-color: #9ed8d2; }
.oca-opening-match.is-incomplete { border-color: #e1a39b; }
.oca-opening-match.is-incomplete .oca-bracket-bye { border-color: #e1a39b; background: #fff5f3; color: #9b3027; }
.oca-generated-rounds { overflow: hidden; border: 1px solid #ccd8e5; border-radius: 11px; background: #fff; }
.oca-generated-rounds__header,
.oca-generated-round { display: grid; grid-template-columns: minmax(220px, 1fr) 90px 90px 70px; align-items: center; }
.oca-generated-rounds__header { min-height: 34px; background: var(--oca-navy); color: #fff; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.oca-generated-rounds__header span,
.oca-generated-round > span,
.oca-generated-round > strong,
.oca-generated-round > label { padding: 8px 11px; border-right: 1px solid #e0e7ef; }
.oca-generated-rounds__header span:last-child,
.oca-generated-round > span:last-child { border-right: 0; }
.oca-generated-round { min-height: 48px; border-bottom: 1px solid #e0e7ef; }
.oca-generated-round:last-child { border-bottom: 0; }
.oca-generated-round:nth-child(odd) { background: #f8fafc; }
.oca-generated-round label input { box-sizing: border-box; width: 100%; min-height: 35px; margin: 0; }
.oca-generated-round > span { color: #344a63; font-size: 10px; font-weight: 750; text-align: center; }
.oca-generated-round > strong { color: var(--oca-navy); font-size: 10px; }
.oca-elimination-stage-summary { margin-top: 15px; padding-top: 14px; border-top: 1px solid var(--oca-line); }
.oca-elimination-stage-summary__heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 9px; }
.oca-elimination-stage-summary__heading > div { display: flex; align-items: center; gap: 9px; }
.oca-elimination-stage-summary__heading > div > .dashicons { color: var(--oca-purple); }
.oca-elimination-stage-summary__heading > div span { display: flex; flex-direction: column; gap: 2px; }
.oca-elimination-stage-summary__heading strong { color: var(--oca-navy); font-size: 11px; }
.oca-elimination-stage-summary__heading small { color: var(--oca-muted); font-size: 8px; }
.oca-lock-chip { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 999px; background: #fff4df; color: #8c5400; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.oca-lock-chip.is-locked { background: #e9f8f5; color: #087269; }
.oca-lock-chip .dashicons { width: 14px; height: 14px; font-size: 14px; }
.oca-generated-rounds--summary .oca-generated-round { grid-template-columns: minmax(220px, 1fr) 90px 90px 70px; }
.oca-elimination-seed-scope-field[hidden],
.oca-elimination-seed-count-field[hidden],
.oca-elimination-direction-field[hidden],
.oca-elimination-best-of-field[hidden],
.oca-elimination-preserve-tie[hidden] { display: none; }

/* Event-wide Pool / Group to Bracket tournaments */
.oca-pool-bracket-modal__dialog { box-sizing: border-box; width: min(1180px, 100%); }
.oca-pool-bracket-form .oca-event-modal-actions { position: relative; z-index: 2; box-sizing: border-box; width: 100%; }
.oca-pool-group-name-list,
.oca-pool-custom-qualifier-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; margin-top: 12px; }
.oca-pool-group-name-list input,
.oca-pool-custom-qualifier-list input { box-sizing: border-box; width: 100%; min-height: 40px; margin: 0; }
.oca-pool-group-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(225px, 1fr)); gap: 11px; margin-top: 13px; }
.oca-pool-group-card { min-width: 0; overflow: hidden; border: 1px solid #c8d7e6; border-radius: 11px; background: #f8fbff; transition: border-color 120ms ease, box-shadow 120ms ease; }
.oca-pool-group-card.is-drop-target { border-color: var(--oca-teal-ink); box-shadow: inset 0 0 0 2px rgba(0, 138, 130, .22); }
.oca-pool-group-card__heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px; border-bottom: 1px solid #d8e3ed; background: linear-gradient(105deg, var(--oca-navy), #154b83); }
.oca-pool-group-card__heading strong { overflow: hidden; color: #fff; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.oca-pool-group-card__heading span { flex: 0 0 auto; color: #cfe4f7; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.oca-pool-group-entry-list { display: grid; min-height: 64px; gap: 6px; padding: 9px; }
.oca-pool-group-entry { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 8px; min-height: 34px; padding: 6px 8px; border: 1px solid #d7e1eb; border-radius: 8px; background: #fff; }
.oca-pool-group-entry[draggable="true"] { cursor: grab; }
.oca-pool-group-entry.is-dragging { opacity: .45; }
.oca-pool-group-entry > .dashicons { color: var(--oca-purple); }
.oca-pool-group-entry > span:last-child { display: flex; min-width: 0; flex-direction: column; }
.oca-pool-group-entry strong { overflow: hidden; color: var(--oca-navy); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.oca-pool-group-entry small { color: var(--oca-muted); font-size: 8px; }
.oca-pool-balance-status,
.oca-pool-preview-status { margin-top: 10px; padding: 9px 11px; border: 1px solid #9ed8d2; border-radius: 8px; background: #f0fbfa; color: #075f5a; font-size: 9px; font-weight: 750; }
.oca-pool-balance-status.is-warning,
.oca-pool-preview-status.is-error { border-color: #efb0a8; background: #fff4f2; color: #9a2d23; }
.oca-stage-config-modal .oca-pool-manual-wildcard-note { margin: 12px 0 0; }
.oca-pool-subheading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 16px 0 10px; padding-top: 14px; border-top: 1px solid var(--oca-line); }
.oca-pool-subheading > div { display: flex; flex-direction: column; gap: 2px; }
.oca-pool-subheading strong { color: var(--oca-navy); font-size: 11px; }
.oca-pool-subheading small { color: var(--oca-muted); font-size: 8px; }
.oca-pool-qualification-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 14px; overflow: hidden; border: 1px solid #c5d9ea; border-radius: 11px; background: linear-gradient(135deg, #f5fbff, #f5f1ff); }
.oca-pool-qualification-facts > span { display: flex; min-width: 0; min-height: 61px; justify-content: center; padding: 10px 13px; border-right: 1px solid #dbe6ef; flex-direction: column; }
.oca-pool-qualification-facts > span:last-child { border-right: 0; }
.oca-pool-qualification-facts small { color: #587087; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.oca-pool-qualification-facts strong { margin-top: 2px; color: var(--oca-navy); font-size: 18px; }
.oca-pool-opening-match-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 14px; }
.oca-pool-opening-match-list .oca-opening-match.has-rematch { border-color: #efa79e; box-shadow: 0 0 0 2px rgba(252, 89, 72, .08); }
.oca-pool-rematch-status { color: #d5f3ef; font-size: 8px; font-weight: 800; text-align: right; }
.oca-pool-rematch-status.is-warning { color: #ffd4ce; }
.oca-pool-bracket-preview { margin-top: 12px; }
.oca-pool-bracket-stage-summary .oca-elimination-stage-summary__heading > div > .dashicons { color: var(--oca-teal-ink); }
.oca-pool-bracket-stage-summary .oca-lock-chip { background: #e9f8f5; color: #087269; }
.oca-pool-same-qualifier-field[hidden],
.oca-pool-custom-qualifier-list[hidden],
.oca-pool-wildcard-settings[hidden],
.oca-pool-wildcard-position-field[hidden],
.oca-pool-manual-wildcard-note[hidden],
.oca-pool-wildcard-rule-area[hidden],
.oca-pool-group-direction-field[hidden],
.oca-pool-draw-field[hidden],
.oca-pool-bonus-margin-field[hidden],
.oca-pool-bonus-points-field[hidden],
.oca-pool-bracket-direction-field[hidden],
.oca-pool-bracket-best-of-field[hidden],
.oca-pool-preserve-tie-field[hidden],
.oca-pool-single-options[hidden],
.oca-pool-double-options[hidden],
.oca-pool-groups-randomize[hidden],
.oca-pool-bracket-randomize[hidden] { display: none; }

/* Head-to-Head Battle and Team Match */
.oca-head-to-head-modal__dialog,
.oca-team-match-modal__dialog { box-sizing: border-box; width: min(1180px, 100%); }
.oca-head-to-head-form .oca-event-modal-actions,
.oca-team-match-form .oca-event-modal-actions { position: relative; z-index: 2; box-sizing: border-box; width: 100%; }
.oca-battle-pairing-list,
.oca-team-pairing-list { display: grid; gap: 9px; margin-top: 12px; }
.oca-battle-pairing,
.oca-team-pairing { display: grid; grid-template-columns: 34px minmax(150px, .8fr) minmax(180px, 1fr) 34px minmax(180px, 1fr); align-items: end; gap: 9px; padding: 11px; border: 1px solid #cad9e7; border-radius: 11px; background: #f8fbff; }
.oca-battle-pairing__number,
.oca-team-pairing__number { display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; align-self: center; border-radius: 9px; background: var(--oca-navy); color: #fff; font-size: 10px; font-weight: 900; }
.oca-battle-pairing label,
.oca-team-pairing label { display: flex; min-width: 0; gap: 5px; color: var(--oca-navy); font-size: 8px; font-weight: 800; flex-direction: column; text-transform: uppercase; }
.oca-battle-pairing input,
.oca-battle-pairing select,
.oca-team-pairing input,
.oca-team-pairing select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 41px; margin: 0; }
.oca-battle-versus { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; align-self: center; border-radius: 50%; background: #ede5ff; color: #5620b8; font-size: 8px; font-weight: 900; text-transform: uppercase; }
.oca-battle-unpaired,
.oca-team-unpaired { margin-top: 9px; padding: 8px 11px; border: 1px solid #b7dbd7; border-radius: 8px; background: #f1fbfa; color: #075f5a; font-size: 9px; font-weight: 750; }
.oca-battle-round-list,
.oca-team-component-list { display: grid; gap: 12px; }
.oca-battle-round,
.oca-team-component { display: grid; grid-template-columns: 46px minmax(0, 1fr); overflow: hidden; border: 1px solid #c7d6e5; border-radius: 12px; background: #fff; box-shadow: 0 7px 18px rgba(0, 29, 74, .045); }
.oca-battle-round__rail,
.oca-team-component__rail { display: flex; align-items: center; gap: 10px; padding: 13px 7px; background: linear-gradient(180deg, var(--oca-navy), #124a82); flex-direction: column; }
.oca-battle-round-index,
.oca-team-component-index { display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; border-radius: 8px; background: #fff; color: var(--oca-navy); font-size: 10px; font-weight: 900; }
.oca-battle-round-handle,
.oca-team-component-handle { color: #a8d9ff; cursor: grab; }
.oca-battle-round__body,
.oca-team-component__body { min-width: 0; padding: 13px; }
.oca-battle-round__heading,
.oca-team-component__heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 11px; }
.oca-battle-round__heading > strong,
.oca-team-component__heading > strong { color: var(--oca-navy); font-size: 11px; }
.oca-battle-round__heading > div,
.oca-team-component__heading > div { display: flex; gap: 5px; }
.oca-battle-order-panel { margin-top: 13px; padding: 0 13px 13px; border: 1px solid #d6caef; border-radius: 11px; background: #faf8ff; }
.oca-battle-order-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 7px; }
.oca-battle-order-entry { display: grid; grid-template-columns: 27px minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 7px; border: 1px solid #d9d0ee; border-radius: 8px; background: #fff; }
.oca-battle-order-entry > span { display: inline-flex; width: 25px; height: 25px; align-items: center; justify-content: center; border-radius: 7px; background: #ede5ff; color: #5620b8; font-size: 9px; font-weight: 900; }
.oca-battle-order-entry strong { overflow: hidden; color: var(--oca-navy); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.oca-battle-order-entry > div { display: flex; gap: 3px; }
.oca-battle-limits-panel { margin-top: 13px; padding: 0 13px 13px; border: 1px solid #c9d9e8; border-radius: 11px; background: linear-gradient(135deg, #f8fbff, #fbf9ff); }
.oca-battle-limit-grid { display: grid; gap: 9px; }
.oca-battle-limit-rule { display: grid; grid-template-columns: minmax(220px, 1.4fr) minmax(130px, .6fr) minmax(130px, .6fr); align-items: end; gap: 11px; padding: 11px 12px; border: 1px solid #d4dfeb; border-radius: 9px; background: #fff; transition: opacity 120ms ease, border-color 120ms ease; }
.oca-battle-limit-rule > div:first-child { display: flex; align-self: center; gap: 3px; flex-direction: column; }
.oca-battle-limit-rule > div:first-child strong { color: var(--oca-navy); font-size: 10px; }
.oca-battle-limit-rule > div:first-child small { color: var(--oca-muted); font-size: 8px; line-height: 1.4; }
.oca-battle-limit-rule .oca-field select,
.oca-battle-limit-rule .oca-field input { box-sizing: border-box; width: 100%; min-height: 40px; margin: 0; }
.oca-battle-limit-rule.is-disabled { border-color: #e0e5eb; background: #f6f8fa; }
.oca-battle-limit-rule.is-disabled > div:first-child { opacity: .7; }
.oca-team-contribution-note { margin-top: 10px; padding: 8px 10px; border-left: 3px solid var(--oca-sky); border-radius: 4px 8px 8px 4px; background: #f3f9ff; color: #38516a; font-size: 8px; }
.oca-team-lineup-list { display: grid; gap: 12px; margin-top: 12px; }
.oca-team-lineup-match { overflow: hidden; border: 1px solid #c9d8e6; border-radius: 12px; background: #fff; }
.oca-team-lineup-match > h4 { margin: 0; padding: 11px 13px; background: linear-gradient(105deg, var(--oca-navy), #154b83); color: #fff; font-size: 12px; }
.oca-team-lineup-component { padding: 12px 13px; border-top: 1px solid #dbe5ee; }
.oca-team-lineup-component:first-of-type { border-top: 0; }
.oca-team-lineup-component__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.oca-team-lineup-component__heading strong { color: var(--oca-navy); font-size: 10px; }
.oca-team-lineup-component__heading small { color: var(--oca-muted); font-size: 8px; }
.oca-team-lineup-sides { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.oca-team-lineup-side { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 8px; padding: 10px; border: 1px solid #d8e2ec; border-radius: 9px; background: #f8fbff; }
.oca-team-lineup-side > strong { grid-column: 1 / -1; color: var(--oca-navy); font-size: 10px; }
.oca-team-lineup-side label { display: flex; min-width: 0; gap: 4px; color: #465e75; font-size: 8px; font-weight: 800; flex-direction: column; }
.oca-team-lineup-side select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 39px; margin: 0; }
.oca-battle-round[hidden],
.oca-battle-add-round[hidden],
.oca-battle-best-of-field[hidden],
.oca-battle-early-completion[hidden],
.oca-battle-judge-mode-field[hidden],
.oca-battle-audience-mode-field[hidden],
.oca-battle-direction-field[hidden],
.oca-battle-unit-field[hidden],
.oca-battle-order-panel[hidden],
.oca-battle-challenger-method-field[hidden],
.oca-battle-limits-panel[hidden],
.oca-battle-manual-advance-field[hidden],
.oca-team-custom-member-count-field[hidden],
.oca-team-component-direction-field[hidden],
.oca-team-component-best-of-field[hidden],
.oca-team-component-judge-field[hidden],
.oca-team-component-audience-field[hidden],
.oca-team-component-points[hidden],
.oca-team-max-components-field[hidden] { display: none; }

/* Accessible native controls and keyboard focus across the plugin. */
.oca-compops input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.oca-compops select,
.oca-compops textarea { border-color: var(--oca-control-border); background-color: #fff; color: var(--oca-ink); }
.oca-compops input::placeholder,
.oca-compops textarea::placeholder { color: #5f6b7a; opacity: 1; }
.oca-compops input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):disabled,
.oca-compops select:disabled,
.oca-compops textarea:disabled { border-color: #aeb8c5; background-color: #e8ecf1; color: #5f6b7a; opacity: 1; }
.oca-compops .oca-bulk-grid input { border: 0; background: transparent; }
.oca-compops :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 2px solid #fff; outline-offset: 1px; box-shadow: 0 0 0 4px var(--oca-sky-ink) !important; }

/* Judges, officials, panels, and their shared Stage assignments. */
.oca-judges-hero__stats { display: flex; gap: 10px; }
.oca-judges-hero__stats > span { display: flex; min-width: 90px; padding: 13px 16px; border: 1px solid rgba(255,255,255,.24); border-radius: 13px; flex-direction: column; color: #dcecff; text-align: center; }
.oca-judges-hero__stats strong { color: #fff; font-size: 22px; line-height: 1; }
.oca-judges-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.oca-judges-steps a { display: grid; grid-template-columns: 38px minmax(0,1fr); column-gap: 11px; padding: 14px 16px; border: 1px solid var(--oca-line); border-radius: 14px; background: #fff; color: var(--oca-navy); text-decoration: none; }
.oca-judges-steps a:hover { border-color: var(--oca-sky-ink); box-shadow: 0 7px 18px rgba(0,29,74,.07); }
.oca-judges-steps a > span { grid-row: 1 / 3; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 11px; background: var(--oca-navy); color: #fff; font-weight: 800; }
.oca-judges-steps a strong { align-self: end; }
.oca-judges-steps a small { color: var(--oca-muted); }
.oca-judges-section { scroll-margin-top: 34px; }
.oca-judges-section + .oca-judges-section { margin-top: 22px; }
.oca-step-kicker { margin-bottom: 4px; color: var(--oca-purple); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.oca-official-add-form { margin-bottom: 22px; padding: 20px; border: 1px solid #cfe0ef; border-radius: 14px; background: #f7fbff; }
.oca-checkbox-card { display: flex; align-items: center; gap: 10px; min-height: 69px; padding: 12px 14px; border: 1px solid #c5d4e5; border-radius: 10px; background: #fff; }
.oca-checkbox-card input { margin: 0; }
.oca-checkbox-card span { display: flex; flex-direction: column; gap: 2px; }
.oca-checkbox-card small { color: var(--oca-muted); }
.oca-official-directory { display: grid; gap: 12px; }
.oca-official-card { display: grid; grid-template-columns: 52px minmax(180px,1fr) minmax(260px,1.2fr) auto; align-items: center; gap: 15px; padding: 15px; border: 1px solid var(--oca-line); border-radius: 14px; background: #fff; }
.oca-official-avatar img { display: block; border-radius: 50%; }
.oca-official-card__identity { display: flex; align-items: flex-start; flex-direction: column; gap: 3px; }
.oca-official-card__identity > strong { color: var(--oca-navy); font-size: 15px; }
.oca-official-card__identity > small { color: var(--oca-muted); }
.oca-role-badge,
.oca-head-judge-badge { display: inline-flex; align-items: center; gap: 4px; margin-top: 4px; padding: 3px 7px; border-radius: 999px; background: #eaf4ff; color: #07568f; font-size: 11px; font-weight: 800; }
.oca-head-judge-badge { background: #fff4cf; color: #7c4a00; }
.oca-head-judge-badge .dashicons { width: 14px; height: 14px; font-size: 14px; }
.oca-official-edit-form { display: grid; grid-template-columns: minmax(100px,145px) auto auto; align-items: end; gap: 10px; }
.oca-compact-toggle { display: flex; align-items: center; gap: 7px; min-height: 42px; color: var(--oca-navy); font-weight: 700; }
.oca-judge-shortcode { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; padding: 3px 7px; border-radius: 7px; background: #f0e9ff; color: #5b1eb6; font: 800 12px/1.25 ui-monospace, SFMono-Regular, Menlo, monospace; }
.oca-judging-panel-form { margin-top: 16px; padding: 18px; border: 1px solid #cfe0ef; border-radius: 15px; background: linear-gradient(145deg,#fff,#f8fbff); }
.oca-judging-panel-form.is-existing { border-left: 4px solid var(--oca-purple); }
.oca-panel-form-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.oca-panel-form-heading .oca-field { width: min(430px,100%); }
.oca-judging-panel-form fieldset { margin: 17px 0 0; padding: 0; border: 0; }
.oca-judging-panel-form legend { margin-bottom: 9px; color: var(--oca-navy); font-weight: 800; }
.oca-panel-judge-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; }
.oca-panel-judge-option { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 11px; border: 1px solid var(--oca-line); border-radius: 11px; background: #fff; }
.oca-panel-judge-option:has(input:checked) { border-color: var(--oca-purple); background: #faf7ff; box-shadow: inset 0 0 0 1px var(--oca-purple); }
.oca-panel-judge-option > span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.oca-panel-judge-option strong { display: flex; align-items: center; gap: 7px; color: var(--oca-navy); }
.oca-panel-judge-option small { color: var(--oca-muted); }
.oca-assignment-events { display: grid; gap: 14px; }
.oca-assignment-event { overflow: hidden; border: 1px solid var(--oca-line); border-radius: 15px; background: #fff; }
.oca-assignment-event > header { display: flex; align-items: center; gap: 11px; padding: 15px 17px; border-bottom: 1px solid var(--oca-line); background: #f7faff; }
.oca-assignment-event > header > .dashicons { color: var(--oca-purple); }
.oca-assignment-event h3 { margin: 0; color: var(--oca-navy); font-size: 15px; }
.oca-assignment-event p { margin: 3px 0 0; color: var(--oca-muted); }
.oca-assignment-stage-list { display: grid; }
.oca-assignment-stage { display: grid; grid-template-columns: minmax(170px,.65fr) minmax(260px,1.35fr); align-items: center; gap: 18px; padding: 13px 17px; }
.oca-assignment-stage + .oca-assignment-stage { border-top: 1px solid #e7edf4; }
.oca-assignment-stage > div { display: flex; flex-direction: column; }
.oca-assignment-stage small { color: var(--oca-muted); }
.oca-judging-assignment-select { width: 100%; max-width: none; }
.oca-assignment-stage.is-rubric-stage { align-items: end; padding: 18px; background: #fbfcff; }
.oca-assignment-stage.is-rubric-stage > .oca-rubric-judge-routing { grid-column: 1 / -1; display: block; width: 100%; margin-top: 2px; padding: 17px; border: 1px solid #cfdceb; border-radius: 14px; background: #fff; }
.oca-rubric-judge-routing.is-unavailable { display: flex !important; align-items: center; gap: 9px; color: #8a3e00; background: #fff9ef !important; }
.oca-rubric-judge-routing.is-unavailable p { margin: 0; }
.oca-rubric-judge-routing__heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 13px; }
.oca-rubric-judge-routing__heading > div { display: flex; align-items: center; gap: 9px; }
.oca-rubric-judge-routing__heading > div > .dashicons { color: var(--oca-purple); }
.oca-rubric-judge-routing__heading > div > span:last-child { display: flex; flex-direction: column; gap: 2px; }
.oca-routing-status { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; background: #fff2d9; color: #925000; font-size: 11px; font-weight: 800; }
.oca-routing-status.is-complete { background: #e3f7f4; color: #00675f; }
.oca-rubric-routing-empty { display: flex; align-items: center; gap: 8px; padding: 13px; border: 1px dashed #a9bed5; border-radius: 10px; background: #f6f9fc; color: #52677e; }
.oca-rubric-routing-empty[hidden] { display: none; }
.oca-rubric-judge-route-list { display: grid; gap: 10px; }
.oca-rubric-judge-route { display: grid; grid-template-columns: minmax(180px,.65fr) minmax(150px,.45fr) minmax(330px,1.4fr); align-items: start; gap: 14px; padding: 14px; border: 1px solid #d8e1eb; border-radius: 12px; background: #f9fbfd; }
.oca-rubric-judge-route[hidden] { display: none; }
.oca-rubric-judge-route.is-general { border-left: 4px solid var(--oca-sky-ink); }
.oca-rubric-judge-route.is-deduction { border-left: 4px solid var(--oca-orange); background: #fffaf3; }
.oca-rubric-route-judge { display: flex; align-items: center; gap: 9px; min-height: 42px; }
.oca-rubric-route-judge > span:last-child { display: flex; min-width: 0; flex-direction: column; }
.oca-rubric-route-judge strong { color: var(--oca-navy); }
.oca-rubric-route-duty { min-width: 0; }
.oca-rubric-route-label { display: block; margin-bottom: 6px; color: var(--oca-navy); font-weight: 800; }
.oca-rubric-route-score-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.oca-rubric-route-score { display: flex; align-items: flex-start; gap: 8px; min-width: 0; padding: 9px; border: 1px solid #cbd7e4; border-radius: 9px; background: #fff; cursor: pointer; }
.oca-rubric-route-score:has(input:checked) { border-color: var(--oca-purple); background: #f8f4ff; box-shadow: inset 0 0 0 1px var(--oca-purple); }
.oca-rubric-route-score input { flex: 0 0 auto; margin-top: 2px; }
.oca-rubric-route-score > span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-rubric-route-score strong { color: var(--oca-navy); }
.oca-rubric-route-score small { overflow-wrap: anywhere; }
.oca-rubric-route-scoresheets > .oca-help { display: block; margin-top: 6px; }
.oca-rubric-route-deduction { display: flex; align-items: center; gap: 9px; min-height: 56px; padding: 10px 12px; border: 1px solid #f1c78f; border-radius: 10px; background: #fff5e6; color: #7b4100; }
.oca-rubric-route-deduction > span:last-child { display: flex; flex-direction: column; }
.oca-rubric-route-unselected { display: flex; align-items: center; gap: 7px; min-height: 42px; color: var(--oca-muted); }
.oca-rubric-route-scoresheets[hidden],
.oca-rubric-route-deduction[hidden],
.oca-rubric-route-unselected[hidden] { display: none; }
.oca-rubric-raw-preview { display: flex; align-items: center; gap: 12px; margin-top: 13px; padding: 13px 15px; border: 1px solid #a9ddd8; border-radius: 11px; background: #effaf9; }
.oca-rubric-raw-preview > .dashicons { color: #007b72; }
.oca-rubric-raw-preview > div { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 3px 12px; width: 100%; }
.oca-rubric-raw-preview small { color: #31615d; font-weight: 800; text-transform: uppercase; }
.oca-rubric-raw-preview strong { color: #005f58; font-size: 20px; }
.oca-rubric-raw-preview p { grid-column: 1 / -1; margin: 0; color: #4b6967; font-size: 11px; }
.oca-rubric-judge-routing > .oca-inline-hint { margin-top: 10px; }
.oca-configured-judging { margin-top: 14px; padding: 15px; border: 1px solid #d7e5ef; border-radius: 13px; background: #f8fbfd; }
.oca-configured-judging__heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.oca-configured-judging__heading > div { display: flex; align-items: center; gap: 9px; }
.oca-configured-judging__heading > div > .dashicons { color: var(--oca-purple); }
.oca-configured-judging__heading > div > span:last-child { display: flex; flex-direction: column; }
.oca-configured-judging__heading small { color: var(--oca-muted); }
.oca-configured-judging__stages { display: grid; gap: 8px; }
.oca-configured-judging__stage { overflow: hidden; border: 1px solid #dbe4ee; border-radius: 11px; background: #fff; }
.oca-configured-judging__stages form { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 10px; }
.oca-configured-judging__stage > form { padding: 11px; }
.oca-configured-judging__stages label { display: grid; grid-template-columns: minmax(130px,.5fr) minmax(250px,1.5fr); align-items: center; gap: 10px; color: var(--oca-navy); font-weight: 800; }
.oca-configured-rubric-routing { padding: 11px; border-top: 1px solid #dbe4ee; background: #f8faff; }
.oca-configured-rubric-routing__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.oca-configured-rubric-routing__top > span:first-child { display: flex; flex-direction: column; }
.oca-configured-rubric-route-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; margin-top: 9px; }
.oca-configured-rubric-route-list > span { display: flex; min-width: 0; padding: 8px 9px; border: 1px solid #d6e1ec; border-radius: 8px; flex-direction: column; background: #fff; }
.oca-configured-rubric-route-list strong { overflow: hidden; color: var(--oca-navy); text-overflow: ellipsis; white-space: nowrap; }
.oca-configured-rubric-maximum { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 9px; padding-top: 8px; border-top: 1px solid #dbe4ee; color: #35615e; font-weight: 800; }
.oca-configured-rubric-maximum strong { color: #006a62; font-size: 17px; }

/* Master Schedule */
.oca-schedule-summary-action { display: inline-flex; align-items: center; justify-content: center; gap: 5px; min-height: 34px; padding: 7px 10px; border: 1px solid #b9cce2; border-radius: 9px; background: #fff; color: var(--oca-navy); cursor: pointer; font-size: 11px; font-weight: 800; text-decoration: none; }
.oca-schedule-summary-action:hover { border-color: var(--oca-sky-ink); color: var(--oca-navy); }
.oca-schedule-summary-action.is-scheduled { border-color: #a9ded7; background: #ecfaf8; color: #006b64; }
.oca-schedule-summary-action .dashicons { width: 15px; height: 15px; font-size: 15px; }
.oca-schedule-hero__stats { display: flex; gap: 10px; }
.oca-schedule-hero__stats > span { display: flex; min-width: 105px; padding: 13px 16px; border: 1px solid rgba(255,255,255,.24); border-radius: 13px; flex-direction: column; color: #dcecff; text-align: center; }
.oca-schedule-hero__stats strong { color: #fff; font-size: 22px; line-height: 1; }
.oca-schedule-add-panel { overflow: hidden; margin-bottom: 22px; }
.oca-schedule-add-panel > summary { display: flex; align-items: center; justify-content: space-between; padding: 17px 20px; cursor: pointer; list-style: none; }
.oca-schedule-add-panel > summary::-webkit-details-marker { display: none; }
.oca-schedule-add-panel > summary > span:first-child { display: flex; align-items: center; gap: 10px; }
.oca-schedule-add-panel > summary > span:first-child > .dashicons { color: var(--oca-sky-ink); }
.oca-schedule-add-panel > summary span span { display: flex; flex-direction: column; }
.oca-schedule-add-panel > summary small { color: var(--oca-muted); }
.oca-schedule-add-grid { display: grid; gap: 8px; padding: 0 20px 20px; }
.oca-schedule-add-grid form { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 11px 13px; border: 1px solid var(--oca-line); border-radius: 11px; background: #f9fbfd; }
.oca-schedule-add-grid form > span { display: flex; flex-direction: column; }
.oca-schedule-add-grid small { color: var(--oca-muted); }
.oca-master-schedule-panel { overflow: hidden; padding: 0; }
.oca-schedule-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 20px; border-bottom: 1px solid var(--oca-line); }
.oca-schedule-toolbar h2 { margin: 0; color: var(--oca-navy); font-size: 19px; }
.oca-schedule-toolbar p { margin: 4px 0 0; color: var(--oca-muted); }
.oca-schedule-view-controls,
.oca-schedule-view-controls form { display: flex; align-items: center; gap: 7px; }
.oca-schedule-view-controls input[type="date"] { width: 145px; min-height: 40px; }
.oca-small-count { display: inline-grid; place-items: center; min-width: 19px; height: 19px; margin-left: 3px; padding: 0 5px; border-radius: 999px; background: rgba(255,255,255,.2); font-size: 10px; }
.oca-schedule-scroll { max-height: 690px; overflow: auto; background: #eef3f8; scrollbar-gutter: stable; }
.oca-schedule-board { display: grid; align-items: stretch; min-width: calc(var(--oca-schedule-columns) * 480px); }
.oca-schedule-scroll.is-timed .oca-schedule-board { grid-template-columns: 76px repeat(var(--oca-schedule-columns), minmax(480px,1fr)); }
.oca-schedule-scroll.is-unscheduled .oca-schedule-board { grid-template-columns: repeat(var(--oca-schedule-columns), minmax(480px,1fr)); }
.oca-schedule-time-rail,
.oca-schedule-space-column { min-width: 0; border-right: 1px solid #cbd9e7; background: #fff; }
.oca-schedule-space-heading { position: sticky; top: 0; z-index: 8; display: flex; min-height: 62px; padding: 12px 14px; border-bottom: 1px solid #cbd9e7; background: rgba(255,255,255,.97); flex-direction: column; justify-content: center; box-shadow: 0 3px 8px rgba(0,29,74,.05); }
.oca-schedule-space-heading strong { color: var(--oca-navy); font-size: 14px; }
.oca-schedule-space-heading small { margin-top: 2px; color: var(--oca-muted); font-size: 10px; }
.oca-schedule-time-rail .oca-schedule-space-heading { align-items: center; padding-inline: 6px; text-align: center; }
.oca-schedule-time-scale,
.oca-schedule-scroll.is-timed .oca-schedule-column-body { position: relative; height: 5760px; }
.oca-schedule-time-scale { background: #f6f8fb; }
.oca-schedule-time-scale span { position: absolute; top: calc(var(--oca-hour) * 240px); right: 8px; color: #52627a; font-size: 10px; transform: translateY(-7px); }
.oca-schedule-scroll.is-timed .oca-schedule-column-body { background-color: #fff; background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 119px, #edf2f7 119px, #edf2f7 120px, transparent 120px, transparent 239px, #d5e0ea 239px, #d5e0ea 240px); }
.oca-schedule-scroll.is-unscheduled .oca-schedule-column-body { display: flex; min-height: 440px; padding: 10px; flex-direction: column; gap: 9px; background: #f7f9fc; }
.oca-schedule-item { position: relative; overflow: hidden; border: 1px solid #bacbe0; border-radius: 12px; background: #fff; box-shadow: 0 5px 14px rgba(0,29,74,.09); color: var(--oca-navy); }
.oca-schedule-scroll.is-timed .oca-schedule-item { position: absolute; z-index: 2; top: var(--oca-start-position); right: 8px; left: 8px; height: var(--oca-block-height); min-height: 100px; }
.oca-schedule-scroll.is-unscheduled .oca-schedule-item { flex: 0 0 var(--oca-block-height); min-height: 136px; }
.oca-schedule-item.is-dragging { z-index: 20; opacity: .58; box-shadow: 0 12px 28px rgba(0,29,74,.22); }
.oca-schedule-item__accent { position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--oca-sky-ink); }
.oca-schedule-item--rostered_team .oca-schedule-item__accent { background: var(--oca-purple); }
.oca-schedule-item--rosterless_team .oca-schedule-item__accent { background: var(--oca-pink); }
.oca-schedule-item__heading { display: grid; grid-template-columns: 22px minmax(0,1fr) auto 31px; align-items: center; gap: 7px; padding: 9px 9px 6px 13px; }
.oca-schedule-drag-handle { width: 20px; height: 20px; color: var(--oca-purple); cursor: grab; font-size: 20px; }
.oca-schedule-drag-handle:active { cursor: grabbing; }
.oca-schedule-item__heading > div { display: flex; min-width: 0; flex-direction: column; }
.oca-schedule-item__heading strong { overflow: hidden; color: var(--oca-navy); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.oca-schedule-item__heading small { overflow: hidden; color: var(--oca-muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.oca-whole-event-badge { padding: 3px 6px; border-radius: 999px; background: #eee7ff; color: #5c20b7; font-size: 8px; font-weight: 900; text-transform: uppercase; }
.oca-schedule-item__heading .oca-icon-button { width: 30px; height: 30px; min-height: 30px; }
.oca-schedule-item__timing { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr) minmax(0,.65fr) minmax(0,.7fr); align-items: end; gap: 8px; padding: 2px 12px 13px 43px; }
.oca-schedule-item__timing label,
.oca-schedule-end { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.oca-schedule-item__timing label > span,
.oca-schedule-end small { color: #52627a; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.oca-schedule-item__timing input { box-sizing: border-box; width: 100%; min-width: 0; min-height: 34px !important; height: 34px; padding: 4px 7px !important; border-radius: 7px !important; font-size: 11px !important; }
.oca-schedule-end { min-width: 0; }
.oca-schedule-end strong { display: flex; align-items: center; min-height: 34px; box-sizing: border-box; padding: 4px 8px; border: 1px solid #d5e0eb; border-radius: 7px; background: #f6f9fc; color: var(--oca-navy); font-size: 10px; white-space: nowrap; }
.oca-schedule-scroll.is-timed .oca-schedule-item__heading { padding: 6px 8px 3px 10px; }
.oca-schedule-scroll.is-timed .oca-schedule-item__timing { gap: 6px; padding: 0 8px 7px 34px; }
.oca-schedule-scroll.is-timed .oca-schedule-item__timing input { min-height: 30px !important; height: 30px; }
.oca-schedule-scroll.is-timed .oca-schedule-end strong { min-height: 30px; }
.oca-schedule-drop-placeholder { display: none; align-items: center; justify-content: center; min-height: 72px; border: 2px dashed #9db7d2; border-radius: 11px; color: #4b6380; font-weight: 800; }
.oca-schedule-scroll.is-unscheduled .oca-schedule-drop-placeholder:only-child,
.oca-schedule-scroll.is-unscheduled .oca-schedule-column-body:hover .oca-schedule-drop-placeholder { display: flex; }
.oca-schedule-scroll.is-timed .oca-schedule-drop-placeholder { position: absolute; inset: 10px 8px auto; z-index: 1; display: flex; opacity: 0; pointer-events: none; }
.oca-schedule-savebar { display: flex; align-items: center; gap: 16px; padding: 14px 18px; border-top: 1px solid var(--oca-line); background: #fff; }
.oca-schedule-savebar > div { display: flex; align-items: center; gap: 9px; margin-right: auto; }
.oca-schedule-savebar > div > .dashicons { color: var(--oca-sky-ink); }
.oca-schedule-savebar p { margin: 0; color: var(--oca-muted); }
.oca-schedule-save-status { color: #8b4c00; font-size: 11px; font-weight: 800; opacity: 0; }
.oca-schedule-save-status.is-visible { opacity: 1; }
.oca-master-schedule-panel + form[id^="oca-remove-schedule-item"],
form[id^="oca-remove-schedule-item"] { display: none; }

@media (max-width: 1180px) {
	.oca-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.oca-app-header { align-items: flex-start; }
	.oca-header-actions { align-items: flex-end; flex-direction: column-reverse; }
	.oca-wizard-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.oca-roster-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.oca-event-card { grid-template-columns: minmax(210px, 1.5fr) minmax(170px, 1fr) auto; }
	.oca-event-card__entries { display: none; }
	.oca-stage-fields { grid-template-columns: 90px 1fr 1fr; }
	.oca-stage-card.is-elimination .oca-stage-fields,
	.oca-stage-card.is-pool-bracket .oca-stage-fields { grid-template-columns: 90px 1fr 1fr; }
	.oca-stage-flow { grid-template-columns: 1fr; }
	.oca-stage-flow__track { justify-content: flex-start; }
	.oca-proficiency-dimension-fields { grid-template-columns: minmax(160px, .7fr) minmax(220px, 1.3fr); }
	.oca-official-card { grid-template-columns: 52px minmax(180px,1fr) auto; }
	.oca-official-edit-form { grid-column: 2 / 3; }
	.oca-panel-judge-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.oca-rubric-judge-route { grid-template-columns: minmax(170px,.65fr) minmax(140px,.45fr) minmax(250px,1.1fr); }
	.oca-rubric-route-score-grid { grid-template-columns: 1fr; }
	.oca-stage-event > summary { grid-template-columns: minmax(220px,1fr) minmax(170px,.7fr) auto; }
	.oca-stage-event__meta { flex-wrap: wrap; }
}

@media (max-width: 782px) {
	.oca-compops { margin-right: 10px; }
	.oca-app-header { flex-direction: column; padding: 20px; }
	.oca-header-actions { width: 100%; align-items: stretch; }
	.oca-competition-picker select { width: 100%; max-width: none; }
	.oca-main { padding: 18px; }
	.oca-section-nav { padding-inline: 10px; }
	.oca-detail-grid,
	.oca-form-grid { grid-template-columns: 1fr; }
	.oca-field--full { grid-column: auto; }
	.oca-hero-card,
	.oca-panel__heading,
	.oca-delete-form { align-items: stretch; flex-direction: column; }
	.oca-input-action { grid-template-columns: 1fr; }
	.oca-space-row { grid-template-columns: 36px minmax(0, 1fr); }
	.oca-space-row__actions { grid-column: 2; justify-content: flex-end; }
	.oca-form-actions { justify-content: stretch; }
	.oca-form-actions .oca-button { flex: 1; }
	.oca-wizard-steps,
	.oca-directory-stats { grid-template-columns: 1fr; }
	.oca-roster-heading,
	.oca-table-footer,
	.oca-next-step { align-items: stretch; flex-direction: column; }
	.oca-roster-tools { align-items: stretch; flex-direction: column; }
	.oca-roster-tools input { width: 100%; min-width: 0; }
	.oca-selected-count { text-align: left; }
	.oca-roster-grid { grid-template-columns: 1fr; }
	.oca-auto-number-controls { align-items: stretch; flex-direction: column; }
	.oca-segmented,
	.oca-selection-buttons { width: 100%; }
	.oca-segmented button,
	.oca-selection-buttons .oca-button { flex: 1; }
	.oca-starting-number input { width: 100%; }
	.oca-modal__actions { flex-direction: column-reverse; }
	.oca-event-type-options,
	.oca-event-entry-list { grid-template-columns: 1fr; }
	.oca-event-card { grid-template-columns: 1fr; gap: 12px; padding: 18px 18px 18px 25px; }
	.oca-event-card__schedule strong { white-space: normal; }
	.oca-event-card__entries { display: flex; align-items: flex-start; }
	.oca-event-card__actions { justify-content: flex-start; }
	.oca-event-entry-modal__dialog { max-height: 94vh; }
	.oca-event-entry-tools { align-items: stretch; flex-direction: column; }
	.oca-event-entry-tools > div { width: 100%; }
	.oca-event-entry-tools .oca-button { flex: 1; }
	.oca-event-selected-count { align-self: flex-start; }
	.oca-event-modal-actions { align-items: stretch; }
	.oca-event-no-entries { align-items: stretch; flex-direction: column; }
	.oca-stage-hero__stats,
	.oca-stage-event__meta,
	.oca-configured-summary__actions,
	.oca-stage-card__actions,
	.oca-config-checks { align-items: stretch; flex-direction: column; }
	.oca-stage-event > summary { grid-template-columns: 1fr; gap: 8px; }
	.oca-stage-event__pipeline { white-space: normal; }
	.oca-stage-event__meta { display: grid; grid-template-columns: repeat(3, 1fr); }
	.oca-stage-editor-heading,
	.oca-configured-summary,
	.oca-build-event,
	.oca-penalty-list-heading { align-items: stretch; flex-direction: column; }
	.oca-build-event form .oca-button { width: 100%; justify-content: center; }
	.oca-stage-fields,
	.oca-config-grid,
	.oca-tiebreak-builder,
	.oca-score-treatment { grid-template-columns: 1fr; }
	.oca-stage-card.is-pool-bracket .oca-stage-fields { grid-template-columns: 1fr; }
	.oca-round-robin-facts { grid-template-columns: 1fr 1fr; }
	.oca-round-robin-facts > span:nth-child(2) { border-right: 0; }
	.oca-round-robin-facts > span:nth-child(-n+2) { border-bottom: 1px solid #d9e5ef; }
	.oca-round-robin-points-example { grid-template-columns: 1fr; }
	.oca-round-robin-points-example > .dashicons { transform: rotate(90deg); }
	.oca-stage-legend { display: grid; grid-template-columns: 1fr 1fr; }
	.oca-stage-legend > span:not(.oca-stage-validation) { min-width: 0; border-bottom: 1px solid var(--oca-line); }
	.oca-stage-validation { margin-left: 0; }
	.oca-stage-delete { right: 13px; bottom: 13px; }
	.oca-stage-card__actions { padding-right: 42px; }
	.oca-penalty-row { grid-template-columns: 22px 1fr 34px; }
	.oca-penalty-row .oca-field:nth-of-type(2) { grid-column: 2 / 3; }
	.oca-stage-config-modal__dialog { height: 96vh; max-height: 96vh; }
	.oca-event-components-modal__dialog { max-height: 96vh; }
	.oca-component-row { grid-template-columns: 22px 1fr auto; }
	.oca-component-row .oca-field:nth-of-type(2) { grid-column: 2 / 3; }
	.oca-rubric-library-heading,
	.oca-rubric-subheading,
	.oca-rubric-library-card,
	.oca-rubric-formula { align-items: stretch; flex-direction: column; }
	.oca-rubric-library-card > div:last-child { justify-content: flex-start; }
	.oca-rubric-assignment { grid-template-columns: 1fr; }
	.oca-rubric-ballot-rules { grid-template-columns: 1fr; }
	.oca-adjustment-options { grid-template-columns: 1fr; }
	.oca-scoresheet-range-preview { grid-template-columns: 1fr 1fr; }
	.oca-scoresheet-range-preview p { grid-column: 1 / -1; text-align: left; }
	.oca-scoresheet-calculation-guide { grid-template-columns: 1fr; }
	.oca-scoresheet-calculation-guide > .dashicons { transform: rotate(90deg); }
	.oca-proficiency-scale-layout,
	.oca-proficiency-ballot-preview > div { grid-template-columns: 1fr; }
	.oca-proficiency-dimension-row { grid-template-columns: 40px minmax(0, 1fr); }
	.oca-proficiency-dimension-rail { padding-inline: 5px; }
	.oca-proficiency-dimension-fields { grid-template-columns: 1fr; }
	.oca-proficiency-dimension-heading { align-items: stretch; flex-direction: column; }
	.oca-proficiency-dimension-actions { align-self: flex-end; }
	.oca-bracket-facts { grid-template-columns: 1fr 1fr; }
	.oca-bracket-facts > span:nth-child(2) { border-right: 0; }
	.oca-bracket-facts > span:nth-child(-n+2) { border-bottom: 1px solid #dce4ed; }
	.oca-opening-match-list,
	.oca-pool-opening-match-list,
	.oca-pool-group-grid,
	.oca-pool-group-name-list,
	.oca-pool-custom-qualifier-list { grid-template-columns: 1fr; }
	.oca-pool-qualification-facts { grid-template-columns: 1fr 1fr; }
	.oca-pool-qualification-facts > span:nth-child(2) { border-right: 0; }
	.oca-pool-qualification-facts > span:nth-child(-n+2) { border-bottom: 1px solid #dbe6ef; }
	.oca-pool-rematch-status { text-align: left; }
	.oca-battle-pairing,
	.oca-team-pairing { grid-template-columns: 34px minmax(0, 1fr); align-items: center; }
	.oca-battle-pairing label,
	.oca-team-pairing label,
	.oca-battle-pairing select,
	.oca-team-pairing select { grid-column: 2; }
	.oca-battle-versus { grid-column: 2; margin-block: 2px; }
	.oca-battle-round,
	.oca-team-component { grid-template-columns: 38px minmax(0, 1fr); }
	.oca-battle-round__rail,
	.oca-team-component__rail { padding-inline: 5px; }
	.oca-battle-round__heading,
	.oca-team-component__heading,
	.oca-team-lineup-component__heading { align-items: stretch; flex-direction: column; }
	.oca-battle-round__heading > div,
	.oca-team-component__heading > div { align-self: flex-end; }
	.oca-battle-order-list,
	.oca-team-lineup-sides { grid-template-columns: 1fr; }
	.oca-battle-limit-rule { grid-template-columns: 1fr; align-items: stretch; }
	.oca-bracket-control-bar { align-items: stretch; flex-direction: column; }
	.oca-bracket-adjustment-note { margin-left: 0; }
	.oca-judges-hero__stats { width: 100%; }
	.oca-judges-hero__stats > span { flex: 1; }
	.oca-judges-steps { grid-template-columns: 1fr; }
	.oca-official-card { grid-template-columns: 48px minmax(0,1fr) auto; align-items: start; }
	.oca-official-edit-form { grid-column: 1 / -1; grid-template-columns: 1fr; }
	.oca-panel-form-heading { align-items: stretch; flex-direction: column; }
	.oca-panel-judge-grid { grid-template-columns: 1fr; }
	.oca-assignment-stage { grid-template-columns: 1fr; gap: 7px; }
	.oca-rubric-judge-routing__heading { align-items: flex-start; flex-direction: column; }
	.oca-rubric-judge-route { grid-template-columns: 1fr; }
	.oca-rubric-route-score-grid { grid-template-columns: 1fr; }
	.oca-rubric-raw-preview > div { grid-template-columns: 1fr; }
	.oca-rubric-raw-preview p { grid-column: auto; }
	.oca-configured-rubric-route-list { grid-template-columns: 1fr; }
	.oca-configured-judging__heading { align-items: flex-start; flex-direction: column; }
	.oca-configured-judging__stages form,
	.oca-configured-judging__stages label { grid-template-columns: 1fr; }
	.oca-schedule-hero__stats { width: 100%; }
	.oca-schedule-hero__stats > span { flex: 1; }
	.oca-schedule-toolbar { align-items: stretch; flex-direction: column; }
	.oca-schedule-view-controls { align-items: stretch; flex-wrap: wrap; }
	.oca-schedule-view-controls form { flex: 1 1 230px; }
	.oca-schedule-view-controls form input { flex: 1; }
	.oca-schedule-add-grid form { align-items: stretch; flex-direction: column; }
	.oca-schedule-savebar { align-items: stretch; flex-direction: column; }
	.oca-schedule-savebar > div { margin-right: 0; }
	.oca-schedule-end { display: none; }
	.oca-generated-rounds { overflow-x: auto; }
	.oca-generated-rounds__header,
	.oca-generated-round,
	.oca-generated-rounds--summary .oca-generated-round { min-width: 560px; }
}

/* Keep the records workspaces visually distinct after the shared hero rules. */
.oca-hero-card.oca-ballots-hero,
.oca-hero-card.oca-results-hero { background: linear-gradient(120deg, #001d4a 0%, #063f70 58%, #007d80 100%); color: #fff; }
.oca-hero-card.oca-ballots-hero h1,
.oca-hero-card.oca-ballots-hero p,
.oca-hero-card.oca-results-hero h1,
.oca-hero-card.oca-results-hero p { color: #fff; }

/* Selective public-results publishing and format-aware official records. */
.oca-public-results-link { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 18px; margin: 0 0 20px; padding: 18px 20px; border: 1px solid #a9d7dc; border-left: 6px solid #00b5ab; border-radius: 16px; background: linear-gradient(110deg, #f3fffd 0%, #f3f8ff 100%); box-shadow: 0 7px 22px rgba(0,29,74,.06); }
.oca-public-results-link__icon { display: grid; place-items: center; width: 54px; height: 54px; color: #fff; border-radius: 15px; background: linear-gradient(135deg, #7134dd, #ff3d8e); }
.oca-public-results-link__icon .dashicons { width: 26px; height: 26px; font-size: 26px; }
.oca-public-results-link strong { display: block; color: #001d4a; font-size: 18px; }
.oca-public-results-link p { margin: 4px 0 7px; color: #506985; }
.oca-public-results-link a:not(.oca-button) { display: inline-block; max-width: 100%; overflow: hidden; color: #5f27c9; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.oca-public-results-link__actions, .oca-official-result-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.oca-record-stage > summary { grid-template-columns: auto minmax(220px,1fr) minmax(150px,.5fr) auto auto; }
.oca-publication-pill { display: inline-flex; justify-content: center; padding: 7px 10px; border: 1px solid; border-radius: 999px; white-space: nowrap; font-size: 11px; font-weight: 850; }
.oca-publication-pill.is-published { color: #00665f; border-color: #7fd9d1; background: #ddfaf6; }
.oca-publication-pill.is-private { color: #60738b; border-color: #cbd9e8; background: #f2f6fa; }
.oca-stage-publication-form { margin: 0; }
.oca-official-results-table.is-match-results th { color: #fff; background: #001d4a; }
.oca-official-results-table.is-match-results tbody > tr:not(.oca-official-component-row):nth-child(4n+3) { background: #f5f9fc; }

@media (max-width: 900px) {
	.oca-public-results-link { grid-template-columns: 48px 1fr; }
	.oca-public-results-link__icon { width: 48px; height: 48px; }
	.oca-public-results-link__actions { grid-column: 1 / -1; }
	.oca-record-stage > summary { grid-template-columns: auto 1fr; }
	.oca-record-stage > summary > :nth-child(n+3) { grid-column: 2; justify-self: start; }
	.oca-official-result-actions { width: 100%; }
}

@media (max-width: 600px) {
	.oca-public-results-link { grid-template-columns: 1fr; padding: 15px; }
	.oca-public-results-link__icon { display: none; }
	.oca-public-results-link__actions { grid-column: 1; align-items: stretch; flex-direction: column; }
	.oca-public-results-link__actions .oca-button { justify-content: center; width: 100%; }
	.oca-official-result-actions, .oca-official-result-actions .oca-report-links, .oca-stage-publication-form, .oca-stage-publication-form .oca-button { width: 100%; }
}
/* Operations management: Heat editing, Entry Lookup, enforcement, and Print Center. */
.oca-operations-unit{grid-template-columns:auto minmax(260px,1fr) auto auto auto auto;gap:14px}
.oca-edit-heat-button{white-space:nowrap}
.oca-heat-editor-modal .oca-operational-modal__dialog,.oca-entry-record-modal .oca-operational-modal__dialog{width:min(1240px,calc(100vw - 42px))}
.oca-heat-roster-editor,.oca-heat-history,.oca-entry-record-section{background:#fff;border:1px solid #cbdbea;border-radius:18px;padding:22px;margin-bottom:20px}
.oca-heat-roster-editor>header,.oca-heat-history>header,.oca-entry-record-section>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.oca-heat-roster-editor>header>div,.oca-heat-history>header>div{display:flex;align-items:center;gap:12px}.oca-heat-roster-editor h3,.oca-heat-history h3,.oca-entry-record-section h3{margin:0;color:#001d4a}.oca-heat-roster-editor p,.oca-heat-history p,.oca-entry-record-section p{margin:4px 0 0;color:#526b88}
.oca-heat-roster-list{display:grid;gap:10px}.oca-heat-roster-entry{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2fr);gap:16px;align-items:center;padding:14px;border:1px solid #d7e4f0;border-radius:14px;background:#fafdff}.oca-heat-roster-entry.is-scratched{background:#fff7f5;border-color:#f5b4ac}.oca-heat-roster-entry.is-scratched>div:first-child strong{text-decoration:line-through;color:#8b4a43}.oca-heat-roster-entry>div:first-child{display:flex;flex-direction:column;gap:3px}.oca-heat-roster-entry small{color:#60738c}
.oca-heat-entry-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.oca-heat-entry-actions form{display:flex;align-items:center;gap:7px;margin:0}.oca-heat-entry-actions input[type=text],.oca-heat-entry-actions select{min-width:150px}.oca-component-scratch-menu,.oca-enforcement-menu{position:relative}.oca-component-scratch-menu>summary,.oca-enforcement-menu>summary{cursor:pointer;border:1px solid #bfd1e3;border-radius:8px;padding:9px 11px;font-weight:700;color:#001d4a;background:#fff}.oca-component-scratch-menu[open],.oca-enforcement-menu[open]{width:100%;padding:10px;background:#f1f7fc;border-radius:12px}.oca-component-scratch-menu form{display:inline-block;margin:4px}.oca-component-scratch-menu button{border:1px solid #bfd1e3;background:#fff;border-radius:7px;padding:7px 9px;cursor:pointer}.oca-enforcement-menu form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-top:9px}.oca-enforcement-menu textarea{grid-column:1/3}
.oca-heat-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:20px}.oca-heat-tool-grid>article{background:#f4f9fd;border:1px solid #c7dced;border-radius:16px;padding:18px}.oca-heat-tool-grid>article>.dashicons{color:#7134dd;font-size:28px;width:28px;height:28px}.oca-heat-tool-grid h3{margin:10px 0;color:#001d4a}.oca-heat-tool-grid form{display:grid;gap:10px}.oca-heat-tool-grid label{display:grid;gap:5px;font-weight:700;color:#001d4a}
.oca-stage-heat-layout{background:linear-gradient(135deg,#f5fbff 0%,#f8f5ff 100%);border:1px solid #bfd6e9;border-radius:18px;padding:22px;margin-bottom:20px}.oca-stage-heat-layout>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.oca-stage-heat-layout>header>div{display:flex;align-items:flex-start;gap:12px}.oca-stage-heat-layout>header .dashicons{color:#7134dd;font-size:27px;width:27px;height:27px}.oca-stage-heat-layout h3{margin:0;color:#001d4a}.oca-stage-heat-layout p{margin:4px 0 0;color:#526b88}.oca-stage-heat-layout-form{margin:0}.oca-stage-heat-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:14px;overflow-x:auto;padding:2px 2px 12px;scroll-snap-type:x proximity}.oca-stage-heat-column{display:flex;flex-direction:column;min-height:220px;border:1px solid #bfd3e5;border-radius:15px;background:#fff;overflow:hidden;scroll-snap-align:start}.oca-stage-heat-column>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:#001d4a;color:#fff}.oca-stage-heat-column>header strong{font-size:14px}.oca-stage-heat-column>header span{display:grid;place-items:center;min-width:27px;height:27px;padding:0 7px;border-radius:99px;background:rgba(255,255,255,.16);font-weight:800}.oca-stage-heat-dropzone{display:grid;align-content:start;gap:9px;flex:1;min-height:160px;padding:12px;transition:background-color .16s,box-shadow .16s}.oca-stage-heat-dropzone:empty::before{content:'Drop Entries Here';display:grid;place-items:center;min-height:130px;border:2px dashed #b9cde0;border-radius:12px;color:#69809b;font-weight:700}.oca-stage-heat-dropzone.is-drop-target{background:#eafbf8;box-shadow:inset 0 0 0 2px #00b5ab}.oca-stage-heat-entry{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:11px;border:1px solid #d1dfeb;border-radius:11px;background:#fff;box-shadow:0 4px 12px rgba(0,29,74,.06);cursor:grab}.oca-stage-heat-entry:active{cursor:grabbing}.oca-stage-heat-entry>.dashicons{color:#7134dd}.oca-stage-heat-entry>div{display:flex;min-width:0;flex-direction:column;gap:3px}.oca-stage-heat-entry strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#001d4a}.oca-stage-heat-entry small{color:#a13b31}.oca-stage-heat-entry label{grid-column:2}.oca-stage-heat-entry select{width:100%;max-width:none;font-size:12px}.oca-stage-heat-entry.is-scratched strong{text-decoration:line-through;color:#8b4a43}.oca-stage-heat-entry.is-dragging{opacity:.42;transform:scale(.98)}.oca-stage-heat-board.is-locked .oca-stage-heat-entry{cursor:default}.oca-stage-heat-layout .oca-form-actions{padding-top:14px}.oca-stage-heat-layout .oca-inline-notice{margin-bottom:14px}
.oca-heat-history>article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid #e0e9f2}.oca-heat-history>article>div{display:flex;flex-direction:column}.oca-scratch-banner{display:flex;gap:12px;padding:13px 15px;border:1px solid #f3a398;border-radius:12px;background:#fff5f2;color:#8f2418;margin:0 0 14px}.oca-scratch-banner>div{display:flex;flex-direction:column;gap:4px}
.oca-entry-lookup-hero .oca-lookup-hero__count{display:flex;flex-direction:column;align-items:center;min-width:110px;padding:16px 22px;border:1px solid rgba(255,255,255,.28);border-radius:16px;background:rgba(255,255,255,.1)}.oca-lookup-hero__count strong{font-size:30px}.oca-global-entry-search{display:flex;gap:10px;margin:20px 0;padding:16px;background:#fff;border:1px solid #cbdbea;border-radius:16px}.oca-global-entry-search label{display:flex;align-items:center;gap:10px;flex:1}.oca-global-entry-search label .dashicons{color:#319cf9}.oca-global-entry-search input{width:100%;min-height:46px;border:0!important;box-shadow:none!important;font-size:16px}.oca-entry-search-results{background:#fff;border:1px solid #cbdbea;border-radius:18px;overflow:hidden}.oca-entry-search-results>header{display:flex;justify-content:space-between;padding:17px 20px;background:#f2f8fc;color:#001d4a}.oca-entry-search-results>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1px;background:#d8e4ef}.oca-entry-search-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px;background:#fff;color:#001d4a;text-decoration:none}.oca-entry-search-card:hover{background:#f2fbfa}.oca-entry-search-card__number{display:grid;place-items:center;width:58px;height:48px;border-radius:12px;background:#e7f4ff;color:#0064bd;font-weight:800}.oca-entry-search-card>span:nth-child(2){display:flex;flex-direction:column}.oca-entry-search-card small,.oca-entry-search-card em{color:#60738c;font-size:12px}.oca-entry-search-card em{font-style:normal;margin-top:3px}
.oca-entry-record-toolbar{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:18px}.oca-entry-members{display:flex;flex-wrap:wrap;gap:9px}.oca-entry-members>span{display:flex;flex-direction:column;padding:11px 14px;border:1px solid #cbdbea;border-radius:11px;background:#f6faff}.oca-entry-registration-list{display:grid;gap:9px}.oca-entry-registration-list>article{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(150px,1fr) auto auto;gap:14px;align-items:center;padding:13px;border:1px solid #dae6f0;border-radius:12px}.oca-entry-registration-list>article>span{display:flex;flex-direction:column}.oca-entry-registration-list small{color:#60738c}.oca-entry-enforcement-controls>form{display:grid;grid-template-columns:1fr 1fr 1.5fr auto;gap:10px;align-items:start}.oca-entry-enforcement-history{margin-top:18px;border-top:1px solid #dbe6ef}.oca-entry-enforcement-history>article{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(280px,auto);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #e5edf4}.oca-entry-enforcement-history>article>span:first-child{display:flex;flex-direction:column}.oca-entry-enforcement-history form{display:flex;gap:7px}
.oca-enforcement-table{border:1px solid #d3e0ec;border-radius:14px;overflow:hidden}.oca-enforcement-table__head,.oca-enforcement-table>article{display:grid;grid-template-columns:1.2fr 1.1fr 1.5fr .8fr 1.4fr;gap:12px;align-items:center;padding:13px 15px}.oca-enforcement-table__head{background:#001d4a;color:#fff;font-weight:800}.oca-enforcement-table>article{border-top:1px solid #dce6ef}.oca-enforcement-table>article.is-restored{opacity:.67;background:#f5f8fa}.oca-enforcement-table>article>span{display:flex;flex-direction:column;gap:3px}.oca-enforcement-table small{color:#60738c}.oca-enforcement-table form{display:flex;flex-wrap:wrap;gap:7px}.oca-enforcement-table input{min-width:150px}
.oca-print-center-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.oca-print-center-card{background:#fff;border:1px solid #cbdbea;border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(0,29,74,.05)}.oca-print-center-card>header{display:flex;gap:14px;margin-bottom:18px}.oca-print-center-card>header>.dashicons{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#e9f5ff;color:#0d80e8;font-size:24px}.oca-print-center-card h2{margin:0;color:#001d4a}.oca-print-center-card p{margin:5px 0 0;color:#526b88}.oca-print-card-actions{display:flex;gap:8px;flex-wrap:wrap}.oca-print-builder{display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,.5fr) auto;gap:10px;align-items:end}.oca-print-builder label{display:grid;gap:6px;font-weight:700;color:#001d4a}.oca-print-center-card--archive{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;background:linear-gradient(135deg,#001d4a,#087e8b);color:#fff}.oca-print-center-card--archive header{margin:0}.oca-print-center-card--archive h2,.oca-print-center-card--archive p{color:#fff}.oca-print-center-card--archive>header>.dashicons{background:rgba(255,255,255,.14);color:#fff}
@media(max-width:1100px){.oca-operations-unit{grid-template-columns:auto minmax(220px,1fr) auto auto}.oca-operations-unit .oca-edit-heat-button{grid-column:3}.oca-heat-tool-grid{grid-template-columns:1fr}.oca-enforcement-table__head{display:none}.oca-enforcement-table>article{grid-template-columns:1fr 1fr}.oca-entry-enforcement-controls>form{grid-template-columns:1fr 1fr}.oca-entry-enforcement-controls>form textarea{grid-column:1/-1}.oca-print-center-grid{grid-template-columns:1fr}.oca-print-center-card--archive{grid-column:auto}}
@media(max-width:782px){.oca-operations-unit{grid-template-columns:auto 1fr}.oca-operations-unit>*:not(.oca-operations-unit__icon):not(.oca-operations-unit__identity){grid-column:2}.oca-heat-editor-modal .oca-operational-modal__dialog,.oca-entry-record-modal .oca-operational-modal__dialog{width:100vw}.oca-stage-heat-layout{padding:15px}.oca-stage-heat-layout>header{align-items:flex-start;flex-direction:column}.oca-stage-heat-board{grid-auto-columns:minmax(250px,85vw)}.oca-stage-heat-entry{grid-template-columns:auto minmax(0,1fr)}.oca-stage-heat-entry label{grid-column:1/-1}.oca-heat-roster-entry{grid-template-columns:1fr}.oca-heat-entry-actions,.oca-heat-entry-actions form{justify-content:flex-start;width:100%}.oca-heat-entry-actions form{flex-wrap:wrap}.oca-heat-entry-actions input,.oca-heat-entry-actions select{flex:1}.oca-enforcement-menu form{grid-template-columns:1fr}.oca-enforcement-menu textarea{grid-column:auto}.oca-global-entry-search{flex-direction:column}.oca-entry-search-results>div{grid-template-columns:1fr}.oca-entry-registration-list>article{grid-template-columns:1fr}.oca-entry-enforcement-controls>form,.oca-entry-enforcement-history>article,.oca-enforcement-table>article,.oca-print-builder,.oca-print-center-card--archive{grid-template-columns:1fr}.oca-entry-enforcement-history form,.oca-enforcement-table form{flex-direction:column}.oca-print-center-card--archive{justify-items:start}}

/* OCA identity refresh: geometric, bold, clear, and inclusive. */
.oca-app-header::before{position:absolute;right:0;bottom:0;left:0;height:6px;background:linear-gradient(90deg,var(--oca-coral) 0 11%,var(--oca-teal) 11% 23%,var(--oca-sky) 23% 35%,var(--oca-purple) 35% 47%,var(--oca-pink) 47% 59%,var(--oca-orange) 59% 71%,var(--oca-yellow) 71% 83%,var(--oca-lime) 83% 100%);content:""}.oca-app-header{min-height:116px;background:radial-gradient(circle at 82% 20%,rgba(0,181,171,.25),transparent 24%),linear-gradient(118deg,#001d4a 0%,#063d77 62%,#0d5b8e 100%)}.oca-app-header::after{border-color:rgba(113,52,221,.2)}
.oca-brand__identity{display:grid;place-items:center;flex:0 0 auto;width:184px;height:64px;padding:7px 10px;border:1px solid rgba(255,255,255,.38);border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 10px 26px rgba(0,17,45,.18)}.oca-brand__logo{display:block;width:100%;height:100%;object-fit:contain}.oca-brand__icon{display:none;width:100%;height:100%;object-fit:contain}.oca-brand__name{font-size:27px}.oca-brand__tagline{color:rgba(255,255,255,.82);font-weight:650;letter-spacing:.01em}
.oca-main{background:radial-gradient(circle at 100% 0,rgba(49,156,249,.08),transparent 25%),radial-gradient(circle at 0 30%,rgba(113,52,221,.045),transparent 22%),#f4f7fb}
.oca-section-nav-shell{border-top:0}.oca-section-nav a{position:relative}.oca-section-nav a .dashicons{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#edf5ff;color:var(--oca-sky-ink);font-size:16px;transition:transform .15s,background-color .15s,color .15s}.oca-section-nav a:nth-child(4n+2) .dashicons{background:#e8faf7;color:var(--oca-teal-ink)}.oca-section-nav a:nth-child(4n+3) .dashicons{background:#f1eaff;color:var(--oca-purple)}.oca-section-nav a:nth-child(4n+4) .dashicons{background:#fff0f6;color:var(--oca-pink-ink)}.oca-section-nav a:hover .dashicons,.oca-section-nav a:focus .dashicons{transform:translateY(-1px)}.oca-section-nav a.is-active .dashicons{background:var(--oca-navy);color:#fff}.oca-section-nav a.is-active{border-bottom-color:var(--oca-teal);font-weight:800}
.oca-hero-card{position:relative;border-color:#c6dded;background:radial-gradient(circle at 90% 10%,rgba(0,181,171,.15),transparent 24%),linear-gradient(132deg,#fff 0%,#f1f9ff 62%,#f8f4ff 100%);box-shadow:0 13px 32px rgba(0,29,74,.09)}.oca-hero-card::after{position:absolute;right:-42px;bottom:-72px;width:180px;height:180px;border:28px solid rgba(245,45,124,.08);border-radius:50%;content:"";pointer-events:none}.oca-hero-card>*,.oca-panel>*{position:relative;z-index:1}.oca-eyebrow{color:#6122d0;font-weight:900}.oca-panel{position:relative;border-color:#ceddea;border-radius:17px;box-shadow:0 8px 22px rgba(0,29,74,.055)}.oca-panel::before{position:absolute;top:-1px;right:18px;left:18px;height:3px;border-radius:0 0 5px 5px;background:linear-gradient(90deg,var(--oca-teal),var(--oca-sky),var(--oca-purple),var(--oca-pink));content:""}.oca-panel__heading h2{font-size:20px}.oca-detail-card{border-color:#ccdae8;box-shadow:0 7px 20px rgba(0,29,74,.055);transition:transform .15s,box-shadow .15s}.oca-detail-card:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(0,29,74,.09)}
.oca-hero-card:is(.oca-stage-hero,.oca-operations-hero,.oca-judges-hero,.oca-schedule-hero){border-color:#0b5d91;background:radial-gradient(circle at 88% 12%,rgba(0,181,171,.3),transparent 27%),linear-gradient(125deg,#001d4a 0%,#073f75 58%,#007a83 100%);color:#fff}.oca-hero-card:is(.oca-stage-hero,.oca-operations-hero,.oca-judges-hero,.oca-schedule-hero) h1{color:#fff}.oca-hero-card:is(.oca-stage-hero,.oca-operations-hero,.oca-judges-hero,.oca-schedule-hero) p{color:#dcecff}.oca-hero-card:is(.oca-stage-hero,.oca-operations-hero,.oca-judges-hero,.oca-schedule-hero) .oca-eyebrow{color:#75fff0}.oca-hero-card:is(.oca-stage-hero,.oca-operations-hero,.oca-judges-hero,.oca-schedule-hero)::after{border-color:rgba(255,207,0,.16)}
.oca-button{border-radius:10px;font-weight:750}.oca-button--primary{border-color:#00265f;background:linear-gradient(135deg,#001d4a,#075b9d);box-shadow:0 5px 13px rgba(0,29,74,.15)}.oca-button--primary:hover,.oca-button--primary:focus{border-color:#004f8d;background:linear-gradient(135deg,#06396f,#0878bc)}.oca-button--secondary{border-color:#b9cee1;background:linear-gradient(#fff,#f8fbff)}.oca-button--secondary:hover,.oca-button--secondary:focus{border-color:var(--oca-sky);background:#eef8ff}.oca-button--warning{border-color:#f4b550;background:#fff6e5}.oca-button--danger{border-color:#c9271b;background:linear-gradient(135deg,#c9271b,#9f1d3f);color:#fff}.oca-button--danger:hover,.oca-button--danger:focus{border-color:#90160e;background:linear-gradient(135deg,#a71d14,#7f1736);color:#fff}.oca-button:focus-visible,.oca-section-nav a:focus-visible,.oca-section-nav:focus-visible{outline:3px solid rgba(49,156,249,.42);outline-offset:2px}
.oca-compops input[type=text],.oca-compops input[type=search],.oca-compops input[type=number],.oca-compops input[type=date],.oca-compops input[type=time],.oca-compops input[type=email],.oca-compops select,.oca-compops textarea{border-color:#9eb3c8;border-radius:9px;background-color:#fff}.oca-compops input:focus,.oca-compops select:focus,.oca-compops textarea:focus{border-color:var(--oca-sky);box-shadow:0 0 0 3px rgba(49,156,249,.16)}
.oca-modal__dialog{border:1px solid #c6d7e7;box-shadow:0 30px 80px rgba(0,20,51,.34)}.oca-event-modal-header{position:relative;overflow:hidden;background:radial-gradient(circle at 88% 15%,rgba(0,181,171,.2),transparent 24%),linear-gradient(125deg,#001d4a,#0b4d88)}.oca-event-modal-header::after{position:absolute;right:0;bottom:0;left:0;height:5px;background:linear-gradient(90deg,var(--oca-teal),var(--oca-sky),var(--oca-purple),var(--oca-pink),var(--oca-orange),var(--oca-yellow),var(--oca-lime));content:""}.oca-event-modal-header>*,.oca-modal__actions>*{position:relative;z-index:1}
.oca-count-badge{border:1px solid #ccdded;background:#f0f7ff;color:#173f68}.oca-operations-status,.oca-status,.oca-mini-status{border:1px solid currentColor}.oca-inline-notice{border-radius:13px}.oca-record-event,.oca-record-stage,.oca-record-unit,.oca-operations-event,.oca-operations-stage,.oca-entry-search-results,.oca-print-center-card{border-color:#c9d9e8}.oca-record-event>summary:hover,.oca-record-stage>summary:hover,.oca-record-unit>summary:hover,.oca-operations-event>summary:hover,.oca-operations-stage>summary:hover{background:#f1f8ff}
.oca-enforcement-impact-modal .oca-operational-modal__dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,calc(100vw - 42px));height:min(820px,calc(100vh - 42px));padding:0;text-align:left;overflow:hidden}.oca-enforcement-impact-modal .oca-stage-config-scroll{padding:22px;background:#f4f7fb}.oca-enforcement-impact-summary{display:flex;gap:10px;margin-bottom:16px}.oca-enforcement-impact-summary>span{display:grid;min-width:115px;padding:12px 18px;border:1px solid;border-radius:14px;text-align:center}.oca-enforcement-impact-summary strong{font-size:25px}.oca-enforcement-impact-summary small{font-weight:800;text-transform:uppercase;letter-spacing:.05em}.oca-enforcement-impact-summary .is-change{border-color:#f1b0a8;background:#fff0ed;color:#a52318}.oca-enforcement-impact-summary .is-protected{border-color:#b6cae0;background:#edf4fb;color:#375b7d}.oca-enforcement-impact-list{overflow:hidden;border:1px solid #c8d9e8;border-radius:15px;background:#fff}.oca-enforcement-impact-list__head,.oca-enforcement-impact-list>article{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,1.2fr) minmax(140px,.8fr) 110px minmax(190px,1.2fr);gap:12px;align-items:center;padding:13px 15px}.oca-enforcement-impact-list__head{background:#001d4a;color:#fff;font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.oca-enforcement-impact-list>article{border-top:1px solid #e0e9f1}.oca-enforcement-impact-list>article.will-change{border-left:5px solid var(--oca-coral);background:#fffdfa}.oca-enforcement-impact-list>article.is-protected{border-left:5px solid #9cb0c5;background:#f7f9fb;color:#5a6f83}.oca-enforcement-impact-list>article>span:nth-child(2){display:grid}.oca-enforcement-impact-list small{color:#60758c}.oca-enforcement-impact-status{display:inline-flex;justify-content:center;padding:6px 9px;border-radius:99px;font-size:11px;font-weight:850}.oca-enforcement-impact-status.is-not_scored{background:#dcfaf5;color:#006a63}.oca-enforcement-impact-status.is-scored{background:#eee7ff;color:#5520b0}.oca-enforcement-impact-status.is-certified{background:#eaf7d0;color:#456700}.oca-enforcement-impact-empty{padding:28px!important;text-align:center}.oca-enforcement-impact-modal .oca-modal__actions{margin:0;padding:15px 22px;border-top:1px solid #cfdeeb;background:#fff}
@media(max-width:900px){.oca-brand__identity{width:150px;height:56px}.oca-enforcement-impact-list{overflow-x:auto}.oca-enforcement-impact-list__head,.oca-enforcement-impact-list>article{min-width:850px}.oca-enforcement-impact-modal .oca-operational-modal__dialog{width:calc(100vw - 18px);height:calc(100vh - 18px)}}
@media(max-width:782px){.oca-brand__identity{width:54px;height:54px;padding:7px;border-radius:14px}.oca-brand__logo{display:none}.oca-brand__icon{display:block}.oca-brand__name{font-size:24px}.oca-section-nav{padding-inline:8px}.oca-section-nav-scroll{width:38px;min-width:38px}.oca-section-nav a{padding-inline:12px}.oca-hero-card::after{display:none}.oca-enforcement-impact-summary>span{flex:1;min-width:0}.oca-enforcement-impact-modal .oca-stage-config-scroll{padding:12px}}

/* Ballot adjustments remain readable instead of stretching unpredictably across wide screens. */
.oca-score-adjustments{grid-template-columns:1fr}.oca-adjustment-score-row{grid-template-columns:minmax(190px,1fr) minmax(85px,110px) minmax(105px,135px) minmax(220px,1.35fr);align-items:end}.oca-adjustment-score-row .oca-adjustment-identity{align-self:center}.oca-adjustment-score-row .oca-adjustment-note{grid-column:auto}.oca-adjustment-score-row input{box-sizing:border-box;width:100%;min-width:0}
@media(max-width:980px){.oca-adjustment-score-row{grid-template-columns:minmax(180px,1fr) minmax(85px,110px) minmax(105px,135px)}.oca-adjustment-score-row .oca-adjustment-note{grid-column:1/-1}}
@media(max-width:620px){.oca-adjustment-score-row{grid-template-columns:1fr 1fr}.oca-adjustment-score-row .oca-adjustment-identity,.oca-adjustment-score-row .oca-adjustment-note{grid-column:1/-1}}

/* Unified Master Schedule: Unscheduled and every Event Space remain visible together. */
.oca-schedule-board-key{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:#52627a;font-size:12px;font-weight:750}.oca-schedule-board-key span{display:flex;align-items:center;gap:7px}.oca-schedule-board-key i{width:11px;height:11px;border-radius:50%;background:var(--oca-sky)}.oca-schedule-board-key i.is-unscheduled{background:var(--oca-orange)}
.oca-schedule-scroll.is-unified{max-height:720px;overflow:auto;background:#edf3f8;scrollbar-gutter:stable}.oca-schedule-scroll.is-unified .oca-schedule-board{display:grid;grid-template-columns:repeat(var(--oca-schedule-columns),minmax(390px,1fr));align-items:stretch;min-width:calc(var(--oca-schedule-columns) * 390px)}.oca-schedule-scroll.is-unified .oca-schedule-space-column{min-width:0;border-right:1px solid #cbd9e7;background:#f7fafd}.oca-schedule-scroll.is-unified .oca-schedule-space-column.is-unscheduled-column{background:#fff8ed}.oca-schedule-scroll.is-unified .oca-schedule-space-column.is-unscheduled-column .oca-schedule-space-heading{border-bottom-color:#f2c47f;background:#fff9f0}.oca-schedule-scroll.is-unified .oca-schedule-column-body{display:flex;min-height:510px;padding:11px;flex-direction:column;gap:10px}.oca-schedule-scroll.is-unified .oca-schedule-item{position:relative;flex:0 0 auto;min-height:126px;height:auto}.oca-schedule-scroll.is-unified .oca-schedule-item__timing{grid-template-columns:minmax(125px,1.2fr) minmax(100px,.8fr) minmax(90px,.62fr) minmax(90px,.68fr)}.oca-schedule-duration-wrap{display:flex;align-items:center;gap:5px}.oca-schedule-duration-wrap small{color:#52627a;font-weight:800;text-transform:uppercase}.oca-schedule-scroll.is-unified .oca-schedule-drop-placeholder{display:flex;min-height:78px;margin-top:auto}.oca-schedule-scroll.is-unified .oca-schedule-item.is-dragging{opacity:.48}
.oca-event-modal-header h1,.oca-event-modal-header h2,.oca-event-modal-header h3,.oca-event-modal-header p,.oca-event-modal-header .oca-modal-x{color:#fff}.oca-event-modal-header .oca-eyebrow{color:#84fff1}.oca-event-modal-header .oca-modal-x{border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.1)}
@media(max-width:782px){.oca-schedule-scroll.is-unified .oca-schedule-board{grid-template-columns:repeat(var(--oca-schedule-columns),minmax(310px,88vw));min-width:calc(var(--oca-schedule-columns) * min(310px,88vw))}.oca-schedule-scroll.is-unified .oca-schedule-item__timing{grid-template-columns:1fr 1fr;padding-left:42px}.oca-schedule-scroll.is-unified .oca-schedule-end{display:flex}}
.oca-support-banner {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 12px 18px;
	background: linear-gradient(90deg, #ff8a00, #ffc700);
	color: #081d3a;
	border-bottom: 1px solid rgba(8, 29, 58, .18);
}

.oca-support-banner > .dashicons {
	font-size: 24px;
	width: 24px;
	height: 24px;
}

.oca-support-banner > div {
	flex: 1;
}

.oca-support-banner form {
	margin: 0;
}

.oca-invitation-directory {
	margin-top: 24px;
}

.oca-invitation-directory .oca-official-card form {
	display: flex;
	gap: 8px;
	margin-left: auto;
}

@media (max-width: 700px) {
	.oca-support-banner {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	.oca-support-banner form,
	.oca-support-banner .oca-button {
		width: 100%;
	}
}
