From 939d83f1e14dacaec68c20108eb82ff21ee51c4f Mon Sep 17 00:00:00 2001 From: nexalapp <108235158+nexalapp@users.noreply.github.com> Date: Fri, 2 Oct 2026 18:27:40 -0600 Subject: [PATCH] Theme-Reel: new theme (charcoal, wine accents, serif titles, poster cards) --- themes/Theme-Reel/README.md | 36 ++ themes/Theme-Reel/Theme-Reel.yml | 12 + .../assets/fonts/HankenGrotesk-var.woff2 | Bin 0 -> 34664 bytes themes/Theme-Reel/assets/fonts/LICENSE.md | 8 + .../assets/fonts/LibreCaslonText-400.woff2 | Bin 0 -> 16984 bytes .../assets/fonts/LibreCaslonText-400i.woff2 | Bin 0 -> 19576 bytes .../assets/fonts/LibreCaslonText-700.woff2 | Bin 0 -> 17292 bytes .../assets/fonts/OFL-HankenGrotesk.txt | 94 ++++ .../assets/fonts/OFL-LibreCaslonText.txt | 93 ++++ themes/Theme-Reel/base.css | 402 ++++++++++++++ themes/Theme-Reel/cards.css | 505 ++++++++++++++++++ themes/Theme-Reel/detail.css | 467 ++++++++++++++++ themes/Theme-Reel/shell.css | 421 +++++++++++++++ themes/Theme-Reel/tokens.css | 145 +++++ 14 files changed, 2183 insertions(+) create mode 100644 themes/Theme-Reel/README.md create mode 100644 themes/Theme-Reel/Theme-Reel.yml create mode 100644 themes/Theme-Reel/assets/fonts/HankenGrotesk-var.woff2 create mode 100644 themes/Theme-Reel/assets/fonts/LICENSE.md create mode 100644 themes/Theme-Reel/assets/fonts/LibreCaslonText-400.woff2 create mode 100644 themes/Theme-Reel/assets/fonts/LibreCaslonText-400i.woff2 create mode 100644 themes/Theme-Reel/assets/fonts/LibreCaslonText-700.woff2 create mode 100644 themes/Theme-Reel/assets/fonts/OFL-HankenGrotesk.txt create mode 100644 themes/Theme-Reel/assets/fonts/OFL-LibreCaslonText.txt create mode 100644 themes/Theme-Reel/base.css create mode 100644 themes/Theme-Reel/cards.css create mode 100644 themes/Theme-Reel/detail.css create mode 100644 themes/Theme-Reel/shell.css create mode 100644 themes/Theme-Reel/tokens.css diff --git a/themes/Theme-Reel/README.md b/themes/Theme-Reel/README.md new file mode 100644 index 00000000..c0313afa --- /dev/null +++ b/themes/Theme-Reel/README.md @@ -0,0 +1,36 @@ +# Reel + +A boutique-streaming look for Stash v0.31+. Neutral charcoal with no colour cast, +wine used only for actions, Libre Caslon titles over Hanken Grotesk, pill-shaped +controls and soft 12px corners. + +- Scene cards are 4:3 posters: the cover fills the card and the title, date and + description sit over a dark fade. Performer cards are 2:3 posters. +- Scene grids fill each row with even columns; the zoom slider still sets the + size (3 to 4 a row at the default zoom on a 1440px window). +- Studios, tags, galleries and groups use framed tiles. +- Covers the list toolbar, filter sidebar, selection toolbar, pagination, list, + wall and tagger views, scene and detail pages, stats and settings, at desktop + and phone widths. +- Fonts are bundled in `assets/fonts` (SIL OFL 1.1), so the theme makes no + external requests. + +Pure CSS; no change to Stash behaviour. Enable one theme at a time. + +## Screenshots + +Taken on Stash v0.31.1 with demo content: fictional titles and names, blurred openly licensed photos (credits on the [screenshots branch](https://github.com/nexalapp/CommunityScripts/tree/screenshots)). + +| Scenes | Scene | +|---|---| +| ![Scenes](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-scenes.jpg) | ![Scene](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-scene.jpg) | + +| Performer | Studios | +|---|---| +| ![Performer](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-performer.jpg) | ![Studios](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-studios.jpg) | + +| Performers | Settings | +|---|---| +| ![Performers](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-performers.jpg) | ![Settings](https://raw.githubusercontent.com/nexalapp/CommunityScripts/85353f7ec5f4e8cdc52c0bfed12aacd6620fae5d/Theme-Reel/desktop-settings.jpg) | + +Scenes on a phone A scene on a phone diff --git a/themes/Theme-Reel/Theme-Reel.yml b/themes/Theme-Reel/Theme-Reel.yml new file mode 100644 index 00000000..31d1623b --- /dev/null +++ b/themes/Theme-Reel/Theme-Reel.yml @@ -0,0 +1,12 @@ +name: Theme - Reel +description: A boutique streaming look. Charcoal neutrals, wine accents, serif titles, poster cards. Self-hosted fonts; no external requests. +version: 0.1.0 +ui: + css: + - tokens.css + - base.css + - shell.css + - cards.css + - detail.css + assets: + /: assets diff --git a/themes/Theme-Reel/assets/fonts/HankenGrotesk-var.woff2 b/themes/Theme-Reel/assets/fonts/HankenGrotesk-var.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..e71775f99dc5483d710cb0650a8d61188c16b968 GIT binary patch literal 34664 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 As{jB1 literal 0 HcmV?d00001 diff --git a/themes/Theme-Reel/assets/fonts/LICENSE.md b/themes/Theme-Reel/assets/fonts/LICENSE.md new file mode 100644 index 00000000..10e9c391 --- /dev/null +++ b/themes/Theme-Reel/assets/fonts/LICENSE.md @@ -0,0 +1,8 @@ +# Fonts + +Served from this plugin, so the theme makes no external font requests. Each font is licensed under the SIL Open Font License 1.1; the full licence and copyright notice ship beside it. + +- **HankenGrotesk**: Copyright 2021 The Hanken Grotesk Project Authors (https://github.com/marcologous/hanken-grotesk) — `OFL-HankenGrotesk.txt` +- **LibreCaslonText**: Copyright 2018 The Libre Caslon Text Project Authors (https://github.com/thundernixon/Libre-Caslon) — `OFL-LibreCaslonText.txt` + +Latin subset, woff2, as distributed by Google Fonts. diff --git a/themes/Theme-Reel/assets/fonts/LibreCaslonText-400.woff2 b/themes/Theme-Reel/assets/fonts/LibreCaslonText-400.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..3850132e56f4e8e57e609f646d92e9dcede63e97 GIT binary patch literal 16984 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

