:root {
  color-scheme:light;
  --bg:#f7f8fb;
  --paper:#fff;
  --ink:#202738;
  --muted:#677083;
  --line:#e2e6ee;
  --accent:#3f4f99;
  --accent-soft:#edf0fa;
  --good:#326b51;
  --warn:#855e24;
  --danger:#ad383f;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:14px;
  line-height:1.55;
  color:var(--ink);
  background:var(--bg);
  font-synthesis:none;
}

* {
  box-sizing:border-box;
}

body {
  margin:0;
}

button,input,select,textarea {
  font:inherit;
  color:inherit;
}

button,a,summary {
  touch-action:manipulation;
}

button,summary {
  cursor:pointer;
}

button:disabled {
  cursor:not-allowed;
  opacity:.48;
}

a {
  color:var(--accent);
  text-decoration:none;
}

a:hover {
  text-decoration:underline;
}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline:3px solid #7a8bdd;
  outline-offset:3px;
}

h1,h2,h3,p {
  margin:0;
}

h1 {
  font-size:26px;
  font-weight:600;
  line-height:1.35;
  letter-spacing:-.5px;
}

h2 {
  font-size:17px;
  font-weight:600;
}

h3 {
  font-size:14px;
  font-weight:600;
}

p+p {
  margin-top:12px;
}

small,.small {
  font-size:12px;
}

strong,b {
  font-weight:600;
}

.muted {
  color:var(--muted);
}

.center {
  text-align:center;
}

.section-gap {
  margin-top:24px;
}

.app-shell {
  max-width:1480px;
  margin:0 auto;
  min-height:100vh;
  background:var(--bg);
}

.topbar {
  display:flex;
  align-items:center;
  gap:19px;
  padding:15px 32px;
  background:var(--paper);
  flex-wrap:wrap;
}

.brand {
  font-size:23px;
  font-weight:650;
  letter-spacing:-.8px;
  color:var(--accent);
  white-space:nowrap;
}

.meet-name {
  padding-left:19px;
  border-left:1px solid var(--line);
  font-size:14px;
}

.top-actions {
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}

.identity-field select {
  max-width:250px;
  font-size:13px;
}

.nav {
  display:flex;
  align-items:center;
  gap:25px;
  padding:0 32px;
  background:var(--paper);
  border-bottom:1px solid var(--line);
  flex-wrap:wrap;
}

.nav a {
  padding:11px 0 10px;
  border-bottom:2px solid transparent;
  color:var(--muted);
  white-space:nowrap;
}

.nav a[aria-current=page] {
  color:var(--accent);
  border-bottom-color:var(--accent);
  font-weight:600;
}

.nav .public-link {
  margin-left:auto;
  font-size:12px;
}

.demo-strip {
  display:flex;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  padding:6px 32px;
  color:var(--muted);
  background:#f4f5f8;
  font-size:12px;
  border-bottom:1px solid var(--line);
}

.sync-status {
  min-height:29px;
  padding:5px 32px;
  font-size:12px;
  color:var(--muted);
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}

.sync-status.warning {
  background:#fff3d9;
  color:#785313;
}

.content {
  padding:17px 32px 34px;
}

.heading {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:15px;
  flex-wrap:wrap;
  margin-bottom:20px;
}

.heading p {
  margin-top:6px;
}

.actions {
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}

.actions.center {
  justify-content:center;
}

.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:36px;
  border:1px solid #ccd3e0;
  background:var(--paper);
  border-radius:4px;
  padding:7px 12px;
  line-height:1.4;
  font-weight:500;
  white-space:normal;
  text-align:center;
}

.button:hover:not(:disabled) {
  background:#f1f3f9;
  text-decoration:none;
}

.button.primary {
  background:var(--accent);
  border-color:var(--accent);
  color:white;
}

.button.primary:hover:not(:disabled) {
  background:#344381;
}

.button.danger {
  color:var(--danger);
  border-color:#e0b5b9;
  background:#fff8f8;
}

.button.ghost {
  border-color:transparent;
  background:transparent;
}

.button.small {
  font-size:12px;
  min-height:30px;
  padding:5px 9px;
}

.badge {
  display:inline-flex;
  align-items:center;
  max-width:100%;
  padding:3px 7px;
  border-radius:3px;
  background:#f0f2f6;
  color:#596278;
  font-size:12px;
  font-weight:400;
  line-height:1.4;
  overflow-wrap:anywhere;
}

.badge.published {
  color:#2d6548;
  background:#eaf5ed;
}

.badge.review {
  color:#845d23;
  background:#fbf2dd;
}

.badge.scoring {
  color:#3c4f95;
  background:#edf0fc;
}

.badge-row {
  display:inline-flex;
  gap:5px;
  flex-wrap:wrap;
}

.notice {
  background:var(--accent-soft);
  border-left:3px solid var(--accent);
  padding:12px 15px;
  margin-bottom:18px;
  overflow-wrap:anywhere;
}

.notice p {
  margin-top:7px;
}

.notice ul {
  margin:8px 0;
  padding-left:20px;
}

.grid {
  display:grid;
  gap:20px;
}

.grid.two {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.panel {
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:5px;
  min-width:0;
  overflow-wrap:anywhere;
}

.panel-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  padding:15px 18px;
  border-bottom:1px solid var(--line);
}

.panel-body {
  padding:18px;
}

.panel-body>p {
  margin-bottom:13px;
}

.panel-note {
  padding:14px 18px;
  font-size:12px;
  color:var(--muted);
  border-top:1px solid var(--line);
}

.section-title {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:13px;
}

.segmented {
  display:flex;
  gap:2px;
  border:1px solid var(--line);
  padding:3px;
  border-radius:4px;
  background:var(--paper);
}

.segmented button {
  border:0;
  padding:5px 14px;
  min-height:29px;
  font-size:12px;
  background:transparent;
  border-radius:2px;
  color:var(--muted);
}

.segmented button[aria-pressed=true] {
  background:var(--accent-soft);
  color:var(--accent);
}

.schedule {
  margin:0 18px;
  border-bottom:1px solid var(--line);
}

.schedule:last-child {
  border-bottom:0;
}

.schedule>summary {
  list-style:none;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 20px;
  gap:13px;
  align-items:start;
  padding:17px 0;
}

.schedule>summary::-webkit-details-marker {
  display:none;
}

.schedule-time {
  font-variant-numeric:tabular-nums;
  padding-top:1px;
}

.schedule-title {
  font-weight:600;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.schedule-title>small {
  width:100%;
  font-weight:400;
  color:var(--muted);
}

.schedule-title>.badge-row {
  width:100%;
  margin-top:3px;
}

.expand-mark {
  font-size:18px;
  color:var(--muted);
}

.schedule[open] .expand-mark {
  transform:rotate(45deg);
}

.detail-body {
  padding:0 0 17px;
}

.detail-body p {
  display:flex;
  justify-content:space-between;
  gap:10px;
}

.detail-body p b {
  white-space:nowrap;
}

.standing {
  padding:0 18px;
  border-bottom:1px solid var(--line);
}

.standing:last-of-type {
  border-bottom:0;
}

.standing>summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  list-style:none;
  padding:13px 0;
}

.standing>summary::-webkit-details-marker {
  display:none;
}

.standing strong {
  font-size:23px;
  font-variant-numeric:tabular-nums;
}

.standing strong small {
  font-size:12px;
  color:var(--muted);
  font-weight:400;
}

.match-score {
  align-items:center;
  justify-content:center!important;
  flex-wrap:wrap;
  font-size:13px;
  margin:16px 0;
}

.match-score strong {
  font-size:25px;
  font-variant-numeric:tabular-nums;
}

.table-wrap {
  overflow-x:auto;
  width:100%;
  max-width:100%;
}

table {
  width:100%;
  border-collapse:collapse;
  font-size:13px;
  text-align:left;
}

th {
  font-size:12px;
  font-weight:500;
  color:var(--muted);
  background:#fafbfe;
}

td,th {
  padding:11px 14px;
  border-bottom:1px solid var(--line);
  vertical-align:middle;
}

td small {
  display:block;
  margin-top:3px;
  color:var(--muted);
}

tbody tr:last-child td {
  border-bottom:0;
}

td input,td select {
  max-width:100%;
}

.result-entry {
  min-width:540px;
}

.result-entry input {
  width:105px;
}

.result-entry select {
  width:135px;
}

.empty {
  padding:20px 0;
  color:var(--muted);
  font-size:13px;
}

.choice-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:10px;
  margin:15px 0;
}

.check-option {
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:4px;
  background:var(--paper);
  min-width:0;
}

.check-option small {
  display:block;
  color:var(--muted);
  margin-top:2px;
}

.check-option input {
  width:17px;
  height:17px;
  flex-shrink:0;
  accent-color:var(--accent);
}

.check-option.warning {
  background:#fff6e4;
  margin:16px 0;
  border-color:#e8cea0;
}

.field {
  display:flex;
  flex-direction:column;
  gap:7px;
  margin:15px 0;
}

.field:first-child {
  margin-top:0;
}

input:not([type=checkbox]),select,textarea {
  border:1px solid #ccd3e0;
  border-radius:4px;
  background:white;
  padding:8px 10px;
  min-height:37px;
  min-width:0;
  max-width:100%;
}

input:disabled,select:disabled {
  background:#f0f2f6;
  color:#788093;
}

textarea {
  resize:vertical;
  min-height:95px;
  width:100%;
}

.form-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:17px;
}

.inline-form {
  display:flex;
  align-items:flex-end;
  gap:12px;
  flex-wrap:wrap;
}

.inline-form label,.match-time-row>label {
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
}

.lane-list {
  margin-top:18px;
}

.lane-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 90px 60px;
  align-items:center;
  gap:12px;
  padding:10px 0;
  border-top:1px solid var(--line);
}

.lane-row>span small {
  display:block;
  color:var(--muted);
  font-size:12px;
}

.lane-row label {
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
}

.lane-row select {
  padding:6px;
  min-width:44px;
}

.match-time-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 125px 95px;
  gap:15px;
  align-items:center;
  padding:16px 0;
  border-bottom:1px solid var(--line);
}

.match-time-row:first-child {
  padding-top:0;
}

.match-time-row .badge-row {
  margin-top:7px;
}

.device-strip {
  margin-top:20px;
  display:flex;
  align-items:center;
  gap:15px;
  padding:14px 18px;
  background:#eef2f7;
  border:1px solid var(--line);
  border-radius:4px;
  flex-wrap:wrap;
}

.device-strip>div:first-child {
  margin-right:auto;
}

.device-strip h2 {
  font-size:14px;
}

.checkin-list {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:15px 0;
}

.scoreboard {
  display:grid;
  grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);
  gap:12px;
  align-items:center;
  text-align:center;
  padding:13px 0;
}

.scoreboard h3 {
  font-size:15px;
}

.scoreboard strong {
  display:block;
  font-size:54px;
  font-variant-numeric:tabular-nums;
  line-height:1.25;
  color:var(--accent);
  margin:8px 0;
}

.score-divider {
  font-size:30px;
  color:var(--muted);
}

.score-buttons {
  display:flex;
  justify-content:center;
  gap:5px;
  flex-wrap:wrap;
}

.score-buttons .button {
  min-width:38px;
}

.team-detail {
  border-top:1px solid var(--line);
  padding-top:14px;
  margin-top:20px;
}

.team-detail summary {
  font-size:13px;
  color:var(--muted);
}

.team-detail .grid {
  margin-top:14px;
}

.team-detail p {
  font-size:12px;
  margin-top:6px;
}

