:where(#btn-rit-meer, #btn-rit-pieken) {
  display: none;
}
@media (max-height: 500px) and (orientation: landscape), (max-width: 500px) and (orientation: portrait) {
  body.rijdt #world-card .spel-hud {
    --hud: 1;
  }
  body.rijdt #world-card .hud-boven {
    top: 6px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: max-content;
    max-width: calc(100vw - 352px);
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4px 6px;
  }
  body.rijdt #world-card .hud-kern {
    flex: 0 1 auto;
    flex-wrap: nowrap;
    max-width: 100%;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .3);
  }
  body.rijdt #world-card .hud-cel {
    flex: 0 1 auto;
    min-width: 0;
    padding: 3px 9px 5px;
    column-gap: 2px;
    grid-template-columns: auto auto;
  }
  body.rijdt #world-card .hud-cel + .hud-cel {
    border-left: 1px solid rgba(255, 255, 255, .1);
  }
  body.rijdt #world-card .hud-cel.hud-vermogen {
    flex: 0 1 auto;
    order: 0;
    min-width: 0;
    padding-left: 12px;
    padding-right: 12px;
  }
  body.rijdt #world-card .hud-cel .hud-label {
    font-size: 8px;
    letter-spacing: .1em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  body.rijdt #world-card .hud-cel b {
    font-size: 21px;
  }
  body.rijdt #world-card .hud-cel.hud-vermogen b {
    font-size: 27px;
  }
  body.rijdt #world-card .hud-cel small {
    font-size: 9px;
    justify-self: start;
  }
  body.rijdt #world-card .hud-cel .hud-sub {
    display: none;
  }
  body.rijdt #world-card .hud-zone {
    height: 3px;
  }
  body.rijdt #world-card .hud-onder,
  body.rijdt #world-card .hud-titel:not([hidden]) {
    display: flex;
    flex: 0 1 auto;
    min-width: 0;
    gap: 10px;
    padding: 2px 10px;
    font-size: 10px;
  }
  body.rijdt #world-card .hud-onder span {
    gap: 4px;
  }
  body.rijdt #world-card .hud-onder i,
  body.rijdt #world-card .hud-titel i {
    font-size: 8px;
  }
  body.rijdt #world-card .hud-onder b {
    font-size: 12px;
  }
  body.rijdt #world-card .hud-titel {
    max-width: 240px;
    gap: 6px;
  }
  body.rijdt #world-card .hud-titel b {
    font-size: 11px;
  }
  body.rijdt #world-card .hud-titel span::before {
    margin-right: 6px;
  }
  body.rijdt #world-card .hud-versnelling {
    top: calc(var(--helling-onder, 56px) + 4px);
    bottom: auto;
    left: 16px;
    min-width: 0;
    width: 104px;
    padding: 4px 10px 6px;
    border-radius: 9px;
  }
  body.rijdt #world-card .hud-versnelling .hud-label {
    font-size: 8px;
  }
  body.rijdt #world-card .hud-versnelling b {
    font-size: 22px;
  }
  body.rijdt #world-card .hud-versnelling .hud-balk {
    height: 3px;
  }
  body.rijdt #world-card .hud-melding {
    top: 34%;
  }
  body.rijdt #world-card .world-buttons {
    top: 8px;
    right: 16px;
  }
  body.rijdt #world-card .world-buttons button {
    font-size: 11px;
    padding: 4px 10px;
  }
  body.rijdt #world-card .hud-pieken {
    display: none;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken {
    display: block;
    top: calc(var(--kaart-onder, 0px) + 2px);
    bottom: auto;
    right: 16px;
    padding: 4px 6px 6px;
    border-radius: 9px;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken-kop {
    font-size: 8px;
    margin-bottom: 3px;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken ol {
    flex-direction: row;
    gap: 3px;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken li {
    flex-direction: column;
    gap: 0;
    min-width: 36px;
    padding: 2px 3px 3px;
    border-radius: 6px;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken li:nth-child(n+5) {
    display: none;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken .p-duur {
    font-size: 8px;
  }
  body.rijdt.pieken-tonen #world-card .hud-pieken .p-watt {
    font-size: 14px;
  }
  body.rijdt.pieken-tonen #world-card .hud-wbal {
    display: none;
  }
  body.rijdt .controls {
    left: max(8px, env(safe-area-inset-left));
    right: auto;
    bottom: 8px;
    transform: none;
    width: max-content;
    max-width: calc(100vw - 16px);
    padding: 4px;
    gap: 4px;
    border-radius: 999px;
    flex-wrap: nowrap;
  }
  body.rijdt .controls > button,
  body.rijdt .controls:not(.meer-open) > #btn-rit-opties {
    display: none;
  }
  body.rijdt .controls > #btn-pause {
    display: inline-block;
    font-size: 14px;
    padding: 7px 18px;
    min-width: 0;
  }
  body.rijdt .controls > #btn-rit-meer {
    display: inline-flex;
    font-size: 14px;
    padding: 7px 14px;
  }
  body.rijdt .controls > #btn-rit-meer[aria-expanded=true] {
    background: rgba(255, 255, 255, .16);
  }
  body.rijdt .controls.meer-open {
    flex-wrap: wrap;
    width: 220px;
    padding: 6px;
    gap: 5px;
    border-radius: 16px;
  }
  body.rijdt .controls.meer-open > button:not([hidden]) {
    display: block;
    flex: 1 1 100%;
    order: 0;
    text-align: left;
    font-size: 13px;
    padding: 4px 12px;
    border-radius: 10px;
  }
  body.rijdt .controls.meer-open > #btn-rit-pieken,
  body.rijdt .controls.meer-open > #btn-schoon,
  body.rijdt .controls.meer-open > #btn-geluid {
    order: 1;
  }
  body.rijdt .controls.meer-open .lang-label {
    display: inline;
  }
  body.rijdt .controls.meer-open .kort-label {
    display: none;
  }
  body.rijdt .controls.meer-open > #btn-rit-pieken[aria-pressed=true] {
    box-shadow: inset 3px 0 0 var(--accent);
  }
  body.rijdt .controls.meer-open > #btn-pause {
    order: 2;
    flex: 1 1 auto;
    text-align: center;
    font-size: 14px;
    padding: 7px 18px;
    border-radius: 999px;
  }
  body.rijdt .controls.meer-open > #btn-rit-meer {
    order: 5;
    flex: 0 0 auto;
    text-align: center;
    font-size: 14px;
    padding: 7px 14px;
    border-radius: 999px;
  }
  body.rijdt .controls .rit-opties {
    left: calc(100% + 8px);
    right: auto;
    bottom: 0;
    transform: none;
    max-width: calc(100vw - 252px);
    gap: 8px 12px;
    padding: 8px 12px;
  }
  body.rijdt #erg-panel {
    left: auto;
    right: max(8px, env(safe-area-inset-right));
    bottom: 8px;
    transform: none;
    width: min(360px, 44vw);
    padding: 6px 10px;
    border-radius: 12px;
  }
  body.rijdt #erg-panel .erg-head {
    gap: 6px;
  }
  body.rijdt #erg-panel .erg-next,
  body.rijdt #erg-panel .bias {
    display: none;
  }
  body.rijdt #erg-panel .erg-watts {
    font-size: 20px;
  }
  body.rijdt #erg-panel .erg-remaining {
    font-size: 11px;
  }
  body.rijdt #erg-panel .btn-row button {
    padding: 4px 8px;
    font-size: 11px;
  }
  body.rijdt #erg-panel .workoutbar {
    height: 26px;
    margin-top: 4px;
  }
  body.rijdt #opponent-panel {
    left: 16px;
    right: auto;
    top: calc(var(--helling-onder, 56px) + 62px);
    bottom: auto;
    width: 200px;
    padding: 6px 10px;
    border-radius: 10px;
  }
  body.rijdt #opponent-panel .opp-gap {
    font-size: 20px;
  }
  body.rijdt #opponent-panel .opp-finish {
    font-size: 14px;
  }
  body.rijdt #opponent-panel .opp-sub {
    font-size: 10px;
  }
}
@media (max-width: 500px) and (orientation: portrait) {
  body.rijdt #world-card .hud-boven {
    top: 6px;
    left: 6px;
    right: 6px;
    transform: none;
    width: auto;
    max-width: none;
    gap: 3px 6px;
  }
  body.rijdt #world-card .hud-kern {
    width: 100%;
    justify-content: space-between;
  }
  body.rijdt #world-card .hud-cel,
  body.rijdt #world-card .hud-cel.hud-vermogen {
    flex: 1 1 auto;
    padding: 3px 5px 5px;
  }
  body.rijdt #world-card .hud-cel b {
    font-size: 19px;
  }
  body.rijdt #world-card .hud-cel.hud-vermogen b {
    font-size: 25px;
  }
  body.rijdt #world-card .hud-cel small {
    font-size: 8px;
  }
  body.rijdt #world-card .hud-onder {
    flex: 0 0 auto;
  }
  body.rijdt #world-card .hud-titel:not([hidden]) {
    max-width: none;
    flex: 1 1 0;
    min-width: 0;
  }
  body.rijdt #world-card .hud-titel b {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
  }
  body.rijdt #world-card .hud-boven {
    flex-wrap: wrap;
  }
  body.rijdt #world-card .klimbord {
    flex: 1 1 100%;
    max-width: 100%;
    font-size: 11px;
    padding: 2px 10px 3px 9px;
    gap: 5px;
  }
  body.rijdt #world-card .klimbord b {
    font-size: 12px;
  }
  body.rijdt #world-card .klim-kop {
    font-size: 8px;
  }
  body.rijdt #world-card .world-buttons {
    top: calc(var(--kaart-onder, 100px) + 2px);
  }
  body.rijdt .controls.meer-open > #btn-rit-pieken {
    display: none;
  }
  body.rijdt .controls .rit-opties {
    left: 0;
    bottom: calc(100% + 8px);
    max-width: calc(100vw - 16px);
  }
  body.rijdt .controls.meer-open {
    width: min(240px, calc(100vw - 16px));
  }
  body.rijdt .controls.meer-open > #btn-rit-opties,
  body.rijdt .controls.meer-open > #btn-blok-over {
    font-size: 13px;
    padding: 4px 12px;
  }
  body.rijdt #erg-panel {
    left: 8px;
    right: 8px;
    bottom: 60px;
    width: auto;
  }
  body.rijdt #opponent-panel {
    width: 170px;
    top: calc(var(--helling-onder, 140px) + 62px);
  }
}
body.rijdt.beeld-schoon #world-card .spel-hud,
body.rijdt.beeld-schoon #world-card .world-buttons,
body.rijdt.beeld-schoon #world-card .hud-versnelling,
body.rijdt.beeld-schoon #world-card .ronde-mini,
body.rijdt.beeld-schoon #world-card .ronde-bord,
body.rijdt.beeld-schoon .controls,
body.rijdt.beeld-schoon #erg-panel,
body.rijdt.beeld-schoon #opponent-panel {
  display: none !important;
}
body.rijdt.beeld-schoon #world-card canvas#world {
  cursor: pointer;
}
.schoon-hint {
  position: fixed;
  left: 50%;
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 40;
  transform: translateX(-50%);
  pointer-events: none;
  padding: 6px 14px;
  border-radius: 999px;
  white-space: nowrap;
  background: rgba(10, 12, 18, .6);
  color: rgba(255, 255, 255, .9);
  font:
    600 12px -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    sans-serif;
  transition: opacity .6s ease;
}
.schoon-hint[hidden],
body:not(.beeld-schoon) .schoon-hint {
  display: none;
}
.schoon-hint.weg {
  opacity: 0;
}
body:has(.beginscherm-tip:not([hidden])) .schoon-hint {
  display: none;
}
.beginscherm-tip {
  position: fixed;
  left: 50%;
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 60;
  transform: translateX(-50%);
  width: min(360px, calc(100vw - 24px));
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 14px;
  background: rgba(10, 12, 18, .9);
  color: #f2f2f5;
  border: 1px solid rgba(255, 255, 255, .14);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .4);
  font:
    14px/1.4 -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    sans-serif;
}
.beginscherm-tip[hidden] {
  display: none;
}
.beginscherm-tip p {
  margin: 0;
}
.beginscherm-tip button {
  align-self: flex-end;
}
@media (max-height: 500px) and (orientation: landscape), (max-width: 500px) and (orientation: portrait) {
  body.rijdt .controls.meer-open {
    width: min(360px, calc(100vw - 16px));
  }
  body.rijdt .controls.meer-open > button:not(#btn-pause, #btn-stop, #btn-rit-meer, #btn-blok-over) {
    flex: 1 1 calc(50% - 5px);
    font-size: 12px;
    padding: 4px 10px;
  }
  body.rijdt .controls > #btn-stop {
    font-size: 13px;
    padding: 7px 12px;
  }
  body.rijdt .controls.meer-open > :is(#btn-pause, #btn-stop, #btn-rit-meer) {
    flex: 0 0 auto;
  }
}
