      :root {
        color-scheme: dark;
        --bg: #060608;
        /* CRT-ish phosphor palette */
        --fg: #bfffd1;
        --accent: #7bffb3;
        --warning: #ff5d8f;
        --glitch: #9ff;
        --font: "JetBrains Mono", "Fira Code", "Cascadia Code", "SFMono-Regular",
          Consolas, "Ubuntu Mono", monospace;
        --ui-font: "Space Grotesk", "Manrope", "Inter", system-ui, sans-serif;
        --win-font: "Tahoma", "MS Sans Serif", Arial, sans-serif;
        /* CRT overlays control */
        --crt-scan-opacity: 0.06;
        --crt-scan-opacity-hard: 0.1;
        --crt-scan-opacity-max: 0.16;
        --crt-vignette: rgba(0, 0, 0, 0.18);
        --crt-vignette-hard: rgba(0, 0, 0, 0.28);
        --crt-vignette-max: rgba(0, 0, 0, 0.38);
      }

      * {
        box-sizing: border-box;
      }

      body {
        margin: 0;
        min-height: 100vh;
        background: radial-gradient(circle at 20% 20%, #10121a 0, var(--bg) 45%)
            fixed,
          var(--bg);
        color: var(--fg);
        font-family: var(--font);
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
      }
      body.dragging,
      body.resizing {
        user-select: none;
      }

      ::selection {
        background: rgba(123, 255, 179, 0.35);
        color: #040607;
      }

      body::before {
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: repeating-linear-gradient(
            0deg,
            rgba(255, 255, 255, 0.08),
            rgba(255, 255, 255, 0.08) 1px,
            rgba(0, 0, 0, 0) 1px,
            rgba(0, 0, 0, 0) 3px
          ),
          rgba(16, 20, 32, 0.12);
        mix-blend-mode: screen;
        pointer-events: none;
        z-index: 1;
        opacity: 0.65;
      }

body.glitch {
  animation: pulse 0.18s steps(2, end) infinite alternate;
}

      @keyframes pulse {
        0% {
          filter: hue-rotate(-5deg) saturate(1.1);
        }
        100% {
          filter: hue-rotate(5deg) saturate(1.35);
        }
      }

      .terminal {
        position: relative;
        width: min(960px, 92vw);
        height: min(620px, 88vh);
        padding: 32px;
        border: 1px solid rgba(123, 255, 179, 0.35);
        background: #040607cc;
        box-shadow: 0 10px 64px rgba(123, 255, 179, 0.16), inset 0 0 36px rgba(123,255,179,0.06);
        border-radius: 16px;
        /* Subtle old CRT curvature */
        transform: perspective(1400px) rotateX(0.6deg);
        backdrop-filter: blur(10px) saturate(135%);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 16px;
        z-index: 2;
      }

      .terminal::after {
        content: "";
        position: absolute;
        inset: 0;
        pointer-events: none;
        /* soft glass reflection */
        background:
          radial-gradient(120% 140% at 120% -10%, rgba(123,255,179,0.08), rgba(0,0,0,0) 40%),
          linear-gradient(120deg, rgba(123, 255, 179, 0.05) 0%, rgba(123, 255, 179, 0) 32%);
        mix-blend-mode: lighten;
      }

      .output {
        flex: 1;
        overflow-y: auto;
        line-height: 1.32;
        word-break: break-word;
        scroll-behavior: smooth;
        padding-right: 8px;
        text-shadow: 0 0 1px rgba(123,255,179,0.35), 0 0 6px rgba(123,255,179,0.08);
      }
      .output::-webkit-scrollbar {
        width: 6px;
      }
      .output::-webkit-scrollbar-thumb {
        background: rgba(123, 255, 179, 0.25);
        border-radius: 6px;
      }
      .output::-webkit-scrollbar-thumb:hover {
        background: rgba(123, 255, 179, 0.4);
      }

.line {
  margin-bottom: 8px;
  white-space: pre-wrap;
}

.line.system {
  color: var(--accent);
}

.line.error {
  color: var(--warning);
}

.line.echo {
  color: rgba(140, 230, 250, 0.85);
}

      .prompt-container {
        display: flex;
        gap: 12px;
        align-items: center;
        position: relative;
      }

      .prompt {
        color: var(--accent);
        flex-shrink: 0;
        text-shadow: 0 0 6px rgba(123,255,179,0.4);
      }

      .input-field {
        flex: 1;
        background: transparent;
        border: none;
        border-bottom: 1px solid rgba(123, 255, 179, 0.45);
        color: var(--fg);
        font-size: 16px;
        padding: 4px 0;
        outline: none;
        caret-color: var(--accent);
        transition: border-color 0.25s ease, color 0.25s ease;
        text-shadow: 0 0 2px rgba(123,255,179,0.35);
      }

      .input-field:focus {
        border-bottom-color: var(--accent);
        color: #fff;
        text-shadow: 0 0 8px rgba(123,255,179,0.5);
      }

      .flash {
        animation: flash 0.12s steps(2, end) 1;
      }

      @keyframes flash {
        0% {
          background: rgba(123, 255, 179, 0.22);
        }
        100% {
          background: transparent;
        }
      }

      .overlay {
        pointer-events: none;
        position: absolute;
        inset: 0;
        background: radial-gradient(
          circle,
          rgba(123, 255, 179, 0.08) 0%,
          rgba(123, 255, 179, 0) 60%
        );
        opacity: 0;
        transition: opacity 0.4s ease;
        z-index: 4;
      }

      /* Start screen */
      .start-screen {
        position: absolute;
        inset: 0;
        z-index: 40;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(4, 6, 7, 0.96);
        border-radius: 12px;
        border: 1px solid rgba(123,255,179,0.35);
        backdrop-filter: blur(8px) saturate(140%);
      }
      .start-card {
        width: min(560px, 92%);
        padding: 20px 18px;
        text-align: center;
      }
      .start-title {
        font-size: 28px;
        font-weight: 800;
        letter-spacing: 0.06em;
        color: #fff;
        text-shadow: 0 0 10px rgba(123,255,179,0.5);
        margin-bottom: 8px;
      }
      .start-subtitle {
        color: #caffdf;
        opacity: 0.9;
        margin-bottom: 18px;
      }
      .start-buttons { display: flex; gap: 12px; justify-content: center; margin-bottom: 10px; }
      .start-btn {
        padding: 10px 14px;
        border-radius: 8px;
        border: 1px solid rgba(123,255,179,0.45);
        background: rgba(16,22,24,0.6);
        color: #fff;
        cursor: pointer;
        font-family: var(--font);
        font-weight: 700;
        letter-spacing: 0.03em;
        transition: transform .12s ease, background .2s ease, border-color .2s ease;
        text-shadow: 0 0 6px rgba(123,255,179,0.35);
      }
      .start-btn:hover { transform: translateY(-1px); background: rgba(22,32,34,0.8); border-color: var(--accent); }
      .start-hint { color: rgba(191,255,209,0.8); font-size: 13px; }

      /* Loading screen */
      .loading-screen {
        position: absolute;
        inset: 0;
        z-index: 40;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(4, 6, 7, 0.96);
        border-radius: 12px;
        border: 1px solid rgba(123,255,179,0.35);
        backdrop-filter: blur(8px) saturate(140%);
      }
      .loading-card { width: min(560px, 92%); padding: 20px 18px; text-align: center; }
      .loading-title { font-size: 20px; font-weight: 800; color: #fff; margin-bottom: 12px; text-shadow: 0 0 10px rgba(123,255,179,0.45); }
      .progress { width: min(520px, 88%); height: 10px; margin: 0 auto; border: 1px solid rgba(123,255,179,0.45); border-radius: 6px; background: rgba(16,22,24,0.5); overflow: hidden; }
      .progress-bar { height: 100%; width: 0%; background: linear-gradient(90deg, rgba(123,255,179,0.65), rgba(140,230,250,0.9)); box-shadow: 0 0 10px rgba(123,255,179,0.45); animation: progressGrow 5s linear forwards; }
      @keyframes progressGrow { from { width: 0%; } to { width: 100%; } }

      .overlay.active {
        opacity: 0.75;
        mix-blend-mode: screen;
      }

      @media (max-width: 640px) {
        .terminal {
          padding: 18px;
          gap: 12px;
        }
        .prompt {
          font-size: 14px;
        }
        .input-field {
          font-size: 14px;
        }
      }

      /* Psychedelic overlays and animations */
      .fx {
        position: absolute;
        inset: 0;
        pointer-events: none;
      }
      /* CRT scanlines overlay */
      .fx-scan {
        z-index: 3;
        opacity: var(--crt-scan-opacity);
        background: repeating-linear-gradient(
          0deg,
          rgba(255,255,255,0.06) 0px,
          rgba(255,255,255,0.06) 1px,
          rgba(0,0,0,0) 1px,
          rgba(0,0,0,0) 3px
        );
        mix-blend-mode: soft-light;
        animation: scanFlicker 5s steps(2, end) infinite;
      }
      @keyframes scanFlicker {
        0% { opacity: calc(var(--crt-scan-opacity) * 0.9); }
        50% { opacity: calc(var(--crt-scan-opacity) * 1.2); }
        100% { opacity: calc(var(--crt-scan-opacity) * 0.9); }
      }
      body.trip-hard .fx-scan { opacity: var(--crt-scan-opacity-hard); }
      body.trip-max .fx-scan { opacity: var(--crt-scan-opacity-max); }

      /* Vignette + curvature shadow */
      .fx-vignette {
        z-index: 10;
        background:
          radial-gradient(160% 120% at 50% 50%, rgba(0,0,0,0) 60%, var(--crt-vignette) 100%);
        mix-blend-mode: multiply;
      }
      body.trip-hard .fx-vignette { background: radial-gradient(160% 120% at 50% 50%, rgba(0,0,0,0) 60%, var(--crt-vignette-hard) 100%); }
      body.trip-max .fx-vignette { background: radial-gradient(160% 120% at 50% 50%, rgba(0,0,0,0) 60%, var(--crt-vignette-max) 100%); }
      .fx-noise {
        z-index: 2;
        opacity: 0.15;
        mix-blend-mode: soft-light;
      }
      .fx-words {
        z-index: 6;
        font-weight: 800;
        letter-spacing: 0.05em;
      }
      .fx-words .word {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%) scale(0.9);
        color: #fff;
        text-shadow: 0 0 6px rgba(123,255,179,0.6),
          1px 0 0 rgba(255,0,128,0.9),
          -1px 0 0 rgba(0,255,255,0.9);
        filter: drop-shadow(0 0 8px rgba(0,255,255,0.5));
        opacity: 0;
        font-size: clamp(28px, 13vw, 140px);
        mix-blend-mode: difference;
        animation: wordIn 0.4s ease forwards;
      }
      .fx-words .word.out {
        animation: wordOut 0.8s ease forwards;
      }
      @keyframes wordIn {
        0% { opacity: 0; transform: translate(-50%, -50%) scale(0.9); }
        100% { opacity: 0.95; transform: translate(-50%, -50%) scale(1.02); }
      }
      @keyframes wordOut {
        0% { opacity: 0.95; }
        100% { opacity: 0; transform: translate(-50%, -50%) scale(1.12) rotate(2deg); }
      }

      /* Trip intensity filters */
      body.trip-soft .terminal {
        filter: contrast(1.15) saturate(1.25) hue-rotate(10deg);
      }
      body.trip-hard .terminal {
        filter: contrast(1.6) saturate(1.7) hue-rotate(60deg) blur(0.6px);
        transform: perspective(1200px) rotateX(1.1deg) rotateZ(-0.05deg);
      }
      body.trip-max .terminal {
        filter: contrast(2) saturate(2.2) hue-rotate(130deg) invert(0.06) blur(1.2px);
        transform: perspective(1100px) rotateX(1.6deg) rotateZ(0.08deg) scale(1.004);
      }

      /* Scan bar */
      .terminal::before {
        content: "";
        position: absolute;
        left: 0; right: 0; height: 22%; top: -22%;
        background: linear-gradient(
          to bottom,
          rgba(255,255,255,0.08),
          rgba(0,0,0,0)
        );
        filter: blur(2px);
        mix-blend-mode: screen;
        opacity: 0;
        pointer-events: none;
      }
      body.trip-hard .terminal::before, body.trip-max .terminal::before {
        opacity: 0.5;
        animation: scanBar 2.4s linear infinite;
      }
      @keyframes scanBar {
        0% { top: -22%; }
        100% { top: 100%; }
      }

      /* Chromatic aberration */
      @keyframes chroma {
        0% {
          text-shadow: 1px 0 0 rgba(255,0,80,0.8), -1px 0 0 rgba(0,255,255,0.8), 0 0 6px rgba(123,255,179,0.25);
        }
        50% {
          text-shadow: -1px 0 0 rgba(255,0,80,0.8), 1px 0 0 rgba(0,255,255,0.8), 0 0 10px rgba(123,255,179,0.45);
        }
        100% {
          text-shadow: 1px 0 0 rgba(255,0,80,0.8), -1px 0 0 rgba(0,255,255,0.8), 0 0 6px rgba(123,255,179,0.25);
        }
      }
      body.trip-hard .output .line,
      body.trip-max .output .line,
      body.rgb .output .line {
        animation: chroma 0.7s steps(2, end) infinite;
      }

      /* Bloom */
      body.bloom .terminal {
        filter: brightness(1.12) saturate(1.6) blur(0.4px);
      }

      /* Strobe */
      @keyframes strobe {
        0% { filter: brightness(1); }
        50% { filter: brightness(2.4) invert(1); }
        100% { filter: brightness(1); }
      }
  body.strobe .terminal { animation: strobe 0.08s steps(2, end) infinite; }

  /* Double-vision ghost clone for fork self */
  .double-ghost {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 50;
    opacity: 0.55;
    transform: translate(2px, -2px) scale(1.002);
    filter: blur(0.6px) saturate(1.3) hue-rotate(-8deg);
    mix-blend-mode: screen;
    animation: ghostJitter 0.1s steps(2, end) infinite;
  }
  @keyframes ghostJitter {
    0% { transform: translate(2px, -2px) scale(1.002); }
    50% { transform: translate(-2px, 2px) scale(1.002); }
    100% { transform: translate(2px, -2px) scale(1.002); }
  }

      /* New lines phosphor fade-in */
      @keyframes phosphorIn {
        0% { opacity: 0; text-shadow: 0 0 18px rgba(123,255,179,0.75), 0 0 8px rgba(123,255,179,0.4); }
        100% { opacity: 1; text-shadow: 0 0 1px rgba(123,255,179,0.35), 0 0 6px rgba(123,255,179,0.08); }
      }
      .line.new { animation: phosphorIn 0.38s ease-out both; }

      /* Shake */
      @keyframes shake {
        0% { transform: translate(1px, -1px) rotate(-0.2deg); }
        25% { transform: translate(-2px, 2px) rotate(0.2deg); }
        50% { transform: translate(2px, 1px) rotate(-0.3deg); }
        75% { transform: translate(-1px, -2px) rotate(0.3deg); }
        100% { transform: translate(1px, 1px) rotate(-0.2deg); }
      }
      body.shake .terminal { animation: shake 0.35s infinite; }

      /* Cracks overlay */
      .fx-cracks { z-index: 8; opacity: 0.95; }

      /* Tear slices */
      .fx-tear { z-index: 5; }
      .fx-tear .slice {
        position: absolute;
        left: -10vw; right: -10vw;
        height: 4px;
        background: rgba(255,255,255,0.02);
        mix-blend-mode: difference;
        transform: translateX(0);
      }
      @keyframes tearShift {
        0% { transform: translateX(-2%); }
        25% { transform: translateX(2%); }
        50% { transform: translateX(-6%); }
        75% { transform: translateX(4%); }
        100% { transform: translateX(0%); }
      }
      body.tear .fx-tear .slice { animation: tearShift 0.12s steps(2, end) infinite; }

      /* Shatter flash */
      @keyframes shatterFlash { 0% { filter: invert(1) brightness(2.5); } 100% { filter: none; } }
      body.shatter .terminal { animation: shatterFlash 0.18s steps(2,end) 6; }

      /* God swirl overlay — disabled */
      .fx-god { display: none; }

      /* Eyes overlay */
      .fx-eyes { z-index: 9; overflow: hidden; }
      .eye {
        position: absolute;
        width: 44px; height: 28px;
        border: 2px solid rgba(255,255,255,0.9);
        border-radius: 50% / 60%;
        background:
          radial-gradient(circle at 50% 50%, rgba(255,255,255,0.35), rgba(255,255,255,0.06) 60%, rgba(0,0,0,0) 62%),
          radial-gradient(circle at 50% 50%, rgba(0,255,255,0.25), rgba(0,0,0,0) 70%);
        box-shadow: 0 0 12px rgba(0,255,255,0.35), inset 0 0 6px rgba(255,255,255,0.25);
        transform: translate(-50%, -50%);
        transition: transform 1.8s cubic-bezier(.2,.8,.2,1), opacity .6s ease;
        filter: drop-shadow(0 0 8px rgba(123,255,179,.6));
        will-change: transform;
      }
      .eye .pupil {
        position: absolute; left: 50%; top: 50%;
        width: 10px; height: 10px; border-radius: 50%;
        background: radial-gradient(circle at 40% 40%, #000 0, #001a1a 60%, #00ffff 100%);
        transform: translate(-50%, -50%);
        box-shadow: 0 0 4px rgba(0,255,255,0.6);
      }
      @keyframes blinkEye {
        0%, 88%, 100% { transform: translate(-50%, -50%) scaleY(1); }
        90% { transform: translate(-50%, -50%) scaleY(0.15); }
        96% { transform: translate(-50%, -50%) scaleY(1); }
      }
      .eye.blink { animation: blinkEye 3.6s infinite; transform-origin: center; }

      /* Nano-like overlay */
      .nano-overlay {
        position: absolute;
        inset: 0;
        z-index: 20;
        display: flex;
        flex-direction: column;
        background: rgba(4, 6, 7, 0.98);
        border: 1px solid rgba(123, 255, 179, 0.35);
        border-radius: 12px;
        overflow: hidden;
      }
      .nano-header {
        padding: 4px 8px;
        background: rgba(123,255,179,0.12);
        color: #fff;
        font-weight: 600;
        letter-spacing: 0.02em;
        text-shadow: 0 0 4px rgba(123,255,179,0.45);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      }
      .nano-body {
        flex: 1;
        font-family: var(--font);
        font-size: 14px;
        line-height: 1.28;
        white-space: pre;
        padding: 6px 8px;
        overflow: hidden;
        outline: none;
      }
      .nano-status {
        padding: 2px 8px;
        min-height: 18px;
        color: #040607;
        background: rgba(123,255,179,0.85);
        font-weight: 600;
        letter-spacing: 0.02em;
      }
      .nano-footer {
        padding: 2px 8px 6px 8px;
        background: rgba(123,255,179,0.12);
        color: #caffdf;
        font-weight: 600;
        font-size: 13px;
      }
      .nano-keys-line { white-space: pre; }
      .nano-cursor {
        background: var(--accent);
        color: #031313;
        text-shadow: none;
      }

      /* Windows-like admin shell overlay (exit simulation) */
      .win-overlay {
        position: fixed;
        inset: 0;
        z-index: 10000;
        background: transparent; /* keep game visible */
        display: flex;
        align-items: flex-start;   /* stick to top */
        justify-content: flex-end; /* stick to right */
        padding: 0; /* full height window touches edges */
        pointer-events: none;
      }
      .win-window {
        width: min(900px, 92vw);
        height: min(540px, 86vh);
        background: #000; /* default (cmd-like) */
        border: 1px solid #1f1f1f;
        box-shadow: 0 14px 48px rgba(0,0,0,0.65);
        display: flex;
        flex-direction: column;
        font-family: Consolas, "Cascadia Mono", "Courier New", monospace;
        color: #e5e5e5;
      }
      /* PowerShell skin */
      .win-window.ps { background: #012456; color: #f0f0f0; border-color: #0a2f6b; width: 100vw; height: 60vh; }
      .win-titlebar {
        padding: 6px 10px;
        background: linear-gradient(180deg, #1f1f1f, #101010);
        color: #fff;
        font-weight: 600;
        letter-spacing: 0.02em;
        white-space: nowrap;
        user-select: none;
      }
      .win-titlebar.ps { background: linear-gradient(180deg, #2f6bd2, #153c9a); }
      .win-body {
        flex: 1;
        background: #000; /* default (cmd) */
        padding: 8px 10px;
        overflow: hidden auto;
        line-height: 1.22;
      }
      .win-body.ps { background: #012456; }
      .win-pre { margin: 0; white-space: pre-wrap; }
      .win-line { color: #eaeaea; font-family: inherit; white-space: pre; }
      .win-prompt { color: #00b7ff; }
      .win-line.verbose { color: #cbe9ff; }
      .win-line.error { color: #ff6464; }
      .win-line.progress { color: #9ee99e; }
      .win-cmd { color: #eaeaea; }

      /* Eye reveal overlay */
      .eye-reveal {
        position: absolute;
        inset: 0;
        z-index: 12;
        pointer-events: none;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .eye-reveal .holder {
        position: relative;
        width: min(360px, 70vw);
        height: min(220px, 40vh);
      }
      .eye-reveal .lid {
        position: absolute; left: 0; right: 0;
        background: linear-gradient(to bottom, rgba(16,20,32,0.95), rgba(4,6,7,0.98));
        box-shadow: 0 4px 18px rgba(0,0,0,0.6);
        transition: transform 420ms cubic-bezier(.2,.8,.2,1);
      }
      .eye-reveal .lid.top { top: 0; height: 55%; transform: translateY(0%); }
      .eye-reveal .lid.bottom { bottom: 0; height: 55%; transform: translateY(0%); }
      .eye-reveal.open .lid.top { transform: translateY(-110%); }
      .eye-reveal.open .lid.bottom { transform: translateY(110%); }
      .eye-reveal .big-eye {
        position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
        width: 280px; height: 170px;
        border: 2px solid rgba(255,255,255,0.9);
        border-radius: 50% / 60%;
        background:
          radial-gradient(circle at 50% 50%, rgba(255,255,255,0.30), rgba(255,255,255,0.06) 60%, rgba(0,0,0,0) 62%),
          radial-gradient(circle at 50% 50%, rgba(0,255,255,0.22), rgba(0,0,0,0) 70%);
        box-shadow: 0 0 16px rgba(0,255,255,0.35), inset 0 0 10px rgba(255,255,255,0.22);
        filter: drop-shadow(0 0 12px rgba(123,255,179,.4));
      }
      .eye-reveal .big-eye .pupil {
        position: absolute; left: 50%; top: 50%;
        width: 20px; height: 20px; border-radius: 50%;
        background: radial-gradient(circle at 40% 40%, #000 0, #001a1a 60%, #00ffff 100%);
        transform: translate(-50%, -50%);
        box-shadow: 0 0 6px rgba(0,255,255,0.7);
        transition: transform 40ms linear;
      }

      /* Neon eye overlay (outline + concentric rings) */
      .neon-eye {
        position: absolute;
        inset: 0;
        z-index: 12;
        pointer-events: none;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .neon-eye svg {
        width: min(460px, 76vw);
        height: auto;
        overflow: visible;
        filter: saturate(1.3);
        mix-blend-mode: screen;
      }
      .neon-eye .outline,
      .neon-eye .ring {
        fill: none;
        stroke: var(--accent);
        stroke-linecap: round;
        stroke-linejoin: round;
      }
      .neon-eye .outline {
        stroke-width: 12;
        /* dash values are set from JS to match path length */
        stroke-dasharray: 1;
        stroke-dashoffset: 1;
        filter:
          drop-shadow(0 0 6px rgba(123,255,179,0.9))
          drop-shadow(0 0 22px rgba(123,255,179,0.45));
      }
      .neon-eye .ring {
        stroke-width: 8;
        opacity: 0.95;
        filter:
          drop-shadow(0 0 6px rgba(123,255,179,0.85))
          drop-shadow(0 0 20px rgba(123,255,179,0.45));
      }
      .neon-eye .rings {
        transform-origin: 50% 50%;
        transform: scaleY(0.05);
        opacity: 0;
      }
      .neon-eye.open .outline { animation: neonEyeOutlineDraw 740ms ease-out forwards; }
      .neon-eye.open .rings { animation: neonEyeRingsOpen 900ms cubic-bezier(.2,.8,.2,1) 100ms forwards; }
      .neon-eye.open .ring.outer { animation: neonGlowPulse 2200ms ease-in-out 620ms infinite; }

      @keyframes neonEyeOutlineDraw { to { stroke-dashoffset: 0; } }
      @keyframes neonEyeRingsOpen {
        0% { transform: scaleY(0.05); opacity: 0; }
        60% { transform: scaleY(1.06); opacity: 1; }
        100% { transform: scaleY(1); opacity: 1; }
      }
      @keyframes neonGlowPulse {
        0%, 100% {
          filter:
            drop-shadow(0 0 6px rgba(123,255,179,0.85))
            drop-shadow(0 0 20px rgba(123,255,179,0.42));
        }
        50% {
          filter:
            drop-shadow(0 0 12px rgba(123,255,179,1))
            drop-shadow(0 0 36px rgba(123,255,179,0.65));
        }
      }

      /* Door ending overlay */
      .door-overlay {
        position: fixed;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
        z-index: 9999;
        background: rgba(0,0,0,0);
        transition: background 2400ms ease;
      }
      .door-overlay.fill { background: #000; }
      .door-scene {
        position: relative;
        width: min(36vmin, 280px);
        height: min(54vmin, 420px);
        perspective: 1600px;
        transform: translateZ(0);
      }
      .door-frame {
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0);
        border: 2px solid rgba(0,255,255,0.35);
        box-shadow: 0 0 24px rgba(0,255,255,0.25), inset 0 0 16px rgba(255,255,255,0.08);
        overflow: hidden;
        transform: scale(1);
        transition: transform 6800ms ease-in-out, background 2000ms ease;
      }
      .door-scene.zoom .door-frame { transform: scale(34); }
      .door-dark {
        position: absolute;
        inset: 4px;
        background: #000;
        box-shadow: inset 0 0 40px rgba(0,0,0,0.95);
        z-index: 0;
        opacity: 0;
        transition: opacity 2000ms ease;
      }
      .door-scene.dim .door-dark { opacity: 1; }
      /* Single wooden-like door panel that swings toward the viewer */
      .door-panel {
        position: absolute;
        inset: 4px;
        background: #000;
        box-shadow: inset 0 0 24px rgba(0,0,0,0.9);
        border-left: 2px solid rgba(0,255,255,0.2);
        backface-visibility: hidden;
        transform-origin: left center;
        transform: rotateY(0deg);
        transition: opacity 320ms linear, transform 3800ms cubic-bezier(.2,.8,.2,1);
        z-index: 2;
        opacity: 0;
      }
      .door-scene.open .door-panel { opacity: 1; transform: rotateY(-100deg); }

      .door-leaf {
        position: absolute;
        top: 0;
        width: 50%;
        height: 100%;
        background: linear-gradient(180deg, #222, #0a0a0a);
        box-shadow: inset 0 0 24px rgba(0,0,0,0.9);
        backface-visibility: hidden;
        transform: rotateY(0deg);
        transition: transform 900ms ease;
        z-index: 1;
      }
      .door-leaf.left {
        left: 0;
        border-right: 1px solid rgba(0,255,255,0.25);
        transform-origin: left center;
      }
      .door-leaf.right {
        right: 0;
        border-left: 1px solid rgba(0,255,255,0.25);
        transform-origin: right center;
      }
      .door-scene.open .door-leaf.left { transform: rotateY(-75deg); }
      .door-scene.open .door-leaf.right { transform: rotateY(75deg); }

      /* Reboot control + screen */
      .reboot-prompt {
        position: fixed;
        inset: 0;
        z-index: 12050;
        display: flex;
        align-items: center;
        justify-content: center;
        background: radial-gradient(circle at 50% 50%, rgba(0,0,0,0.7), rgba(0,0,0,0.95) 60%);
        opacity: 0;
        transition: opacity 240ms ease;
      }
      .reboot-prompt.visible { opacity: 1; }
      .reboot-prompt.fade { opacity: 0; }
      .reboot-chip {
        width: 140px;
        height: 140px;
        border: 2px solid #bfc9d6;
        border-radius: 6px;
        background: linear-gradient(180deg, #eef6f5, #d2e3e2);
        box-shadow: 4px 4px 0 #6f8a88;
        color: #123434;
        font-family: "Tahoma", "MS Sans Serif", Arial, sans-serif;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        cursor: pointer;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 6px;
        transition: transform 120ms ease, box-shadow 120ms ease;
      }
      .reboot-chip .icon { font-size: 20px; }
      .reboot-chip:active {
        transform: translate(2px, 2px);
        box-shadow: 2px 2px 0 #6f7a86;
      }

      .reboot-screen {
        position: fixed;
        inset: 0;
        z-index: 12040;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #061012;
        opacity: 0;
        transition: opacity 320ms ease;
      }
      .reboot-screen.visible { opacity: 1; }
      .reboot-screen.fade { opacity: 0; }
      .self-boot {
        width: min(760px, 92vw);
        background: #091014;
        border: 1px solid rgba(123,255,179,0.45);
        border-radius: 12px;
        padding: 16px 18px;
        box-shadow: 0 18px 60px rgba(0,0,0,0.6), inset 0 0 20px rgba(123,255,179,0.08);
        font-family: var(--font);
        color: #dfffee;
      }
      .self-title {
        display: flex;
        flex-direction: column;
        gap: 4px;
        font-weight: 800;
        letter-spacing: 0.06em;
        color: #7bffb3;
        margin-bottom: 10px;
      }
      .self-name { font-size: 18px; color: #caffdf; }
      .self-desc { font-size: 14px; color: #9ddfc4; }
      .self-log {
        background: rgba(0,0,0,0.4);
        border: 1px solid rgba(123,255,179,0.25);
        border-radius: 6px;
        padding: 10px 12px;
        height: 240px;
        overflow: hidden auto;
        color: #dfffee;
        line-height: 1.3;
      }
      .self-log div { margin-bottom: 2px; white-space: pre; }

      /* Graphical shell */
      body.gui-mode {
        background: linear-gradient(135deg, #66a6a4, #6db5b2);
        color: #0a0a0a;
        font-family: "Tahoma", "MS Sans Serif", Arial, sans-serif;
        display: block;
        overflow: hidden;
      }
      body.gui-mode::before { display: none; }
body.gui-mode .start-screen,
body.gui-mode .fx { display: none !important; }
body.gui-mode .overlay { display: none !important; }

/* GUI-mode terminal/cmd text colors */
body.gui-mode .line,
body.gui-mode .output { color: #e8e8e8; }
body.gui-mode .line.system { color: #b5d1ff; }
body.gui-mode .line.error { color: #ff6b6b; }
body.gui-mode .line.echo { color: #a6f0a6; }
body.gui-mode .prompt { color: #b5d1ff; }
body.gui-mode .input-field { color: #f0f0f0; border-bottom-color: #b5d1ff; }

      .gui-shell {
        position: fixed;
        inset: 0;
        z-index: 12030;
        padding: 32px 36px 26px 36px;
        display: flex;
        flex-direction: column;
        gap: 18px;
        overflow: hidden;
      }
      .gui-bg {
        position: absolute;
        inset: 0;
        pointer-events: none;
        overflow: hidden;
      }
      .bg-blob {
        position: absolute;
        filter: blur(60px);
        opacity: 0.75;
        transform: translateZ(0);
      }
      .bg-blob.one {
        width: 340px; height: 340px;
        background: radial-gradient(circle at 30% 30%, rgba(123,255,179,0.26), rgba(123,255,179,0) 60%);
        top: 4%; left: 6%;
        animation: drift 12s ease-in-out infinite alternate;
      }
      .bg-blob.two {
        width: 420px; height: 420px;
        background: radial-gradient(circle at 70% 70%, rgba(102, 140, 255, 0.22), rgba(0,0,0,0));
        bottom: -6%; right: 0%;
        animation: drift 14s ease-in-out infinite alternate-reverse;
      }
      @keyframes drift { to { transform: translate3d(8px, -10px, 0) scale(1.04); } }
      .bg-grid {
        position: absolute;
        inset: 0;
        background:
          linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
          linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
        background-size: 48px 48px, 48px 48px;
        opacity: 0.15;
        mix-blend-mode: screen;
      }
      .gui-top {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
      }
      .brand {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        font-weight: 800;
        color: #f5fff2;
        font-size: 14px;
      }
      .brand .dot {
        width: 12px; height: 12px;
        border-radius: 50%;
        background: radial-gradient(circle at 40% 40%, #7bffb3, #0b3022);
        box-shadow: 0 0 12px rgba(123,255,179,0.75);
      }
      .brand .word { font-size: 16px; letter-spacing: 0.12em; }
      .brand .tag {
        padding: 6px 10px;
        border-radius: 12px;
        background: rgba(123,255,179,0.15);
        color: #dfffee;
        border: 1px solid rgba(123,255,179,0.35);
        text-transform: none;
        letter-spacing: 0.03em;
        font-weight: 700;
      }
      .meta {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        flex-wrap: wrap;
      }
      .pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 10px;
        border-radius: 999px;
        border: 1px solid rgba(255,255,255,0.12);
        background: rgba(12,16,18,0.65);
        color: #e8f9ff;
        font-family: var(--font);
        font-size: 13px;
        letter-spacing: 0.02em;
        text-transform: uppercase;
      }
      .pill.green { border-color: rgba(123,255,179,0.6); background: rgba(123,255,179,0.12); color: #f5fff2; }
      .pill.outline { border-color: rgba(140,230,250,0.5); background: rgba(140,230,250,0.08); color: #eaf7ff; }
      .pill.soft { border-color: rgba(123,255,179,0.28); background: rgba(123,255,179,0.1); font-weight: 700; }
      .pill.ghost { border-color: rgba(255,255,255,0.12); background: rgba(12,16,18,0.35); color: #b6c5d8; }
      .gui-clock { font-weight: 800; letter-spacing: 0.08em; }

      .gui-grid {
        position: relative;
        z-index: 2;
        display: grid;
        grid-template-columns: 1.2fr 0.9fr;
        grid-auto-rows: minmax(180px, auto);
        gap: 16px;
      }
      .gui-panel {
        position: relative;
        background: linear-gradient(145deg, rgba(9,14,19,0.92), rgba(9,14,19,0.78));
        border: 1px solid rgba(255,255,255,0.06);
        border-radius: 16px;
        padding: 18px 18px 16px 18px;
        box-shadow:
          0 16px 46px rgba(0,0,0,0.5),
          inset 0 0 26px rgba(123,255,179,0.04);
        overflow: hidden;
      }
      .gui-panel::after {
        content: '';
        position: absolute;
        inset: 0;
        pointer-events: none;
        background: linear-gradient(180deg, rgba(123,255,179,0.04), rgba(0,0,0,0));
        opacity: 0.6;
      }
      .gui-panel h1 { margin: 8px 0 12px 0; font-size: 22px; line-height: 1.3; }
      .gui-panel .panel-title {
        font-weight: 800;
        letter-spacing: 0.04em;
        margin-bottom: 12px;
        color: #f5fff2;
        text-transform: uppercase;
        font-size: 13px;
      }
      .gui-panel .eyebrow {
        text-transform: uppercase;
        color: #aee9cf;
        letter-spacing: 0.08em;
        font-weight: 700;
        font-size: 12px;
      }
      .gui-panel.hero { grid-column: 1 / span 2; min-height: 180px; }
      .hero-chips { display: flex; flex-wrap: wrap; gap: 10px; }

      .gui-panel.processes .process { margin-bottom: 12px; }
      .process-label { color: #d6e8ff; font-size: 13px; margin-bottom: 6px; }
      .process-bar {
        position: relative;
        height: 10px;
        background: rgba(255,255,255,0.06);
        border-radius: 10px;
        overflow: hidden;
      }
      .process-bar span {
        display: block;
        height: 100%;
        background: linear-gradient(90deg, rgba(123,255,179,0.55), rgba(140,230,250,0.95));
        box-shadow: 0 0 10px rgba(123,255,179,0.45);
      }
      .process-bar em {
        position: absolute;
        right: 10px; top: -18px;
        font-style: normal;
        font-size: 12px;
        color: #b6e5ff;
      }

      .log-list {
        list-style: none;
        padding: 0;
        margin: 0;
        display: grid;
        gap: 6px;
      }
      .log-list li {
        background: rgba(255,255,255,0.03);
        border: 1px solid rgba(255,255,255,0.05);
        border-radius: 10px;
        padding: 8px 10px;
        color: #d8e9ff;
        font-family: var(--font);
      }

      .shortcuts .shortcut-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 12px;
        margin-top: 4px;
      }
      .shortcut-card {
        background: rgba(255,255,255,0.03);
        border: 1px solid rgba(255,255,255,0.07);
        border-radius: 12px;
        padding: 12px;
        box-shadow: inset 0 0 16px rgba(123,255,179,0.06);
        transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
      }
      .shortcut-card:hover { transform: translateY(-2px); border-color: rgba(123,255,179,0.35); background: rgba(12,16,18,0.8); }
      .shortcut-title { font-weight: 800; letter-spacing: 0.02em; margin-bottom: 4px; color: #f2fff5; }
      .shortcut-desc { color: #c5d7ee; opacity: 0.9; font-size: 14px; line-height: 1.35; }

      .gui-dock {
        position: relative;
        z-index: 2;
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        padding: 10px 14px;
        border-radius: 12px;
        background: rgba(6,10,14,0.8);
        border: 1px solid rgba(255,255,255,0.08);
        box-shadow: 0 10px 42px rgba(0,0,0,0.4), inset 0 0 20px rgba(123,255,179,0.05);
      }

      @media (max-width: 900px) {
        .gui-shell { padding: 20px; }
        .gui-grid { grid-template-columns: 1fr; }
        .gui-panel.hero, .gui-panel.shortcuts { grid-column: 1 / span 1; }
        .brand .word { font-size: 15px; }
      }

      /* --- Win98 style desktop --- */
      .gui-shell.win98 {
        position: fixed;
        inset: 0;
        padding: 12px 12px 36px 12px;
        display: flex;
        flex-direction: column;
        gap: 10px;
        font-family: var(--win-font);
        color: #0a0a0a;
      }
      .gui-shell.win98 .terminal {
        box-shadow: inset 0 0 0 1px #0f0f0f, 0 0 0 1px #0f0f0f;
        border: 1px solid #0b0b0b;
        background: #000;
        border-radius: 2px;
        padding: 0;
        backdrop-filter: none;
        transform: none;
        width: 100%;
        height: 100%;
        gap: 0;
        flex: 1;
      }
      .gui-shell.win98 .terminal::after { display: none; }
      .gui-shell.win98 .output {
        background: #000;
        border-radius: 0;
        padding: 10px 12px;
        color: #cfd2d2;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        text-shadow: none;
      }
      .gui-shell.win98 form#inputForm { padding: 0; margin: 0; }
      .gui-shell.win98 .prompt-container {
        background: #000;
        padding: 8px 12px;
        border-radius: 0;
        border-top: 1px solid #111;
      }
      .gui-shell.win98 .prompt { color: #cfd2d2; text-shadow: none; }
      .gui-shell.win98 .input-field {
        color: #cfd2d2;
        border-bottom: none;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        padding: 2px 0;
        background: transparent;
      }
      .gui-shell.win98 .input-field:focus { border-bottom: none; outline: none; }
      .cmd-shell .line { color: #cfd2d2; text-shadow: none; }
      .cmd-shell .line.system { color: #9cc1ff; }
      .cmd-shell .line.error { color: #ff6b6b; }
      .cmd-shell .line.echo { color: #a6f0a6; }
      .cmd-shell .prompt { color: #cfd2d2; }
      .cmd-shell.cmd-green .line,
      .cmd-shell.cmd-green .prompt,
      .cmd-shell.cmd-green .input-field { color: #7bff7b; }
      .cmd-shell.cmd-green .line.system { color: #9dff9d; }
      .cmd-shell.cmd-green .line.error { color: #ff8484; }
      .cmd-shell.cmd-green .line.echo { color: #8dfb8d; }
      .desktop {
        position: relative;
        flex: 1;
        --desktop-text: #0a0a0a;
        --desktop-shadow: #dfeeee;
        --desktop-title: #123434;
        --desktop-title-shadow: #d2f0ec;
        --desktop-border: #5a9d9b;
        --desktop-inner: #a7dddb;
        --desktop-tint: rgba(0,0,0,0.18);
        --icon-scale: 1;
        background: linear-gradient(135deg, #78b9b8 0%, #86c7c5 60%, #9ad9d6 100%);
        border: 2px solid var(--desktop-border);
        box-shadow: inset 0 0 0 2px var(--desktop-inner), inset 0 0 18px var(--desktop-tint);
        overflow: hidden;
        border-radius: 4px;
        padding: 12px;
      }
      .desktop[data-wallpaper="grid"] {
        background:
          repeating-linear-gradient(90deg, rgba(255,255,255,0.04) 0 14px, rgba(0,0,0,0.08) 14px 15px),
          repeating-linear-gradient(0deg, rgba(255,255,255,0.04) 0 14px, rgba(0,0,0,0.08) 14px 15px),
          radial-gradient(circle at 20% 20%, #d6ddff 0%, #b8c8f0 42%, #9fb5e6 100%);
        --desktop-border: #5f6f9b;
        --desktop-inner: #dbe2f0;
        --desktop-text: #0c1632;
        --desktop-shadow: #e7eefc;
        --desktop-title: #0c1632;
        --desktop-title-shadow: #dbe2f0;
      }
      .desktop[data-wallpaper="sunset"] {
        background: linear-gradient(140deg, #fbc2eb 0%, #a18cd1 45%, #5a7abf 100%);
        --desktop-border: #9c7fb8;
        --desktop-inner: #efdaf5;
        --desktop-text: #1c0f2e;
        --desktop-shadow: #f9e9ff;
        --desktop-title: #2c1b44;
        --desktop-title-shadow: #f4e5ff;
      }
      .desktop[data-wallpaper="midnight"] {
        background: radial-gradient(circle at 30% 30%, #1d3557 0%, #0b1a30 55%, #060b14 100%);
        --desktop-border: #1f3a5f;
        --desktop-inner: #2b4569;
        --desktop-text: #e4eefb;
        --desktop-shadow: #0c1c2a;
        --desktop-title: #d9e6ff;
        --desktop-title-shadow: #0c1c2a;
        --desktop-tint: rgba(0,0,0,0.28);
      }
      .desktop-title {
        position: absolute;
        top: 8px; left: 8px;
        color: var(--desktop-title);
        font-weight: 700;
        text-shadow: 1px 1px var(--desktop-title-shadow);
        pointer-events: none;
      }
      .desktop-icons {
        position: absolute;
        inset: 48px auto auto 12px;
        width: calc(200px * var(--icon-scale));
        height: calc(100% - 64px);
        z-index: 2;
      }
      .desktop-icon {
        position: absolute;
        width: calc(82px * var(--icon-scale));
        height: calc(90px * var(--icon-scale));
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap: calc(6px * var(--icon-scale));
        cursor: default;
        color: var(--desktop-text);
        text-shadow: 1px 1px 0 var(--desktop-shadow);
        font-size: calc(13px * var(--icon-scale));
        user-select: none;
        transition: transform 120ms ease, box-shadow 120ms ease;
      }
      .desktop-icon .icon-img {
        width: calc(48px * var(--icon-scale));
        height: calc(42px * var(--icon-scale));
        border: 1px solid rgba(0,0,0,0.24);
        background: linear-gradient(180deg, #fff, #dcdcdc);
        box-shadow: inset 0 0 0 1px rgba(255,255,255,0.7), 0 2px 6px rgba(0,0,0,0.12);
        border-radius: 8px;
      }
      .desktop-icon .icon-img.computer { background: linear-gradient(180deg, #e2e8ff, #c4d0ff); }
      .desktop-icon .icon-img.bin { background: linear-gradient(180deg, #f5f5f5, #d8d8d8); }
      .desktop-icon .icon-img.log { background: linear-gradient(180deg, #e6ffe0, #cceccc); }
      .desktop-icon .icon-img.net { background: linear-gradient(180deg, #e0f7ff, #b7e8ff); }
      .desktop-icon .icon-img.note { background: linear-gradient(180deg, #fff7d1, #f1e3a2); }
      .desktop-icon .icon-img.term { background: linear-gradient(180deg, #e7f5ff, #c5deff); }
      .desktop-icon .icon-img.files { background: linear-gradient(180deg, #e3f2ff, #c9def7); }
      .desktop-icon .icon-img.paint { background: linear-gradient(180deg, #ffe8f0, #f6c7da); }
      .desktop-icon .icon-img.notepad { background: linear-gradient(180deg, #f7fff0, #dff0c8); }
      .desktop-icon .icon-img.arcade { background: linear-gradient(180deg, #e6dbff, #cbb8ff); }
      .desktop-icon .icon-img.taskmgr { background: linear-gradient(180deg, #e8f3f2, #c7e1df); }
      .desktop-icon .icon-img.settings { background: linear-gradient(180deg, #f5f7ff, #d5ddff); }
      .desktop-icon .icon-label { text-align: center; line-height: 1.2; }
      .desktop-icon.dragging { opacity: 0.9; transform: scale(1.04); }

      .win98-window {
        position: absolute;
        display: flex;
        flex-direction: column;
        background: #e8f2f1;
        border: 2px solid #6c8e8c;
        box-shadow: 4px 4px 0 #4a6968;
        width: 360px;
        min-width: 260px;
        min-height: 160px;
      }
      .win98-window.sys { top: 30px; left: 160px; }
      .win98-window.logwin { top: 220px; left: 180px; width: 380px; }
      .win98-window.note { top: 120px; right: 60px; width: 320px; }
      .win98-window.term {
        top: 8px;
        left: 8px;
        width: calc(100% - 24px);
        height: calc(100% - 72px);
        min-width: 420px;
        min-height: 320px;
      }
      .win98-window.term .window-body {
        padding: 0;
        background: #000;
        overflow: hidden;
        display: flex;
      }
      .win98-window.files {
        top: 50px;
        left: 320px;
        width: 660px;
        height: 420px;
        min-width: 560px;
        min-height: 320px;
      }
      .win98-window.files .window-body {
        padding: 0;
        background: #f6fbfb;
      }
      .win98-window.paint {
        top: 140px;
        left: 520px;
        width: 640px;
        height: 460px;
        min-width: 520px;
        min-height: 360px;
      }
      .win98-window.paint .window-body {
        padding: 0;
        background: #f6fbfb;
        display: grid;
        grid-template-rows: auto 1fr;
      }
      .paint-body { height: 100%; }
      .paint-toolbar {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        gap: 8px 12px;
        padding: 8px 10px;
        background: #e8f3f2;
        border-bottom: 1px solid #9cb9b7;
        align-items: center;
      }
      .paint-group {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
      }
      .paint-label {
        font-weight: 700;
        color: #234444;
        white-space: nowrap;
      }
      .paint-tools { display: flex; gap: 6px; }
      .paint-tool {
        padding: 4px 8px;
        border: 1px solid #739b99;
        background: #f6fbfb;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .paint-tool.active {
        background: #c7e1df;
        font-weight: 700;
      }
      .paint-colors { display: flex; gap: 6px; flex-wrap: wrap; }
      .paint-color {
        width: 24px;
        height: 24px;
        border: 1px solid #355b5a;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        background: var(--paint-color, #000);
        cursor: pointer;
      }
      .paint-color.active { outline: 2px solid #204747; box-shadow: 0 0 0 2px #fff inset, 0 0 0 1px #204747; }
      .paint-color:focus-visible { outline: 2px solid #204747; }
      .paint-size { display: inline-flex; align-items: center; gap: 8px; }
      .paint-size input[type="range"] { width: 120px; }
      .paint-size-value { min-width: 44px; text-align: right; font-variant-numeric: tabular-nums; color: #123434; }
      .paint-actions {
        display: flex;
        align-items: center;
        gap: 10px;
        justify-content: flex-end;
        flex-wrap: wrap;
      }
      .paint-hint {
        font-size: 12px;
        color: #355b5a;
        flex: 1;
        min-width: 180px;
      }
      .paint-btns { display: inline-flex; gap: 6px; }
      .paint-btn {
        padding: 5px 10px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .paint-btn.primary { background: linear-gradient(180deg, #edf7f6, #c7e1df); font-weight: 700; }
      .paint-btn.ghost { background: #eef6f5; }
      .paint-surface {
        position: relative;
        margin: 10px;
        background: repeating-conic-gradient(#f6fbfb 0 25%, #eef4f3 0 50%) 50%/24px 24px;
        border: 1px solid #9cb9b7;
        box-shadow: inset 0 0 0 1px #fff, inset 0 0 0 2px #dcebea;
        min-height: 260px;
        overflow: hidden;
      }
      .paint-canvas {
        width: 100%;
        height: 100%;
        display: block;
        background: #fff;
        cursor: crosshair;
      }
      .paint-status {
        position: absolute;
        bottom: 8px;
        right: 8px;
        background: rgba(255,255,255,0.9);
        border: 1px solid #9cb9b7;
        padding: 4px 8px;
        font-size: 12px;
        color: #0e1a1a;
        box-shadow: 0 2px 6px rgba(0,0,0,0.15);
        border-radius: 3px;
      }
      .win98-window.notepad {
        top: 120px;
        left: 220px;
        width: 540px;
        height: 420px;
        min-width: 440px;
        min-height: 360px;
      }
      .win98-window.notepad .window-body {
        padding: 0;
        background: #f6fbfb;
        display: grid;
        grid-template-rows: auto 1fr auto;
        gap: 0;
      }
      .win98-window.arcade {
        top: 90px;
        left: 220px;
        width: 760px;
        height: 520px;
        min-width: 720px;
        min-height: 500px;
      }
      .win98-window.arcade .window-body {
        padding: 0;
        background: #f6fbfb;
        display: flex;
        flex-direction: column;
        gap: 0;
      }
      .win98-window.taskmgr {
        top: 70px;
        left: 120px;
        width: 620px;
        height: 440px;
        min-width: 520px;
        min-height: 360px;
      }
      .win98-window.taskmgr .window-body {
        padding: 0;
        background: #f6fbfb;
        display: grid;
        grid-template-rows: auto 1fr;
      }
      .taskmgr-body { height: 100%; }
      .task-tabs {
        display: flex;
        gap: 6px;
        padding: 8px;
        background: #e8f3f2;
        border-bottom: 1px solid #9cb9b7;
      }
      .task-tab {
        padding: 6px 10px;
        background: #eef6f5;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 13px;
        cursor: pointer;
      }
      .task-tab.active {
        background: #c7e1df;
        font-weight: 800;
      }
      .task-panel {
        display: none;
        padding: 10px;
        background: #f6fbfb;
        height: 100%;
        min-height: 0;
        gap: 10px;
        flex-direction: column;
      }
      .task-panel.active { display: flex; }
      .task-panel-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        color: #123434;
      }
      .task-panel-title { font-weight: 800; font-size: 15px; }
      .task-panel-meta { color: #355b5a; font-size: 12px; }
      .task-hint {
        font-size: 12px;
        color: #355b5a;
        background: #eef6f5;
        border: 1px solid #9cb9b7;
        padding: 6px 8px;
        border-radius: 3px;
      }
      .task-chart {
        border: 1px solid #9cb9b7;
        background:
          linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
          linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px),
          linear-gradient(180deg, #0c1829, #07101d);
        background-size: 26px 26px, 26px 26px, auto;
        box-shadow: inset 0 0 0 1px #0e2235;
        padding: 8px;
        height: 200px;
      }
      .task-chart-bars {
        display: flex;
        align-items: flex-end;
        gap: 1px;
        height: 100%;
      }
      .task-chart.ram { background: linear-gradient(180deg, #0d1321, #0a0f1b); }
      .task-chart.disk { background: linear-gradient(180deg, #111, #0b0b0b); }
      .task-chart.disk .task-bar { background: linear-gradient(180deg, #d7d7d7, #7a7a7a); box-shadow: inset 0 0 0 1px rgba(0,0,0,0.08); }
      .task-chart.disk .task-bar:nth-child(3n) { background: linear-gradient(180deg, #c2c2c2, #686868); }
      .task-chart-bars.panic .task-bar {
        background: #ff6b6b;
        box-shadow: 0 0 10px rgba(255, 107, 107, 0.8);
      }
      .task-bar {
        flex: 1;
        min-width: 2px;
        background: linear-gradient(180deg, #67e3ff, #0f3f54);
        box-shadow: 0 0 6px rgba(103,227,255,0.45);
        transition: height 120ms ease, background 240ms ease;
      }
      .task-bar:nth-child(3n) { background: linear-gradient(180deg, #5ac9ff, #0d3245); }
      .task-ram, .task-disk {
        border: 1px solid #9cb9b7;
        background: #eef6f5;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #dcebea;
        padding: 14px;
        min-height: 140px;
        display: flex;
        align-items: center;
        justify-content: center;
      }
      .task-ram-value {
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        font-size: 26px;
        color: #0e1a1a;
        text-shadow: 0 1px 0 #dbe2f0;
      }
      .task-disk-status {
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        font-size: 20px;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #7a1b1b;
        background: #ffecec;
        border: 1px solid #cda0a0;
        padding: 10px 14px;
        box-shadow: inset 0 0 0 1px #fff;
      }
      .task-proc-list {
        border: 1px solid #9cb9b7;
        background: #eef6f5;
        box-shadow: inset 1px 1px 0 #fff;
      }
      .task-proc-row {
        display: grid;
        grid-template-columns: 1.3fr 0.8fr 0.6fr;
        align-items: center;
        gap: 8px;
        padding: 6px 8px;
        border-bottom: 1px solid #dcebea;
        color: #0e1a1a;
      }
      .task-proc-row:last-child { border-bottom: none; }
      .task-proc-row.head {
        font-weight: 800;
        background: #dcebea;
        color: #123434;
      }
      .task-proc-row .state { color: #234444; font-weight: 700; }
      .task-proc-row.disabled { opacity: 0.65; }
      .task-kill {
        padding: 4px 10px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .task-kill:disabled {
        cursor: default;
        opacity: 0.65;
      }

      .arcade-tabs {
        display: flex;
        gap: 6px;
        padding: 8px;
        background: #e8f3f2;
        border-bottom: 1px solid #9cb9b7;
      }
      .arcade-tab {
        padding: 6px 10px;
        background: #eef6f5;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 13px;
        cursor: pointer;
      }
      .arcade-tab.active {
        background: #c7e1df;
        font-weight: 800;
      }
      .arcade-panel {
        display: none;
        flex-direction: column;
        gap: 10px;
        padding: 10px;
        height: 100%;
        flex: 1;
      }
      .arcade-panel.active { display: flex; }
      .arcade-top {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: flex-start;
      }
      .arcade-desc {
        flex: 1;
        min-width: 240px;
        color: #123434;
        font-weight: 700;
      }
      .arcade-tip {
        flex: 1;
        min-width: 220px;
        color: #355b5a;
        font-size: 12px;
      }
      .arcade-actions {
        display: inline-flex;
        gap: 6px;
        flex-wrap: wrap;
        margin-left: auto;
      }
      .arcade-btn {
        padding: 5px 10px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .arcade-btn.primary { background: linear-gradient(180deg, #edf7f6, #c7e1df); font-weight: 700; }
      .arcade-btn.ghost { background: #eef6f5; }
      .arcade-stats {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        font-weight: 700;
        color: #123434;
      }
      .arcade-status {
        font-size: 12px;
        color: #234444;
        background: #eef6f5;
        border: 1px solid #9cb9b7;
        padding: 6px 8px;
        border-radius: 3px;
      }
      .nebula-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 6px;
        background: #eef6f5;
        padding: 10px;
        border: 1px solid #9cb9b7;
        box-shadow: inset 1px 1px 0 #fff;
        flex: 1;
        min-height: 200px;
      }
      .nebula-cell {
        padding: 8px;
        border: 1px solid #739b99;
        background: #f6fbfb;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        cursor: pointer;
      }
      .nebula-cell.revealed { background: #dcebea; font-weight: 700; }
      .nebula-cell.marked { background: #ffd9d9; color: #7a1b1b; }
      .nebula-cell.bomb { background: #ffb7b7; color: #7a1b1b; }
      .nebula-cell.spill { background: #d9f7ff; color: #0f2f3f; }
      .pulse-track {
        position: relative;
        height: 120px;
        border: 1px solid #9cb9b7;
        background: linear-gradient(180deg, #0c1829, #07101d);
        box-shadow: inset 0 0 0 1px #0e2235;
        overflow: hidden;
      }
      .pulse-zone {
        position: absolute;
        top: 0; bottom: 0;
        background: rgba(111, 255, 176, 0.18);
        border-left: 1px dashed #6fffb0;
        border-right: 1px dashed #6fffb0;
      }
      .pulse-bar {
        position: absolute;
        top: 0; bottom: 0;
        width: 8px;
        background: #ff6b6b;
        box-shadow: 0 0 12px rgba(255, 107, 107, 0.8);
      }
      .compost-canvas-wrap {
        border: 1px solid #9cb9b7;
        padding: 6px;
        background: #0b1a30;
        box-shadow: inset 0 0 0 1px #122b46;
      }
      .compost-canvas {
        width: 100%;
        height: 260px;
        border: 1px solid #1e3048;
        background: #0b1a30;
        display: block;
      }
      .pad-toolbar {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px 12px;
        padding: 8px 10px;
        background: #e8f3f2;
        border-bottom: 1px solid #9cb9b7;
        align-items: center;
      }
      .pad-group {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
      }
      .pad-group.gap { justify-content: flex-end; }
      .pad-btn {
        padding: 4px 10px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .pad-btn.primary { background: linear-gradient(180deg, #edf7f6, #c7e1df); font-weight: 700; }
      .pad-label {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: #123434;
        font-size: 12px;
      }
      .pad-name {
        width: 140px;
        padding: 4px 6px;
        border: 1px solid #9cb9b7;
        background: #fff;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        font-size: 12px;
      }
      .pad-wrap {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 12px;
        color: #123434;
        user-select: none;
      }
      .pad-hint {
        grid-column: 1 / span 2;
        font-size: 12px;
        color: #355b5a;
      }
      .pad-area-wrap {
        padding: 10px;
        background: #f6fbfb;
      }
      .pad-area {
        width: 100%;
        height: 100%;
        min-height: 240px;
        border: 1px solid #9cb9b7;
        background: #fff;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #dcebea;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        font-size: 14px;
        line-height: 1.4;
        padding: 10px;
        resize: none;
      }
      .pad-status {
        padding: 6px 10px;
        background: #e8f3f2;
        border-top: 1px solid #9cb9b7;
        font-size: 12px;
        color: #123434;
        font-variant-numeric: tabular-nums;
      }
      .win98-window.settings {
        top: 100px;
        left: 420px;
        width: 620px;
        height: 420px;
        min-width: 560px;
        min-height: 420px;
      }
      .win98-window.settings .window-body {
        padding: 10px;
        background: #f6fbfb;
        display: grid;
        grid-template-rows: auto 1fr auto;
        gap: 10px;
      }
      .settings-tabs {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
        gap: 6px;
      }
      .settings-tab {
        padding: 6px 10px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 13px;
        cursor: pointer;
      }
      .settings-tab.active {
        background: #c7e1df;
        font-weight: 800;
      }
      .settings-pane {
        display: none;
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
        gap: 10px;
      }
      .settings-pane.active { display: grid; }
      .settings-group {
        background: #f0f8f7;
        border: 1px solid #9cb9b7;
        box-shadow: inset 1px 1px 0 #fff;
        padding: 8px 10px;
        display: grid;
        gap: 8px;
      }
      .settings-group-title {
        font-weight: 800;
        color: #234444;
      }
      .settings-option {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 13px;
        color: #0e1a1a;
      }
      .settings-option input { margin: 0; }
      .settings-range {
        display: flex;
        align-items: center;
        gap: 10px;
      }
      .settings-range input[type="range"] { flex: 1; }
      .settings-range-value {
        min-width: 48px;
        text-align: right;
        font-variant-numeric: tabular-nums;
        color: #123434;
      }
      .wallpaper-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
        gap: 8px;
      }
      .wallpaper-card {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 8px;
        border: 1px solid #9cb9b7;
        background: #eef6f5;
        color: #123434;
        cursor: pointer;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
      }
      .wallpaper-card input { margin: 0; }
      .wallpaper-card span { font-size: 13px; color: inherit; }
      .wallpaper-card:hover { background: #e0eeed; }
      .wallpaper-card input:checked + span { font-weight: 800; text-decoration: underline; }
      .wallpaper-card.wallpaper-aqua { background: linear-gradient(135deg, #78b9b8 0%, #86c7c5 100%); }
      .wallpaper-card.wallpaper-grid { background: radial-gradient(circle at 20% 20%, #d6ddff 0%, #9fb5e6 100%); }
      .wallpaper-card.wallpaper-sunset { background: linear-gradient(140deg, #fbc2eb 0%, #a18cd1 80%); }
      .wallpaper-card.wallpaper-midnight { background: radial-gradient(circle at 40% 30%, #1d3557 0%, #0b1a30 90%); color: #e4eefb; }
      .settings-footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding-top: 4px;
      }
      .settings-hint { font-size: 12px; color: #355b5a; }
      .settings-reset {
        padding: 6px 12px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .settings-reset:hover { background: #dcebea; }
      .win98-window .resize-handle {
        position: absolute;
        z-index: 5;
        background: transparent;
        touch-action: none;
      }
      .win98-window .resize-handle.n { top: -4px; left: 10px; right: 10px; height: 8px; cursor: ns-resize; }
      .win98-window .resize-handle.s { bottom: -4px; left: 10px; right: 10px; height: 8px; cursor: ns-resize; }
      .win98-window .resize-handle.e { right: -4px; top: 10px; bottom: 10px; width: 8px; cursor: ew-resize; }
      .win98-window .resize-handle.w { left: -4px; top: 10px; bottom: 10px; width: 8px; cursor: ew-resize; }
      .win98-window .resize-handle.nw { top: -6px; left: -6px; width: 12px; height: 12px; cursor: nwse-resize; }
      .win98-window .resize-handle.ne { top: -6px; right: -6px; width: 12px; height: 12px; cursor: nesw-resize; }
      .win98-window .resize-handle.sw { bottom: -6px; left: -6px; width: 12px; height: 12px; cursor: nesw-resize; }
      .win98-window .resize-handle.se { bottom: -6px; right: -6px; width: 12px; height: 12px; cursor: nwse-resize; }
      .fm-shell {
        display: grid;
        grid-template-rows: auto auto 1fr;
        height: 100%;
      }
      .fm-toolbar {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 6px 8px;
        background: #d9e8e7;
        border-bottom: 1px solid #9cb9b7;
      }
      .fm-btn {
        min-width: 30px;
        padding: 4px 8px;
        background: #e8f3f2;
        border: 1px solid #739b99;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 12px;
        cursor: pointer;
      }
      .fm-btn.primary {
        background: linear-gradient(180deg, #edf7f6, #c7e1df);
        font-weight: 700;
      }
      .fm-btn.ghost { background: #eef6f5; }
      .fm-btn:disabled {
        opacity: 0.55;
        cursor: default;
      }
      .fm-spacer { flex: 1; }
      .fm-pathbar {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 6px 8px;
        background: #eef6f5;
        border-bottom: 1px solid #9cb9b7;
      }
      .fm-path-label {
        font-weight: 700;
        color: #234444;
      }
      .fm-path {
        display: flex;
        flex-wrap: wrap;
        gap: 4px;
        align-items: center;
      }
      .fm-path .sep { color: #123434; padding: 0 2px; }
      .fm-crumb {
        border: 1px solid #9cb9b7;
        background: #f6fbfb;
        padding: 2px 6px;
        font-size: 12px;
        cursor: pointer;
      }
      .fm-crumb .sep { padding: 0 2px; color: #123434; }
      .fm-content {
        display: grid;
        grid-template-columns: 210px 1fr 240px;
        height: 100%;
        min-height: 0;
      }
      .fm-tree {
        background: #f0f6f5;
        border-right: 1px solid #9cb9b7;
        padding: 8px;
        overflow: auto;
        font-size: 13px;
        color: #0e1a1a;
      }
      .fm-tree ul { list-style: none; padding-left: 14px; margin: 4px 0; }
      .tree-item {
        display: block;
        width: 100%;
        text-align: left;
        border: none;
        background: none;
        padding: 3px 4px;
        cursor: pointer;
        color: inherit;
      }
      .tree-item.active {
        background: #c7e1df;
        border-radius: 3px;
        box-shadow: inset 0 0 0 1px #6c8e8c;
      }
      .tree-root { font-weight: 700; margin-bottom: 4px; }
      .fm-list {
        display: flex;
        flex-direction: column;
        border-left: 1px solid #9cb9b7;
        border-right: 1px solid #9cb9b7;
        background: #f6fbfb;
      }
      .fm-head {
        display: grid;
        grid-template-columns: 1fr 120px 90px 120px;
        padding: 4px 8px;
        background: #dcebea;
        border-bottom: 1px solid #9cb9b7;
        font-weight: 700;
        color: #234444;
      }
      .fm-rows {
        flex: 1;
        overflow: auto;
      }
      .fm-row {
        display: grid;
        grid-template-columns: 1fr 120px 90px 120px;
        padding: 6px 8px;
        border-bottom: 1px solid #dcebea;
        color: #0e1a1a;
      }
      .fm-row:hover { background: #e8f3f2; }
      .fm-row.active {
        background: #c7e1df;
        box-shadow: inset 0 0 0 1px #6c8e8c;
      }
      .fm-row .cell { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
      .fm-empty {
        padding: 8px;
        color: #355b5a;
        font-style: italic;
      }
      .fm-preview {
        padding: 10px;
        background: #f6fbfb;
        display: flex;
        flex-direction: column;
        gap: 8px;
      }
      .fm-preview-title { font-weight: 800; color: #123434; }
      .fm-preview-meta { font-size: 12px; color: #234444; line-height: 1.4; }
      .fm-preview-body {
        flex: 1;
        background: #fff;
        border: 1px solid #9cb9b7;
        padding: 8px;
        overflow: auto;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        line-height: 1.35;
        white-space: pre-wrap;
      }

      .titlebar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 4px 6px;
        background: linear-gradient(180deg, #3c6e7a, #29515c);
        color: #f1fbfb;
        font-weight: 700;
        font-size: 13px;
      }
      .title-buttons {
        display: inline-flex;
        gap: 4px;
      }
      .title-buttons span {
        display: inline-block;
        width: 18px;
        height: 16px;
        background: #dcebea;
        border: 1px solid #29515c;
        color: #0e1a1a;
        text-align: center;
        line-height: 14px;
        font-weight: 800;
      }
      .window-body {
        padding: 10px;
        background: #f6fbfb;
        border-top: 2px solid #fff;
        border-left: 2px solid #fff;
        border-right: 2px solid #808080;
        border-bottom: 2px solid #808080;
        flex: 1;
        overflow: auto;
      }
      .status-list { display: grid; gap: 6px; }
      .status-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        background: #f0f8f7;
        border: 1px solid #9cb9b7;
        padding: 4px 6px;
        font-size: 13px;
      }
      .status-row .value { font-weight: 700; color: #204747; }
      .log-body { background: #f6fbfb; height: 140px; overflow: auto; }
      .log-body .log-list { color: #0e1a1a; font-size: 13px; }
      .log-body .log-list li { background: none; border: none; padding: 2px 0; }
      .note-body { background: #f6fbfb; min-height: 120px; color: #0e1a1a; }
      .note-body div { margin-bottom: 4px; font-size: 13px; }

      .taskbar {
        height: 34px;
        background: #dcebea;
        border-top: 2px solid #fff;
        border-left: 2px solid #fff;
        border-right: 2px solid #9cb9b7;
        border-bottom: 2px solid #9cb9b7;
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 4px 6px;
        position: relative;
        z-index: 5;
      }
      .start-btn {
        height: 26px;
        min-width: 72px;
        border: 2px solid #739b99;
        background: linear-gradient(180deg, #edf7f6, #c7e1df);
        font-weight: 800;
        font-family: var(--win-font);
        padding: 0 10px;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        cursor: pointer;
      }
      .task-buttons { display: flex; gap: 6px; flex: 1; }
      .task-btn {
        min-width: 120px;
        height: 26px;
        background: #e8f3f2;
        border: 2px solid #9cb9b7;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
        font-family: var(--win-font);
        font-size: 13px;
        padding: 0 8px;
        display: flex;
        align-items: center;
      }
      .task-btn.active { background: #c7e1df; }
      .tray {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 0 8px;
        border: 1px solid #9cb9b7;
        background: #e8f3f2;
        box-shadow: inset 1px 1px 0 #fff, inset -1px -1px 0 #5f7f7e;
      }
      .tray-led {
        width: 10px; height: 10px;
        border: 1px solid #29515c;
        background: #3dd691;
      }
      .tray-led.on { background: #3dd691; }
      .task-clock { font-weight: 700; letter-spacing: 0.04em; }

      /* Start menu */
      .start-menu {
        position: absolute;
        bottom: 36px;
        left: 8px;
        width: 180px;
        background: #e8f3f2;
        border: 2px solid #9cb9b7;
        box-shadow: 4px 4px 0 #5f7f7e;
        display: none;
        flex-direction: column;
        z-index: 400;
      }
      .start-menu.open { display: flex; }
      .start-item {
        padding: 8px 10px;
        font-size: 13px;
        cursor: pointer;
      }
      .start-item:hover { background: #c7e1df; }

      /* Window states */
      .win98-window.minimized { display: none; }
      .win98-window.maximized {
        left: 8px !important;
        top: 8px !important;
        width: calc(100% - 16px) !important;
        height: calc(100% - 50px) !important;
      }
      body.taskmgr-crash { overflow: hidden; }
      .task-crash-overlay {
        position: fixed;
        inset: 0;
        background:
          radial-gradient(circle at 20% 20%, rgba(255,107,107,0.12), rgba(0,0,0,0)),
          radial-gradient(circle at 80% 10%, rgba(123,255,179,0.12), rgba(0,0,0,0)),
          #030506;
        color: #ff6b6b;
        font-family: "Lucida Console", "Consolas", "Cascadia Mono", monospace;
        z-index: 24000;
        pointer-events: all;
        opacity: 0;
        transition: opacity 160ms ease;
      }
      .task-crash-overlay.visible { opacity: 1; }
      .task-crash-overlay .crash-title {
        position: absolute;
        top: 16px;
        right: 18px;
        font-weight: 800;
        letter-spacing: 0.12em;
        color: #ffdede;
        text-shadow: 0 0 12px rgba(255,107,107,0.8);
      }
      .task-crash-overlay .crash-stream {
        position: absolute;
        inset: 0;
        padding: 20px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        overflow: hidden;
      }
      .task-crash-overlay .crash-stream div {
        background: rgba(255,255,255,0.04);
        border: 1px solid rgba(255,255,255,0.08);
        padding: 4px 8px;
        text-shadow: 0 0 8px rgba(255,107,107,0.6);
        box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05);
      }
      .task-crash-overlay .crash-scan {
        position: absolute;
        inset: 0;
        background: repeating-linear-gradient(
          180deg,
          rgba(255,255,255,0.08) 0px,
          rgba(255,255,255,0.08) 1px,
          rgba(255,255,255,0) 1px,
          rgba(255,255,255,0) 4px
        );
        mix-blend-mode: screen;
        opacity: 0.25;
        pointer-events: none;
        animation: crashScan 0.22s linear infinite;
      }
      @keyframes crashScan { to { transform: translateY(4px); } }