.correction+.correction {
  border-top:1px solid var(--line);
  padding-top:22px;
  margin-top:22px;
}

.correction .notice {
  margin-top:14px;
}

.history-item {
  padding:14px 0;
  border-bottom:1px solid var(--line);
}

.history-item p {
  margin-top:8px;
}

.audit {
  padding-left:20px;
}

.audit li {
  padding:8px 0;
}

.audit li small {
  display:block;
  color:var(--muted);
}

.footer {
  font-size:12px;
  color:var(--muted);
  text-align:center;
  padding:20px 24px;
  border-top:1px solid var(--line);
}

.form-error,.page-error {
  color:var(--danger);
  white-space:pre-wrap;
  margin-top:12px;
}

.form-error:empty,.page-error:empty {
  display:none;
}

dialog {
  border:1px solid var(--line);
  border-radius:7px;
  padding:0;
  width:min(500px,calc(100% - 32px));
  max-height:calc(100dvh - 40px);
  overflow:auto;
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 20px 80px #18244426;
}

dialog.wide-modal {
  width:min(850px,calc(100% - 32px));
}

dialog::backdrop {
  background:#18223870;
}

.modal-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:16px 20px;
  border-bottom:1px solid var(--line);
  position:sticky;
  top:0;
  background:var(--paper);
  z-index:1;
}

.modal-body {
  padding:20px;
}

.guide-list {
  padding-left:22px;
  margin:20px 0;
}

.guide-list li {
  margin:16px 0;
}

.guide-list li p {
  font-size:13px;
  color:var(--muted);
  margin-top:4px;
}

.loading {
  max-width:560px;
  margin:12vh auto;
  padding:24px;
}

.loading p {
  margin:15px 0;
}

#toast {
  position:fixed;
  bottom:24px;
  left:50%;
  transform:translate(-50%,15px);
  background:#253350;
  color:white;
  padding:12px 18px;
  border-radius:5px;
  max-width:min(640px,calc(100% - 32px));
  opacity:0;
  pointer-events:none;
  z-index:100;
  box-shadow:0 6px 25px #17244120;
  transition:opacity .16s,transform .16s;
}

#toast.show {
  opacity:1;
  transform:translate(-50%,0);
}

#toast.error {
  background:#87343b;
}

.busy .button {
  cursor:wait;
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.screen-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  flex-wrap:wrap;
  margin-bottom:19px;
}

.screen-kicker {
  font-size:12px;
  color:var(--muted);
  letter-spacing:1px;
}

.screen-header h1 {
  margin-top:5px;
}

.stadium-screen {
  background:#171f35;
  color:#f3f5fc;
  aspect-ratio:16/9;
  padding:28px 32px;
  border-radius:5px;
  display:flex;
  flex-direction:column;
  gap:22px;
  overflow-wrap:anywhere;
}

.screen-top,.screen-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}

.screen-top {
  padding-bottom:16px;
  border-bottom:1px solid #384258;
}

.screen-top h2 {
  font-size:24px;
}

.screen-top span,.screen-bottom {
  font-size:12px;
  color:#b9c2d8;
}

.screen-grid {
  display:grid;
  grid-template-columns:1.06fr 1fr;
  gap:35px;
  flex:1;
}

.screen-grid h2 {
  font-size:19px;
  color:#d0dbfb;
  margin-bottom:12px;
}

.screen-grid h3 {
  margin-bottom:8px;
}

.stadium-screen table {
  font-size:14px;
}

.stadium-screen th {
  background:transparent;
  color:#aebbd7;
}

.stadium-screen th,.stadium-screen td {
  border-color:#343e55;
  padding:9px 8px;
}

.stadium-screen td small {
  color:#abb9d4;
}

.screen-note {
  color:#b4c0dc;
  font-size:12px;
  margin-top:16px;
}

.screen-match {
  padding:10px 0;
  border-bottom:1px solid #343e55;
}

.screen-match>span {
  font-size:12px;
  color:#b9c2d8;
}

.screen-match p {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  font-size:14px;
  margin-top:6px;
}

.screen-match strong {
  font-size:28px;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.screen-points {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}

.screen-points>div {
  border-left:2px solid #788fca;
  padding-left:10px;
}

.screen-points span {
  font-size:12px;
  color:#b9c2d8;
}

.screen-points strong {
  display:block;
  font-size:27px;
}

.screen-empty {
  padding:30px 0;
  color:#bdc8dd;
}

.screen-bottom {
  margin-top:auto;
  border-top:1px solid #384258;
  padding-top:15px;
}

.stadium-screen:fullscreen {
  width:100%;
  height:100%;
  aspect-ratio:auto;
  padding:4vh 4vw;
  border-radius:0;
  justify-content:space-between;
}

.stadium-screen:fullscreen .screen-grid {
  align-content:center;
}

.stadium-screen:fullscreen h2 {
  font-size:clamp(22px,2vw,40px);
}

.stadium-screen:fullscreen table {
  font-size:clamp(14px,1.2vw,24px);
}

.stadium-screen:fullscreen .screen-match strong {
  font-size:clamp(32px,3vw,65px);
}

@media(max-width:980px) {
  .topbar {
    gap:12px;
    padding:14px 24px;
  }
  .top-actions {
    width:100%;
    margin-left:0;
  }
  .nav {
    padding:0 24px;
    gap:20px;
  }
  .nav .public-link {
    margin-left:0;
  }
  .content {
    padding:16px 24px 28px;
  }
  .demo-strip,.sync-status {
    padding-left:24px;
    padding-right:24px;
  }
  .grid.two {
    gap:15px;
  }
  .panel-body {
    padding:16px;
  }
  .panel-head {
    padding:14px 16px;
  }
  .stadium-screen {
    padding:23px;
    aspect-ratio:auto;
    min-height:540px;
  }
  .screen-grid {
    gap:20px;
  }
}

@media(max-width:700px) {
  .grid.two {
    grid-template-columns:1fr;
  }
  .topbar {
    padding:14px 17px;
  }
  .brand {
    font-size:22px;
  }
  .meet-name {
    font-size:12px;
    padding-left:12px;
  }
  .top-actions {
    gap:6px;
  }
  .identity-field {
    flex:1;
    min-width:140px;
  }
  .identity-field select {
    width:100%;
    max-width:none;
  }
  .nav {
    padding:0 17px;
    gap:0 18px;
  }
  .nav a {
    font-size:13px;
    padding:11px 0 10px;
  }
  .nav .public-link {
    font-size:12px;
  }
  .content {
    padding:15px 17px 25px;
  }
  .demo-strip,.sync-status {
    padding-left:17px;
    padding-right:17px;
  }
  .heading {
    margin-bottom:18px;
  }
  .heading h1 {
    font-size:24px;
  }
  .heading p {
    font-size:13px;
  }
  .section-gap {
    margin-top:20px;
  }
  .panel-head h2 {
    font-size:16px;
  }
  .schedule {
    margin:0 15px;
  }
  .schedule>summary {
    grid-template-columns:44px minmax(0,1fr) 18px;
    gap:10px;
  }
  .match-time-row {
    grid-template-columns:minmax(0,1fr) 110px;
    gap:10px;
  }
  .match-time-row>button {
    grid-column:2;
  }
  .match-time-row>div {
    grid-row:span 2;
  }
  .scoreboard strong {
    font-size:48px;
  }
  .screen-grid {
    grid-template-columns:1fr;
  }
  .stadium-screen {
    padding:18px;
    gap:20px;
  }
  .screen-top h2 {
    font-size:20px;
  }
  .screen-top span {
    font-size:11px;
  }
  .screen-header h1 {
    font-size:21px;
  }
  .screen-points {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
  }
  .table-wrap table:not(.result-entry) {
    min-width:420px;
  }
  .stadium-screen table {
    min-width:430px!important;
  }
  .modal-body {
    padding:16px;
  }
  .modal-head {
    padding:14px 16px;
  }
  .choice-grid {
    grid-template-columns:1fr 1fr;
  }
  .check-option {
    padding:9px;
    gap:7px;
  }
  .check-option span {
    font-size:13px;
  }
  .lane-row {
    grid-template-columns:minmax(0,1fr) 83px 55px;
    gap:8px;
  }
  .lane-row>span {
    font-size:13px;
  }
  .button {
    padding:8px 10px;
  }
  .form-actions {
    gap:8px;
  }
  .device-strip {
    padding:14px;
  }
}

@media(max-width:380px) {
  .meet-name {
    padding-left:0;
    border-left:0;
    width:100%;
  }
  .choice-grid {
    grid-template-columns:1fr;
  }
  .scoreboard {
    gap:7px;
  }
  .score-buttons .button {
    min-width:32px;
    padding:6px 8px;
  }
  .identity-field select {
    font-size:12px;
  }
  .top-actions>.button {
    padding:7px;
  }
  .lane-row {
    grid-template-columns:minmax(0,1fr) 80px;
  }
  .lane-row>button {
    grid-column:2;
  }
  .lane-row>span {
    grid-row:span 2;
  }
  .match-time-row {
    grid-template-columns:1fr;
  }
  .match-time-row>div {
    grid-row:auto;
  }
  .match-time-row>button {
    grid-column:auto;
  }
  .panel-body {
    padding:14px;
  }
  .content {
    padding-left:13px;
    padding-right:13px;
  }
}

@media(pointer:coarse) {
  .button,.button.small,.segmented button {
    min-height:44px;
  }
  input:not([type=checkbox]),select,textarea {
    font-size:16px;
    min-height:44px;
  }
  .identity-field select {
    font-size:16px;
  }
  .check-option {
    min-height:44px;
  }
}

@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    scroll-behavior:auto!important;
    animation:none!important;
    transition:none!important;
  }
}

@media print {
  .topbar,.nav,.demo-strip,.sync-status,.footer,.heading-actions,.button {
    display:none;
  }
  .content {
    padding:0;
  }
  .app-shell {
    max-width:none;
  }
  .panel {
    break-inside:avoid;
  }
}

.draft-label {
  font-size:12px;
  color:var(--warn);
  background:#fbf2dd;
  padding:7px 10px;
  margin:8px 0;
}

.match-time-row input[type=time] {
  width:100%;
}

.screen-correction {
  font-size:13px;
  color:#f1d399;
  border-left:3px solid #cda456;
  padding:8px 11px;
  margin-top:12px;
  background:#342d22;
}

/* Shared task workspace: task selection stays quiet; the current operation leads. */
.workbench-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 15px;
}

.workbench-filters {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
  padding:3px;
  background:#e9ecf3;
  border:1px solid #e3e7ef;
  border-radius:6px;
}

.workbench-filters button {
  border:1px solid transparent;
  border-radius:4px;
  background:transparent;
  color:var(--muted);
  min-height:34px;
  padding:6px 15px;
  font-size:13px;
  line-height:1.5;
}

.workbench-filters button:hover {
  color:var(--ink);
  background:#f4f5f9;
}

.workbench-filters button[aria-pressed=true],
.workbench-filters button[aria-current=true],
.workbench-filters button.active {
  color:var(--accent);
  background:var(--paper);
  border-color:#dce1ed;
  font-weight:600;
  box-shadow:0 1px 2px #23355b08;
}

.workbench-summary {
  color:var(--muted);
  font-size:12px;
  overflow-wrap:anywhere;
}

.workbench-summary strong {
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}

.task-workbench {
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  min-height:540px;
  border:1px solid #dce1eb;
  border-radius:8px;
  background:var(--paper);
  box-shadow:0 3px 12px #20355904;
}

.task-rail {
  min-width:0;
  padding:17px 13px 20px;
  background:#f1f3f7;
  border-right:1px solid var(--line);
  border-radius:7px 0 0 7px;
}

