/*
 * Copyright (C) 2016-2024 Apple Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

video::-webkit-media-text-track-container {
    overflow: hidden;
    padding-bottom: 0;
    z-index: 0;

    text-align: center;
    color: rgba(255, 255, 255, 1);

    letter-spacing: normal;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0;
    text-decoration: none;
    pointer-events: none;
    -webkit-user-select: none;
    container-type: size;

    flex: 1 1 auto;
}

video[controls]::-webkit-media-text-track-container.visible-controls-bar {
    height: calc(100% - var(--inline-controls-bar-height) - var(--inline-controls-inside-margin));
}

/* https://w3c.github.io/webvtt/#applying-css-properties
   7.4. Applying CSS properties to WebVTT Node Objects */

/* These properties are not allowed via ::cue */
[useragentpart="cue"] {
    position: absolute;
    unicode-bidi: plaintext;
    overflow-wrap: break-word;
    text-wrap: balance;
}

[useragentpart="cue"] .hidden { display: none; }
[useragentpart="cue"] ruby { display: ruby; }
[useragentpart="cue"] ruby > rt { display: ruby-text; }

::cue {
    font: 5cqmin/normal sans-serif;
    color: rgba(255, 255, 255, 1);
    background: rgba(0, 0, 0, 0.8);
    white-space: pre-line;
}

::cue(rt) {
    background: rgba(0, 0, 0, 0.8);
    font-size: -webkit-ruby-text;
}

::cue(i) { font-style: italic; }
::cue(b) { font-weight: bold; }
::cue(u) { text-decoration: underline; }
::cue(rt) { white-space: nowrap; }

::-webkit-media-text-track-display-backdrop {
    display: inline-block;
}

::-webkit-media-text-track-region {
    position: absolute;
    writing-mode: horizontal-tb;
    background: rgba(0,0,0,0.8);
    overflow-wrap: break-word;
    font: 5cqmin sans-serif;
    color: rgba(255,255,255,1);
    overflow: hidden;
    min-height: 0px;
    display: inline-flex;
    flex-flow: column;
    justify-content: flex-end;
}

::cue(:future) {
    color: gray;
}

