/* ============================================================
   THEME rev4 — "electric desktop" (Redona direction, approved 2026-08-14)
   Loaded AFTER each page's inline <style>: redefines the shared tokens
   and restyles the shared OS components. Electric blue replaces orange;
   Win95 bevels become a refined light desktop on a warm stone wall.
   index.html does NOT load this (it is the rev4 shell natively).
   ============================================================ */
:root {
  --blue: #2743F0; --blue-dark: #1B34D4; --blue-tint: #DCE4FB; --blue-tint2: #EEF1FE;
  --desk1: #C6C1B8; --desk2: #AEA89E;
  --chrome: #F7F5F1; --chrome-hi: #F7F5F1; --chrome-lo: #D8D3CA;
  --title1: #2743F0; --title2: #2743F0;
  --ink: #1C1A17; --win-bg: #FAF8F5; --muted: #6E695F;
  --sans: -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
}
body, .desktop {
  background:
    linear-gradient(115deg, transparent 42%, rgba(255,255,255,0.38) 58%, rgba(255,255,255,0.12) 70%, transparent 82%),
    radial-gradient(ellipse at 85% 8%, rgba(255,255,255,0.5), transparent 45%),
    radial-gradient(ellipse at 18% 108%, rgba(155,140,115,0.55), transparent 52%),
    linear-gradient(168deg, #C6C1B8, #AEA89E) !important;
}
.window {
  background: var(--chrome);
  border: 1px solid #E4E0D8; border-radius: 12px;
  box-shadow: 0 24px 50px rgba(60,50,30,0.25), 0 3px 10px rgba(60,50,30,0.10);
  overflow: hidden;
}
.titlebar {
  background: var(--chrome); color: var(--ink);
  border-bottom: 1px solid #E4E0D8;
  padding: 9px 10px 9px 14px;
  font-family: var(--mono); font-weight: 600; letter-spacing: 0.04em;
}
.titlebar::before { content:''; display:inline-block; width:12px; height:9px; background:var(--blue); border-radius:2px; margin-right:8px; vertical-align:baseline; }
.xbtn { background: transparent; border: none; color: #8A857C; font-size: 13px; }
.xbtn:active { border: none; opacity: .6; }
.winbody { margin: 0; border: none; background: var(--win-bg); }
.btn95 { border: 1px solid #E0DAD0; border-radius: 9px; background: #F1EDE6; }
.btn95:active { border-color: #E0DAD0; opacity: .8; }
.btn95.hot { background: var(--blue); color: #fff; border: none; }
.btn95.hot:hover { background: var(--blue-dark); }
.field { border: 1px solid #E0DAD0; border-radius: 8px; }
.files { border: 1px solid #E4E0D8; border-radius: 10px; overflow: hidden; }
.file { border-bottom: 1px solid #ECE7DF; }
.file:hover { background: var(--blue-tint2); }
.res { border-bottom: 1px solid #ECE7DF; }
.icon { color: #4A463E; }
.icon .label { text-shadow: none; font-family: var(--mono); }
.icon:hover, .icon:focus-visible { background: rgba(255,255,255,0.35); border-color: rgba(39,67,240,0.25); border-radius: 8px; }
.icon .glyph { filter: drop-shadow(0 2px 3px rgba(80,70,50,0.25)); }
.folder { background: linear-gradient(180deg,#EFE9DE,#DDD5C4); }
.folder::before { background: #DDD5C4; }
.doc { border: 1px solid #C9C3B6; }
.doc::before { background: var(--blue); box-shadow: 0 5px 0 #C7C1B4, 0 10px 0 #C7C1B4, 0 15px 0 #C7C1B4; }
.icon.hero .folder { background: linear-gradient(180deg,#3E5AF5,#2137D8); }
.icon.hero .folder::before { background: #2137D8; }
.starthere { background: var(--blue) !important; color: #fff !important; border: none !important; border-radius: 5px; }
.taskbar { background: #F4F2ED; border-top: 1px solid #D8D3CA; }
.start { background: #FBFAF7; border: 1px solid #E4E0D8; border-radius: 9px; }
.start span { color: var(--blue); }
.tray { border: 1px solid #E4E0D8; border-radius: 9px; color: #6B665C; }
.wm { color: rgba(60,54,44,0.45); }
.portrait { box-shadow: 0 0 60px rgba(60,50,30,0.25); }

/* course-page components (start/day-1..5): kill remaining orange, refine chrome */
a.cta, .taskbar .wl, div.cta a {
  background: var(--blue) !important; color: #fff !important;
  border: none !important; border-radius: 9px;
}
a.cta:hover, .taskbar .wl:hover, div.cta a:hover { background: var(--blue-dark) !important; }
div.cta { background: var(--blue-tint2) !important; border-radius: 10px; }
.titlebar a {
  color: var(--blue); border: 1px solid var(--blue-tint);
  background: var(--blue-tint2); border-radius: 7px; padding: 3px 10px;
}