.task-rail-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  color:var(--muted);
  font-size:12px;
  margin:0 9px 15px;
}

.task-rail-heading h2,.task-rail-heading h3 {
  font-size:12px;
  font-weight:500;
  color:var(--muted);
}

.task-group+.task-group {
  margin-top:16px;
  padding-top:13px;
  border-top:1px solid #e0e4ed;
}

.task-group>h3 {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  font-size:12px;
  font-weight:500;
  color:var(--muted);
  margin:0 10px 8px;
}

.task-group>h3>span {
  font-variant-numeric:tabular-nums;
  font-size:11px;
}

.task-list-toggle {
  display:none;
}

.task-item {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  column-gap:7px;
  row-gap:5px;
  width:100%;
  min-width:0;
  border:1px solid transparent;
  border-radius:5px;
  padding:10px 11px;
  background:transparent;
  color:var(--ink);
  text-align:left;
  overflow-wrap:anywhere;
}

.task-item+.task-item {
  margin-top:3px;
}

.task-item:hover:not(:disabled) {
  background:#e8ecf4;
}

.task-item[aria-current=true],.task-item.active {
  background:var(--paper);
  border-color:#d8deeb;
  box-shadow:inset 3px 0 0 var(--accent),0 2px 5px #263b6807;
}

.task-item[aria-current=true]:hover,.task-item.active:hover {
  background:var(--paper);
}

.task-item-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:6px 8px;
  min-width:0;
  font-size:13px;
  font-weight:600;
  line-height:1.5;
}

.task-item-top .badge {
  margin-top:1px;
  padding:2px 5px;
  font-size:11px;
}

.task-item[aria-current=true] .task-item-top>strong,
.task-item.active .task-item-top>strong {
  color:var(--accent);
}

.task-item-meta {
  grid-column:1/-1;
  grid-row:2;
  display:block;
  color:var(--muted);
  font-size:12px;
  font-weight:400;
  line-height:1.6;
  margin-top:0;
}

.task-item-status {
  display:block;
  grid-column:2;
  grid-row:1;
  align-self:start;
  max-width:110px;
  margin-top:0;
}

.task-item-status .badge {
  font-size:11px;
  padding:2px 6px;
}

.task-archive>summary {
  display:flex;
  align-items:center;
  gap:7px;
  padding:5px 9px;
  color:var(--muted);
  font-size:12px;
  list-style:none;
}

.task-archive>summary::-webkit-details-marker {
  display:none;
}

.task-archive>summary::before {
  content:"▸";
  font-size:12px;
}

.task-archive[open]>summary::before {
  content:"▾";
}

.task-archive>summary>span:first-of-type {
  flex:1;
}

.task-archive[open]>summary {
  margin-bottom:7px;
}

.task-archive>summary:hover {
  color:var(--accent);
}

.task-detail {
  min-width:0;
  border-radius:0 7px 7px 0;
  background:var(--paper);
}

.task-context {
  padding:25px 27px 21px;
  border-bottom:1px solid var(--line);
  overflow-wrap:anywhere;
}

.task-kicker {
  display:block;
  font-size:12px;
  color:var(--accent);
  margin-bottom:7px;
  font-weight:500;
}

.task-context h2 {
  font-size:23px;
  font-weight:600;
  letter-spacing:-.4px;
  line-height:1.4;
}

.task-context .section-title {
  align-items:flex-start;
  margin-bottom:0;
}

.task-context .section-title>.badge-row {
  margin-top:4px;
}

.task-kicker>span {
  color:var(--muted);
  font-weight:400;
}

.task-context p {
  color:var(--muted);
  font-size:13px;
  margin-top:7px;
  max-width:70ch;
}

.task-context>.badge-row,.task-context>.actions {
  margin-top:12px;
}

.task-path {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:18px;
  font-size:12px;
  color:var(--muted);
}

.task-path>span {
  display:inline-flex;
  align-items:center;
  gap:7px;
}

.task-path>span::before {
  content:"";
  width:6px;
  height:6px;
  background:#cbd1dd;
  border-radius:50%;
  flex-shrink:0;
}

.task-path>.done {
  color:var(--good);
}

.task-path>.done::before {
  background:#75a58a;
}

.task-path>.current {
  color:var(--accent);
  font-weight:600;
}

.task-path>.current::before {
  background:var(--accent);
  box-shadow:0 0 0 3px var(--accent-soft);
}

.task-body {
  padding:23px 27px 27px;
  min-width:0;
}

.task-body>.panel {
  border:0;
  border-radius:0;
  margin-top:0;
  background:transparent;
}

.task-body>.panel+.panel {
  border-top:1px solid var(--line);
  margin-top:24px;
  padding-top:20px;
}

.task-body>.panel>.panel-head {
  padding:0 0 17px;
  border:0;
}

.task-body>.panel>.panel-head h2 {
  font-size:16px;
}

.task-body>.panel>.panel-body {
  padding:0;
}

.task-body>.panel>.panel-note {
  padding:12px 0 0;
}

.task-detail .notice {
  font-size:13px;
  padding:11px 13px;
  margin-bottom:18px;
}

.task-detail .form-actions {
  padding-top:19px;
  margin-top:19px;
  border-top:1px solid var(--line);
}

.task-detail .inline-form {
  gap:16px;
}

.task-detail .inline-form label {
  min-width:150px;
}

.task-detail .inline-form input {
  width:100%;
}

.task-detail .inline-form+p,
.arrangement-main>p {
  margin-top:13px;
}

.checkin-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}

.checkin-summary h3 {
  font-size:16px;
}

.checkin-summary p {
  margin-top:4px;
}

.checkin-summary+.task-support {
  margin-top:12px;
  margin-bottom:20px;
}

.readiness-summary {
  margin-bottom:20px;
}

.readiness-summary h3 {
  font-size:19px;
  font-weight:600;
  line-height:1.5;
  margin-bottom:8px;
}

.readiness-summary p {
  font-size:13px;
  color:var(--muted);
  line-height:1.8;
}

.team-readiness {
  max-width:640px;
  margin:15px 0 23px;
}

.team-readiness>div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:5px 16px;
  padding:13px 0;
  border-bottom:1px solid var(--line);
}

.team-readiness>div:first-child {
  border-top:1px solid var(--line);
}

.team-readiness strong {
  font-size:14px;
  font-weight:500;
}

.team-readiness span {
  color:var(--muted);
  font-size:13px;
}

.match-pair {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:16px;
  padding:24px 20px;
  margin:0 0 24px;
  background:#f5f7fb;
  border-radius:5px;
  text-align:center;
  overflow-wrap:anywhere;
}

.match-pair strong {
  font-size:19px;
  font-weight:600;
}

.match-pair>span {
  font-size:12px;
  color:var(--muted);
  letter-spacing:1px;
}

.arrangement-main {
  padding:2px 0 0;
}

.registration-detail h3 {
  font-size:20px;
  line-height:1.5;
}

.registration-detail>p {
  color:var(--muted);
  font-size:13px;
  margin-top:4px;
}

.registration-detail dl {
  display:grid;
  grid-template-columns:85px minmax(0,1fr);
  gap:12px 17px;
  margin:23px 0 0;
  padding:19px 0;
  border-top:1px solid var(--line);
  font-size:13px;
  line-height:1.8;
}

.registration-detail dt {
  color:var(--muted);
}

.registration-detail dd {
  margin:0;
  overflow-wrap:anywhere;
}

.task-detail th {
  background:#f5f7fa;
  color:#606b7f;
}

.task-detail td,.task-detail th {
  padding:11px 12px;
}

.task-detail tbody tr:hover {
  background:#fafbfe;
}

.task-detail .scoreboard {
  padding:24px 0;
}

.task-detail .scoreboard strong {
  font-size:64px;
  letter-spacing:-1px;
  margin:12px 0;
}

.task-support {
  border-top:1px solid var(--line);
  margin-top:22px;
  color:var(--ink);
  min-width:0;
}

