From ffe4201f057cf9ca09748061a52e62c3bc149b05 Mon Sep 17 00:00:00 2001 From: Daniel Legt Date: Sun, 31 May 2026 16:17:20 +0300 Subject: [PATCH] feat(theme): introduce retro Windows 98-inspired theme Add a new "retro" theme option that mimics the classic Windows 98 aesthetic, providing a nostalgic alternative to the modern and classic dark themes. Changes include: - Defining CSS variables for the retro theme in `00-base.css` (pixel fonts, silver/gray colors, and classic window shadows). - Adding custom styling for cards, headers, buttons, and title bars to replicate classic OS windows. - Adding a star background GIF (`stars1.gif`). - Excluding the retro theme from modern "revamp" styles in `15-revamp.css`. - Updating `CLAUDE.md` with instructions on screenshot verification. --- CLAUDE.md | 3 + backend/static/backgrounds/stars1.gif | Bin 0 -> 8244 bytes backend/static/css/00-base.css | 39 +- backend/static/css/15-revamp.css | 64 +-- backend/static/css/16-retro.css | 393 ++++++++++++++++++ backend/static/css/20-upload.css | 7 + .../pixel_operator/PixelOperatorMono-Bold.ttf | Bin 0 -> 16744 bytes .../pixel_operator/PixelOperatorMono.ttf | Bin 0 -> 16972 bytes .../fonts/pixeloid_sans/PixeloidSans-Bold.ttf | Bin 0 -> 98792 bytes .../fonts/pixeloid_sans/PixeloidSans.ttf | Bin 0 -> 106676 bytes backend/static/js/05-theme.js | 2 +- backend/templates/layouts/base.html | 2 + backend/templates/pages/home.html | 11 +- 13 files changed, 477 insertions(+), 44 deletions(-) create mode 100644 backend/static/backgrounds/stars1.gif create mode 100644 backend/static/css/16-retro.css create mode 100644 backend/static/fonts/pixel_operator/PixelOperatorMono-Bold.ttf create mode 100644 backend/static/fonts/pixel_operator/PixelOperatorMono.ttf create mode 100644 backend/static/fonts/pixeloid_sans/PixeloidSans-Bold.ttf create mode 100644 backend/static/fonts/pixeloid_sans/PixeloidSans.ttf diff --git a/CLAUDE.md b/CLAUDE.md index 1359f70..fbb53d1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -2,6 +2,9 @@ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. +## Important Nots +Do not take screenshots yourself, ask the user to take screenshots of your visual changes if you want to so that you can verify them. + ## Commands **Go Executable:** diff --git a/backend/static/backgrounds/stars1.gif b/backend/static/backgrounds/stars1.gif new file mode 100644 index 0000000000000000000000000000000000000000..8bc6a869cd91f6ae5c5724f7bd7031abc9f7d8a5 GIT binary patch literal 8244 zcma)=Wl$U3yX}Lv1oz@jae@|Yae`AQZoyqjaSFv`_r>$&#alX*7H+TQVRg$|BV0h4Rj17JxhX>eZE~~tEVtV1>HrMWtos>NxPKw<*;kC3Q-* zjhqcFGLh|~ZSOk;K6p0Q^{`jwcMW)z665v>jBqWOVT;bCX)keXLe@Y-TD!alyg>Mo z_I_7EBhiZUISJy%DpT*28#`c|^+D(U?wXBgSa~1}{ZRAa8(I`ZN)Di=Bn7D*laL^! zYwUm@>G5I^y`YECOAmAr5?&(rIa}+o6yrewTmXtj12kJ=W-!=|KN-iG*E0X$nKlYI zNt6>oubfz+`TEr~c>IjX4y#<7}RNVUVlA18_tD`+{AqL21B8X^VqeWSmF zl1E6U0-Jm?=uC~LrT38vzuBcHLjt)%Bcw1u^AOs@BoJMgo|O;g2Qv5PN{&3!15#+r z(NSgu$A#tjoWRwP%xE^{cJ%1@ARqIWa!#2c2^?RZF*6_oEDt%R7i27Bo;mnfiKtDs z4MN}QQjFRohS!ynbjeObjU3-^V8ognLkTIQbbM{H-Uycz39-q2%ZSA4j8+K}sE)SD z@CyvKWwfDrIA(LY{cc+*

