/* A shared player keeps the practice unobstructed and controls within reach. */
.dvp-player{--dvp-surface:#171e29;--dvp-track:#394353;--dvp-accent:var(--amber,#f2b65b);width:100%;min-width:0;overflow:hidden;border:1px solid var(--line,#303a49);border-radius:10px;background:#090e15;color:#f3f5f8;font:400 13px/1.4 Poppins,sans-serif;isolation:isolate}
.dvp-stage{position:relative;width:100%;aspect-ratio:16/9;min-width:0;overflow:hidden;background:#080d14;touch-action:pan-y}
.dvp-player .dvp-stage>video{display:block;position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;object-fit:contain;border:0;border-radius:0;background:#080d14}
.dvp-controls{background:var(--dvp-surface);padding:0 10px 7px;border-top:1px solid #ffffff08}
.dvp-player input.dvp-seek[type=range]{display:block;width:100%;height:22px;min-height:22px;margin:0;padding:0;border:0;border-radius:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;touch-action:pan-y;accent-color:var(--dvp-accent);box-shadow:none}
.dvp-seek::-webkit-slider-runnable-track{height:3px;border:0;border-radius:2px;background:linear-gradient(to right,var(--dvp-accent) var(--dvp-progress,0%),var(--dvp-track) var(--dvp-progress,0%))}
.dvp-seek::-moz-range-track{height:3px;border:0;border-radius:2px;background:var(--dvp-track)}
.dvp-seek::-moz-range-progress{height:3px;border-radius:2px;background:var(--dvp-accent)}
.dvp-seek::-webkit-slider-thumb{width:11px;height:11px;margin-top:-4px;border:0;border-radius:50%;background:var(--dvp-accent);appearance:none;-webkit-appearance:none}
.dvp-seek::-moz-range-thumb{width:11px;height:11px;border:0;border-radius:50%;background:var(--dvp-accent)}
.dvp-seek:disabled{opacity:.4;cursor:default}
.dvp-player .dvp-seek:focus-visible{outline:2px solid var(--dvp-accent);outline-offset:0;border-radius:3px}
.dvp-control-row{display:flex;align-items:center;gap:9px;min-width:0}
.dvp-player button{display:grid;place-items:center;flex:0 0 44px;min-width:44px;min-height:44px;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:6px;background:transparent;color:#f3f5f8;cursor:pointer;touch-action:manipulation}
.dvp-player button:hover:not(:disabled),.dvp-speed:hover{background:#ffffff09}
.dvp-player button:disabled{opacity:.4;cursor:default}
.dvp-player button:focus-visible,.dvp-speed:focus-within{outline:2px solid var(--dvp-accent);outline-offset:-2px}
.dvp-player button>svg{width:21px;height:21px;flex-shrink:0;pointer-events:none}
.dvp-player[data-zoom-active=true] .dvp-stage{touch-action:none;user-select:none;-webkit-user-select:none}
.dvp-player[data-zoomed=true] .dvp-stage{cursor:grab}
.dvp-player[data-dragging=true] .dvp-stage{cursor:grabbing}
.dvp-stage:focus-visible{outline:2px solid var(--dvp-accent);outline-offset:-3px}
.dvp-time{min-width:0;white-space:nowrap;font-size:12px;color:#b2bdce;font-variant-numeric:tabular-nums;letter-spacing:.1px}
.dvp-spacer{flex:1;min-width:0}
.dvp-player label.dvp-speed{position:relative;display:block;flex:0 0 68px;min-width:0;height:44px;margin:0;border-radius:6px}
.dvp-player .dvp-speed>select{display:block;width:100%;height:44px;min-height:44px;margin:0;padding:0 24px 0 10px;border:0;border-radius:6px;background:transparent;color:#f3f5f8;font:500 14px/1.4 Poppins,sans-serif;appearance:none;-webkit-appearance:none;cursor:pointer;text-align:left;box-shadow:none;outline:0}
.dvp-speed>select option{background:var(--dvp-surface);color:#f3f5f8}
.dvp-speed-chevron{position:absolute;right:6px;top:15px;width:14px;height:14px;pointer-events:none}
.dvp-speed-chevron>svg{display:block;width:100%;height:100%}
.dvp-player .dvp-status{margin:0;padding:4px 9px 8px;font-size:12px;line-height:1.6;color:#efd09e;overflow-wrap:anywhere}
.dvp-player .dvp-status[data-kind=loading]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dvp-player[data-loading=true] .dvp-play{position:relative}
.dvp-player[data-loading=true] .dvp-play>svg{opacity:0}
.dvp-player[data-loading=true] .dvp-play::after{content:"";position:absolute;inset:13px;border:2px solid #69788e;border-top-color:var(--dvp-accent);border-radius:50%;animation:dvp-loading .8s linear infinite}
@keyframes dvp-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.dvp-player[data-loading=true] .dvp-play::after{animation:none}}
.sv-media>.dvp-player{border:0;border-radius:0;align-self:stretch}
.sv-media:has(.dvp-player)>.sv-media-error{display:none}
.detail-dialog:has(.dvp-player){width:min(960px,calc(100% - 30px));padding:0}
.detail-dialog:has(.dvp-player)>.dialog-heading{align-items:center;margin:0;padding:18px 22px}
.detail-dialog:has(.dvp-player)>.dialog-heading h2{margin:0;line-height:1.5}
.detail-dialog:has(.dvp-player)>.dialog-heading .icon-button{margin:0;flex-shrink:0}
.detail-dialog #detail-body>.dvp-player{border-radius:0;border-inline:0}
.detail-dialog:has(.dvp-player) .detail-stats{margin:0;padding:17px 22px;gap:10px 20px}
.detail-dialog:has(.dvp-player) #detail-body>p{margin:0;padding:18px 22px 0;line-height:1.8}
.detail-dialog:has(.dvp-player) .detail-sections{padding:20px 22px 24px}
.dvp-player:fullscreen{display:flex;flex-direction:column;width:100%;height:100%;max-height:none;border:0;border-radius:0;background:#000}
.dvp-player:fullscreen .dvp-stage{flex:1;min-height:0;aspect-ratio:auto}
.dvp-player:fullscreen .dvp-controls{flex-shrink:0;padding-bottom:max(7px,env(safe-area-inset-bottom));padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
.dvp-player[data-expanded=true]{position:fixed;inset:0;display:flex;flex-direction:column;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#000}
.dvp-player[data-expanded=true] .dvp-stage{flex:1;min-height:0;aspect-ratio:auto}
.dvp-player[data-expanded=true] .dvp-controls{flex-shrink:0;padding-bottom:max(7px,env(safe-area-inset-bottom));padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
@media(max-width:900px){
  .dvp-controls{padding-inline:7px;padding-bottom:5px}
  .dvp-control-row{gap:5px}
  .dvp-player .dvp-speed>select{font-size:16px}
  .dvp-player input.dvp-seek[type=range]{height:24px;min-height:24px}
  .detail-dialog:has(.dvp-player){width:min(850px,calc(100vw - 24px));border-radius:12px}
  .detail-dialog:has(.dvp-player)>.dialog-heading{padding:14px 15px}
  .detail-dialog:has(.dvp-player)>.dialog-heading h2{font-size:18px}
  .detail-dialog:has(.dvp-player) .detail-stats{padding:16px}
  .detail-dialog:has(.dvp-player) #detail-body>p{padding:16px 16px 0}
  .detail-dialog:has(.dvp-player) .detail-sections{padding:18px 16px 22px}
}
@media(max-width:365px){
  .dvp-control-row{gap:2px}
  .dvp-time{font-size:11px;letter-spacing:0}
  .dvp-player label.dvp-speed{flex-basis:64px}
}

/* Suppress the mobile video callout without affecting page selection or zoom. */
.dvp-stage>video{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}
video[aria-hidden="true"]{-webkit-touch-callout:none;-webkit-user-drag:none}