.task-support>summary {
  padding:14px 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

.task-support>summary:hover,.task-support[open]>summary {
  color:var(--accent);
}

.task-support>summary small {
  margin-left:7px;
}

.task-support>.panel {
  margin:0 0 6px;
  border:0;
  background:transparent;
}

.task-support>.panel>.panel-head {
  padding:6px 0 14px;
  border:0;
}

.task-support>.panel>.panel-head h2 {
  font-size:15px;
}

.task-support>.panel>.panel-body {
  padding:0 0 12px;
}

.task-support>.device-strip {
  margin:0 0 12px;
  background:#f5f7fa;
}

.task-support .lane-list {
  margin-top:0;
}

.workspace-footer {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:8px 18px;
  margin-top:15px;
  padding:0 2px;
  font-size:12px;
  line-height:1.7;
  color:var(--muted);
  overflow-wrap:anywhere;
}

.workspace-footer strong {
  color:var(--ink);
}

.overview-lead {
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
  padding:25px 28px;
  margin-bottom:24px;
  border:1px solid #dce2f0;
  border-radius:7px;
  background:var(--accent-soft);
}

.overview-lead h2 {
  font-size:22px;
  line-height:1.4;
  letter-spacing:-.3px;
}

.overview-lead p {
  color:var(--muted);
  font-size:13px;
  margin-top:7px;
}

.overview-next {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
}

@media(max-width:980px) {
  .task-workbench {
    grid-template-columns:224px minmax(0,1fr);
  }
  .task-context {
    padding:22px 21px 19px;
  }
  .task-body {
    padding:21px;
  }
  .task-rail {
    padding:17px 10px 20px;
  }
  .task-item {
    padding:10px;
  }
  .task-detail .grid.two {
    grid-template-columns:1fr;
  }
}

@media(max-width:760px) {
  .task-workbench {
    grid-template-columns:minmax(0,1fr);
    min-height:0;
  }
  .task-rail {
    border-right:0;
    border-bottom:1px solid var(--line);
    border-radius:7px 7px 0 0;
    padding:15px 12px 16px;
  }
  .task-rail-heading {
    margin-bottom:10px;
  }
  .task-list-toggle {
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:4px 10px;
    width:100%;
    padding:10px 12px;
    min-height:44px;
    background:var(--paper);
    border:1px solid #d8deeb;
    border-radius:5px;
    color:var(--accent);
    font-size:13px;
    line-height:1.6;
    text-align:left;
    overflow-wrap:anywhere;
  }
  .task-list-toggle strong {
    font-size:12px;
    font-weight:500;
    white-space:nowrap;
  }
  .task-list-toggle:hover {
    background:#f9faff;
  }
  .task-rail:not(.expanded) .task-group {
    display:none;
  }
  .task-rail.expanded .task-group {
    margin-top:14px;
  }
  .task-group {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .task-group+.task-group {
    margin-top:15px;
    padding-top:13px;
  }
  .task-group>h3 {
    grid-column:1/-1;
    margin-bottom:3px;
  }
  .task-archive>summary {
    grid-column:1/-1;
  }
  .task-item+.task-item {
    margin-top:0;
  }
  .task-item-top {
    font-size:13px;
  }
  .task-detail {
    border-radius:0 0 7px 7px;
  }
  .task-context {
    padding:21px 19px 18px;
  }
  .task-context h2 {
    font-size:21px;
  }
  .task-body {
    padding:20px 19px 22px;
  }
  .task-path {
    gap:8px 14px;
  }
  .workbench-toolbar {
    gap:10px;
    margin-bottom:13px;
  }
  .workbench-filters button {
    padding:6px 12px;
  }
  .task-detail .inline-form label {
    min-width:130px;
  }
  .overview-lead {
    padding:20px;
  }
  .overview-lead h2 {
    font-size:20px;
  }
}

@media(max-width:420px) {
  .task-group {
    grid-template-columns:minmax(0,1fr);
    gap:4px;
  }
  .task-item {
    padding:11px 10px;
  }
  .task-item-top {
    align-items:center;
  }
  .task-item-meta {
    margin-top:0;
  }
  .task-context {
    padding:18px 15px;
  }
  .task-context h2 {
    font-size:20px;
  }
  .task-body {
    padding:18px 15px 20px;
  }
  .workbench-filters {
    gap:2px;
  }
  .workbench-filters button {
    padding:6px 10px;
  }
  .task-detail .scoreboard {
    gap:7px;
  }
  .task-detail .scoreboard strong {
    font-size:48px;
  }
  .task-detail .scoreboard h3 {
    font-size:13px;
  }
  .task-detail .score-buttons .button {
    min-width:34px;
  }
  .match-pair {
    gap:10px;
    padding:20px 10px;
  }
  .match-pair strong {
    font-size:16px;
  }
  .registration-detail dl {
    grid-template-columns:minmax(0,1fr);
    gap:5px;
  }
  .overview-lead {
    padding:18px;
  }
}

@media(pointer:coarse) {
  .workbench-filters button,.task-item,.task-support>summary,.task-archive>summary {
    min-height:44px;
  }
}

@media print {
  .workbench-toolbar,.task-rail,.workspace-footer {
    display:none;
  }
  .task-workbench {
    display:block;
    border:0;
    box-shadow:none;
  }
  .task-context,.task-body {
    padding:15px 0;
  }
}

.sports-diagram {
  margin:0;
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--paper);
  min-width:0;
}
.sports-diagram-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.sports-eyebrow { display:block; margin-bottom:4px; color:var(--muted); font-size:11px; font-weight:600; letter-spacing:1.2px; }
.sports-diagram-heading h3 { font-size:15px; letter-spacing:-.2px; }
.sports-diagram-meta { color:var(--muted); font-size:12px; }
.sports-diagram-note { margin-top:12px; color:var(--muted); font-size:12px; }
.sports-correcting .sports-diagram-note { color:var(--warn); }
.basketball-bracket { container-type:inline-size; container-name:bracket; }
.track-ruler { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 8px 8px; font-size:11px; letter-spacing:.6px; color:#90695d; }
.track-ruler span:nth-child(2) { flex:1; text-align:center; border-bottom:1px solid #e4d0c7; padding-bottom:4px; }
.track-lanes { border:1px solid #ddc6bd; border-radius:8px; overflow:hidden; background:#faf3ee; }
.track-lane { display:grid; grid-template-columns:38px minmax(0,1fr) minmax(64px,auto) 13px; align-items:center; gap:12px; width:100%; min-height:47px; margin:0; padding:0; border:0; border-bottom:2px solid #fff; border-radius:0; color:var(--ink); background:#f5e7df; text-align:left; }
.track-lane:last-child { border-bottom:0; }
.track-lane:nth-child(even) { background:#f8ede7; }
.track-lane-number { display:grid; align-self:stretch; place-items:center; border-right:2px solid #fff; color:#9c6755; font-size:24px; font-weight:600; font-variant-numeric:tabular-nums; }
.track-athlete { min-width:0; display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; padding:6px 0; }
.track-athlete strong { font-size:13px; }
.track-athlete small { color:#79635c; font-size:11px; }
.track-athlete em { display:inline-block; margin-left:6px; font-size:11px; font-style:normal; color:var(--accent); }
.track-lane-result { display:grid; justify-items:end; gap:0; padding:5px 0; font-variant-numeric:tabular-nums; }
.track-lane-result strong { font-size:12px; font-weight:500; }
.track-lane-result small { font-size:11px; color:#79635c; }
.track-finish { align-self:stretch; border-left:3px solid #fff; margin-right:6px; }
.track-lane.is-own { background:#e9ecfa; }
.track-lane.is-own .track-lane-number { color:var(--accent); }
button.track-lane { cursor:pointer; transition:background-color .15s ease,box-shadow .15s ease; }
button.track-lane:hover { background:#eedad0; }
button.track-lane.is-selected { background:#e8eaf8; box-shadow:inset 4px 0 var(--accent); }
button.track-lane.is-selected .track-lane-number { color:var(--accent); }
button.track-lane:focus-visible { outline:3px solid var(--accent); outline-offset:-3px; }
.track-empty { display:grid; gap:6px; min-height:140px; align-content:center; text-align:center; padding:20px; color:#79635c; }
.track-empty strong { font-size:14px; }
.track-empty span { font-size:12px; }
.bracket-stage { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.85fr); gap:34px; }
.bracket-round { min-width:0; display:flex; flex-direction:column; }
.bracket-round h4 { display:flex; align-items:baseline; gap:7px; margin:0 0 12px; color:var(--ink); font-size:12px; font-weight:600; }
.bracket-round h4>span { color:#a0a8b9; font-size:11px; letter-spacing:.5px; }
.bracket-round h4 small { color:var(--muted); font-size:11px; font-weight:400; }
.bracket-cards { position:relative; display:flex; flex:1; flex-direction:column; justify-content:center; gap:22px; }
.bracket-match { display:block; position:relative; min-width:0; width:100%; border:1px solid var(--line); border-radius:9px; padding:11px; background:#fff; text-align:left; color:var(--ink); }
.bracket-match-heading { display:flex; justify-content:space-between; align-items:center; gap:6px; margin-bottom:9px; }
.bracket-match-heading>strong { font-size:11px; font-weight:600; }
.bracket-match-heading>span { color:var(--muted); font-size:11px; }
.bracket-team { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:31px; }
.bracket-team+.bracket-team { border-top:1px solid #edf0f5; }
.bracket-team-name { min-width:0; font-size:12px; overflow-wrap:anywhere; }
.bracket-team-name small,.bracket-team-name em { margin-left:5px; font-size:11px; font-style:normal; font-weight:500; color:var(--accent); white-space:nowrap; }
.bracket-score { font-size:16px; font-weight:600; font-variant-numeric:tabular-nums; }
.bracket-team.is-winner { color:var(--accent); }
.bracket-team.is-winner .bracket-team-name { font-weight:600; }
.bracket-team.is-own .bracket-team-name { text-decoration:underline; text-decoration-color:#b5bfea; text-underline-offset:4px; }
.bracket-match-foot { display:block; margin-top:8px; padding-top:7px; border-top:1px solid #edf0f5; color:var(--muted); font-size:11px; }
button.bracket-match { cursor:pointer; transition:border-color .15s ease,background-color .15s ease; }
button.bracket-match:hover { border-color:#a9b3dc; background:#fafbff; }
.bracket-match.is-active { border-color:var(--accent); box-shadow:0 0 0 1px var(--accent); background:#f8f9ff; }
.bracket-match.is-blocked .bracket-match-heading>span,.bracket-match.is-blocked .bracket-match-foot { color:var(--warn); }
.bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::before,.bracket-final .bracket-match::after { content:""; position:absolute; top:50%; width:18px; border-top:1px solid #c4ccdf; pointer-events:none; }
.bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::after { left:100%; }
.bracket-final .bracket-match::before { right:100%; }
.bracket-semifinals .bracket-cards::after { content:""; position:absolute; left:calc(100% + 17px); top:calc(25% - 6px); bottom:calc(25% - 6px); width:1px; background:#c4ccdf; pointer-events:none; }
.bracket-champion { position:relative; display:grid; gap:8px; text-align:center; padding:26px 10px; border:1px dashed #cbd2e3; border-radius:10px; background:#f8f9fc; }
.bracket-champion::before { content:""; position:absolute; top:50%; right:100%; width:18px; border-top:1px solid #c4ccdf; pointer-events:none; }
.bracket-champion-label { font-size:11px; color:var(--muted); letter-spacing:1px; }
.bracket-champion>strong { font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.bracket-champion>small { font-size:11px; color:var(--muted); }
.bracket-champion.is-confirmed { background:#f5f0e4; border:1px solid #deceaa; }
.bracket-champion.is-confirmed .bracket-champion-label,.bracket-champion.is-confirmed>strong { color:#876526; }
.bracket-placeholder { color:var(--muted); font-size:12px; padding:20px 12px; }
.basketball-bracket.is-compact { padding:16px; }
.basketball-bracket.is-compact .sports-diagram-heading { margin-bottom:14px; }
.basketball-bracket.is-compact .bracket-stage { gap:26px; }
.basketball-bracket.is-compact .bracket-match { padding:9px; }
.basketball-bracket.is-compact .bracket-cards { gap:14px; }
.basketball-bracket.is-compact .bracket-semifinals .bracket-match::after,.basketball-bracket.is-compact .bracket-final .bracket-match::before,.basketball-bracket.is-compact .bracket-final .bracket-match::after,.basketball-bracket.is-compact .bracket-champion::before { width:14px; }
.basketball-bracket.is-compact .bracket-semifinals .bracket-cards::after { left:calc(100% + 13px); top:calc(25% - 4px); bottom:calc(25% - 4px); }
@media (max-width:760px) {
  .bracket-stage,.basketball-bracket.is-compact .bracket-stage { gap:22px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .bracket-winner { grid-column:1 / -1; }
  .bracket-winner h4 { margin-bottom:8px; }
  .bracket-champion { padding:16px; grid-template-columns:1fr auto; text-align:left; align-items:center; gap:4px 12px; }
  .bracket-champion>strong { grid-column:2; grid-row:1 / span 2; }
  .bracket-champion>small { grid-column:1; }
  .bracket-champion::before,.bracket-final .bracket-match::after { display:none; }
  .bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::before,.basketball-bracket.is-compact .bracket-semifinals .bracket-match::after,.basketball-bracket.is-compact .bracket-final .bracket-match::before { width:12px; }
  .bracket-semifinals .bracket-cards::after,.basketball-bracket.is-compact .bracket-semifinals .bracket-cards::after { left:calc(100% + 11px); }
}
@media (max-width:520px) {
  .sports-diagram,.basketball-bracket.is-compact { padding:14px; border-radius:10px; }
  .sports-diagram-heading { margin-bottom:12px; gap:7px; }
  .sports-diagram-meta { font-size:11px; }
  .sports-diagram-heading h3 { font-size:14px; }
  .track-lane { grid-template-columns:30px minmax(0,1fr) minmax(57px,auto) 8px; gap:7px; min-height:50px; }
  .track-lane-number { font-size:21px; }
  .track-athlete { display:grid; gap:0; }
  .track-athlete strong { font-size:12px; }
  .track-athlete small { font-size:11px; }
  .track-lane-result strong { font-size:11px; }
  .track-finish { margin-right:3px; }
  .sports-diagram-note { font-size:11px; }
  .bracket-stage,.basketball-bracket.is-compact .bracket-stage { grid-template-columns:minmax(0,1fr); gap:18px; }
  .bracket-cards,.basketball-bracket.is-compact .bracket-cards { gap:10px; }
  .bracket-round h4 { padding-bottom:7px; margin-bottom:9px; border-bottom:1px solid var(--line); }
  .bracket-match { padding:11px 13px; }
  .bracket-team-name { font-size:13px; }
  .bracket-match-heading>strong { font-size:12px; }
  .bracket-score { font-size:18px; }
  .bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::before,.bracket-semifinals .bracket-cards::after { display:none; }
  .bracket-final h4::after,.bracket-winner h4::after { content:"↓"; margin-left:auto; font-size:16px; color:var(--muted); }
  .bracket-champion { grid-template-columns:minmax(0,1fr); text-align:center; padding:20px 12px; }
  .bracket-champion>strong,.bracket-champion>small { grid-column:1; grid-row:auto; }
}
@media (pointer:coarse) {
  button.track-lane { min-height:50px; }
  button.bracket-match { min-height:120px; }
}
@container bracket (max-width:650px) {
  .bracket-stage,.basketball-bracket.is-compact .bracket-stage { gap:22px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .bracket-winner { grid-column:1 / -1; }
  .bracket-winner h4 { margin-bottom:8px; }
  .bracket-champion { padding:16px; grid-template-columns:minmax(0,1fr) auto; text-align:left; align-items:center; gap:4px 12px; }
  .bracket-champion>strong { grid-column:2; grid-row:1 / span 2; }
  .bracket-champion>small { grid-column:1; }
  .bracket-champion::before,.bracket-final .bracket-match::after { display:none; }
  .bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::before,.basketball-bracket.is-compact .bracket-semifinals .bracket-match::after,.basketball-bracket.is-compact .bracket-final .bracket-match::before { width:12px; }
  .bracket-semifinals .bracket-cards::after,.basketball-bracket.is-compact .bracket-semifinals .bracket-cards::after { left:calc(100% + 11px); }
}
@container bracket (max-width:360px) {
  .bracket-stage,.basketball-bracket.is-compact .bracket-stage { grid-template-columns:minmax(0,1fr); gap:18px; }
  .bracket-cards,.basketball-bracket.is-compact .bracket-cards { gap:10px; }
  .bracket-round h4 { padding-bottom:7px; margin-bottom:9px; border-bottom:1px solid var(--line); }
  .bracket-semifinals .bracket-match::after,.bracket-final .bracket-match::before,.bracket-semifinals .bracket-cards::after { display:none; }
  .bracket-final h4::after,.bracket-winner h4::after { content:"↓"; margin-left:auto; font-size:16px; color:var(--muted); }
  .bracket-champion { grid-template-columns:minmax(0,1fr); text-align:center; padding:20px 12px; }
  .bracket-champion>strong,.bracket-champion>small { grid-column:1; grid-row:auto; }
}
@media (prefers-reduced-motion:reduce) {
  button.track-lane,button.bracket-match { transition:none; }
}

/* Page hierarchy: one focal area, quieter supporting information. */
.pages-eyebrow {
  display:block;
  color:var(--muted);
  font-size:10px;
  font-weight:600;
  letter-spacing:1.4px;
  line-height:1.7;
}
.pages-event-lead,.pages-student-focus {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:27px;
  padding:26px 30px;
  border:1px solid #dbe1ee;
  border-radius:8px;
  background:linear-gradient(105deg,#edf0fa 0%,#f7f8fc 100%);
}
.pages-event-lead h2,.pages-student-focus h2 {
  margin-top:6px;
  font-size:25px;
  line-height:1.45;
  letter-spacing:-.5px;
}
.pages-event-lead p,.pages-student-focus p {
  margin-top:7px;
  color:var(--muted);
  font-size:13px;
  line-height:1.8;
}
.pages-event-metrics {
  display:flex;
  align-items:center;
  flex-shrink:0;
  gap:25px;
}
.pages-event-metrics>div {
  min-width:75px;
  padding-left:22px;
  border-left:1px solid #d6ddeb;
}
.pages-event-metrics strong {
  display:block;
  font-size:29px;
  font-variant-numeric:tabular-nums;
  font-weight:500;
  line-height:1.3;
}
.pages-event-metrics strong small {
  color:var(--muted);
  font-size:15px;
  font-weight:400;
}
.pages-event-metrics span {
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:11px;
}
.pages-overview-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  align-items:start;
  gap:25px;
}
.pages-main,.pages-aside {
  min-width:0;
}
.pages-section-line {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:15px;
}
.pages-section-line h2 {
  font-size:16px;
}
.pages-section-line h3 {
  font-size:22px;
}
.pages-competition {
  overflow:hidden;
  min-width:0;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--paper);
}
.pages-competition+.pages-competition {
  margin-top:22px;
}
.pages-block-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:22px 24px 18px;
}
.pages-block-head h2 {
  margin-top:2px;
  font-size:22px;
  letter-spacing:-.4px;
}
.pages-block-head p {
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
}
.pages-fraction {
  color:var(--muted);
  white-space:nowrap;
  font-size:11px;
}
.pages-fraction strong {
  font-size:17px;
  color:var(--ink);
}
.pages-race-tabs {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding:0 24px;
}
.pages-race-tabs button {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  min-width:0;
  padding:10px 13px;
  border:1px solid var(--line);
  border-radius:5px;
  background:#f8f9fb;
  text-align:left;
  line-height:1.5;
}
.pages-race-tabs button span {
  font-size:13px;
  font-weight:600;
}
.pages-race-tabs button small {
  color:var(--muted);
  font-size:10px;
}
.pages-race-tabs button[aria-pressed=true] {
  background:var(--accent-soft);
  border-color:#aab6dc;
  color:var(--accent);
  box-shadow:inset 0 2px 0 var(--accent);
}
.pages-race-tabs button[aria-pressed=true] small {
  color:var(--accent);
}
.pages-selected-race,.pages-bracket-area {
  padding:20px 24px 0;
}
.pages-bracket-area {
  padding-top:0;
  padding-bottom:22px;
}
.pages-race-caption {
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:4px 14px;
  margin-bottom:13px;
  font-size:12px;
}
.pages-race-caption span {
  color:var(--muted);
  font-size:11px;
}
.pages-note {
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.8;
}
.pages-qualification {
  padding:13px 24px 17px;
  border-top:1px solid var(--line);
  background:#fafbfe;
}
.pages-fold {
  border-top:1px solid var(--line);
  color:var(--ink);
  font-size:12px;
}
.pages-fold>summary {
  padding:13px 0;
  color:var(--muted);
  line-height:1.7;
}
.pages-fold>summary:hover,.pages-fold[open]>summary {
  color:var(--accent);
}
.pages-fold>div {
  padding-bottom:17px;
}
.pages-fold>div p {
  line-height:1.8;
}
.pages-selected-race>.pages-fold {
  margin-top:17px;
}
.pages-points {
  border-top:2px solid #6b79ab;
}
.pages-points .pages-block-head {
  padding:19px 0 10px;
}
.pages-points .pages-block-head h2 {
  font-size:17px;
}
.pages-points .badge {
  font-size:10px;
}
.pages-standing {
  padding:0;
}
.pages-standing>summary {
  padding:16px 0;
}
.pages-standing-name {
  display:flex;
  align-items:center;
  gap:11px;
  font-size:13px;
}
.pages-rank {
  width:17px;
  color:var(--muted);
  font-size:11px;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.pages-standing>summary strong {
  font-size:21px;
  font-variant-numeric:tabular-nums;
}
.pages-standing>summary small {
  font-size:10px;
  font-weight:400;
}
.pages-standing .detail-body {
  color:var(--muted);
  font-size:11px;
}
.pages-points>.pages-note {
  padding:14px 0;
}
.pages-side-note {
  margin-top:24px;
  padding:20px 18px 0;
  border-radius:6px;
  background:#edf0f5;
}
.pages-side-note h3 {
  margin-bottom:9px;
  font-size:13px;
}
.pages-side-note>p {
  padding-bottom:14px;
  color:var(--muted);
  font-size:12px;
  line-height:1.9;
}
.pages-side-schedule {
  margin-top:21px;
}
.pages-side-schedule>summary span {
  float:right;
  color:var(--muted);
  font-size:11px;
}
.pages-side-schedule .schedule>summary {
  display:grid;
  grid-template-columns:45px minmax(0,1fr);
  gap:8px;
  padding:14px 0;
}
.pages-side-schedule .schedule-title {
  font-size:12px;
}
.pages-side-schedule .schedule-time {
  font-size:13px;
}
.pages-side-schedule .expand-mark {
  display:none;
}
.pages-side-schedule .table-wrap {
  margin-left:0;
  margin-right:0;
}
.pages-student-focus .actions {
  flex-shrink:0;
}
.pages-registration-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:20px;
}
.pages-registration {
  min-width:0;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--paper);
  scroll-margin-top:20px;
}
.pages-registration.is-actionable {
  border-color:#bcc6df;
}
.pages-registration>header {
  padding:22px 23px 17px;
  border-bottom:1px solid var(--line);
}
.pages-registration>header .pages-section-line {
  margin-top:6px;
  margin-bottom:0;
}
.pages-registration-body {
  padding:18px 23px 22px;
}
.pages-registration-description {
  margin-bottom:19px;
  color:var(--muted);
  font-size:13px;
  line-height:1.8;
}
.pages-registration-body textarea {
  min-height:85px;
}
.pages-registration-body .notice {
  margin-bottom:17px;
}
.pages-registration-body>.small {
  margin-top:13px;
}
.pages-status-message {
  padding:16px 17px;
  border-left:2px solid #c5ccde;
  background:#f6f7fa;
}
.pages-status-message strong {
  font-size:13px;
}
.pages-status-message p,.pages-team-state {
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.8;
}
.pages-registration-body>.pages-fold {
  margin-top:17px;
}
.pages-registration-body>.pages-fold>div {
  padding-bottom:0;
  overflow-wrap:anywhere;
}
.pages-student-schedule {
  margin-top:29px;
  scroll-margin-top:20px;
}
.pages-personal-races {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:17px;
  align-items:start;
}
.pages-personal-race {
  min-width:0;
  padding:21px 23px 0;
  border:1px solid var(--line);
  border-radius:7px;
  background:var(--paper);
}
.pages-personal-race-head {
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:18px;
  padding-bottom:19px;
}
.pages-start-time {
  padding-right:15px;
  border-right:1px solid var(--line);
}
.pages-start-time strong {
  display:block;
  font-size:19px;
  font-variant-numeric:tabular-nums;
}
.pages-start-time span {
  display:block;
  margin-top:5px;
  color:var(--muted);
  font-size:11px;
}
.pages-personal-race h3 {
  font-size:15px;
}
.pages-personal-race-head p {
  margin-top:7px;
  margin-bottom:8px;
  color:var(--muted);
  font-size:12px;
}
.pages-personal-race-head p strong {
  color:var(--accent);
}
.pages-my-score {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 16px;
  padding:13px 0 17px;
  border-top:1px solid var(--line);
}
.pages-my-score strong {
  font-size:23px;
  font-variant-numeric:tabular-nums;
}
.pages-my-score span {
  color:var(--muted);
  font-size:11px;
}
.pages-schedule-empty {
  padding:28px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  text-align:center;
}
.pages-schedule-empty strong {
  font-size:14px;
  font-weight:500;
}
.pages-schedule-empty p {
  margin-top:7px;
  color:var(--muted);
  font-size:12px;
}
.pages-student-bracket {
  margin-top:22px;
}
.pages-student-bracket>div {
  padding:16px 22px 22px;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:6px;
}
/* Broadcast uses the same semantic diagrams with a restrained dark surface. */
.pages-broadcast {
  --paper:#202d45;
  --ink:#eef2ff;
  --muted:#aebcd5;
  --line:#39465e;
  --accent:#b6c6ff;
  --accent-soft:#2b3b5e;
  background:#182338;
  padding:26px 30px;
  gap:23px;
}
.pages-broadcast .screen-top {
  padding-bottom:17px;
}
.pages-broadcast .screen-top h2 {
  margin-top:5px;
  font-size:23px;
}
.pages-broadcast .screen-top>span {
  font-size:10px;
  line-height:1.9;
  text-align:right;
}
.pages-broadcast-kicker {
  display:block;
  font-size:9px!important;
  color:#9faccc!important;
  letter-spacing:2px;
}
.pages-broadcast-grid {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);
  gap:27px;
  flex:1;
}
.pages-broadcast-track,.pages-broadcast-side {
  min-width:0;
}
.pages-broadcast-track {
  padding-right:26px;
  border-right:1px solid #36425a;
}
.pages-broadcast-heading {
  margin-bottom:15px;
}
.pages-broadcast-heading>span {
  display:block;
  margin-bottom:6px;
  font-size:9px;
  font-weight:600;
  letter-spacing:1.7px;
  color:#94a5c7;
}
.pages-broadcast-heading h2 {
  font-size:18px;
  color:#eef2ff;
}
.pages-broadcast-event {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
  margin-bottom:8px;
}
.pages-broadcast-event h3 {
  font-size:14px;
}
.pages-broadcast-event>span {
  font-size:10px;
  color:#aebcd5;
}
.pages-broadcast .badge {
  padding:3px 7px;
  font-size:10px;
  color:#d3defb;
  background:#2b3b5e;
}
.pages-broadcast .badge.published {
  color:#c0e1d3;
  background:#26473f;
}
.pages-broadcast .badge.review {
  color:#eed3a4;
  background:#50432b;
}
.pages-broadcast .table-wrap {
  margin-top:12px;
}
.pages-broadcast table {
  width:100%;
  font-size:13px;
}
.pages-broadcast th,.pages-broadcast td {
  padding:8px 7px;
  white-space:normal;
}
.pages-broadcast th {
  font-size:10px;
  font-weight:400;
}
.pages-broadcast td small {
  font-size:9px;
}
.pages-broadcast .screen-note {
  font-size:10px;
  line-height:1.8;
}
.pages-broadcast-side {
  display:flex;
  flex-direction:column;
  gap:21px;
}
.pages-broadcast-points {
  padding-top:17px;
  border-top:1px solid #36425a;
}
.pages-broadcast .screen-points {
  gap:10px;
}
.pages-broadcast .screen-points>div {
  padding-left:10px;
  border-left-color:#7284b4;
}
.pages-broadcast .screen-points span {
  font-size:11px;
}
.pages-broadcast .screen-points strong {
  font-size:25px;
  font-weight:500;
}
.pages-broadcast .screen-points small {
  font-size:10px;
  color:#aebcd5;
}
.pages-broadcast .screen-bottom {
  padding-top:15px;
  font-size:9px;
}
.pages-broadcast-wait {
  padding:34px 0 39px;
}
.pages-broadcast-wait>span {
  display:block;
  color:#aebcd5;
  font-size:12px;
}
.pages-broadcast-wait h3 {
  margin-top:9px;
  font-size:21px;
}
.pages-broadcast-wait>strong {
  display:block;
  margin-top:23px;
  font-size:48px;
  font-weight:500;
  font-variant-numeric:tabular-nums;
}
.pages-broadcast-wait p {
  margin-top:9px;
  color:#b9c6e0;
  font-size:12px;
}
.pages-broadcast:fullscreen {
  padding:3.5vh 3.5vw;
  gap:3vh;
  justify-content:flex-start;
}
.pages-broadcast:fullscreen .pages-broadcast-grid {
  gap:3vw;
  align-items:start;
}
.pages-broadcast:fullscreen .screen-top h2 {
  font-size:clamp(24px,2.05vw,40px);
}
.pages-broadcast:fullscreen .pages-broadcast-heading h2 {
  font-size:clamp(22px,1.5vw,30px);
}
.pages-broadcast:fullscreen .pages-broadcast-heading>span {
  font-size:clamp(10px,.7vw,14px);
}
.pages-broadcast:fullscreen .pages-broadcast-event h3 {
  font-size:clamp(16px,1.25vw,25px);
}
.pages-broadcast:fullscreen .pages-broadcast-event>span,.pages-broadcast:fullscreen .screen-note,.pages-broadcast:fullscreen .screen-bottom,.pages-broadcast:fullscreen .screen-top>span {
  font-size:clamp(11px,.85vw,17px);
}
.pages-broadcast:fullscreen .pages-broadcast-track {
  padding-right:3vw;
}
.pages-broadcast:fullscreen table {
  font-size:clamp(15px,1.2vw,24px);
}
.pages-broadcast:fullscreen th {
  font-size:clamp(11px,.8vw,16px);
}
.pages-broadcast:fullscreen td small {
  font-size:clamp(11px,.78vw,16px);
}
.pages-broadcast:fullscreen th,.pages-broadcast:fullscreen td {
  padding:1.1vh .6vw;
}
.pages-broadcast:fullscreen .pages-broadcast-side {
  gap:3vh;
}
.pages-broadcast:fullscreen .screen-points span {
  font-size:clamp(12px,.95vw,20px);
}
.pages-broadcast:fullscreen .screen-points strong {
  font-size:clamp(27px,2.2vw,44px);
}
.pages-broadcast:fullscreen .screen-points small {
  font-size:clamp(11px,.8vw,16px);
}
@media(max-width:1000px) {
  .pages-overview-layout { grid-template-columns:minmax(0,1fr) 230px; gap:20px; }
  .pages-event-lead,.pages-student-focus { padding:23px; }
  .pages-event-metrics { gap:17px; }
  .pages-event-metrics>div { padding-left:17px; min-width:65px; }
  .pages-block-head { padding:20px 18px 17px; }
  .pages-race-tabs { padding:0 18px; }
  .pages-selected-race { padding:18px 18px 0; }
  .pages-bracket-area { padding:0 18px 20px; }
  .pages-qualification { padding:13px 18px 16px; }
  .pages-broadcast { padding:24px; }
  .pages-broadcast-grid { gap:21px; }
  .pages-broadcast-track { padding-right:20px; }
}
@media(max-width:800px) {
  .pages-overview-layout { grid-template-columns:minmax(0,1fr); }
  .pages-aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:20px; }
  .pages-side-note { margin-top:0; }
  .pages-side-schedule { grid-column:1/-1; margin-top:0; }
  .pages-event-lead { flex-wrap:wrap; }
  .pages-event-metrics { width:100%; gap:22px; padding-top:17px; border-top:1px solid #d6ddeb; }
  .pages-event-metrics>div { flex:1; padding-left:0; border:0; }
  .pages-event-metrics strong { font-size:26px; }
  .pages-broadcast { aspect-ratio:auto; }
  .pages-broadcast-grid { grid-template-columns:minmax(0,1fr); }
  .pages-broadcast-track { padding-right:0; padding-bottom:22px; border-right:0; border-bottom:1px solid #36425a; }
  .pages-broadcast .screen-points strong { font-size:28px; }
  .pages-broadcast table { font-size:14px; }
  .pages-broadcast th,.pages-broadcast td { padding:10px 8px; }
  .pages-broadcast td small { font-size:11px; }
}
@media(max-width:600px) {
  .pages-event-lead,.pages-student-focus { padding:21px 19px; margin-bottom:22px; }
  .pages-event-lead h2,.pages-student-focus h2 { font-size:22px; }
  .pages-student-focus { align-items:flex-start; flex-direction:column; gap:16px; }
  .pages-aside,.pages-registration-grid,.pages-personal-races { grid-template-columns:minmax(0,1fr); }
  .pages-aside { gap:19px; }
  .pages-block-head h2 { font-size:20px; }
  .pages-registration>header { padding:20px; }
  .pages-registration-body { padding:17px 20px 20px; }
  .pages-personal-race { padding:19px 20px 0; }
  .pages-student-bracket>div { padding:14px; }
  .pages-broadcast { padding:21px 18px; }
  .pages-broadcast .screen-top h2 { font-size:19px; }
  .pages-broadcast .screen-top>span { text-align:left; }
  .pages-broadcast .screen-top { align-items:flex-start; }
}
@media(max-width:420px) {
  .pages-event-lead h2,.pages-student-focus h2 { font-size:20px; }
  .pages-event-metrics { gap:12px; }
  .pages-event-metrics strong { font-size:24px; }
  .pages-event-metrics span { font-size:10px; }
  .pages-block-head { align-items:flex-start; gap:10px; padding:18px 15px 15px; }
  .pages-fraction { font-size:10px; }
  .pages-fraction strong { font-size:14px; }
  .pages-race-tabs { padding:0 15px; gap:4px; }
  .pages-race-tabs button { padding:8px; }
  .pages-race-tabs button span { font-size:12px; }
  .pages-race-tabs button small { font-size:9px; }
  .pages-selected-race { padding:16px 15px 0; }
  .pages-bracket-area { padding:0 15px 18px; }
  .pages-qualification { padding:12px 15px 15px; }
  .pages-personal-race-head { grid-template-columns:59px minmax(0,1fr); gap:13px; }
  .pages-start-time { padding-right:10px; }
  .pages-start-time strong { font-size:17px; }
  .pages-personal-race h3 { font-size:14px; }
  .pages-registration>header,.pages-registration-body { padding-left:16px; padding-right:16px; }
  .pages-personal-race { padding-left:16px; padding-right:16px; }
  .pages-broadcast .screen-points { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .pages-broadcast-event { flex-wrap:wrap; }
}
@media print {
  .pages-event-lead,.pages-student-focus { break-inside:avoid; }
  .pages-race-tabs,.pages-main>.pages-section-line .segmented { display:none; }
  .pages-overview-layout { display:block; }
  .pages-aside { margin-top:20px; }
}
.pages-broadcast .sports-diagram {
  padding:15px;
  border-color:#39465e;
  border-radius:7px;
  background:#202d45;
  color:#eef2ff;
}
.pages-broadcast .sports-diagram-heading {
  margin-bottom:13px;
}
.pages-broadcast .sports-diagram-heading h3 {
  font-size:13px;
}
.pages-broadcast .sports-eyebrow {
  display:none;
}
.pages-broadcast .bracket-match {
  border-color:#42506a;
  background:#26364f;
  color:#eef2ff;
}
.pages-broadcast .bracket-team+.bracket-team,.pages-broadcast .bracket-match-foot {
  border-color:#42506a;
}
.pages-broadcast .bracket-team-name,.pages-broadcast .bracket-score {
  color:#eef2ff;
}
.pages-broadcast .bracket-team-name small,.pages-broadcast .bracket-team-name em,.pages-broadcast .bracket-team.is-winner .bracket-team-name,.pages-broadcast .bracket-team.is-winner .bracket-score {
  color:#c8d4ff;
}
.pages-broadcast .bracket-champion {
  border-color:#5e6c86;
  background:#283650;
  color:#eef2ff;
}
.pages-broadcast .bracket-champion.is-confirmed {
  border-color:#8d7950;
  background:#3d3a2b;
}
.pages-broadcast .bracket-champion.is-confirmed .bracket-champion-label,.pages-broadcast .bracket-champion.is-confirmed>strong {
  color:#eed6a4;
}
.pages-broadcast .bracket-match.is-blocked .bracket-match-heading>span,.pages-broadcast .bracket-match.is-blocked .bracket-match-foot,.pages-broadcast .sports-correcting .sports-diagram-note {
  color:#efd19b;
}
.pages-broadcast .sports-diagram-note {
  font-size:11px;
}
.pages-broadcast:fullscreen .sports-diagram {
  padding:20px;
}
.pages-broadcast:fullscreen .sports-diagram-heading h3 {
  font-size:17px;
}
.pages-broadcast:fullscreen .bracket-team-name {
  font-size:clamp(13px,.85vw,18px);
}
.pages-broadcast:fullscreen .bracket-score {
  font-size:clamp(20px,1.4vw,30px);
}
.pages-broadcast:fullscreen .bracket-team {
  min-height:39px;
}
.pages-broadcast:fullscreen .bracket-match-foot,.pages-broadcast:fullscreen .bracket-match-heading>strong,.pages-broadcast:fullscreen .bracket-match-heading>span,.pages-broadcast:fullscreen .sports-diagram-note {
  font-size:clamp(11px,.7vw,14px);
}
/* Embedded diagrams share the page surface and do not repeat its heading. */
.pages-selected-race>.sports-diagram,.pages-bracket-area>.sports-diagram {
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.pages-selected-race>.sports-diagram>.sports-diagram-heading,.pages-bracket-area>.sports-diagram>.sports-diagram-heading {
  display:none;
}
.pages-competition>.pages-block-head {
  padding-top:18px;
  padding-bottom:14px;
}
.pages-selected-race {
  padding-top:15px;
}
.pages-selected-race .sports-diagram-note,.pages-bracket-area .sports-diagram-note {
  font-size:11px;
  margin-top:9px;
}
.pages-broadcast .basketball-bracket>.sports-diagram-heading {
  display:none;
}
.pages-broadcast:fullscreen {
  padding-top:3vh;
  padding-bottom:3vh;
  gap:2.1vh;
}
.pages-broadcast:fullscreen .pages-broadcast-heading {
  margin-bottom:12px;
}
.pages-broadcast:fullscreen table {
  font-size:clamp(15px,1.1vw,22px);
  line-height:1.35;
}
.pages-broadcast:fullscreen th,.pages-broadcast:fullscreen td {
  padding:.58vh .6vw;
}
.pages-broadcast:fullscreen td small {
  font-size:clamp(11px,.76vw,15px);
  line-height:1.35;
  margin-top:3px;
}
.pages-broadcast:fullscreen .pages-broadcast-side {
  gap:2vh;
}
.pages-broadcast:fullscreen .sports-diagram {
  padding:16px;
}
.pages-broadcast:fullscreen .bracket-team {
  min-height:33px;
}
.pages-broadcast:fullscreen .screen-note {
  margin-top:12px;
}
.pages-broadcast:fullscreen .screen-correction {
  margin-top:9px;
  padding:7px 10px;
  font-size:clamp(12px,.78vw,16px);
  line-height:1.5;
}
.pages-broadcast:fullscreen .screen-bottom {
  padding-top:12px;
}

/* Contextual inspection preserves the current form and its unsaved values. */
.task-body > .basketball-bracket, .task-body > .track-diagram { margin-bottom: 26px; }
.lane-row.is-inspected, tr.is-inspected { background: #eef1ff; box-shadow: inset 3px 0 0 var(--accent); }
.lane-row.is-inspected { padding-left: 10px; padding-right: 10px; }
.college-overview { display: flex; align-items: center; gap: 18px; padding: 22px 25px; margin-bottom: 24px; border: 1px solid var(--line); border-radius: 7px; background: var(--paper); }
.college-emblem { width: 49px; height: 54px; display: grid; place-items: center; flex-shrink: 0; font-size: 23px; font-weight: 600; color: var(--accent); background: #edf0fb; border-radius: 5px 5px 14px 14px; }
.college-identity h2 { font-size: 18px; }
.college-identity p { color: var(--muted); font-size: 12px; margin-top: 5px; }
.college-overview dl { display: flex; gap: 32px; margin: 0 0 0 auto; }
.college-overview dt { color: var(--muted); font-size: 12px; }
.college-overview dd { margin: 3px 0 0; font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.college-overview dd small { margin-left: 6px; color: var(--muted); font-size: 12px; font-weight: 400; }
.roster-summary { display: flex; gap: 13px; align-items: baseline; padding: 0 0 15px; border-bottom: 1px solid var(--line); margin-bottom: 16px; }
.roster-summary strong { color: var(--accent); font-size: 24px; font-variant-numeric: tabular-nums; }
.roster-summary span { color: var(--muted); font-size: 12px; }
@media (max-width: 760px) {
 .college-overview { flex-wrap: wrap; padding: 18px; gap: 14px; }
 .college-overview dl { width: 100%; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; border-top: 1px solid var(--line); padding-top: 12px; }
 .college-overview dd { font-size: 21px; }
 .college-overview dd small { display: block; margin-left: 0; }
 .college-identity { min-width: 0; }
 .task-body > .basketball-bracket, .task-body > .track-diagram { margin-bottom: 20px; }
}

/* Collaboration handoffs, scenario recovery and report entry. */
.handoff-card { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 16px; margin-top:17px; border-left:3px solid #6c79ad; background:#f2f4fa; border-radius:0 6px 6px 0; }
.handoff-card>div { display:grid; gap:4px; min-width:0; }
.handoff-card strong { font-size:13px; font-weight:600; }
.handoff-owner { font-size:11px; color:#46558f; font-weight:700; }
.handoff-card small,.handoff-current { font-size:11px; color:#657087; }
.handoff-card .button { flex-shrink:0; }
.scenario-current { margin:16px 0; font-size:13px; color:#53617c; }
.scenario-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.scenario-option { border:1px solid #dce1ed; border-radius:8px; padding:18px; display:flex; flex-direction:column; align-items:flex-start; }
.scenario-option h3 { margin:0; font-size:16px; }
.scenario-option p { flex:1; font-size:13px; color:#647087; margin:10px 0 16px; }
.scenario-snapshots { margin-top:22px; border-top:1px solid #dce1ed; padding-top:18px; }
.scenario-snapshots summary { cursor:pointer; font-weight:600; }
.scenario-snapshots article { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 0; border-bottom:1px solid #e5e8ef; }
.scenario-snapshots article small { display:block; color:#657087; margin-top:4px; }
.scenario-preview { padding:20px; border:1px solid #dce1ed; border-radius:8px; margin-bottom:16px; }
.scenario-preview h3 { font-size:21px; margin:8px 0; }
.report-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; flex-wrap:wrap; }
.report-controls .segmented { flex-wrap:wrap; }
.report-controls .segmented .button { border:0; }
.task-body>.qualification-explainer { margin-bottom:18px; }
@media(max-width:600px) { .handoff-card { align-items:flex-start; flex-direction:column; gap:10px; } .scenario-grid { grid-template-columns:1fr; } .report-controls { align-items:stretch; flex-direction:column; } .report-controls .segmented { display:grid; grid-template-columns:1fr; } }


/* BEGIN RESULT STYLES */
/* StartLine result awards, qualification explanations and print documents. */
.award-rank { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; color: var(--ink, #233047); vertical-align: middle; line-height: 1.45; }
.award-medallion { position: relative; display: inline-grid; place-items: center; flex: 0 0 27px; width: 27px; height: 27px; border: 2px solid currentColor; border-radius: 50%; font-size: 12px; font-weight: 750; box-shadow: inset 0 0 0 2px #ffffff80; }
.award-medallion::after { content: ''; position: absolute; width: 13px; height: 7px; z-index: -1; bottom: -6px; background: currentColor; clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 66%, 0 100%); opacity: .6; }
.award-label { display: inline-block; font-size: 12px; font-weight: 600; }
.award-label small { display: block; max-width: 155px; margin-top: 2px; color: #79581c; font-size: 10px; font-weight: 400; white-space: normal; }
.award-gold .award-medallion { color: #987016; background: #fff0c3; }
.award-silver .award-medallion { color: #64748a; background: #edf1f6; }
.award-bronze .award-medallion { color: #985b36; background: #f8e5d7; }
.award-pending .award-medallion { border-style: dashed; box-shadow: none; }
.award-compact { gap: 5px; }
.award-compact .award-medallion { flex-basis: 19px; width: 19px; height: 19px; border-width: 1px; font-size: 10px; box-shadow: none; }
.award-compact .award-medallion::after { width: 9px; height: 4px; bottom: -4px; }
.award-compact .award-label { font-size: 11px; font-weight: 500; }
.track-lane-result .award-rank { justify-content: flex-end; }
.track-lane-result .award-label { text-align: right; }
.track-lane-result .award-label small { max-width: 112px; }
.results-table th:first-child { min-width: 126px; }
.results-table td:first-child { white-space: normal; }
.results-correction-note { padding: 10px 12px; border-left: 3px solid #b48a36; background: #fff7e3; color: #72511a; line-height: 1.6; font-size: 12px; }
.pages-broadcast .award-rank { color: #eef2ff; }
.pages-broadcast .award-label small { color: #efd39c; }
.pages-broadcast .award-medallion { width: 23px; height: 23px; flex-basis: 23px; }
.pages-broadcast .results-correction-note { background: #50432b; color: #ffdda4; }
.pages-broadcast .results-table th:first-child { min-width: 110px; }
.qualification-explainer { margin: 18px 0; padding: 18px; border: 1px solid var(--line, #dde3ee); border-radius: 6px; background: var(--paper, #fff); }
.qualification-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.qualification-heading h3 { margin: 4px 0 0; font-size: 16px; }
.qualification-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line, #dde3ee); border-bottom: 1px solid var(--line, #dde3ee); }
.qualification-rules > div { padding: 14px 12px; min-width: 0; }
.qualification-rules > div + div { border-left: 1px solid var(--line, #dde3ee); }
.qualification-rules strong { font-size: 13px; }
.qualification-rules p { margin: 7px 0 0; color: var(--muted, #68758c); font-size: 12px; line-height: 1.7; }
.qualification-rules small { display: block; margin-top: 6px; color: #8a6122; font-size: 11px; }
.qualification-reason { margin: 14px 0; font-size: 12px; line-height: 1.7; }
.qualification-candidates { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; }
.qualification-person { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line, #dde3ee); font-size: 12px; }
.qualification-person > span:first-child { flex: 0 0 110px; }
.qualification-person > span:last-child { align-self: center; text-align: right; color: var(--muted, #68758c); font-size: 11px; }
.qualification-person small { display: block; margin-top: 3px; color: var(--muted, #68758c); font-size: 11px; }
.correction-comparison-context { font-size: 12px; color: var(--muted, #68758c); line-height: 1.65; }
.correction-comparison tr.is-changed { background: #fff7e8; }
.correction-score-comparison { display: grid; grid-template-columns: 1fr 30px 1fr; align-items: center; gap: 12px; padding: 18px 0; }
.correction-score-comparison > div { padding: 18px; border: 1px solid var(--line, #dde3ee); border-radius: 5px; }
.correction-score-comparison > div:last-child { border-color: #d7bd86; background: #fff8eb; }
.correction-score-comparison span:not(.correction-arrow) { display: block; font-size: 12px; color: var(--muted, #68758c); }
.correction-score-comparison strong { display: block; margin-top: 8px; font-size: 24px; letter-spacing: 2px; font-variant-numeric: tabular-nums; }
.correction-arrow { text-align: center; color: var(--muted, #68758c); }
.print-document { margin: 0 auto; max-width: 900px; padding: 30px; color: #202c40; background: white; font-size: 13px; line-height: 1.6; }
.print-header { margin-bottom: 28px; padding-bottom: 18px; border-bottom: 2px solid #35466d; }
.print-brand { font-size: 11px; letter-spacing: 2px; color: #56657e; }
.print-document h1 { margin: 8px 0; font-size: 28px; }
.print-document h2 { margin: 18px 0 10px; font-size: 18px; }
.print-document h3 { margin: 12px 0 5px; font-size: 14px; }
.print-meta { display: flex; flex-wrap: wrap; gap: 4px 18px; font-size: 11px; color: #53627a; }
.print-demo { margin: 12px 0 0; color: #775621; font-size: 11px; }
.print-section { margin: 22px 0; max-width: 100%; overflow-x: auto; }
.print-document table { width: 100%; margin: 12px 0; border-collapse: collapse; font-size: 11px; }
.print-document th, .print-document td { padding: 9px 7px; border: 1px solid #d4dbe6; text-align: left; white-space: normal; }
.print-document th { background: #f0f3f8; color: #34435b; }
.print-document td small { display: block; margin-top: 3px; color: #5f6d82; }
.print-note, .print-footer { font-size: 11px; color: #5b687b; }
.print-footer { margin-top: 28px; padding-top: 12px; border-top: 1px solid #ccd5e3; }
.print-team { padding: 2px 0 10px; border-bottom: 1px solid #d4dbe6; }
.print-document .award-label { font-size: 11px; }
.print-document .results-table th:first-child { min-width: 100px; }
.print-document .table-wrap { max-width: 100%; }
@media (max-width: 600px) {
  .qualification-explainer { padding: 14px; }
  .qualification-rules, .qualification-candidates { grid-template-columns: 1fr; }
  .qualification-rules > div { padding: 12px 0; }
  .qualification-rules > div + div { border-left: 0; border-top: 1px solid var(--line, #dde3ee); }
  .qualification-person > span:first-child { flex-basis: 98px; }
  .correction-score-comparison { grid-template-columns: 1fr; gap: 5px; }
  .correction-arrow { transform: rotate(90deg); }
  .print-document { padding: 12px; }
  .print-meta { display: grid; }
  .print-document table { min-width: 420px; }
}
@media print {
  @page { size: A4 portrait; margin: 14mm 12mm; }
  html:has(.print-document), body:has(.print-document) { height: auto !important; min-height: 0 !important; overflow: visible !important; background: white !important; }
  body:has(.print-document) > :not(#modal) { display: none !important; }
  #modal:has(.print-document) { display: block !important; position: static !important; inset: auto !important; width: auto !important; height: auto !important; max-width: none !important; max-height: none !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; color: #111 !important; background: white !important; }
  #modal::backdrop { display: none !important; }
  #modal:has(.print-document) > :not(.modal-body), #modal:has(.print-document) .modal-body > :not(.print-document) { display: none !important; }
  #modal:has(.print-document) .modal-body { display: block !important; padding: 0 !important; max-height: none !important; overflow: visible !important; }
  .print-document { display: block !important; max-width: none !important; padding: 0 !important; font-size: 10pt; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-header, .print-team { break-inside: avoid; }
  .print-document .print-section { overflow: visible !important; }
  .print-document h1, .print-document h2, .print-document h3 { break-after: avoid; }
  .print-document h1 { font-size: 22pt; }
  .print-document h2 { font-size: 14pt; }
  .print-document p { orphans: 3; widows: 3; }
  .print-document .table-wrap { overflow: visible !important; }
  .print-document table { width: 100% !important; min-width: 0 !important; table-layout: auto; border-collapse: collapse; font-size: 9pt; }
  .print-document thead { display: table-header-group; }
  .print-document tfoot { display: table-footer-group; }
  .print-document tr { break-inside: avoid; page-break-inside: avoid; }
  .print-document th, .print-document td { padding: 6pt 5pt; min-width: 0 !important; overflow-wrap: anywhere; }
  .print-document .award-rank { break-inside: avoid; }
  .print-document .award-medallion { width: 18pt; height: 18pt; flex-basis: 18pt; }
  .print-document button, .print-document input, .print-document select, .print-document textarea { display: none !important; }
  .print-footer { position: static; break-inside: avoid; }
}
@media screen and (min-width: 1000px) {
  .pages-broadcast:fullscreen .results-table .award-medallion { width: 33px; height: 33px; flex-basis: 33px; font-size: 17px; border-width: 2px; }
  .pages-broadcast:fullscreen .results-table .award-label { font-size: 18px; line-height: 1.45; }
  .pages-broadcast:fullscreen .results-table .award-label small { font-size: 12px; }
  .pages-broadcast:fullscreen .results-table tr:has(.award-gold) { background: rgb(219 171 64 / 12%); }
  .pages-broadcast:fullscreen .results-table tr:has(.award-gold) > td:first-child { box-shadow: inset 3px 0 #dbab40; }
  .pages-broadcast:fullscreen .results-table tr:has(.award-silver) { background: rgb(166 184 211 / 10%); }
  .pages-broadcast:fullscreen .results-table tr:has(.award-silver) > td:first-child { box-shadow: inset 3px 0 #a6b8d3; }
  .pages-broadcast:fullscreen .results-table tr:has(.award-bronze) { background: rgb(186 128 89 / 13%); }
  .pages-broadcast:fullscreen .results-table tr:has(.award-bronze) > td:first-child { box-shadow: inset 3px 0 #ba8059; }
}
/* END RESULT STYLES */

/* BEGIN STARTLINE FOCUS V4 */
/* Focus each match on the operation available at its current stage. */
.focus-visual.task-support {
  margin:0 0 20px;
  border-top:0;
  border-bottom:1px solid var(--line);
}
.focus-visual>summary {
  padding:4px 0 14px;
  font-size:12px;
}
.focus-visual>summary>span {
  margin-left:8px;
  color:var(--muted);
  font-weight:400;
}
.focus-visual .sports-diagram {
  margin:0 0 10px;
}
.focus-eyebrow {
  display:block;
  color:var(--accent);
  font-size:11px;
  font-weight:600;
  line-height:1.6;
  margin-bottom:6px;
}
.focus-checkin-summary {
  padding:17px 18px;
  background:var(--accent-soft);
  border:1px solid #dce2f0;
  border-radius:6px;
  margin-bottom:19px;
}
.focus-checkin-summary h3 {
  font-size:25px;
  font-variant-numeric:tabular-nums;
}
.focus-checkin-summary h3 small {
  font-size:13px;
  color:var(--muted);
  font-weight:400;
}
.focus-checkin-track {
  margin-bottom:19px;
}
.focus-checkin-track>.track-diagram {
  padding:0;
  border:0;
  border-radius:0;
}
.focus-checkin-track .sports-diagram-heading {
  margin-bottom:12px;
}
.focus-checkin-track .sports-eyebrow {
  display:none;
}
.focus-entry-fold>summary {
  color:var(--accent);
  font-weight:600;
}
.focus-entry-fold>summary small {
  font-weight:400;
  color:var(--muted);
}
.focus-entry-fold>.task-support-body {
  padding-top:13px;
}
.focus-entry-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
}
.focus-entry-head h3 {
  font-size:19px;
}
.focus-keyboard-help,.focus-score-rules {
  color:var(--muted);
  font-size:12px;
  line-height:1.8;
}
.focus-keyboard-help {
  margin-bottom:15px;
}
.focus-score-rules {
  margin:12px 0 0;
}
.focus-results-table td:first-child strong {
  font-size:13px;
  font-weight:500;
}
.focus-results-table .seconds-input {
  width:114px;
  font-variant-numeric:tabular-nums;
  font-size:15px;
}
.focus-results-table input:focus,.focus-results-table select:focus {
  background:#fff;
}
.focus-unchecked {
  color:var(--muted);
  font-size:12px;
}
.focus-results-table [aria-invalid=true] {
  border-color:var(--danger);
  background:#fff7f7;
}
.focus-results-table tr.has-score-error td {
  background:#fffafa;
}
.score-field-error {
  display:block;
  max-width:190px;
  margin-top:7px;
  color:var(--danger);
  font-size:11px;
  line-height:1.55;
  white-space:normal;
}
.score-field-error[hidden] {
  display:none;
}
.focus-score-form input,.focus-score-form select,.focus-score-form button {
  scroll-margin-block:25px 120px;
}
.task-detail .focus-actions {
  position:sticky;
  bottom:0;
  z-index:5;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:13px 18px;
  margin:19px -1px 0;
  padding:15px 16px;
  border:1px solid #dce2ee;
  border-radius:6px;
  background:#fff;
  box-shadow:0 -6px 22px #1a2d5410;
}
.focus-action-copy {
  min-width:110px;
  flex:1;
}
.focus-action-copy strong {
  display:block;
  font-size:13px;
  line-height:1.6;
}
.focus-action-copy>span:not(.sr-only) {
  display:block;
  color:var(--muted);
  font-size:11px;
  line-height:1.65;
  margin-top:3px;
}
.focus-action-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.focus-action-buttons>.button {
  min-height:38px;
}
.focus-score-form+.task-support {
  margin-top:23px;
}
.task-detail>.task-body>.match-panel>.panel-body>.actions.center.section-gap {
  position:sticky;
  bottom:0;
  z-index:5;
  padding:14px 12px;
  background:#fff;
  border:1px solid #dce2ee;
  border-radius:6px;
  box-shadow:0 -6px 22px #1a2d5410;
}
@media(max-width:800px) {
  .task-detail .focus-actions {
    padding:12px 13px;
    gap:10px;
  }
  .focus-action-copy {
    min-width:100%;
  }
  .focus-action-copy strong {
    display:none;
  }
  .focus-action-copy>span:not(.sr-only) {
    margin-top:0;
  }
  .focus-action-buttons {
    width:100%;
  }
  .focus-action-buttons>.button {
    flex:1;
    min-height:42px;
  }
}
@media(max-width:620px) {
  .focus-checkin-summary {
    padding:16px;
    align-items:flex-start;
    gap:14px;
  }
  .focus-checkin-summary .button.primary {
    min-height:42px;
  }
  .focus-checkin-summary h3 {
    font-size:22px;
  }
  .focus-score-form .focus-results-wrap {
    overflow:visible;
    border:0;
  }
  .focus-score-form .focus-results-table {
    display:block;
    width:100%;
    min-width:0;
  }
  .focus-score-form .focus-results-table thead {
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
  }
  .focus-score-form .focus-results-table tbody {
    display:grid;
    gap:10px;
  }
  .focus-score-form .focus-results-table tr {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:11px 12px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:6px;
    background:#fafbfe;
  }
  .focus-score-form .focus-results-table td {
    display:block;
    min-width:0;
    border:0;
    padding:0;
    background:transparent;
  }
  .focus-score-form .focus-results-table td:nth-child(2) {
    align-self:start;
    text-align:right;
  }
  .focus-score-form .focus-results-table td:nth-child(n+3)::before {
    content:attr(data-label);
    display:block;
    color:var(--muted);
    font-size:11px;
    margin-bottom:6px;
  }
  .focus-score-form .focus-results-table input,.focus-score-form .focus-results-table select {
    width:100%;
    min-height:43px;
    font-size:16px;
    padding:8px;
  }
  .focus-score-form .focus-results-table tr.has-score-error {
    background:#fffafa;
    border-color:#dfb5b8;
  }
  .focus-score-form .focus-results-table td:first-child strong {
    font-size:13px;
  }
  .focus-score-form .focus-results-table td small {
    font-size:11px;
  }
  .focus-score-form .score-field-error {
    font-size:11px;
  }
  .focus-keyboard-help {
    font-size:11px;
  }
  .focus-entry-head h3 {
    font-size:18px;
  }
}
@media(max-width:380px) {
  .focus-score-form .focus-results-table tr {
    padding:12px;
    column-gap:9px;
  }
  .focus-action-buttons>.button {
    font-size:12px;
    padding-left:8px;
    padding-right:8px;
  }
  .task-detail .focus-actions {
    padding:10px;
  }
}
@media print {
  .focus-actions,.task-detail>.task-body>.match-panel>.panel-body>.actions.center.section-gap {
    position:static;
    box-shadow:none;
  }
}
/* END STARTLINE FOCUS V4 */