^Zlq%xj)TIrc4?w4YMvr%_AO-wigc< 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 NkN{dA5IR8o{{Vyft}p-q literal 0 HcmV?d00001 diff --git a/backend/static/css/00-base.css b/backend/static/css/00-base.css index 8c2e589..eaa0450 100644 --- a/backend/static/css/00-base.css +++ b/backend/static/css/00-base.css @@ -1,10 +1,3 @@ -/* - * Theme tokens. - * :root holds the default "revamp" (Aurora glass) theme so the page looks right - * even before JS runs or when JS is disabled. [data-theme="classic"] restores the - * original dark-zinc look exactly. The theme attribute is set on by - * /static/js/05-theme.js from localStorage before first paint. - */ :root { color-scheme: dark; --background: #0b0b16; @@ -65,6 +58,38 @@ --surface-2: rgba(39, 39, 42, 0.28); } +:root[data-theme="retro"] { + color-scheme: light; + --background: #ffffff; + --foreground: #000000; + --card: #c0c0c0; + --card-foreground: #000000; + --muted: #c0c0c0; + --muted-foreground: #404040; + --accent: #000078; + --accent-foreground: #ffffff; + --border: #000000; + --input: #000000; + --primary: #000078; + --primary-foreground: #ffffff; + --primary-hover: #0f80cd; + --ring: #000078; + --success: #008000; + --danger: #c00000; + --radius: 0rem; + --shadow: + inset -1px -1px 0 #404040, + inset 1px 1px 0 #ffffff, + inset -2px -2px 0 #808080, + inset 2px 2px 0 #dfdfdf; + --font-sans: "PixeloidSans", "PixelOperator", "Microsoft Sans Serif", Tahoma, sans-serif; + --header-bg: #c0c0c0; + --body-bg: #000000; + --surface-1: #ffffff; + --surface-1-hover: #fffff0; + --surface-2: #c0c0c0; +} + * { box-sizing: border-box; } diff --git a/backend/static/css/15-revamp.css b/backend/static/css/15-revamp.css index 9cd97bc..ff05973 100644 --- a/backend/static/css/15-revamp.css +++ b/backend/static/css/15-revamp.css @@ -2,19 +2,19 @@ * Revamp ("Aurora glass") flourishes. * * These rules only apply to the default/revamp theme. They are scoped to - * :root:not([data-theme="classic"]) so they cover both the explicit + * :root:not([data-theme="classic"]):not([data-theme="retro"]) so they cover both the explicit * data-theme="revamp" attribute AND the no-JS default (no attribute), while * never touching the classic theme. Token colours live in 00-base.css; this * file adds the things a flat token swap can't: the animated aurora backdrop, * frosted glass, gradient accents, glow and motion. */ -:root:not([data-theme="classic"]) { +:root:not([data-theme="classic"]):not([data-theme="retro"]) { scroll-behavior: smooth; } /* Animated aurora backdrop ------------------------------------------------ */ -:root:not([data-theme="classic"]) body::before { +:root:not([data-theme="classic"]):not([data-theme="retro"]) body::before { content: ""; position: fixed; inset: -20vmax; @@ -29,7 +29,7 @@ animation: aurora-drift 26s ease-in-out infinite alternate; } -:root:not([data-theme="classic"]) body::after { +:root:not([data-theme="classic"]):not([data-theme="retro"]) body::after { content: ""; position: fixed; inset: 0; @@ -52,13 +52,13 @@ } @media (prefers-reduced-motion: reduce) { - :root:not([data-theme="classic"]) body::before { + :root:not([data-theme="classic"]):not([data-theme="retro"]) body::before { animation: none; } } /* Frosted glass cards ----------------------------------------------------- */ -:root:not([data-theme="classic"]) .card { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .card { background: linear-gradient( 155deg, color-mix(in srgb, var(--card) 78%, transparent), @@ -70,20 +70,20 @@ } /* Sticky header gets the same glassy treatment */ -:root:not([data-theme="classic"]) .site-header { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .site-header { backdrop-filter: blur(20px) saturate(150%); -webkit-backdrop-filter: blur(20px) saturate(150%); } /* Brand mark glows */ -:root:not([data-theme="classic"]) .brand-mark { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .brand-mark { background: linear-gradient(135deg, #8b5cf6, #6366f1 55%, #22d3ee); color: #fff; box-shadow: 0 6px 18px rgba(124, 58, 237, 0.45); } /* Headings get a soft gradient sheen */ -:root:not([data-theme="classic"]) h1 { +:root:not([data-theme="classic"]):not([data-theme="retro"]) h1 { background: linear-gradient(120deg, #f5f3ff 0%, #c4b5fd 60%, #67e8f9 100%); -webkit-background-clip: text; background-clip: text; @@ -91,8 +91,8 @@ } /* Gradient primary buttons ------------------------------------------------ */ -:root:not([data-theme="classic"]) .button-primary, -:root:not([data-theme="classic"]) .button.is-active { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-primary, +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button.is-active { background: linear-gradient(135deg, #8b5cf6 0%, #6366f1 55%, #22d3ee 130%); color: #fff; border-color: transparent; @@ -100,43 +100,43 @@ transition: transform 140ms ease, box-shadow 160ms ease, filter 160ms ease; } -:root:not([data-theme="classic"]) .button-primary:hover { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-primary:hover { background: linear-gradient(135deg, #8b5cf6 0%, #6366f1 55%, #22d3ee 130%); filter: brightness(1.08); box-shadow: 0 12px 30px rgba(99, 102, 241, 0.5); transform: translateY(-1px); } -:root:not([data-theme="classic"]) .button-primary:active { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-primary:active { transform: translateY(0); } /* Outline / ghost buttons get a subtle lift on hover */ -:root:not([data-theme="classic"]) .button-outline, -:root:not([data-theme="classic"]) .button-ghost { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-outline, +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-ghost { transition: background 140ms ease, border-color 140ms ease, transform 140ms ease; } -:root:not([data-theme="classic"]) .button-outline:hover, -:root:not([data-theme="classic"]) .button-ghost:hover { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-outline:hover, +:root:not([data-theme="classic"]):not([data-theme="retro"]) .button-ghost:hover { border-color: rgba(168, 150, 255, 0.4); transform: translateY(-1px); } /* Glow focus rings -------------------------------------------------------- */ -:root:not([data-theme="classic"]) :focus-visible { +:root:not([data-theme="classic"]):not([data-theme="retro"]) :focus-visible { outline: 2px solid transparent; box-shadow: 0 0 0 2px var(--background), 0 0 0 4px var(--ring), 0 0 16px rgba(167, 139, 250, 0.55); } -:root:not([data-theme="classic"]) input:focus, -:root:not([data-theme="classic"]) select:focus { +:root:not([data-theme="classic"]):not([data-theme="retro"]) input:focus, +:root:not([data-theme="classic"]):not([data-theme="retro"]) select:focus { border-color: var(--ring); box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.22); } /* Drop zone: animated, glowing -------------------------------------------- */ -:root:not([data-theme="classic"]) .drop-zone { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .drop-zone { border-color: rgba(168, 150, 255, 0.3); background: radial-gradient(120% 90% at 50% 0%, rgba(139, 92, 246, 0.1), transparent 70%), @@ -144,18 +144,18 @@ transition: border-color 180ms ease, background 180ms ease, transform 180ms ease, box-shadow 180ms ease; } -:root:not([data-theme="classic"]) .drop-zone:hover, -:root:not([data-theme="classic"]) .drop-zone.is-dragging { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .drop-zone:hover, +:root:not([data-theme="classic"]):not([data-theme="retro"]) .drop-zone.is-dragging { border-color: #a78bfa; box-shadow: 0 0 0 1px rgba(167, 139, 250, 0.4), 0 18px 50px rgba(99, 102, 241, 0.28); transform: translateY(-2px); } -:root:not([data-theme="classic"]) .drop-icon { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .drop-icon { color: #c4b5fd; } -:root:not([data-theme="classic"]) .drop-zone.is-dragging .drop-icon { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .drop-zone.is-dragging .drop-icon { animation: drop-bounce 700ms ease infinite; } @@ -165,34 +165,34 @@ } /* Badges pick up a tinted glass look */ -:root:not([data-theme="classic"]) .badge { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .badge { background: rgba(139, 92, 246, 0.14); color: #d6ccff; border: 1px solid rgba(168, 150, 255, 0.22); } /* File / result rows lift on hover */ -:root:not([data-theme="classic"]) .download-item, -:root:not([data-theme="classic"]) .result-item { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .download-item, +:root:not([data-theme="classic"]):not([data-theme="retro"]) .result-item { background: color-mix(in srgb, var(--card) 60%, transparent); border-color: rgba(168, 150, 255, 0.14); transition: border-color 140ms ease, transform 140ms ease, background 140ms ease; } -:root:not([data-theme="classic"]) .download-item:hover { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .download-item:hover { border-color: rgba(168, 150, 255, 0.34); transform: translateY(-1px); } /* Thumbnails on the download page */ -:root:not([data-theme="classic"]) .file-emblem { +:root:not([data-theme="classic"]):not([data-theme="retro"]) .file-emblem { background: linear-gradient(135deg, rgba(139, 92, 246, 0.25), rgba(34, 211, 238, 0.18)); color: #d6ccff; border: 1px solid rgba(168, 150, 255, 0.22); } /* Gentle entrance for primary content cards */ -:root:not([data-theme="classic"]) main > * { +:root:not([data-theme="classic"]):not([data-theme="retro"]) main > * { animation: rise-in 420ms ease both; } @@ -208,7 +208,7 @@ } @media (prefers-reduced-motion: reduce) { - :root:not([data-theme="classic"]) main > * { + :root:not([data-theme="classic"]):not([data-theme="retro"]) main > * { animation: none; } } diff --git a/backend/static/css/16-retro.css b/backend/static/css/16-retro.css new file mode 100644 index 0000000..fa0c98e --- /dev/null +++ b/backend/static/css/16-retro.css @@ -0,0 +1,393 @@ +/* + * "retro" theme flourishes — modelled on danlegt.com. + * + * Windows 98 chrome over a black pixel-star desktop, PixeloidSans pixel font, + * crisp (non-antialiased, pixelated) rendering. Scoped entirely to + * :root[data-theme="retro"] so it never touches the other themes. + * + * CSP-safe: external stylesheet + self-hosted fonts only (font-src 'self'), + * no inline styles, no remote assets. The starfield is pure CSS so we don't + * depend on img-src for a background gif. + */ + +/* Self-hosted pixel fonts (mirrored locally — GGBotNet PixeloidSans is free, + PixelOperator is CC0). ------------------------------------------------- */ +@font-face { + font-family: "PixeloidSans"; + src: url("/static/fonts/pixeloid_sans/PixeloidSans.ttf") format("truetype"); + font-weight: normal; + font-display: swap; +} +@font-face { + font-family: "PixeloidSans"; + src: url("/static/fonts/pixeloid_sans/PixeloidSans-Bold.ttf") format("truetype"); + font-weight: bold; + font-display: swap; +} +@font-face { + font-family: "PixelOperatorMono"; + src: url("/static/fonts/pixel_operator/PixelOperatorMono.ttf") format("truetype"); + font-weight: normal; + font-display: swap; +} +@font-face { + font-family: "PixelOperatorMono"; + src: url("/static/fonts/pixel_operator/PixelOperatorMono-Bold.ttf") format("truetype"); + font-weight: bold; + font-display: swap; +} + +/* Crisp, pixelated, non-smoothed rendering like the source site. */ +:root[data-theme="retro"] { + font-smooth: never; + -webkit-font-smoothing: none; + -moz-osx-font-smoothing: unset; +} + +:root[data-theme="retro"] img, +:root[data-theme="retro"] .thumb-link img, +:root[data-theme="retro"] .preview-stage img { + image-rendering: pixelated; +} + +/* Square everything — Win98 had no rounded corners. */ +:root[data-theme="retro"] *, +:root[data-theme="retro"] *::before, +:root[data-theme="retro"] *::after { + border-radius: 0 !important; +} + +/* Black desktop with the tiled starfield mirrored from danlegt.com. */ +:root[data-theme="retro"] body { + background-color: #000000; + background-image: url("/static/backgrounds/stars1.gif"); + background-repeat: repeat; + background-attachment: fixed; + image-rendering: pixelated; +} + +/* Selection + focus use the classic dotted/navy treatment. */ +:root[data-theme="retro"] ::selection { + background: #000078; + color: #ffffff; +} + +:root[data-theme="retro"] :focus-visible { + outline: 1px dotted #000000; + outline-offset: -4px; +} + +/* Header: thin flat silver toolbar with a bottom bevel. */ +:root[data-theme="retro"] .site-header { + background: #c0c0c0; + backdrop-filter: none; + -webkit-backdrop-filter: none; + border-bottom: 2px solid #404040; + box-shadow: inset 0 1px 0 #ffffff; +} + +:root[data-theme="retro"] .nav { + min-height: 2.1rem; +} + +:root[data-theme="retro"] .site-header .button { + min-height: 1.6rem; + padding: 0.15rem 0.6rem; +} + +:root[data-theme="retro"] .brand { + color: #000000; + font-size: 0.95rem; +} + +:root[data-theme="retro"] .brand-mark { + width: 1.4rem; + height: 1.4rem; + background: linear-gradient(90deg, #000078, 80%, #0f80cd); + color: #ffffff; + font-size: 0.75rem; + box-shadow: inset -1px -1px 0 #404040, inset 1px 1px 0 #6f6fff; +} + +/* Cards are raised silver windows with black text. */ +:root[data-theme="retro"] .card { + background: linear-gradient(to bottom, #ffffff, 4%, #c0c0c0 8%); + background-color: #c0c0c0; + color: #000000; + border: 1px solid #000000; + box-shadow: var(--shadow); + backdrop-filter: none; + -webkit-backdrop-filter: none; +} + +/* Headings become Win98 active title bars. */ +:root[data-theme="retro"] h1 { + display: flex; + align-items: center; + justify-content: space-between; + gap: 0.5rem; + margin: -0.35rem -0.35rem 1rem; + padding: 0.35rem 0.5rem; + background: linear-gradient(to right, #000078, 80%, #0f80cd); + color: #ffffff; + font-size: 1rem; + font-weight: 700; + letter-spacing: 0; + text-shadow: none; +} + +/* Fake window control button on the right of every title bar. */ +:root[data-theme="retro"] h1::after { + content: "✕"; + display: grid; + place-items: center; + width: 1.15rem; + height: 1rem; + background: #c0c0c0; + color: #000000; + font-size: 0.7rem; + font-weight: 700; + box-shadow: inset -1px -1px 0 #404040, inset 1px 1px 0 #ffffff, inset -2px -2px 0 #808080, inset 2px 2px 0 #dfdfdf; +} + +/* Links: classic blue, underlined, purple when visited. */ +:root[data-theme="retro"] a:not(.button):not(.brand) { + color: #0000ee; + text-decoration: underline; +} + +:root[data-theme="retro"] a:not(.button):not(.brand):visited { + color: #551a8b; +} + +:root[data-theme="retro"] a:not(.button):not(.brand):hover { + color: #ee0000; +} + +/* Buttons: grey beveled chunks that press in when active. */ +:root[data-theme="retro"] .button, +:root[data-theme="retro"] button { + background: #c0c0c0; + color: #000000; + border: 1px solid #000000; + font-weight: 700; + box-shadow: inset -1px -1px 0 #404040, inset 1px 1px 0 #ffffff, inset -2px -2px 0 #808080, inset 2px 2px 0 #dfdfdf; +} + +:root[data-theme="retro"] .button:hover, +:root[data-theme="retro"] button:hover { + background: #d4d0c8; +} + +:root[data-theme="retro"] .button:active, +:root[data-theme="retro"] button:active, +:root[data-theme="retro"] .button.is-active { + background: #c0c0c0; + box-shadow: inset 1px 1px 0 #404040, inset -1px -1px 0 #ffffff, inset 2px 2px 0 #808080, inset -2px -2px 0 #dfdfdf; + padding-top: calc(0.45rem + 1px); + padding-left: calc(0.85rem + 1px); +} + +/* The primary call-to-action gets the blue title-bar gradient. */ +:root[data-theme="retro"] .button-primary { + background: linear-gradient(to right, #000078, 80%, #0f80cd); + color: #ffffff; +} + +:root[data-theme="retro"] .button-primary:hover { + background: linear-gradient(to right, #0a0a9a, 80%, #1a90dd); +} + +:root[data-theme="retro"] .button-danger { + background: #c0c0c0; + color: #c00000; + border-color: #000000; +} + +/* Inputs and selects look sunken (inset bevel). */ +:root[data-theme="retro"] input, +:root[data-theme="retro"] select, +:root[data-theme="retro"] textarea { + background: #ffffff; + color: #000000; + border: 1px solid #000000; + box-shadow: inset 1px 1px 0 #808080, inset -1px -1px 0 #ffffff; +} + +:root[data-theme="retro"] input:focus, +:root[data-theme="retro"] select:focus { + outline: 1px dotted #000000; + outline-offset: -3px; +} + +/* Labels inside windows read black, not muted-grey-on-grey. */ +:root[data-theme="retro"] label span, +:root[data-theme="retro"] .stack-form label, +:root[data-theme="retro"] .form-footer p, +:root[data-theme="retro"] .drop-copy, +:root[data-theme="retro"] .drop-meta, +:root[data-theme="retro"] .upload-subtitle, +:root[data-theme="retro"] .download-subtitle, +:root[data-theme="retro"] .muted-copy, +:root[data-theme="retro"] .kicker, +:root[data-theme="retro"] .checkbox-field span { + color: #1a1a1a; +} + +/* Desktop-level text (outside the grey windows) reads light on the black sky. */ +:root[data-theme="retro"] .docs-header, +:root[data-theme="retro"] .docs-header p, +:root[data-theme="retro"] .docs-header .kicker { + color: #cfd8ff; +} + +:root[data-theme="retro"] .docs-header code { + color: #ffffff; +} + +/* Drop zone: a sunken white field with a dashed navy border. */ +:root[data-theme="retro"] .drop-zone { + background: #ffffff; + border: 2px dashed #000078; + box-shadow: inset 2px 2px 0 #808080, inset -2px -2px 0 #ffffff; +} + +:root[data-theme="retro"] .drop-zone:hover, +:root[data-theme="retro"] .drop-zone.is-dragging { + background: #fffff0; + border-color: #0f80cd; +} + +:root[data-theme="retro"] .drop-icon { + color: #000078; +} + +/* The hero "Welcome" badge becomes a high-contrast blinking pixel sticker + that sits on the black desktop above the window. */ +:root[data-theme="retro"] .hero-eyebrow { + background: linear-gradient(to right, #000078, 80%, #0f80cd); + border: 1px solid #000000; + color: #ffffff; + font-weight: 700; + text-transform: uppercase; + box-shadow: inset -1px -1px 0 #404040, inset 1px 1px 0 #6f6fff; +} + +:root[data-theme="retro"] .hero-eyebrow::before { + content: "★ "; + color: #ffff66; + animation: retro-blink 1.1s steps(1, end) infinite; +} + +:root[data-theme="retro"] .hero-eyebrow::after { + content: " ★"; + color: #ffff66; + animation: retro-blink 1.1s steps(1, end) 0.55s infinite; +} + +@keyframes retro-blink { + 50% { opacity: 0; } +} + +@media (prefers-reduced-motion: reduce) { + :root[data-theme="retro"] .hero-eyebrow::before, + :root[data-theme="retro"] .hero-eyebrow::after { + animation: none; + } +} + +/* Badges become square chips. */ +:root[data-theme="retro"] .badge { + background: #ffffff; + color: #000000; + border: 1px solid #000000; + box-shadow: inset 1px 1px 0 #808080; +} + +/* File / result rows: flat white with a sunken hairline. */ +:root[data-theme="retro"] .download-item, +:root[data-theme="retro"] .result-item { + background: #ffffff; + color: #000000; + border: 1px solid #000000; + box-shadow: inset 1px 1px 0 #dfdfdf, inset -1px -1px 0 #808080; +} + +:root[data-theme="retro"] .file-main, +:root[data-theme="retro"] .download-item small, +:root[data-theme="retro"] .result-item code { + color: #000000; +} + +:root[data-theme="retro"] .file-emblem { + background: #000078; + color: #ffffff; + border: 1px solid #000000; + box-shadow: inset -1px -1px 0 #404040, inset 1px 1px 0 #4a4aff; +} + +/* Code blocks use the pixel mono font. */ +:root[data-theme="retro"] code, +:root[data-theme="retro"] pre, +:root[data-theme="retro"] pre code { + font-family: "PixelOperatorMono", ui-monospace, monospace; + color: #000000; +} + +:root[data-theme="retro"] pre { + background: #ffffff; + border: 1px solid #000000; + box-shadow: inset 1px 1px 0 #808080; +} + +/* Progress bar: blocky segmented Win98 look. */ +:root[data-theme="retro"] .progress { + background: #ffffff; + border: 1px solid #000000; + box-shadow: inset 1px 1px 0 #808080; +} + +:root[data-theme="retro"] .progress span { + background: repeating-linear-gradient(90deg, #000078 0 8px, transparent 8px 10px), #0f80cd; +} + +/* Chunky retro scrollbars (WebKit/Blink). */ +:root[data-theme="retro"] ::-webkit-scrollbar { + width: 16px; + height: 16px; +} + +:root[data-theme="retro"] ::-webkit-scrollbar-track { + background: #dfdfdf; +} + +:root[data-theme="retro"] ::-webkit-scrollbar-thumb { + background: #c0c0c0; + border: 1px solid #000000; + box-shadow: inset -1px -1px 0 #808080, inset 1px 1px 0 #ffffff; +} + +/* Footer sits on the black desktop: white pixel text + a wink to the old web. */ +:root[data-theme="retro"] .site-footer { + color: #ffffff; +} + +:root[data-theme="retro"] .site-footer a, +:root[data-theme="retro"] .footer-links a:not(.button) { + color: #66ccff; +} + +:root[data-theme="retro"] .theme-picker > span { + color: #ffffff; +} + +:root[data-theme="retro"] .site-footer::after { + content: "✩ Best viewed in 1024×768 ✩"; + font-weight: 700; +} + +@media (max-width: 720px) { + :root[data-theme="retro"] .site-footer::after { + display: none; + } +} diff --git a/backend/static/css/20-upload.css b/backend/static/css/20-upload.css index f3ae01f..0e78a6c 100644 --- a/backend/static/css/20-upload.css +++ b/backend/static/css/20-upload.css @@ -29,6 +29,13 @@ } +.upload-subtitle { + margin: 0.35rem 0 1.25rem; + color: var(--muted-foreground); + font-size: 0.95rem; + line-height: 1.5; +} + .drop-zone { min-height: 19rem; display: grid; diff --git a/backend/static/fonts/pixel_operator/PixelOperatorMono-Bold.ttf b/backend/static/fonts/pixel_operator/PixelOperatorMono-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..215d4a29f146cc23cd1869bd50f30dff2df45ce2 GIT binary patch literal 16744 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 O^7~aQc?|!*1OEq~H{whH literal 0 HcmV?d00001 diff --git a/backend/static/fonts/pixel_operator/PixelOperatorMono.ttf b/backend/static/fonts/pixel_operator/PixelOperatorMono.ttf new file mode 100644 index 0000000000000000000000000000000000000000..1c1edccac2370813c6c4dd8c7609ebfa6ca5da2a GIT binary patch literal 16972 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 JM*nYx{{!TAB+LK+ literal 0 HcmV?d00001 diff --git a/backend/static/fonts/pixeloid_sans/PixeloidSans-Bold.ttf b/backend/static/fonts/pixeloid_sans/PixeloidSans-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..c8b030c5214abb0e29333c888ad5ae0aed11fbcd GIT binary patch literal 98792 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%0Ag{}TZbGOIDIG; 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 literal 0 HcmV?d00001 diff --git a/backend/static/js/05-theme.js b/backend/static/js/05-theme.js index 2b142bc..6a40d64 100644 --- a/backend/static/js/05-theme.js +++ b/backend/static/js/05-theme.js @@ -11,7 +11,7 @@ */ (function () { var STORAGE_KEY = "warpbox-theme"; - var THEMES = ["revamp", "classic"]; + var THEMES = ["revamp", "classic", "retro"]; function stored() { try { diff --git a/backend/templates/layouts/base.html b/backend/templates/layouts/base.html index 919e110..a9e5d11 100644 --- a/backend/templates/layouts/base.html +++ b/backend/templates/layouts/base.html @@ -19,6 +19,7 @@ + @@ -65,6 +66,7 @@ {{if .CurrentUser}}DashboardAPIAccount{{else}}Sign inAPI{{end}} diff --git a/backend/templates/pages/home.html b/backend/templates/pages/home.html index 26bcb8c..5356143 100644 --- a/backend/templates/pages/home.html +++ b/backend/templates/pages/home.html @@ -5,17 +5,20 @@

{{if .CurrentUser}}

Welcome back, {{.CurrentUser.Username}}

-

Drop it. Share it.

-

{{.Data.LimitSummary}}

{{else}}

Welcome

-

Send a file. Get a link.

-

Fast, private transfers that expire on your terms.

{{end}}
+ {{if .CurrentUser}} +

Drop it. Share it.

+

{{.Data.LimitSummary}}

+ {{else}} +

Send a file. Get a link.

+

Fast, private transfers that expire on your terms.

+ {{end}}