|1A1jC(|; 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 literal 0 HcmV?d00001 diff --git a/themes/Theme-Reel/assets/fonts/LibreCaslonText-400i.woff2 b/themes/Theme-Reel/assets/fonts/LibreCaslonText-400i.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b098c5913715988c75181ab8183dfb1cc359317b GIT binary patch literal 19576 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 literal 0 HcmV?d00001 diff --git a/themes/Theme-Reel/assets/fonts/LibreCaslonText-700.woff2 b/themes/Theme-Reel/assets/fonts/LibreCaslonText-700.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..70f4b22390a8b51850445b301a47973d0e2cfa29 GIT binary patch literal 17292 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 .form-control:not(:last-child) { + border-top-right-radius: 0 !important; + border-bottom-right-radius: 0 !important; +} +.input-group > .input-group-append > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.react-select__menu, +.react-select__menu-list { + background-color: var(--reel-bg2) !important; + border-radius: var(--reel-r-card) !important; + box-shadow: var(--reel-shadow-pop) !important; +} +.react-select__option { + background-color: transparent !important; + color: var(--reel-t2) !important; + border-radius: 7px; +} +.react-select__option--is-focused, +.react-select__option--is-selected { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} +.react-select__multi-value { + background-color: var(--reel-bg3) !important; + border-radius: 999px !important; +} +.react-select__multi-value__label, +.react-select__single-value, +.react-select__input-container { + color: var(--reel-t1) !important; +} + +label, +.form-label, +.col-form-label { + color: var(--reel-t2); + font-size: 13px; + font-weight: 500; +} + +/* Checkboxes */ +input[type="checkbox"], +input[type="radio"] { + accent-color: var(--reel-acc); +} + +/* Toggles (Bootstrap custom-switch) */ +.custom-switch .custom-control-label::before { + background-color: var(--reel-bg3) !important; + border-color: var(--reel-bg3) !important; + border-radius: 999px !important; +} +.custom-switch .custom-control-label::after { + background-color: var(--reel-t3) !important; +} +.custom-switch .custom-control-input:checked ~ .custom-control-label::before { + background-color: var(--reel-acc) !important; + border-color: var(--reel-acc) !important; +} +.custom-switch .custom-control-input:checked ~ .custom-control-label::after { + background-color: var(--reel-acc-ink) !important; +} +.custom-control-input:focus ~ .custom-control-label::before { + box-shadow: 0 0 0 3px var(--reel-acc-soft) !important; +} + +/* Range sliders */ +input[type="range"] { + accent-color: var(--reel-acc); +} + +/* ---------- Menus ---------- */ +.dropdown-menu, +.popover { + background-color: var(--reel-bg2) !important; + border: 1px solid var(--reel-line) !important; + border-radius: var(--reel-r-card) !important; + box-shadow: var(--reel-shadow-pop) !important; + padding: 6px !important; + color: var(--reel-t1); +} +.dropdown-item { + color: var(--reel-t2) !important; + border-radius: 7px; + padding: 6px 10px !important; + font-size: 13px; +} +.dropdown-item:hover, +.dropdown-item:focus { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} +.dropdown-item.active, +.dropdown-item:active { + background-color: var(--reel-bg3) !important; + color: var(--reel-acc) !important; +} +.dropdown-divider { + border-color: var(--reel-line) !important; +} +.popover-header { + background: transparent !important; + border-color: var(--reel-line) !important; + color: var(--reel-t1); +} +.popover-body { + color: var(--reel-t1) !important; +} +.popover .arrow::after { + border-top-color: var(--reel-bg2) !important; + border-bottom-color: var(--reel-bg2) !important; +} + +.tooltip-inner { + background-color: var(--reel-bg3); + color: var(--reel-t1); + border-radius: 8px; + font-size: 12px; +} + +/* ---------- Modals ---------- */ +.modal-backdrop.show { + opacity: 1 !important; + background-color: rgba(0, 0, 0, 0.45) !important; + backdrop-filter: blur(2px); +} +.modal-content { + background-color: var(--reel-bg1) !important; + border: 1px solid var(--reel-line) !important; + border-radius: var(--reel-r-card) !important; + box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6); + color: var(--reel-t1); +} +.modal-header, +.modal-footer { + border-color: var(--reel-line) !important; + background-color: transparent !important; +} +.modal-header, +.modal-header .modal-title { + font-family: var(--reel-font-title); + font-size: 22px; +} +.modal-body { + background-color: transparent !important; +} +.close { + color: var(--reel-t2) !important; + text-shadow: none !important; +} + +/* ---------- Tabs (underline) ---------- */ +.nav-tabs { + border-bottom: 1px solid var(--reel-line) !important; + gap: 18px; +} +.nav-tabs .nav-link { + background: transparent !important; + border: 0 !important; + border-bottom: 2px solid transparent !important; + border-radius: 0 !important; + color: var(--reel-t2) !important; + font-size: 13px; + font-weight: 500; + padding: 6px 0 9px !important; +} +.nav-tabs .nav-link:hover { + color: var(--reel-t1) !important; +} +.nav-tabs .nav-link.active { + color: var(--reel-t1) !important; + border-bottom-color: var(--reel-acc) !important; +} +.nav-tabs .nav-link .left-spacing, +.nav-tabs .badge, +.nav-link .count { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; + border-radius: 999px !important; + font-size: 11px; + font-weight: 500; + padding: 1px 7px; +} + +/* Pills (settings menu) */ +.nav-pills .nav-link { + color: var(--reel-t2) !important; + border-radius: 999px !important; + font-size: 13px; + font-weight: 500; + padding: 7px 12px; +} +.nav-pills .nav-link:hover { + color: var(--reel-t1) !important; + background-color: var(--reel-bg2) !important; +} +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} + +/* Badges and tag chips */ +.badge { + border-radius: 999px; + font-weight: 500; +} +.badge-secondary, +.tag-item, +.badge.tag-item { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; + border-radius: 999px !important; + font-size: 12px; + font-weight: 500; + padding: 4px 10px; +} +.badge-primary, +.badge-info { + background-color: var(--reel-acc-soft) !important; + color: var(--reel-acc) !important; +} + +/* Generic panels */ +.card { + background-color: var(--reel-bg1); + border: 0; + border-radius: var(--reel-r-card); + box-shadow: none; + color: var(--reel-t1); +} +.card-header, +.card-footer { + background-color: transparent; + border-color: var(--reel-line); +} + +.table { + color: var(--reel-t1); +} +.table td, +.table th { + border-color: var(--reel-line) !important; +} + +/* Rating stars: off-white on, neutral off */ +.rating-stars .star-fill, +.rating-stars .filled, +.rating-stars button.star-fill svg { + color: var(--reel-rating) !important; +} +.rating-stars .unfilled, +.rating-stars button:not(.star-fill) svg { + color: var(--reel-bg4) !important; +} + +/* Toasts */ +.toast { + background-color: var(--reel-bg2) !important; + border: 1px solid var(--reel-line) !important; + border-radius: var(--reel-r-card) !important; + color: var(--reel-t1); +} +.toast-header { + background-color: transparent !important; + color: var(--reel-t1) !important; + border-color: var(--reel-line) !important; +} diff --git a/themes/Theme-Reel/cards.css b/themes/Theme-Reel/cards.css new file mode 100644 index 00000000..590d8ced --- /dev/null +++ b/themes/Theme-Reel/cards.css @@ -0,0 +1,505 @@ +/* Cards. Scenes and performers are posters (image fills the card, text set + over a gradient); studios, tags, galleries and groups are framed tiles. + Stash sets each card's width inline from the zoom slider: never override + width here, only aspect and contents. */ + +.grid-card { + margin: 6px !important; + border: 0 !important; + border-radius: var(--reel-r-card) !important; + transition: transform 0.22s var(--reel-ease), box-shadow 0.22s var(--reel-ease); +} +.grid-card hr { + display: none; +} +.row.justify-content-center:has(> .grid-card) { + padding: 8px 10px 16px; +} + +/* Selection check: a ring on hover, a filled wine dot when checked */ +.grid-card .card-controls { + position: absolute; + top: 10px; + left: 10px; + z-index: 4; + opacity: 0; + transition: opacity 0.15s; +} +.grid-card:hover .card-controls, +.grid-card .card-controls:has(.card-check:checked) { + opacity: 1; +} +.grid-card .card-check { + -webkit-appearance: none; + appearance: none; + width: 20px !important; + height: 20px !important; + margin: 0 !important; + padding: 0 !important; + border-radius: 50% !important; + border: 2px solid var(--reel-t1) !important; + background: rgba(22, 22, 22, 0.35) !important; + cursor: pointer; +} +.grid-card .card-check:checked { + border-color: var(--reel-acc) !important; + background: var(--reel-acc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat !important; +} +.grid-card:has(.card-check:checked) { + box-shadow: var(--reel-ring) !important; +} + +/* Count buttons at the foot of a card */ +.grid-card .card-popovers { + justify-content: flex-start !important; + gap: 10px; + margin: 0 !important; + padding: 0 !important; + flex-wrap: nowrap; +} +.grid-card .card-popovers .btn { + padding: 0 !important; + height: auto; + font-size: 11px !important; + font-weight: 500; + color: var(--reel-t2) !important; + background: transparent !important; +} +.grid-card .card-popovers .btn:hover { + color: var(--reel-t1) !important; +} +.grid-card .card-popovers svg { + width: 11px; + margin-right: 4px; + opacity: 0.8; +} + +/* ================= Poster cards: scenes, performers ================= */ +.scene-card.grid-card, +.performer-card.grid-card { + position: relative; + overflow: hidden; + padding: 0 !important; + background: var(--reel-media) !important; +} +/* Scene grids: landscape 4:3 posters, nearer the video's own 16:9 while + leaving room for the text over the image. The grid fills each row with + equal columns; the zoom slider still works by setting the minimum column + width for its level (Stash's inline card width is set aside here). At the + default zoom on 1440px that is 4 a row, or 3 with the filter sidebar open. */ +.row.justify-content-center:has(> .scene-card.grid-card) { + --reel-scene-col: 320px; + display: grid !important; + grid-template-columns: repeat(auto-fill, minmax(min(var(--reel-scene-col), 100%), 1fr)); + gap: 12px; + margin: 0 !important; +} +.row.justify-content-center:has(> .scene-card.zoom-0) { --reel-scene-col: 250px; } +.row.justify-content-center:has(> .scene-card.zoom-2) { --reel-scene-col: 420px; } +.row.justify-content-center:has(> .scene-card.zoom-3) { --reel-scene-col: 560px; } +.row.justify-content-center > .scene-card.grid-card { + width: auto !important; + margin: 0 !important; +} +.scene-card.grid-card { + aspect-ratio: 4 / 3; +} +.performer-card.grid-card { + aspect-ratio: 2 / 3; +} +.scene-card.grid-card:hover, +.performer-card.grid-card:hover { + transform: scale(1.015); + box-shadow: var(--reel-glow); +} + +/* Media fills the card */ +.scene-card .thumbnail-section, +.performer-card .thumbnail-section { + position: absolute !important; + inset: 0; + height: 100% !important; + max-height: none !important; + margin: 0 !important; +} +.scene-card .scene-card-link, +.scene-card .scene-card-preview, +.performer-card .thumbnail-section > a { + display: block; + height: 100% !important; + max-height: none !important; + aspect-ratio: auto !important; +} +.scene-card .scene-card-preview-image, +.scene-card .scene-card-preview-video, +.performer-card .performer-card-image { + width: 100% !important; + height: 100% !important; + max-height: none !important; + min-width: 0 !important; + aspect-ratio: auto !important; + object-fit: cover; + object-position: center top; + border-radius: 0 !important; +} + +/* Gradient under the text */ +.scene-card .thumbnail-section::after, +.performer-card .thumbnail-section::after { + content: ""; + position: absolute; + inset: 0; + pointer-events: none; + background: linear-gradient(180deg, rgba(22, 22, 22, 0) 38%, rgba(22, 22, 22, 0.94) 100%); + z-index: 1; +} +.performer-card .thumbnail-section::after { + background: linear-gradient(180deg, rgba(22, 22, 22, 0) 55%, rgba(22, 22, 22, 0.94) 100%); +} + +/* Text block over the image */ +.scene-card .card-section, +.performer-card .card-section { + position: absolute !important; + left: 14px; + right: 14px; + bottom: 32px; + z-index: 2; + padding: 0 !important; + margin: 0 !important; + background: transparent !important; + display: grid; + gap: 3px; + pointer-events: none; +} +.scene-card .card-section a, +.performer-card .card-section a { + pointer-events: auto; +} +.scene-card .card-popovers, +.performer-card .card-popovers { + position: absolute !important; + left: 14px; + right: 14px; + bottom: 12px; + z-index: 2; +} + +.scene-card .card-section-title, +.performer-card .card-section-title { + font-family: var(--reel-font-title) !important; + font-size: var(--reel-title-card) !important; + line-height: var(--reel-title-lh) !important; + font-weight: 400 !important; + color: var(--reel-t1) !important; + text-shadow: none !important; + margin: 0 !important; +} +.scene-card .card-section-title .TruncatedText { + -webkit-line-clamp: 2 !important; +} + +.scene-card .scene-card__details { + display: grid; + gap: 3px; + margin: 0 !important; +} +.scene-card .scene-card__date { + font-size: 11px; + color: var(--reel-t2) !important; +} +.scene-card .scene-card__description { + font-size: 12px !important; + line-height: 1.4 !important; + color: var(--reel-t2) !important; + -webkit-line-clamp: 2 !important; + margin: 0 !important; +} +.scene-card .extra-scene-info { + display: none !important; +} + +/* "1080P · 21:04", top right */ +.scene-card .scene-specs-overlay { + position: absolute !important; + top: 10px !important; + right: 10px !important; + bottom: auto !important; + left: auto !important; + z-index: 3; + padding: 3px 7px; + border-radius: var(--reel-r-chip); + background: rgba(22, 22, 22, 0.7); + color: var(--reel-t1) !important; + font-size: 10px !important; + font-weight: 600; + letter-spacing: 0.06em; + text-transform: uppercase; + text-shadow: none !important; + display: flex; + gap: 0; +} +.scene-card .scene-specs-overlay > span { + font-size: 10px !important; + font-weight: 600 !important; + margin: 0 !important; + padding: 0 !important; + text-shadow: none !important; +} +.scene-card .scene-specs-overlay .overlay-resolution + .overlay-duration::before { + content: "\00a0·\00a0"; +} + +/* Studio logo, top left; steps aside for the check on hover */ +.scene-card .studio-overlay { + position: absolute !important; + top: 10px !important; + left: 10px !important; + right: auto !important; + z-index: 3; + max-width: 45%; + opacity: 0.85; + transition: left 0.15s, opacity 0.15s; +} +.scene-card .studio-overlay .image-thumbnail { + max-height: 22px; + max-width: 100%; + width: auto; + object-fit: contain; +} +.scene-card:hover .studio-overlay, +.scene-card:has(.card-check:checked) .studio-overlay { + left: 38px !important; +} + +/* Resume progress sits on the very bottom edge */ +.scene-card .progress-bar { + z-index: 3; + background-color: var(--reel-acc) !important; +} + +/* Rating as a small chip, not a diagonal banner */ +.grid-card .rating-banner { + transform: none !important; + top: auto !important; + bottom: auto !important; + left: auto !important; + right: 10px !important; + top: 36px !important; + width: auto !important; + padding: 2px 7px !important; + border-radius: var(--reel-r-chip) !important; + background: rgba(22, 22, 22, 0.7) !important; + color: var(--reel-t1) !important; + font-size: 10px !important; + font-weight: 600; + letter-spacing: 0.06em; + z-index: 3; + box-shadow: none !important; +} + +/* ---- Performer specifics ---- */ +.performer-card .card-section-title { + display: flex !important; + align-items: baseline; + gap: 8px; + font-size: 18px !important; +} +.performer-card .card-section-title .gender-icon, +.performer-card .card-section-title svg { + color: var(--reel-t2) !important; + width: 12px; + flex: none; +} +.performer-card .card-section-title span, +.performer-card .performer-name { + font-size: inherit !important; +} +.performer-card .performer-card__age { + font-size: 11px !important; + color: var(--reel-t2) !important; +} +.performer-card .performer-card__country-flag { + display: none !important; +} +.performer-card .thumbnail-section > a:has(.performer-card__country-string) { + position: absolute; + top: 10px; + right: 38px; /* clear of the favourite heart in the corner */ + height: auto !important; + z-index: 3; +} +.performer-card .performer-card__country-string { + display: inline-block !important; + padding: 3px 7px; + border-radius: var(--reel-r-chip); + background: rgba(22, 22, 22, 0.7); + color: var(--reel-t1); + font-size: 10px; + font-weight: 600; + letter-spacing: 0.08em; +} +/* Favourite heart: top-right, mirroring the selection check on the left, at + the same 20px. No black halo or pill; off-white until it's a favourite. */ +.grid-card button.btn.favorite-button { + position: absolute !important; + z-index: 4; + top: 10px !important; + right: 10px !important; + left: auto !important; + width: 20px; + height: 20px; + padding: 0 !important; + margin: 0 !important; + display: grid; + place-items: center; + background: none !important; + border: 0 !important; + box-shadow: none !important; + filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.45)) !important; + color: var(--reel-acc) !important; +} +.grid-card button.btn.favorite-button svg.fa-icon, +.grid-card button.btn.favorite-button svg { + width: 18px !important; + height: 18px !important; + font-size: 18px !important; + margin: 0 !important; +} +.grid-card button.btn.favorite-button.not-favorite { + color: rgba(243, 240, 238, 0.85) !important; +} +.grid-card button.btn.favorite-button:hover { + background: none !important; + transform: scale(1.1); +} + +/* ================= Framed tiles: studios, tags, galleries, groups ================= */ +.studio-card.grid-card, +.tag-card.grid-card, +.gallery-card.grid-card, +.group-card.grid-card, +.image-card.grid-card { + background-color: var(--reel-bg1) !important; + padding: 5px !important; + overflow: hidden; +} +.studio-card.grid-card:hover, +.tag-card.grid-card:hover, +.gallery-card.grid-card:hover, +.group-card.grid-card:hover, +.image-card.grid-card:hover { + transform: translateY(-2px); + box-shadow: var(--reel-glow); +} +.studio-card .thumbnail-section, +.tag-card .thumbnail-section, +.gallery-card .thumbnail-section, +.group-card .thumbnail-section, +.image-card .thumbnail-section { + border-radius: 10px; + overflow: hidden; + background-color: var(--reel-bg2); + position: relative; +} +/* Fixed 16:9 logo box. The logo is positioned inside it, so a tall logo + can't stretch the box and every tile in a grid comes out the same size. */ +.studio-card .studio-card-header, +.tag-card .tag-card-header { + display: block !important; + position: relative; + aspect-ratio: 16 / 9; + width: 100%; + height: auto !important; + min-height: 0 !important; + max-height: none !important; + overflow: hidden; + background-color: var(--reel-bg2); +} +.studio-card .studio-card-image, +.tag-card .tag-card-image { + position: absolute; + inset: 0; + width: 100% !important; + height: 100% !important; + max-width: none !important; + max-height: none !important; + min-height: 0 !important; + object-fit: contain; + padding: 10% 12%; + aspect-ratio: auto !important; +} +.gallery-card .gallery-card-image, +.group-card .group-card-image, +.image-card .image-card-preview-image { + border-radius: 0; + object-fit: cover; +} +.studio-card .card-section, +.tag-card .card-section, +.gallery-card .card-section, +.group-card .card-section, +.image-card .card-section { + padding: 10px 9px 4px !important; + background: transparent !important; +} +.studio-card .card-section-title, +.tag-card .card-section-title, +.gallery-card .card-section-title, +.group-card .card-section-title, +.image-card .card-section-title { + font-size: var(--reel-title-card) !important; + line-height: var(--reel-title-lh) !important; + color: var(--reel-t1) !important; + margin-bottom: 3px !important; + text-align: left !important; +} +.studio-card__details, +.studio-card__details a, +.tag-card .tag-description, +.gallery-card__details, +.group-card__details { + font-size: 11px !important; + color: var(--reel-t3) !important; + font-weight: 500; +} +.studio-card .card-popovers, +.tag-card .card-popovers, +.gallery-card .card-popovers, +.group-card .card-popovers, +.image-card .card-popovers { + padding: 2px 9px 6px !important; +} +.studio-card .card-popovers .btn, +.tag-card .card-popovers .btn, +.gallery-card .card-popovers .btn, +.group-card .card-popovers .btn { + color: var(--reel-t3) !important; +} + +/* Home-page carousels ("Recently added ...") size each card from its + contents, so a wide studio logo made a wide card. Pin them like stock. */ +.recommendation-row .grid-card { + width: 320px !important; + max-width: 320px; +} +.recommendation-row .studio-card .studio-card-image, +.recommendation-row .tag-card .tag-card-image { + max-width: 100% !important; +} + +/* Reserve the "Part of …" line so studio tiles stay the same height with or + without a parent studio. */ +.studio-card .studio-card__details { + min-height: 1.5em; +} + +/* Framed tiles place the heart inside the 5px-inset image box; offset it so + it sits as far from the corner as the check does. */ +.studio-card button.btn.favorite-button, +.tag-card button.btn.favorite-button, +.gallery-card button.btn.favorite-button, +.group-card button.btn.favorite-button { + top: 5px !important; + right: 5px !important; +} diff --git a/themes/Theme-Reel/detail.css b/themes/Theme-Reel/detail.css new file mode 100644 index 00000000..233d9948 --- /dev/null +++ b/themes/Theme-Reel/detail.css @@ -0,0 +1,467 @@ +/* Scene page, entity detail headers, list/wall/tagger views, stats, + settings, empty states. */ + +/* Bootstrap utility Stash uses for menus and panels */ +.bg-secondary { + background-color: var(--reel-bg2) !important; +} +.dropdown-menu .bg-secondary.dropdown-item { + background-color: transparent !important; +} +.dropdown-menu .bg-secondary.dropdown-item:hover, +.dropdown-menu .bg-secondary.dropdown-item:focus { + background-color: var(--reel-bg3) !important; +} +.text-white { + color: var(--reel-t1) !important; +} + +/* ================= Scene page ================= */ +.scene-tabs { + background-color: var(--reel-bg1); + border-right: 1px solid var(--reel-line); + padding: 0 16px 16px !important; +} +.scene-tabs .scene-header-container .studio-logo { + margin: 0 -16px 18px !important; + padding: 16px; + min-height: 0; +} +.scene-tabs .scene-header-container img.studio-logo { + max-height: 100px; + object-fit: contain; +} +.scene-tabs .scene-header { + font-family: var(--reel-font-title) !important; + font-size: var(--reel-title-page) !important; + line-height: 1.1 !important; + font-weight: 400; + color: var(--reel-t1); + margin-bottom: 6px; +} +.scene-subheader { + font-size: 13px; + color: var(--reel-t2); +} +.scene-subheader .resolution { + color: var(--reel-t1); + font-weight: 600; +} +.scene-subheader .divider { + opacity: 0; + margin: 0 2px; +} +.scene-subheader .frame-rate::after { + content: " ·"; +} +.scene-toolbar { + color: var(--reel-t2); + margin-top: 4px; +} +.scene-tabs .nav-tabs { + margin-top: 10px; +} +.scene-details h6, +.scene-file-info dt, +.scene-file-info dd, +.scene-details .detail-item { + font-family: var(--reel-font-body); + font-size: 13px !important; + font-weight: 400; + line-height: 1.6; + color: var(--reel-t2); +} +.scene-details a, +.scene-file-info a { + color: var(--reel-acc) !important; +} +.scene-description, +.scene-details .TruncatedText { + font-size: 13px; + line-height: 1.6; + color: var(--reel-t2); +} +.scene-file-info dt { + color: var(--reel-t1); + font-weight: 500; +} + +/* The collapse handle between the panel and the player */ +.scene-divider .btn { + background-color: transparent !important; + border: 0 !important; + color: var(--reel-t3) !important; + width: 14px; + padding: 0 !important; + border-radius: 0 !important; +} +.scene-divider .btn:hover { + background-color: var(--reel-bg2) !important; + color: var(--reel-t1) !important; +} + +/* Player */ +.scene-player-container { + background-color: var(--reel-bg0); +} +.video-js .vjs-play-progress, +.video-js .vjs-volume-level { + background-color: var(--reel-acc) !important; +} +.video-js .vjs-load-progress { + background: rgba(255, 255, 255, 0.25) !important; +} +.video-js .vjs-progress-holder { + background: rgba(255, 255, 255, 0.18) !important; + border-radius: 2px; +} +.video-js .vjs-control-bar { + background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7)) !important; +} +.video-js .vjs-big-play-button { + width: 72px !important; + height: 72px !important; + line-height: 72px !important; + margin-left: -36px !important; + margin-top: -36px !important; + border: 0 !important; + border-radius: 50% !important; + background-color: rgba(255, 255, 255, 0.14) !important; + backdrop-filter: blur(6px); +} + +/* Scrubber strip under the player */ +.scrubber-wrapper { + gap: 8px; + padding: 10px 16px 12px; + margin: 0 !important; +} +.scrubber-wrapper .scrubber-button { + width: 22px !important; + min-width: 22px; + padding: 0 !important; + border: 0 !important; + border-radius: var(--reel-r-chip) !important; + background-color: var(--reel-bg2) !important; + color: var(--reel-acc) !important; + font-weight: 400; +} +.scrubber-wrapper .scrubber-button:hover { + background-color: var(--reel-bg3) !important; +} +.scrubber-content { + border-radius: var(--reel-r-chip); + background-color: var(--reel-bg1); + margin: 0 !important; +} +.scrubber-tags-background { + background-color: var(--reel-bg3) !important; +} +#scrubber-current-position { + background-color: var(--reel-t1) !important; +} +.scrubber-tag { + background-color: var(--reel-acc) !important; + color: var(--reel-acc-ink) !important; + border-radius: 4px; +} + +/* Edit panels: Save stands out, the rest stay neutral */ +.details-edit .btn-primary:not(.edit):not(.save), +.scraper-menu .btn-primary, +.search-item .btn-primary:not(.minimal):not(.input-group-append .btn), +.setting-section .btn-primary:not(.minimal), +#settings-menu-container .btn-primary { + background-color: var(--reel-bg3) !important; + border-color: transparent !important; + color: var(--reel-t1) !important; + font-weight: 500; +} +#scene-edit-details .edit-buttons-container, +.edit-buttons-container { + background-color: var(--reel-bg1) !important; +} +.form-group .col-form-label, +.form-group label { + color: var(--reel-t2); +} + +/* ================= Detail headers: performer, studio, tag, group ================= */ +.detail-header, +.detail-header.full-width { + background-color: var(--reel-bg1) !important; + border-bottom: 1px solid var(--reel-line); + color: var(--reel-t1); +} +.detail-header .background-image-container { + opacity: 0.18; +} +.detail-header-image { + position: relative; +} +.detail-header-image .btn-link { + padding: 0 !important; +} +.detail-header-image img.performer, +.detail-header-image img { + border-radius: 0 !important; + box-shadow: none !important; +} +.detail-header h2, +.detail-header .performer-name, +.detail-header .studio-name, +.detail-header .tag-name { + font-family: var(--reel-font-title); + font-size: 40px; + line-height: 1; + font-weight: 400; + color: var(--reel-t1); +} +.detail-header .alias-head { + font-size: 13px; + color: var(--reel-t2); +} +.detail-header .detail-item { + font-size: 13px; + line-height: 1.75; +} +.detail-header .detail-item-title { + color: var(--reel-t3); + font-weight: 500; + width: 130px; + display: inline-block; +} +.detail-header .detail-item-value { + color: var(--reel-t1); +} +.detail-header .details-edit { + gap: 8px; + margin-top: 10px; +} +.detail-header .name-icons .favorite-button:not(.not-favorite) { + color: var(--reel-acc) !important; +} +.detail-header .name-icons .link, +.detail-header a { + color: var(--reel-acc); +} + +/* StashDB / stash-box ID chips */ +.stash-id-pill, +.stash-id-pill span, +.stash-id-pill a { + border-radius: 999px !important; +} +.stash-id-pill span:first-child { + background-color: var(--reel-acc-soft) !important; + color: var(--reel-acc) !important; +} +.stash-id-pill span:last-child, +.stash-id-pill a { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} + +/* Tabs under a detail header, centred */ +.detail-body .nav-tabs, +.performer-tabs .nav-tabs, +.studio-tabs .nav-tabs, +.tag-tabs .nav-tabs { + justify-content: center; + gap: 22px; +} + +/* Sticky header shown when scrolled */ +.sticky.detail-header { + background-color: rgba(30, 30, 30, 0.92) !important; + backdrop-filter: blur(10px); +} +.sticky.detail-header .sticky.detail-header-group a, +.sticky.detail-header .sticky.detail-header-group span { + color: var(--reel-t1) !important; +} + +/* ================= List (table) view ================= */ +.table-list table { + color: var(--reel-t1); +} +.table-list table thead th { + font-size: 12px; + font-weight: 600; + color: var(--reel-t2) !important; + border-bottom: 1px solid var(--reel-line) !important; + border-top: 0 !important; +} +.table-list table tbody tr { + border-bottom: 1px solid var(--reel-line); +} +.table-list table tbody tr:hover { + background-color: var(--reel-bg1); +} +.table-list table td { + vertical-align: middle; + border: 0 !important; + font-size: 13px; +} +.table-list table td img { + border-radius: 8px; +} +.table-list .title-link, +.table-list td.title-data a, +.table-list td a.performer-name { + font-family: var(--reel-font-title); + font-size: 16px; + color: var(--reel-t1) !important; +} +.table-list td a { + color: var(--reel-t1); +} + +/* ================= Wall view ================= */ +.wall-item, +.wall-item-container { + border-radius: var(--reel-r-chip) !important; + overflow: hidden; +} +.wall-item-text, +.wall-item .wall-item-text { + background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8)) !important; + font-family: var(--reel-font-title); + font-size: 18px; + color: var(--reel-t1) !important; + text-shadow: none !important; +} + +/* ================= Tagger ================= */ +.tagger-container .search-item, +.tagger-container .tagger-item, +.search-item { + background-color: var(--reel-bg1) !important; + border: 0 !important; + border-radius: var(--reel-r-card) !important; + padding: 14px !important; + margin-bottom: 12px; +} +.tagger-container .search-item .scene-card-link img, +.search-item img { + border-radius: 10px; +} +.tagger-container .input-group-prepend .input-group-text, +.input-group-text { + background-color: var(--reel-bg3) !important; + border: 0 !important; + color: var(--reel-t2) !important; + font-size: 12px; + font-weight: 500; +} +.tagger-container .input-group .form-control { + border-radius: 0 !important; +} +.tagger-container .input-group > :first-child, +.tagger-container .input-group > :first-child .input-group-text { + border-radius: 999px 0 0 999px !important; +} +.tagger-container .input-group .input-group-append .btn { + border-radius: 0 999px 999px 0 !important; +} + +/* ================= Stats ================= */ +#stats-page .stats-element, +.stats .stats-element { + text-align: center; +} +#stats-page .stats-element .title, +.stats .title { + font-family: var(--reel-font-title) !important; + font-size: 52px !important; + line-height: 1; + font-weight: 400 !important; + color: var(--reel-t1) !important; +} +#stats-page .stats-element .heading, +.stats .heading { + margin-top: 12px; + font-size: 11px !important; + letter-spacing: 0.12em; + text-transform: uppercase; + color: var(--reel-t3) !important; + font-weight: 500; +} + +/* ================= Settings ================= */ +#settings-menu-container .nav-pills, +.settings-menu-container .nav-pills { + gap: 2px; +} +#settings-container h1, +#settings-container h2, +#settings-container h3, +.setting-section h1 { + font-family: var(--reel-font-title); + font-size: 28px; + font-weight: 400; + color: var(--reel-t1); +} +.setting-section .card, +#settings-container .card, +#settings-container .setting-group { + background-color: var(--reel-bg1) !important; + border-radius: var(--reel-r-card) !important; + border: 0 !important; +} +.setting-section .setting, +#settings-container .setting { + border-color: var(--reel-line) !important; +} +.setting-section .setting h3, +.setting-section .setting-group h3, +#settings-container .setting h3 { + font-family: var(--reel-font-body); + font-size: 15px; + font-weight: 600; +} +.setting .sub-heading, +.setting-section .sub-heading, +#settings-container .sub-heading { + font-size: 12px; + color: var(--reel-t2) !important; +} +.job-table.card { + background-color: var(--reel-bg1) !important; + border-radius: var(--reel-r-card) !important; + color: var(--reel-t2); +} +#tasks-panel .tasks-panel-queue h1 { + font-family: var(--reel-font-title); +} +.logs .log-entry, +.LogEntry, +#log-entries { + font-size: 12px; +} + +/* ================= Empty list ================= */ +.item-list-container .sidebar-pane-content:not(:has(.grid-card, .table-list, .scene-wall, .wall, .tagger-container, .card, [class*="wall"])) > .pagination-index-container::after { + content: "Nothing here yet"; + display: block; + margin: 18vh auto 0; + text-align: center; + font-family: var(--reel-font-title); + font-size: 26px; + color: var(--reel-t2); +} + +/* Big play button: Stash draws the icon at 100px, larger than the 72px circle, + so it overflowed off-centre. Size the glyph to the circle and nudge it right + so the triangle looks optically centred. */ +.video-js .vjs-big-play-button { + font-size: 36px !important; + border: 0 !important; +} +.video-js .vjs-big-play-button .vjs-icon-placeholder::before { + font-size: 36px !important; + line-height: 72px !important; + width: 100% !important; + height: 100% !important; + text-indent: 3px; +} diff --git a/themes/Theme-Reel/shell.css b/themes/Theme-Reel/shell.css new file mode 100644 index 00000000..2694235d --- /dev/null +++ b/themes/Theme-Reel/shell.css @@ -0,0 +1,421 @@ +/* Top bar, list toolbar, pagination, result count, filter sidebar. */ + +/* ---------- Top bar ---------- */ +.top-nav, +.top-nav.bg-dark, +.top-nav .bg-dark { + background-color: var(--reel-bg1) !important; +} +.top-nav { + border-bottom: 1px solid var(--reel-line); + box-shadow: none !important; + padding-left: 16px !important; + padding-right: 16px !important; +} + +.top-nav .navbar-brand .brand-link { + font-family: var(--reel-font-title); + font-size: 22px !important; + line-height: 1; + color: var(--reel-t1) !important; + background: transparent !important; + padding: 0 18px 0 0 !important; + letter-spacing: 0; +} +.top-nav .navbar-brand .brand-link:hover { + background: transparent !important; +} + +@media (min-width: 1200px) { + .top-nav .navbar-nav .nav-link { + padding: 0 1px !important; + } + .top-nav .navbar-nav .nav-link > a.btn { + padding: 6px 12px !important; + border-radius: 999px !important; + font-size: 13px; + font-weight: 500; + color: var(--reel-t2) !important; + } + .top-nav .navbar-nav .nav-link > a.btn:hover { + background-color: var(--reel-bg2) !important; + color: var(--reel-t1) !important; + } + .top-nav .navbar-nav .nav-link > a.btn.active { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; + } + /* Words, not icons, in the desktop bar */ + .top-nav .navbar-nav .nav-link > a.btn .nav-menu-icon { + display: none !important; + } +} + +.top-nav .nav-utility .btn, +.top-nav .navbar-buttons .btn.minimal, +.top-nav .logout-button { + color: var(--reel-t2) !important; + border-radius: 999px !important; +} +.top-nav .navbar-buttons a[href$="/new"] .btn { + height: 32px; + padding: 0 14px; + border-radius: 999px !important; +} + +/* Theme Switch's own menu */ +.theme-plugin-menu .card, +.theme-plugin-menu .card-header, +.theme-plugin-menu .modal-header { + background-color: transparent !important; + color: var(--reel-t1) !important; + border-color: var(--reel-line) !important; + font-family: var(--reel-font-body); + font-size: 13px; +} + +/* ---------- Page container ---------- */ +.main.container-fluid { + background: transparent; +} + +/* ---------- List toolbar ---------- */ +.filtered-list-toolbar { + background-color: transparent !important; + padding-top: 12px !important; + padding-bottom: 0 !important; + gap: 8px !important; +} +.filtered-list-toolbar > * { + margin: 0 !important; +} + +/* Grouped controls become one pill with segments inside */ +.filtered-list-toolbar .btn-group, +.filtered-list-toolbar .sort-by-select { + background-color: var(--reel-bg2); + border-radius: 999px; + padding: 3px; + gap: 2px; + height: var(--reel-ctl-h); + align-items: center; + border: 0 !important; +} +.filtered-list-toolbar .btn-group .btn-group, +.filtered-list-toolbar .list-operations .btn-group .btn-group { + padding: 0; + background: transparent; + height: auto; +} +.filtered-list-toolbar .btn-group > .btn, +.filtered-list-toolbar .btn-group > .btn-group > .btn, +.filtered-list-toolbar .btn-group > .dropdown > .btn, +.filtered-list-toolbar .sort-by-select .btn { + background-color: transparent !important; + border: 0 !important; + border-radius: 999px !important; + color: var(--reel-t2) !important; + height: 28px; + min-width: 30px; + padding: 0 9px; + display: inline-flex; + align-items: center; + justify-content: center; + margin: 0 !important; +} +.filtered-list-toolbar .btn-group .btn:hover, +.filtered-list-toolbar .sort-by-select .btn:hover { + color: var(--reel-t1) !important; + background-color: var(--reel-bg3) !important; +} +.filtered-list-toolbar .btn-group .btn.active { + background-color: var(--reel-bg3) !important; + color: var(--reel-acc) !important; +} + +/* Sort: label, hairline, direction */ +.filtered-list-toolbar .sort-by-select .input-group-prepend .btn { + color: var(--reel-t1) !important; + font-weight: 500; + padding: 0 12px; +} +.filtered-list-toolbar .sort-by-select .input-group-prepend { + margin: 0; + border-right: 1px solid var(--reel-line); +} +.filtered-list-toolbar .sort-by-select .dropdown-toggle::after { + display: none; +} + +/* Search */ +.filtered-list-toolbar .search-term-input .form-control, +.filtered-list-toolbar .search-term-input input { + height: var(--reel-ctl-h); + width: 220px; + padding-left: 34px !important; + background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236f6a66' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") !important; + background-repeat: no-repeat !important; + background-position: 13px center !important; +} + +/* Page size */ +.filtered-list-toolbar .page-size-selector select { + height: var(--reel-ctl-h); + font-weight: 500; + border: 0 !important; +} + +/* Zoom slider: hairline track, light knob */ +.filtered-list-toolbar .zoom-slider-container { + margin-left: 4px !important; +} +input[type="range"].zoom-slider { + -webkit-appearance: none; + appearance: none; + background: transparent !important; + width: 70px; + max-width: 70px; +} +input[type="range"].zoom-slider::-webkit-slider-runnable-track { + height: 3px; + border-radius: 2px; + background: var(--reel-bg3) !important; +} +input[type="range"].zoom-slider::-webkit-slider-thumb { + -webkit-appearance: none; + width: 13px; + height: 13px; + margin-top: -5px; + border-radius: 50%; + background: var(--reel-t1) !important; + border: 0; +} +input[type="range"].zoom-slider::-moz-range-track { + height: 3px; + border-radius: 2px; + background: var(--reel-bg3) !important; +} +input[type="range"].zoom-slider::-moz-range-progress { + height: 3px; + border-radius: 2px; + background: var(--reel-acc); +} +input[type="range"].zoom-slider::-moz-range-thumb { + width: 13px; + height: 13px; + border-radius: 50%; + background: var(--reel-t1) !important; + border: 0; +} + +/* Filter-sidebar toggle */ +.sidebar-toggle-button-container .sidebar-toggle-button { + width: var(--reel-ctl-h); + height: var(--reel-ctl-h); + padding: 0 !important; + margin-left: 0 !important; + border: 0 !important; + border-radius: 999px !important; + background-color: var(--reel-bg2) !important; + color: var(--reel-t2) !important; + opacity: 1 !important; + top: calc(48.75px + 12px) !important; + display: grid; + place-items: center; +} +.sidebar-toggle-button-container .sidebar-toggle-button:hover { + color: var(--reel-t1) !important; + background-color: var(--reel-bg3) !important; +} + +/* Selection toolbar: sticky over the grid, so it needs a solid backing */ +.item-list-container .filtered-list-toolbar.has-selection { + background-color: var(--reel-bg0) !important; + border: 1px solid var(--reel-line); + border-radius: 999px; + box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35); + padding: 6px 8px !important; +} +.filtered-list-toolbar.has-selection .selected-items-info, +.filtered-list-toolbar.has-selection .selected-items-info span { + color: var(--reel-acc) !important; + font-weight: 600; +} +.filtered-list-toolbar .btn.btn-danger, +.filtered-list-toolbar .btn-group > .btn.btn-danger { + background-color: var(--reel-danger) !important; + color: #fff !important; +} + +/* ---------- Pagination ---------- */ +.pagination-index-container { + margin-top: 10px; + display: flex; + flex-direction: column; + align-items: center; +} +.pagination.btn-group { + width: auto !important; + flex: none !important; + background-color: var(--reel-bg2); + border-radius: 999px; + padding: 3px; + gap: 2px; + margin-bottom: 0 !important; + box-shadow: none !important; +} +.pagination .btn, +.pagination .page-count-container .btn { + background-color: transparent !important; + border: 0 !important; + border-radius: 999px !important; + color: var(--reel-t2) !important; + height: 26px; + min-width: 28px; + padding: 0 8px !important; + font-size: 12px; + font-weight: 500; + display: inline-flex; + align-items: center; + justify-content: center; +} +.pagination .btn:hover:not(:disabled) { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} +.pagination .btn:disabled { + color: var(--reel-t3) !important; + opacity: 1; +} +.pagination .page-count { + color: var(--reel-t1) !important; + padding: 0 4px 0 10px !important; +} +.pagination .btn.active, +.pagination .btn-secondary.active { + background-color: var(--reel-bg3) !important; + color: var(--reel-t1) !important; +} +.pagination-footer .pagination.btn-group { + box-shadow: var(--reel-shadow-pop) !important; + border: 1px solid var(--reel-line); +} + +/* "1–40 of 6,715 · 3M 1W 3D · 7.9 TiB" */ +.paginationIndex { + display: block !important; + text-align: center; + margin: 8px 0 0 !important; + font-size: 11px !important; + letter-spacing: 0.06em; + text-transform: uppercase; + color: var(--reel-t3) !important; +} +.paginationIndex br { + display: none; +} +.paginationIndex .scenes-stats, +.paginationIndex .images-stats { + font-size: 0; + color: var(--reel-t3); +} +.paginationIndex .scenes-stats > span, +.paginationIndex .images-stats > span { + font-size: 11px; +} +.paginationIndex .scenes-stats > span::before, +.paginationIndex .images-stats > span::before { + content: " · "; +} + +/* ---------- Filter sidebar ---------- */ +.sidebar-pane .sidebar, +.sidebar .sidebar-footer, +.sidebar-toolbar { + background-color: var(--reel-bg1) !important; +} +.sidebar-pane .sidebar { + border-right: 1px solid var(--reel-line); + padding: 12px 12px 0 !important; +} +.sidebar .sidebar-section, +.sidebar .sidebar-list-filter { + border: 0 !important; +} +.sidebar .collapse-button, +.sidebar .sidebar-section-header, +.sidebar .btn.minimal { + color: var(--reel-t1) !important; + font-size: 13px; + font-weight: 500; + border-radius: 8px !important; +} +.sidebar .collapse-button:hover { + background-color: var(--reel-bg2) !important; +} +.sidebar .collapse-button svg { + color: var(--reel-t3); +} + +/* Tables (list view, package manager) */ +.table-list table thead, +.package-manager table thead { + background-color: var(--reel-bg0) !important; +} +#tasks-panel .tasks-panel-queue { + background-color: var(--reel-bg0) !important; +} + +/* ---------- Rows under the toolbar: filter chips, pagination, count ---------- + One 10px rhythm between toolbar, chips, pagination and grid. On wide + screens the result count leaves its own line and sits right-aligned on the + first row under the toolbar (the filter chips if any, else pagination). */ +.sidebar-pane-content > .filter-tags { + margin: 10px 0 0 !important; + padding: 0 16px; + justify-content: center; +} +.sidebar-pane-content > .pagination-index-container { + margin-top: 10px !important; +} +.sidebar-pane-content > .pagination-index-container:not(:has(.pagination)) { + margin-top: 0 !important; +} +.row.justify-content-center:has(> .grid-card) { + padding-top: 10px !important; +} +@media (min-width: 1200px) { + .sidebar-pane-content { + position: relative; + } + .sidebar-pane-content > .pagination-index-container > .paginationIndex { + position: absolute; + right: 16px; + top: 49px; /* toolbar bottom (39px) + the 10px gap */ + height: 32px; + margin: 0 !important; + display: flex !important; + align-items: center; + white-space: nowrap; + } + /* keep centred chips clear of the count on the right */ + .sidebar-pane-content > .filter-tags { + padding: 0 190px; + } + /* nothing else on the row: hold the space so the grid doesn't slide under the count */ + .sidebar-pane-content:not(:has(> .filter-tags)) > .pagination-index-container:not(:has(.pagination)) { + min-height: 32px; + margin-top: 10px !important; + } +} +@media (min-width: 1200px) { + /* on the chip row, match the chips' height so the text centres on them */ + .sidebar-pane-content:has(> .filter-tags) > .pagination-index-container > .paginationIndex { + height: 24px; + } +} +/* flex grids (studios, tags, performers) carry a 6px card margin; trim the + row padding so every grid starts 10px below the row above */ +.row.justify-content-center:has(> .grid-card:not(.scene-card)) { + padding-top: 4px !important; +} diff --git a/themes/Theme-Reel/tokens.css b/themes/Theme-Reel/tokens.css new file mode 100644 index 00000000..cd40e3a1 --- /dev/null +++ b/themes/Theme-Reel/tokens.css @@ -0,0 +1,145 @@ +/* Reel: a boutique streaming service. Neutral charcoal with no colour cast, + wine on actions only, Libre Caslon titles over Hanken Grotesk, pill + controls, soft 12px corners, 4:5 poster covers. + + Fonts are self-hosted (assets/fonts, OFL) so pages make no external + requests. The yml maps the plugin's assets/ folder to + /plugin/Theme-Reel/assets/; font URLs are relative to the stylesheet. */ + +@font-face { + font-family: "Hanken Grotesk"; + font-style: normal; + font-weight: 400 600; + font-display: swap; + src: url("assets/fonts/HankenGrotesk-var.woff2") format("woff2"); +} +@font-face { + font-family: "Libre Caslon Text"; + font-style: normal; + font-weight: 400; + font-display: swap; + src: url("assets/fonts/LibreCaslonText-400.woff2") format("woff2"); +} +@font-face { + font-family: "Libre Caslon Text"; + font-style: italic; + font-weight: 400; + font-display: swap; + src: url("assets/fonts/LibreCaslonText-400i.woff2") format("woff2"); +} +@font-face { + font-family: "Libre Caslon Text"; + font-style: normal; + font-weight: 700; + font-display: swap; + src: url("assets/fonts/LibreCaslonText-700.woff2") format("woff2"); +} + +:root { + /* Surfaces, darkest to lightest */ + --reel-bg0: #161616; + --reel-bg1: #1e1e1e; + --reel-bg2: #272727; + --reel-bg3: #323232; + --reel-bg4: #3c3c3c; + --reel-line: rgba(255, 255, 255, 0.07); + --reel-line-strong: rgba(255, 255, 255, 0.12); + + /* Text */ + --reel-t1: #f3f0ee; + --reel-t2: #a8a29e; + --reel-t3: #6f6a66; + + /* Accent: wine, for actions only */ + --reel-acc: #d94f6b; + --reel-acc-hover: #e2637d; + --reel-acc-ink: #ffffff; + --reel-acc-soft: rgba(217, 79, 107, 0.16); + --reel-danger: #c9463f; + --reel-rating: #f3f0ee; + + /* Type */ + --reel-font-body: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif; + --reel-font-title: "Libre Caslon Text", Georgia, "Times New Roman", serif; + --reel-title-card: 16px; + --reel-title-page: 30px; + --reel-title-lh: 1.2; + + /* Shape */ + --reel-r-ctl: 999px; /* buttons, inputs, pills */ + --reel-r-in: 999px; /* segments inside a pill group */ + --reel-r-card: 12px; + --reel-r-panel: 12px; + --reel-r-chip: 6px; + --reel-ctl-h: 34px; + + /* Depth and motion */ + --reel-shadow-pop: 0 16px 40px rgba(0, 0, 0, 0.55); + --reel-glow: 0 14px 36px rgba(0, 0, 0, 0.5); + --reel-ring: 0 0 0 2px var(--reel-acc); + --reel-ease: cubic-bezier(0.2, 0.8, 0.2, 1); + --reel-media: repeating-linear-gradient(135deg, #2a2a2a 0 8px, #242424 8px 16px); +} + +html, +body { + background-color: var(--reel-bg0) !important; + color: var(--reel-t1); + font-family: var(--reel-font-body); + font-feature-settings: "ss01", "cv11"; + -webkit-font-smoothing: antialiased; +} + +body { + font-size: 14px; + line-height: 1.45; +} + +a { + color: var(--reel-t1); +} +a:hover { + color: #fff; +} + +h1, h2, h3, h4, +.card-section-title, +.modal-title { + font-family: var(--reel-font-title); + font-weight: 400; + letter-spacing: 0; +} + +::selection { + background: var(--reel-acc-soft); +} + +/* Quiet scrollbars */ +* { + scrollbar-color: var(--reel-bg3) transparent; + scrollbar-width: thin; +} +::-webkit-scrollbar { + width: 10px; + height: 10px; +} +::-webkit-scrollbar-track { + background: transparent; +} +::-webkit-scrollbar-thumb { + background: var(--reel-bg3); + border: 3px solid var(--reel-bg0); + border-radius: 999px; +} + +:focus-visible { + outline: 2px solid var(--reel-acc) !important; + outline-offset: 2px; +} + +.text-muted { + color: var(--reel-t3) !important; +} +hr { + border-color: var(--reel-line); +}