/* Desktop Themes. Each theme sets the palette; data-skin picks win or mac chrome (set by core from OS.themes).
   Wallpapers are tiled SVGs in assets/wallpapers (own drawings). */

html[data-theme="win95"] { --desk: #008080; --wall: none; }

html[data-theme="win98"] { --desk: #008080; --tb1: #000080; --tb2: #1084d0; --tbi1: #808080; --tbi2: #b5b5b5; --wall: url("../assets/wallpapers/win98-clouds.svg"); --wall-size: cover; --wall-repeat: no-repeat; --wall-color: #3a6ea5; }

html[data-theme="hotdog"] { --desk: #ff0000; --face: #ffff00; --hi: #ffffff; --light: #ffff80; --lo: #c0c000; --dk: #000000; --tb1: #ff0000; --tb2: #ff0000; --tbtext: #ffffff; --tbi1: #c0c0c0; --tbi2: #c0c0c0; --sel: #ff0000; --seltext: #ffffff; --paper: #ffffff; --wall: url("../assets/wallpapers/hotdog.svg"); --wall-size: 64px; --icon-text: #ffffff; --icon-shadow: #000000; }

html[data-theme="mac8"] { --desk: #6666cc; --face: #dddddd; --hi: #ffffff; --light: #eeeeee; --lo: #999999; --dk: #000000; --text: #000000; --tb1: #dddddd; --tb2: #dddddd; --tbtext: #000000; --sel: #333399; --seltext: #ffffff; --paper: #ffffff; --link: #0000cc; --font: "Charcoal", "Chicago", "Geneva", "Helvetica Neue", Helvetica, Arial, sans-serif; --title-font: "Charcoal", "Chicago", "MS Sans", Geneva, sans-serif; --font-size: 12px; --wall: url("../assets/wallpapers/mac8-platinum.svg"); --wall-size: 128px; --wall-color: #6666cc; --icon-text: #000000; --icon-shadow: transparent; }

html[data-theme="bondi"] { --desk: #0095b6; --face: #e4eef2; --hi: #ffffff; --light: #f2f8fa; --lo: #8fb9c8; --dk: #1b4b5c; --text: #0d2a33; --tb1: #e4eef2; --tb2: #e4eef2; --tbtext: #0d2a33; --sel: #0095b6; --seltext: #ffffff; --paper: #ffffff; --link: #0077aa; --font: "Charcoal", "Chicago", "Geneva", "Helvetica Neue", Helvetica, Arial, sans-serif; --title-font: "Charcoal", "Chicago", "MS Sans", Geneva, sans-serif; --font-size: 12px; --wall: url("../assets/wallpapers/bondi.svg"); --wall-size: cover; --wall-repeat: no-repeat; --wall-color: #0095b6; --icon-text: #ffffff; --icon-shadow: #004d66; }

html[data-theme="geocities"] { --desk: #000000; --face: #c0c0c0; --tb1: #000000; --tb2: #4b0082; --tbtext: #ffff00; --sel: #4b0082; --seltext: #ffff00; --paper: #000000; --text: #000000; --link: #00ffff; --visited: #ff00ff; --wall: url("../assets/wallpapers/stars.svg"); --wall-size: 160px; --wall-color: #000000; --icon-text: #ffff00; --icon-shadow: #000000; }
html[data-theme="geocities"] .win .body.paper { color: #00ff00; font-family: "Comic Neue", "Comic Sans MS", cursive; }
html[data-theme="geocities"] .win .body.paper a { color: #00ffff; }

html[data-theme="kidpix"] { --desk: #ff6600; --face: #ffffff; --hi: #ffffff; --light: #ffffff; --lo: #000000; --dk: #000000; --text: #000000; --tb1: #ffffff; --tb2: #ffffff; --tbtext: #000000; --sel: #ff0066; --seltext: #ffffff; --paper: #ffffff; --link: #0033ff; --font: "Comic Neue", "Comic Sans MS", "Chicago", sans-serif; --title-font: "Silkscreen", "Chicago", sans-serif; --font-size: 13px; --wall: url("../assets/wallpapers/kidpix.svg"); --wall-size: 96px; --wall-color: #ff6600; --icon-text: #ffffff; --icon-shadow: #000000; }
html[data-theme="kidpix"] .win { border-width: 2px; }

html[data-theme="rainbow"] { --desk: #ff66cc; --face: #ffe6f7; --hi: #ffffff; --light: #fff0fa; --lo: #cc66aa; --dk: #660044; --text: #330022; --tb1: #ff33aa; --tb2: #33ccff; --tbtext: #ffffff; --tbi1: #cc99bb; --tbi2: #99ccdd; --sel: #ff33aa; --seltext: #ffffff; --paper: #ffffff; --link: #9900cc; --visited: #ff3399; --font: "Comic Neue", "Comic Sans MS", sans-serif; --font-size: 12px; --wall: url("../assets/wallpapers/rainbow.svg"); --wall-size: 200px; --wall-color: #ff66cc; --icon-text: #ffffff; --icon-shadow: #660044; }

html[data-theme="neon"] { --desk: #1a0033; --face: #2b0a4d; --hi: #ff33ff; --light: #7a3fa8; --lo: #120024; --dk: #000000; --text: #ffffff; --tb1: #ff00aa; --tb2: #00ffff; --tbtext: #000000; --tbi1: #552277; --tbi2: #225577; --tbitext: #cccccc; --sel: #00ffff; --seltext: #000000; --paper: #0d0022; --link: #00ffff; --visited: #ff66ff; --wall: url("../assets/wallpapers/neon.svg"); --wall-size: 240px; --wall-color: #1a0033; --icon-text: #00ffff; --icon-shadow: #ff00aa; }
html[data-theme="neon"] .win .body.paper { color: #ffffff; }

html[data-theme="legal"] { --desk: #c8b560; --face: #fff7b0; --hi: #ffffff; --light: #fffbd2; --lo: #c2b36c; --dk: #3a3220; --text: #1d2a6b; --tb1: #c8b560; --tb2: #c8b560; --tbtext: #1d2a6b; --tbi1: #e2d58f; --tbi2: #e2d58f; --tbitext: #777; --sel: #1d2a6b; --seltext: #fff7b0; --paper: #fffdd8; --link: #b00020; --font: "Courier New", Courier, monospace; --font-size: 12px; --wall: url("../assets/wallpapers/legalpad.svg"); --wall-size: 100% 28px; --wall-color: #fff7b0; --icon-text: #1d2a6b; --icon-shadow: transparent; }

html[data-theme="sky"] { --desk: #87ceeb; --face: #e8f4ff; --hi: #ffffff; --light: #f5faff; --lo: #8bb8d9; --dk: #244a6e; --text: #10263d; --tb1: #3b82c4; --tb2: #9fd3ff; --tbtext: #ffffff; --tbi1: #a9c2d8; --tbi2: #cfe2f0; --sel: #3b82c4; --seltext: #ffffff; --paper: #ffffff; --wall: url("../assets/wallpapers/clouds.svg"); --wall-size: cover; --wall-repeat: no-repeat; --wall-color: #87ceeb; --icon-text: #ffffff; --icon-shadow: #244a6e; }

html[data-theme="beige"] { --desk: #5f7f6f; --face: #d9d2c0; --hi: #fbf8ee; --light: #ece6d4; --lo: #8c8572; --dk: #2e2a22; --text: #2e2a22; --tb1: #5b5343; --tb2: #8c8572; --tbtext: #fbf8ee; --tbi1: #a39c8a; --tbi2: #bdb6a4; --sel: #5b5343; --seltext: #fbf8ee; --paper: #fbf8ee; --wall: url("../assets/wallpapers/office.svg"); --wall-size: 120px; --wall-color: #5f7f6f; }

html[data-theme="night"] { --desk: #0b1026; --face: #1e2748; --hi: #4b5a8f; --light: #35427a; --lo: #0d1230; --dk: #000000; --text: #e6ecff; --tb1: #0b1026; --tb2: #2b3a7a; --tbtext: #fff6a8; --tbi1: #1a2142; --tbi2: #263060; --tbitext: #8a93b8; --sel: #fff6a8; --seltext: #0b1026; --paper: #121a38; --link: #9bd4ff; --visited: #d9a3ff; --wall: url("../assets/wallpapers/glowstars.svg"); --wall-size: 220px; --wall-color: #0b1026; --icon-text: #fff6a8; --icon-shadow: #000000; }
html[data-theme="night"] .win .body.paper { color: #e6ecff; }
html[data-theme="night"] .icon .lbl { text-shadow: 0 0 6px #fff6a8; }

/* readability / typography options (flags on <html>) */
html[data-bigtext="on"] { --font-size: 14px; }
html[data-serif="on"] .win .body.paper { font-family: "Times New Roman", Times, serif; font-size: 16px; }
html[data-crt="on"] body::after { content: ""; position: fixed; inset: 0; z-index: 9999; pointer-events: none; background: repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 3px); mix-blend-mode: multiply; }

/* ---- label readability on busy wallpapers (visuals pass 2026-10-31) ---- */
html[data-theme="hotdog"] .icon .lbl { background: #000; color: #ffff00; text-shadow: none; }
html[data-theme="sky"] .icon .lbl, html[data-theme="rainbow"] .icon .lbl, html[data-theme="win98"] .icon .lbl, html[data-theme="neon"] .icon .lbl {
  text-shadow: 1px 1px 0 var(--icon-shadow), -1px -1px 0 var(--icon-shadow), 1px -1px 0 var(--icon-shadow), -1px 1px 0 var(--icon-shadow);
}
html[data-theme="win98"] { --icon-shadow: #0a2a6a; }
html[data-theme="beige"] { --icon-text: #000000; --icon-shadow: #fbf8ee; --wall-color: #cbc3a6; --desk: #cbc3a6; }
html[data-theme="rainbow"] { --wall-color: #f59ae0; }

/* Hot Dog Stand: the joke is that it hurts. Black frames, red bars, yellow everything. */
html[data-theme="hotdog"] .win { box-shadow: inset 0 0 0 1px #000, inset 0 0 0 3px #ff0000, inset 0 0 0 4px #000; padding: 4px; }
html[data-theme="hotdog"] .win .tb { background: #ff0000; color: #fff; }
html[data-theme="hotdog"] .win.inactive .tb { background: #ffff00; color: #ff0000; }
html[data-theme="hotdog"] .win .wmenu, html[data-theme="hotdog"] .taskbar, html[data-theme="hotdog"] .startmenu { background: #ffff00; }
html[data-theme="hotdog"] .win .wmenu button:hover { background: #000; color: #ffff00; }
html[data-theme="hotdog"] .btn { background: #ffff00; color: #000; }
html[data-theme="hotdog"] ::selection { background: #000; color: #ffff00; }
html[data-theme="hotdog"] .startmenu .band { background: #ff0000; color: #ffff00; }

/* Win95: solid navy bar, bold white text; Win98: navy to Setup blue gradient (98.css reference) */
html[data-theme="win95"] .win .tb { background: #000080; }
html[data-theme="win95"] .win.inactive .tb { background: #808080; color: #c0c0c0; }
html[data-skin="win"] .win .tb .tb-title { font-weight: 700; letter-spacing: 0; }

html[data-theme="kidpix"] body, html[data-theme="rainbow"] body, html[data-theme="geocities"] .win .body.paper { -webkit-font-smoothing: antialiased; }
