/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */ html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } /* HTML5 display-role reset for older browsers */ article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; } body { line-height: 1; } ol, ul { list-style: none; } blockquote, q { quotes: none; } blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; } table { border-collapse: collapse; border-spacing: 0; } /* ---------- site styles ---------- */ * { box-sizing: border-box; } body { background-color: white; color: black; } #container { display: flex; flex-wrap: wrap; gap: 1rem; padding: 1rem; } nav { flex-grow: 1; flex-basis: 10rem; font-family: Avenir, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif; font-size: 1.25em; } nav > * + * { margin-block-start: 0.5rem; } nav a, nav li, nav summary { display: block; text-decoration: none; color: #000; cursor: pointer; } nav a:hover, nav li:hover, nav summary:hover { color: #c50; text-decoration: underline; } nav a svg { vertical-align: -0.125em; height: 1em; width: 1em; } nav a:first-child { font-weight: 600; } nav summary::marker { content: "" } summary::after { content: " +" } details[open] > summary::after { content: " -" } nav li { margin-top: 0.5rem; margin-left: 1rem; } main { flex-basis: 0; flex-grow: 999; min-inline-size: 75%; margin-bottom: 15ex; } .seriesList { display: grid; grid-gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(40ch, 1fr)); } h2 { font-family: Avenir, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif; font-size: 2rem; font-weight: 600; margin-bottom: 0.5rem; } section { display: flex; border: 1px solid black; border-radius: 1rem; overflow: hidden; box-shadow: 0.125rem 0.125rem 0.125rem rgba(0, 0, 0, 0.25); } header { display: flex; flex-wrap: wrap; gap: 0 1rem; margin-bottom: 1rem; } header input.filter { height: 2rem; flex-grow: 1; max-width: 25rem; box-shadow: 0.125rem 0.125rem 0.125rem rgba(0, 0, 0, 0.25); } section.no-match { display: none; } .seriesDetails section { font-size: 1.25em; } .seriesList section { cursor: pointer; } .seriesList section:hover { box-shadow: 0.125rem 0.125rem 0.25rem rgba(0, 0, 0, 0.75); } .seriesList section:hover label { color: #c50; text-decoration: underline; } section img { height: 16ex; width: 16ex; } .detail { display: flex; flex-wrap: wrap-reverse; gap: 2rem; } .detail > * { flex: 1 1 20rem; } .detail article > p:not(:last-child) { margin-bottom: 1rem; } section > div { display: flex; flex-direction: column; padding: 0.75rem; } label { font-family: Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif; font-weight: 600; cursor: inherit; } section > div label { font-size: 1.2em; margin-block: auto; } section ul li { font-family: Bahnschrift, 'DIN Alternate', 'Franklin Gothic Medium', 'Nimbus Sans Narrow', sans-serif-condensed, sans-serif; display: inline; margin-right: 0.5rem; } ul li:last-child { margin-right: 0; } aside { font-family: 'Nimbus Mono PS', 'Courier New', 'Cutive Mono', monospace; } section div aside { font-size: 0.8rem; } aside :first-child { margin-right: 0.5rem; } .seriesDetails > * + * { margin-block-start: 1.5rem; } ol { list-style-type: decimal; padding-left: 7ch; } ol li::marker { font-family: 'Nimbus Mono PS', 'Courier New', 'Cutive Mono', monospace; font-weight: 600; } #queue-container ol li::marker { font-size: 0.7rem; } ol li { border-top: 1px solid white; border-bottom: 1px solid white; padding: 0.5rem 0; } ol li aside { margin-top: 0.25rem; } ol > li:not(:last-child) { border-bottom: 1px solid rgba(0, 0, 0, 0.25); } #overlay { position: fixed; pointer-events: none; top: 0; left: 0; width: 100%; height: 100%; backdrop-filter: none; background-color: rgba(0, 0, 0, 0); transition: background-color 0.25s linear, backdrop-filter 0.25s linear; } #queue-container { position: fixed; bottom: 0; border: 2px solid black; transition: height 0.25s ease-out; height: 10ex; min-width: 42ch; background: white; margin: 0 1ch; } #queue-container > div { display: flex; align-items: baseline; padding-bottom: 1ex; margin: 1rem 1rem 0 1rem; border-bottom: 1px solid rgba(0, 0, 0, 0.25); } #queue-container h2 { cursor: pointer; position: absolute; display: inline-block; top: -4ex; font-family: ui-rounded, 'Hiragino Maru Gothic ProN', Quicksand, Comfortaa, Manjari, 'Arial Rounded MT Bold', Calibri, source-sans-pro, sans-serif; font-size: 1.25rem; height: 4ex; border-left: 2px solid black; border-right: 2px solid black; border-top: 2px solid black; border-bottom: 1px dashed black; padding: 0.8ex; padding-left: 2.25ch; background-repeat: no-repeat; background-position: 0 50%; background-color: white; background-image: url('/icon-queue.svg'); } #queue-container h2.expanded { background-image: url('/icon-trash.svg'); } #queue-container h2:hover { color: #c50; text-decoration: underline; } #queue-container h3 { font-family: Avenir, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif; font-size: 1rem; font-weight: 600; flex-basis: 100%; } #queue-container > div a { font-size: 0.8rem; font-family: ui-rounded, 'Hiragino Maru Gothic ProN', Quicksand, Comfortaa, Manjari, 'Arial Rounded MT Bold', Calibri, source-sans-pro, sans-serif; white-space: nowrap; background-image: url('/icon-trash.svg'); } #queue-container ol { padding-left: 5ch; padding-right: 1rem; margin: 0 1rem; max-height: calc(100% - 15ex); overflow-x: scroll; } footer { position: fixed; bottom: 0px; height: 10ex; width: 100%; background-color: inherit; border-top: 2px solid black; box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.75); } footer > div:first-child { width: 100%; height: 0.5ex; background-color: rgba(0, 0, 0, 0.25); } #progress { background-color: #c50; height: 100%; width: 0%; } footer > div:last-child { display: flex; flex-wrap: nowrap; padding: 1ex; } #progress-container { flex-basis: 100%; border-bottom: 1px solid black; } footer > div:last-child > div { flex: 1 1; width: 33%; } #controls { display: flex; justify-content: center; min-width: 24ex; gap: 0.25ex; } #controls > * { vertical-align: middle; display: block; } .play svg { height: 7ex; width: 7ex; } .seek svg { height: 5ex; width: 5ex; } #nowPlaying { display: flex; flex-wrap: nowrap; padding-left: 1ch; white-space: nowrap; overflow: hidden; } #nowPlaying span { display: block; margin-top: 1ex; line-height: 110%; overflow: hidden; text-overflow: ellipsis; } #nowPlaying span:first-child { font-family: Bahnschrift, 'DIN Alternate', 'Franklin Gothic Medium', 'Nimbus Sans Narrow', sans-serif-condensed, sans-serif; } #nowPlaying span:last-child { font-family: Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif; font-weight: 600; } #nowPlaying img { height: 7ex; width: 7ex; flex: 0 0; border-radius: 4ex; margin-right: 1ex; border: 1px solid black; } #nowPlaying div { flex 1 1; overflow: hidden; } #nowPlaying.error { color: #c00; } #nowPlaying.error img { background-color: #c00; border-color: #c00; } #timeVolume { font-family: 'Nimbus Mono PS', 'Courier New', 'Cutive Mono', monospace; padding-top: 1ex; text-align: right; padding-right: 1ex; } #timeVolume span { white-space: nowrap; } #timeVolume > * { display: block; text-align: right; } #timeVolume svg { height: 1rem; width: 1rem; } #timeVolume input { width: 12ch; } button { all: unset; cursor: pointer; } button:active { color: #c50; } button:disabled, button:active:disabled { opacity: 0.5; color: inherit; } .home { max-width: 100ch; margin: 0 auto; } .home table { font-family: Seravek, 'Gill Sans Nova', Ubuntu, Calibri, 'DejaVu Sans', source-sans-pro, sans-serif; } .home table td { padding: 0.5rem; } .home table tr:not(:first-child) { border-top: 1px solid rgba(0, 0, 0, 0.25); } .home table tr td:first-child { text-align: right; } .home table tr td:last-child { font-weight: 600; } p { font-family: ui-rounded, 'Hiragino Maru Gothic ProN', Quicksand, Comfortaa, Manjari, 'Arial Rounded MT Bold', Calibri, source-sans-pro, sans-serif; font-size: 1.2rem; line-height: 120%; } p strong { font-weight: 600; } p em { font-style: italic; } .home > * + * { margin-block-start: 1.5rem; } h3 { font-family: Avenir, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif; font-size: 1.5rem; font-weight: 600; } h4 { font-family: Avenir, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif; font-weight: 600; } h2 svg { width: 1em; height: 1em; vertical-align: -0.125em; } .home .episodes { display: flex; flex-wrap: wrap; gap: 1rem; } .home a, .detail a { color: #c50; text-decoration: underline; } .home a:hover, .detail a:hover { text-shadow: 0.05rem 0.05rem 0.125rem rgba(0, 0, 0, 0.25); } .episode.playing label { color: #c50; } .episode.playing label:before { content: url('/icon-play.svg'); display: inline-block; vertical-align: middle; } .controls { margin: 0.25rem 0; font-size: 0.8rem; font-family: ui-rounded, 'Hiragino Maru Gothic ProN', Quicksand, Comfortaa, Manjari, 'Arial Rounded MT Bold', Calibri, source-sans-pro, sans-serif; display: flex; flex-wrap: nowrap; gap: 0.5rem; } .controls a, .playing .controls a:hover, #queue-container div a { display: block; padding: 0.25rem 0.5rem 0.25rem 1.25rem; border: 1px solid black; box-shadow: 0.125rem 0.125rem 0.125rem rgba(0, 0, 0, 0.25); border-radius: 0.5rem; color: black; text-decoration: none; background-repeat: no-repeat; background-position: 0 50%; } .controls a:hover, #queue-container div a:hover { text-shadow: none; color: #c50; box-shadow: 0.125rem 0.125rem 0.25rem rgba(0, 0, 0, 0.75); text-decoration: underline; } .seriesDetails .playing .controls { opacity: 0.33; } .controls a:first-child { background-image: url('/icon-play.svg'); } .playing .controls a.pause:first-child { background-image: url('/icon-pause.svg'); } .controls a:last-child { background-image: url('/icon-queue.svg'); } .controls a:last-child.queued, #queue-container .controls a:last-child { background-image: url('/icon-trash.svg'); } @media only screen and (max-width: 50ch) { .seriesDetails section { font-size: 1em; } #nowPlaying { display: none; } .seriesList { display: grid; grid-gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(30ch, 1fr)); } .seriesList label { font-size: 1em; } #timeVolume span { font-size: 0.8rem; } .seriesList section { font-size: 1em; } .detail article { font-size: 1rem; } #queue-container { min-width: inherit; width: calc(100% - 2ch); } #queue-container ol { padding-right: 0.5rem; } } }