:root {
  --win-gray: #c0c0c0;
  --win-dark: #808080;
  --win-darker: #000000;
  --win-light: #ffffff;
  --win-blue: #000080;
  --desktop: #008080;
}

* { box-sizing: border-box; }
html, body { width: 100%; height: 100%; margin: 0; overflow: hidden; }
body {
  font-family: "MS Sans Serif", Tahoma, Geneva, sans-serif;
  font-size: 12px;
  background: #000;
  color: #000;
}
button { font: inherit; }

.boot-screen {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  background: #000;
  color: #fff;
  transition: opacity .35s ease;
}
.boot-screen.done { opacity: 0; pointer-events: none; }
.boot-inner { width: min(540px, 85vw); text-align: center; }
.boot-logo { font-size: clamp(36px, 8vw, 72px); font-weight: 700; letter-spacing: 3px; }
.boot-sub { margin-top: 8px; color: #c0c0c0; font-size: 16px; }
.boot-bar {
  margin: 38px auto 18px;
  width: 260px;
  height: 18px;
  border: 2px solid #fff;
  padding: 2px;
}
.boot-bar span {
  display: block;
  width: 0;
  height: 100%;
  background: #fff;
  animation: bootload 1.4s steps(14, end) forwards;
}
.boot-copy { color: #aaa; font-size: 11px; }
@keyframes bootload { to { width: 100%; } }

.desktop {
  position: relative;
  width: 100vw;
  height: 100vh;
  background: var(--desktop);
  overflow: hidden;
  user-select: none;
}
.desktop-icons {
  position: absolute;
  top: 12px;
  left: 10px;
  display: grid;
  gap: 10px;
  width: 90px;
}
.desktop-icon {
  width: 82px;
  min-height: 74px;
  border: 0;
  background: transparent;
  color: white;
  padding: 4px 2px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  cursor: default;
}
.desktop-icon:focus, .desktop-icon.selected {
  outline: 1px dotted white;
  background: rgba(0,0,128,.35);
}
.icon-art {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: #c0c0c0;
  color: #000080;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #404040;
  border-bottom: 2px solid #404040;
  font-size: 23px;
  font-weight: bold;
  text-shadow: 1px 1px #fff;
}
.icon-label {
  line-height: 1.15;
  text-align: center;
  text-shadow: 1px 1px #000;
  padding: 1px 3px;
}

.window {
  position: absolute;
  left: 150px;
  top: 90px;
  width: min(560px, calc(100vw - 180px));
  min-width: 320px;
  background: var(--win-gray);
  border-top: 2px solid var(--win-light);
  border-left: 2px solid var(--win-light);
  border-right: 2px solid var(--win-darker);
  border-bottom: 2px solid var(--win-darker);
  box-shadow: 1px 1px 0 #404040;
  z-index: 20;
}
.window.hidden { display: none; }
.window.maximized {
  left: 0 !important;
  top: 0 !important;
  width: 100vw !important;
  height: calc(100vh - 30px) !important;
}
.titlebar {
  height: 25px;
  margin: 2px;
  padding: 2px 2px 2px 5px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: linear-gradient(90deg, #000080, #1084d0);
  color: #fff;
  font-weight: 700;
  cursor: move;
}
.window-controls { display: flex; gap: 2px; }
.window-controls button,
.start-button,
.task-button,
.win95-button,
.start-items button {
  background: var(--win-gray);
  border-top: 2px solid var(--win-light);
  border-left: 2px solid var(--win-light);
  border-right: 2px solid #404040;
  border-bottom: 2px solid #404040;
  box-shadow: 1px 1px 0 #000;
  color: #000;
}
.window-controls button {
  width: 20px;
  height: 18px;
  padding: 0;
  line-height: 13px;
  font-weight: 700;
}
.window-controls button:active,
.start-button:active,
.task-button:active,
.win95-button:active,
.start-items button:active {
  border-top: 2px solid #404040;
  border-left: 2px solid #404040;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  box-shadow: none;
}
.menu-bar { padding: 3px 8px 5px; }
.window-body { padding: 18px; min-height: 245px; }
.window-body h1 { margin: 0 0 10px; font-size: 24px; }
.lead { font-size: 14px; line-height: 1.45; max-width: 480px; }
.inset-panel {
  margin: 18px 0;
  padding: 12px;
  background: #fff;
  border-top: 2px solid #808080;
  border-left: 2px solid #808080;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.inset-panel p { margin: 5px 0; line-height: 1.4; }
.button-row { display: flex; gap: 8px; justify-content: flex-end; }
.win95-button { padding: 5px 16px; min-width: 88px; }
.status-bar { padding: 2px; display: flex; }
.status-bar span {
  flex: 1;
  padding: 2px 5px;
  border-top: 1px solid #808080;
  border-left: 1px solid #808080;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.taskbar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 30px;
  background: var(--win-gray);
  border-top: 2px solid #fff;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px;
  z-index: 100;
}
.start-button {
  height: 24px;
  padding: 1px 7px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.start-logo { font-size: 15px; }
.task-divider { height: 23px; width: 2px; border-left: 1px solid #808080; border-right: 1px solid #fff; }
.task-button { height: 24px; min-width: 150px; text-align: left; padding: 1px 7px; }
.taskbar-spacer { flex: 1; }
.tray {
  height: 24px;
  min-width: 75px;
  display: grid;
  place-items: center;
  border-top: 1px solid #808080;
  border-left: 1px solid #808080;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.start-menu {
  position: absolute;
  bottom: 30px;
  left: 2px;
  width: 240px;
  height: 245px;
  background: var(--win-gray);
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  z-index: 200;
  display: flex;
}
.start-brand {
  width: 34px;
  background: #808080;
  color: #c0c0c0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 6px 0;
}
.start-brand span {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1px;
}
.start-items { flex: 1; padding: 4px; display: flex; flex-direction: column; }
.start-items button {
  border: 0;
  box-shadow: none;
  text-align: left;
  padding: 10px 8px;
  background: transparent;
  display: flex;
  gap: 10px;
}
.start-items button:hover { background: #000080; color: #fff; }
.menu-separator { border-top: 1px solid #808080; border-bottom: 1px solid #fff; margin: 4px; }

@media (max-width: 700px) {
  .desktop-icons { grid-template-columns: repeat(2, 82px); width: 176px; }
  .window {
    left: 14px;
    top: 170px;
    width: calc(100vw - 28px);
    min-width: 0;
  }
  .task-button { min-width: 110px; max-width: 42vw; overflow: hidden; }
}

/* Ensure HTML hidden attribute wins over component display rules. */
[hidden] { display: none !important; }

/* Winamp 2.x inspired player */
.winamp-window { width: 310px; min-width: 310px; left: 390px; top: 120px; background:#2b2b35; color:#d7d7d7; border-color:#e7e7e7 #111 #111 #e7e7e7; }
.winamp-window .titlebar { background: linear-gradient(90deg,#20202a,#55556a); height:20px; font-size:11px; }
.winamp-main { padding:8px; background:linear-gradient(#4a4a56,#262630); }
.winamp-display { background:#050b05; border:2px inset #777; padding:6px; font-family:"Courier New",monospace; color:#44ff44; }
.winamp-time { float:left; font-size:20px; margin-right:8px; color:#5cff5c; }
.winamp-marquee { height:18px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:12px; }
.winamp-meta { font-size:9px; color:#b2ffb2; clear:both; }
.winamp-controls { display:flex; gap:3px; margin-top:8px; }
.winamp-controls button { width:48px; height:25px; background:#b7b7b7; border:2px outset #ddd; font-weight:bold; }
.winamp-controls button:active { border-style:inset; }
.winamp-volume-row { display:flex; align-items:center; gap:6px; margin-top:7px; font-size:9px; }
.winamp-volume-row input { width:220px; }
.winamp-playlist { background:#050b05; color:#46ff46; font-family:"Courier New",monospace; border-top:1px solid #777; padding:5px; }
.winamp-playlist-title { background:#252530; color:#ddd; text-align:center; padding:3px; margin-bottom:3px; font-size:10px; }
.winamp-playlist .station { display:block; width:100%; border:0; background:transparent; color:#46ff46; text-align:left; padding:4px 5px; font-family:inherit; font-size:11px; }
.winamp-playlist .station:hover,.winamp-playlist .station.active { background:#000080; color:#fff; }
.winamp-icon { background:#1d1d28; color:#ffd400; text-shadow:none; }

/* WindRammer 98 additions */
.menu-text-button{border:0;background:transparent;padding:0;font:inherit}
.menu-parent{position:relative}
.menu-parent>b,.menu-parent button b{margin-left:auto}
.submenu{display:none;position:absolute;left:100%;top:-4px;min-width:170px;background:var(--win-gray);border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #000;border-bottom:2px solid #000;padding:2px;z-index:200}
.menu-parent:hover>.submenu{display:block}
.start-items .menu-parent>button{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:7px 8px;box-shadow:none;border:0}
.submenu button{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:7px 8px;border:0;box-shadow:none}
.submenu button:hover,.start-items .menu-parent>button:hover{background:#000080;color:#fff}
.game-window{width:620px;left:190px;top:70px}
.freecell-toolbar,.ski-toolbar{padding:6px;display:flex;gap:10px;align-items:center;border-top:1px solid #fff;border-bottom:1px solid #808080}
.freecell-board{position:relative;background:#008000;min-height:430px;padding:12px;border:2px inset #888}
.freecells,.foundations{position:absolute;top:10px;display:flex;gap:8px}.freecells{left:12px}.foundations{right:12px}
.card-slot{width:58px;height:78px;border:2px dashed rgba(255,255,255,.55);border-radius:3px;display:flex;align-items:center;justify-content:center}
.playing-card{width:58px;height:78px;background:white;border:1px solid #111;border-radius:4px;padding:4px;font-family:"Times New Roman",serif;font-size:17px;line-height:17px;box-shadow:1px 1px 1px #004c00;color:#111;cursor:pointer}
.playing-card.red{color:#d00000}.playing-card.selected{outline:3px solid #ffff00;transform:translateY(-3px)}
.cascades{display:grid;grid-template-columns:repeat(8,58px);gap:10px;position:absolute;left:12px;right:12px;top:105px;justify-content:space-between}
.cascade{position:relative;min-height:300px}.cascade .playing-card{position:absolute;left:0}
.mines-window{width:285px;min-width:285px}.mines-panel{margin:7px;padding:7px;display:flex;justify-content:space-between;align-items:center;border:3px inset #eee}.mine-counter{font-family:"Courier New",monospace;font-weight:bold;font-size:28px;letter-spacing:2px;background:#000;color:#f00;padding:1px 4px}.mine-face{font-size:22px;width:38px;height:38px;background:#c0c0c0;border:3px outset #eee}.mine-grid{display:grid;grid-template-columns:repeat(9,26px);margin:7px;width:max-content;border:3px inset #eee}.mine-cell{width:26px;height:26px;padding:0;background:#c0c0c0;border:3px outset #eee;font-weight:bold;font-size:15px;text-align:center}.mine-cell.revealed{border:1px solid #808080;background:#c0c0c0}.mine-cell.n1{color:#0000ff}.mine-cell.n2{color:#008000}.mine-cell.n3{color:#ff0000}.mine-cell.n4{color:#000080}.mine-cell.n5{color:#800000}.mine-cell.n6{color:#008080}
.ski-window{width:550px}.ski-window canvas{display:block;margin:0 auto 7px;border:2px inset #aaa;background:#fff;image-rendering:pixelated}
.doom-window{width:590px;background:#000}.doom-screen{background:#000;color:#aaa;padding:16px 18px 24px;font:16px "Courier New",monospace;min-height:330px}.doom-screen pre{white-space:pre-wrap}.doom-button{font:inherit;background:#000;color:#aaa;border:1px solid #aaa;padding:7px 10px}.doom-button:hover{background:#aaa;color:#000}
@media(max-width:700px){.game-window,.ski-window{width:calc(100vw - 20px);left:10px!important}.freecell-board{overflow:auto}.ski-window canvas{width:100%;height:auto}}
/* More WindRammer 98 programs */
.retro-app{left:240px;top:85px;width:520px}.notepad-area{width:100%;height:310px;resize:none;border:2px inset #eee;padding:5px;font:14px 'Courier New',monospace;box-sizing:border-box}.calc-window{width:245px;min-width:245px}.calc-body{padding:8px}.calc-body input{width:100%;box-sizing:border-box;text-align:right;font:20px monospace;margin-bottom:7px;border:2px inset #eee}.calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.calc-keys button{height:34px}.paint-window{width:640px}.paint-tools{padding:5px;display:flex;gap:10px;align-items:center}.paint-window canvas{display:block;margin:0 8px 8px;background:#fff;border:2px inset #eee;cursor:crosshair}.cmd-window{width:590px;background:#000}.cmd-screen{height:300px;overflow:auto;white-space:pre-wrap;padding:8px;color:#c0c0c0;background:#000;font:14px 'Courier New',monospace}.cmd-input{width:100%;box-sizing:border-box;background:#000;color:#c0c0c0;border:0;border-top:1px solid #444;padding:5px;font:14px 'Courier New',monospace;outline:none}.addressbar{padding:4px;border-top:1px solid #fff;border-bottom:1px solid #808080}.addressbar span{display:inline-block;background:#fff;border:2px inset #eee;padding:2px 5px;width:75%}.explorer-body{height:280px;background:#fff;border:2px inset #eee;padding:15px;display:grid;grid-template-columns:repeat(4,90px);align-content:start;gap:20px}.explorer-body button{background:transparent;border:0;box-shadow:none;font-size:34px}.explorer-body small{display:block;font:11px Tahoma,sans-serif}.dialer-window{width:300px}.dialer-body{padding:12px}.dialer-body input{width:100%;box-sizing:border-box;padding:5px;margin-bottom:8px;border:2px inset #eee}.dial-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.dial-pad button{height:38px;font-weight:bold}.dialup-window{width:350px}.dialup-body{padding:18px;text-align:center}.dialup-icon{font-size:55px}.progress{height:20px;border:2px inset #eee;background:#fff;padding:2px}.progress span{display:block;height:100%;width:0;background:#000080}.defrag-window{width:480px}.defrag-body{padding:12px}.defrag-blocks{display:grid;grid-template-columns:repeat(24,1fr);gap:2px;background:#fff;border:2px inset #eee;padding:5px;height:120px}.defrag-block{background:#000080}.defrag-block:nth-child(5n){background:#00a000}.defrag-block:nth-child(9n){background:#c00000}.pipes-saver{position:fixed;inset:0;z-index:99999;background:#000;color:#aaa}.pipes-saver canvas{width:100%;height:100%}.pipes-saver div{position:absolute;bottom:15px;right:20px;font:12px Tahoma,sans-serif}
#extraTasks{display:flex;gap:3px}.extra-task{min-width:105px;max-width:140px;overflow:hidden;white-space:nowrap}

/* Global utility: hidden means hidden for windows, screensavers, task buttons, etc. */
.hidden { display: none !important; }

/* Contact WindRammer */
.contact-window{width:500px;left:300px;top:95px}
.contact-form{padding:12px}
.contact-row{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:center;margin-bottom:8px}
.contact-row input,.contact-message textarea{box-sizing:border-box;width:100%;border:2px inset #eee;background:#fff;padding:4px;font:13px Tahoma,Arial,sans-serif}
.contact-message label{display:block;margin-bottom:4px}.contact-message textarea{height:150px;resize:vertical}
.contact-status{margin:10px 0;padding:5px;border:1px solid transparent;min-height:18px}.contact-status.error{border-color:#800000;background:#fff0f0}.contact-status.success{border-color:#008000;background:#f0fff0}
.contact-form .button-row{display:flex;justify-content:flex-end;gap:8px}.contact-form .button-row button{min-width:80px}
.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.contact-window{width:calc(100vw - 20px);left:10px!important}.contact-row{grid-template-columns:1fr}.contact-message textarea{height:120px}}

/* Contact message delivery animation */
.delivery-animation{margin:10px 0 4px;padding:10px;border:2px inset #eee;background:#c0c0c0}
.delivery-scene{height:82px;display:flex;align-items:center;justify-content:center;gap:12px;overflow:hidden}
.delivery-envelope{position:relative;width:64px;height:42px;background:#fff;border:2px solid #202020;box-shadow:2px 2px 0 #808080;transform-origin:center;animation:wrEnvelopeReady .55s steps(3,end) infinite alternate}
.delivery-envelope:before,.delivery-envelope:after{content:"";position:absolute;bottom:0;width:38px;height:2px;background:#202020;transform-origin:bottom}
.delivery-envelope:before{left:1px;transform:rotate(31deg)}
.delivery-envelope:after{right:1px;transform:rotate(-31deg)}
.delivery-flap{position:absolute;left:6px;top:-2px;width:48px;height:30px;border-left:2px solid #202020;border-bottom:2px solid #202020;background:#e8e8e8;transform:rotate(-45deg) skew(12deg,12deg);transform-origin:center;z-index:2}
.delivery-paper{position:absolute;left:13px;top:5px;width:34px;height:24px;background:#fff;border:1px solid #808080;font:bold 9px "Courier New",monospace;text-align:center;line-height:23px;z-index:1;animation:wrPaperPack .8s steps(4,end) infinite}
.delivery-route{width:150px;display:flex;justify-content:space-between;align-items:center;position:relative}
.delivery-route:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:repeating-linear-gradient(90deg,#000080 0 8px,transparent 8px 14px)}
.delivery-route span{position:relative;width:8px;height:8px;background:#00a000;border:1px solid #003000;z-index:2;animation:wrPacket 1s steps(1,end) infinite;opacity:.2}
.delivery-route span:nth-child(2){animation-delay:.18s}.delivery-route span:nth-child(3){animation-delay:.36s}.delivery-route span:nth-child(4){animation-delay:.54s}.delivery-route span:nth-child(5){animation-delay:.72s}
.delivery-server{position:relative;width:50px;height:58px;background:#808080;border:2px outset #eee;padding:5px;box-sizing:border-box}
.delivery-server i{display:block;height:7px;margin:3px 0;background:#303030;border:1px inset #aaa}
.delivery-server i:after{content:"";display:block;width:4px;height:4px;background:#00ff00;margin:1px 0 0 29px;animation:wrLed .65s steps(1,end) infinite}
.delivery-server b{display:block;text-align:center;font:8px Tahoma,Arial,sans-serif;margin-top:1px}
.delivery-stage{text-align:center;margin:3px 0 7px;font-weight:bold;min-height:16px}
.delivery-progress{height:16px;border:2px inset #eee;background:#fff;padding:2px}
.delivery-progress span{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,#000080 0 12px,#1084d0 12px 24px);transition:width .3s steps(4,end)}
.delivery-animation.success .delivery-envelope{animation:none;transform:translateX(175px) scale(.8);opacity:0;transition:transform .45s ease,opacity .45s ease}
.delivery-animation.success .delivery-route span{animation:none;opacity:.25}
.delivery-animation.success .delivery-server{box-shadow:0 0 0 2px #008000 inset}
.delivery-animation.error .delivery-route span{background:#b00000;border-color:#500000;animation:none;opacity:1}
@keyframes wrEnvelopeReady{from{transform:translateY(0)}to{transform:translateY(-2px)}}
@keyframes wrPaperPack{0%,35%{transform:translateY(-12px)}65%,100%{transform:translateY(2px)}}
@keyframes wrPacket{0%,100%{opacity:.2}30%,55%{opacity:1;box-shadow:0 0 5px #00ff00}}
@keyframes wrLed{0%,55%{background:#004000}56%,100%{background:#00ff00}}


/* Mobile gate: the fake desktop intentionally requires a desktop/laptop. */
.mobile-gate { display: none; }
html.mobile-device,
html.mobile-device body {
  width: 100%;
  min-height: 100%;
  overflow: hidden;
  background: #008080;
}
html.mobile-device .boot-screen,
html.mobile-device .desktop {
  display: none !important;
}
html.mobile-device .mobile-gate {
  position: fixed;
  inset: 0;
  z-index: 20000;
  display: grid;
  place-items: center;
  padding: 18px;
  background: #008080;
  font-family: "MS Sans Serif", Tahoma, Geneva, sans-serif;
  color: #000;
}
.mobile-dialog {
  width: min(430px, calc(100vw - 28px));
  background: #c0c0c0;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  box-shadow: 1px 1px 0 #404040;
}
.mobile-titlebar {
  margin: 2px;
  padding: 5px 7px;
  background: #000080;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
}
.mobile-dialog-body {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 22px 18px 14px;
  font-size: 14px;
  line-height: 1.45;
}
.mobile-dialog-body p { margin: 0 0 10px; }
.mobile-warning-icon {
  flex: 0 0 auto;
  font-size: 38px;
  line-height: 1;
}
.mobile-small { font-size: 12px; }
.mobile-dialog-footer {
  display: flex;
  justify-content: center;
  padding: 4px 18px 18px;
}
.mobile-dialog-footer button {
  min-width: 82px;
  padding: 5px 16px;
  background: #c0c0c0;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #404040;
  border-bottom: 2px solid #404040;
  box-shadow: 1px 1px 0 #000;
  font: inherit;
}
.mobile-dialog-footer button:active {
  border-top-color: #404040;
  border-left-color: #404040;
  border-right-color: #fff;
  border-bottom-color: #fff;
  box-shadow: none;
}

/* WindRammer 98 wallpaper branding + BGInfo-style connection panel */
.ascii-watermark {
  position: fixed;
  right: 32px;
  bottom: 62px;
  left: auto;
  top: auto;
  transform: none;
  z-index: 0;
  margin: 0;
  color: rgba(255,255,255,.23);
  font: bold 11px/1.02 "Courier New", monospace;
  white-space: pre;
  text-align: left;
  pointer-events: none;
  user-select: none;
  text-shadow: 1px 1px 0 rgba(0,0,0,.18);
}
.bginfo {
  position: fixed;
  right: 24px;
  top: 20px;
  z-index: 1;
  width: 340px;
  color: #fff;
  font: 12px/1.42 "Courier New", monospace;
  text-align: left;
  text-shadow: 1px 1px 0 #000;
  pointer-events: none;
}
.bginfo-title {
  margin-bottom: 5px;
  padding-bottom: 2px;
  font-weight: bold;
  letter-spacing: 1px;
  border-bottom: 1px solid rgba(255,255,255,.55);
}
.bginfo div:not(.bginfo-title) {
  display: grid;
  grid-template-columns: 118px 1fr;
  column-gap: 8px;
}
.bginfo span { color: #d7ffff; }
.bginfo b {
  font-weight: normal;
  color: #fff;
  overflow-wrap: anywhere;
}
.desktop-icons { position: relative; z-index: 2; }
.window { z-index: 10; }
.start-menu { z-index: 1000; }
.taskbar { z-index: 1100; }

@media (max-width: 1250px) {
  .ascii-watermark { font-size: 9px; right: 22px; }
  .bginfo { width: 300px; font-size: 11px; }
}
