/* Renato Borbolla — Windows 98 Explorer, v31. Local assets, native controls. */
:root {
  --w98-desktop:#008080; --w98-face:#c0c0c0; --w98-paper:#fff;
  --w98-light:#fff; --w98-shadow:#808080; --w98-dark:#000;
  --w98-blue:#000080; --w98-blue-end:#1084d0;
  --w98-raised:inset -1px -1px #000,inset 1px 1px #fff,inset -2px -2px #808080,inset 2px 2px #dfdfdf;
  --w98-inset:inset -1px -1px #fff,inset 1px 1px #808080,inset -2px -2px #dfdfdf,inset 2px 2px #000;
}
html.theme-win98 {
  color-scheme:light; background:var(--w98-desktop); scroll-behavior:auto;
  --background:0 0% 100%; --foreground:0 0% 0%; --card:0 0% 94%; --card-foreground:0 0% 0%;
  --surface:0 0% 94%; --surface-elevated:0 0% 88%; --terminal:240 100% 25%; --terminal-dim:240 100% 25%;
  --primary:240 100% 25%; --primary-foreground:0 0% 100%; --muted:0 0% 90%; --muted-foreground:0 0% 28%;
  --border:0 0% 65%; --ring:240 100% 25%; --radius:0;
  --font-sans:Tahoma,"MS Sans Serif",Arial,sans-serif; --font-mono:Tahoma,"MS Sans Serif",Arial,sans-serif;
}
body.theme-win98 {
  margin:0; min-height:100vh; padding:24px 24px 64px 128px!important;
  background:var(--w98-desktop)!important; background-image:none!important; color:#000;
  font:13px/1.5 Tahoma,"MS Sans Serif",Arial,sans-serif!important;
}
.theme-win98 *, .theme-win98 *::before, .theme-win98 *::after {box-sizing:border-box}
.theme-win98 ::selection {color:#fff; background:#000080}
.theme-win98 :focus-visible {outline:1px dotted currentColor!important;outline-offset:-4px}
.theme-win98 #root {
  width:100%; max-width:1200px; margin:0 auto; padding:3px;
  background:#c0c0c0; box-shadow:var(--w98-raised),2px 3px 0 rgba(0,0,0,.25); position:relative;
}
.theme-win98 #root.w98-hidden {display:none!important}
.theme-win98.w98-maximized {padding:4px 4px 48px!important}
.theme-win98.w98-maximized #root {max-width:none}
.theme-win98.w98-maximized #w98-desktop-icons {display:none}
.theme-win98 #root .font-mono, .theme-win98 #root .font-sans, .theme-win98 #root .font-display {font-family:Tahoma,"MS Sans Serif",Arial,sans-serif!important}
.theme-win98 #root :is(h1,h2,h3,h4) {font-family:Tahoma,"MS Sans Serif",Arial,sans-serif!important;letter-spacing:0!important;color:#000;text-shadow:none!important}
.theme-win98 #root :is([class*="rounded"],.border-glow) {border-radius:0!important}
.theme-win98 #root :is(.text-glow,.border-glow) {text-shadow:none!important;box-shadow:none!important}
.theme-win98 #root :is(.hero-dotted-globe,.scanline::before,.scanline::after) {display:none!important}
.theme-win98 #root .typing-caret {background:#000080!important;box-shadow:none!important;width:3px}
.theme-win98 #root .title-caret {display:none}
.theme-win98 #root .text-terminal, .theme-win98 #root .text-terminal-dim {color:#000080!important}
.theme-win98 #root .text-muted-foreground {color:#444!important}
.theme-win98 #root .text-foreground {color:#000!important}
.theme-win98 #root a {text-decoration:none; color:#000080}
.theme-win98 #root a:hover {text-decoration:underline}
.theme-win98 #root svg {filter:none;flex-shrink:0}
.theme-win98 #root code, .theme-win98 #root pre, .theme-win98 #root kbd {font-family:"Lucida Console","Courier New",monospace!important}
.theme-win98 #root code {background:#eee;color:#000;padding:1px 3px}
.theme-win98 #root pre {background:#fff;color:#000;padding:12px;box-shadow:var(--w98-inset);overflow:auto}
.theme-win98 :is(button,input,select,textarea) {font-family:Tahoma,"MS Sans Serif",Arial,sans-serif!important}
.theme-win98 :is(button,[role="button"]) {
  background:#c0c0c0; color:#000; border:0; border-radius:0!important; box-shadow:var(--w98-raised);
  min-height:27px; padding:5px 12px; font-size:12px; line-height:1.25; cursor:pointer; text-shadow:none;
}
.theme-win98 button:active, .theme-win98 button.is-pressed {box-shadow:var(--w98-inset);padding-top:6px;padding-bottom:4px}
.theme-win98 button:disabled {color:#808080;text-shadow:1px 1px #fff;cursor:default}
.theme-win98 :is(input,select,textarea) {background:#fff;color:#000;border:0;border-radius:0;box-shadow:var(--w98-inset);padding:7px 8px;min-width:0}
.theme-win98 button svg {width:16px;height:16px}
/* Window chrome — one application frame, no repeated fake windows. */
.w98-chrome {font-size:12px;color:#000;position:relative;z-index:20}
.w98-titlebar {display:flex;align-items:center;gap:5px;background:linear-gradient(90deg,#000080,#1084d0);color:white;height:25px;padding:3px 3px 3px 5px}
.w98-titlebar-label {display:flex;align-items:center;gap:6px;font-weight:700;flex:1;min-width:0;line-height:1}
.w98-titlebar-label span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff!important}
.w98-ui-icon {width:20px;height:20px;display:inline-block;image-rendering:pixelated;flex-shrink:0}
.w98-titlebar .w98-ui-icon {width:16px;height:16px}
.w98-controls {display:flex;gap:2px;flex-shrink:0}
.theme-win98 .w98-control {display:grid;place-items:center;width:18px;height:18px;min-height:18px;padding:0!important;cursor:pointer;position:relative}
.w98-control::before {content:"";display:block}
.w98-control[data-w98-action="minimize"]::before {width:7px;height:2px;background:#000;margin-top:7px}
.w98-control[data-w98-action="maximize"]::before {width:10px;height:9px;border:1px solid #000;border-top:3px solid #000}
.w98-maximized .w98-chrome .w98-control[data-w98-action="maximize"]::before, .w98-photo-maximized .w98-control[data-w98-action="maximize"]::before {width:9px;height:8px;box-shadow:2px -2px 0 -1px #c0c0c0,2px -2px 0 0 #000}
.w98-control[data-w98-action="close"]::before {width:11px;height:11px;background:linear-gradient(45deg,transparent 42%,#000 42%,#000 58%,transparent 58%),linear-gradient(-45deg,transparent 42%,#000 42%,#000 58%,transparent 58%)}
.w98-controls .w98-control:last-child {margin-left:2px}
.w98-menu-row {display:flex;align-items:center;gap:1px;min-height:28px;border-bottom:1px solid #808080;box-shadow:0 1px #fff;padding:2px 3px}
.theme-win98 .w98-menu-item {display:inline-flex;align-items:center;gap:5px;font-size:12px;min-height:23px;padding:3px 9px!important;box-shadow:none;background:transparent;color:#000;text-decoration:none!important}
.theme-win98 .w98-menu-item:hover {background:#000080;color:#fff}
.w98-menu-spacer {flex:1}
.w98-version {font-size:10px;color:#555;padding:0 7px;white-space:nowrap}
.theme-win98 #root nav {
  position:relative!important;inset:auto!important;z-index:30;background:#c0c0c0!important;
  border:none!important;border-bottom:1px solid #808080!important;backdrop-filter:none!important;
}
.theme-win98 #root nav>div:first-child {height:auto!important;min-height:43px;max-width:none;padding:5px 7px!important;gap:12px}
.theme-win98 #root nav>div:first-child>a {font-size:11px;gap:5px;max-width:210px;line-height:1.3;color:#333}
.theme-win98 #root nav .gap-6 {gap:4px!important;flex-wrap:wrap;justify-content:flex-end}
.theme-win98 #root nav a:not(:first-child) {padding:4px 7px;font-size:12px;color:#000;white-space:nowrap}
.theme-win98 #root nav a:hover {background:#000080;color:#fff!important;text-decoration:none}
.theme-win98 #root nav button {font-size:11px!important;min-height:26px;box-shadow:var(--w98-raised)!important;border:0!important;background:#c0c0c0!important;color:#000!important}
.theme-win98 #root nav [aria-label="Abrir menu"],.theme-win98 #root nav [aria-label="Fechar menu"] {padding:5px 8px}
.theme-win98 #root nav .absolute {background:#c0c0c0!important;border:0!important;box-shadow:var(--w98-raised)!important;border-radius:0!important;padding:3px!important;z-index:60}
.theme-win98 #root nav .absolute button {background:transparent!important;box-shadow:none!important;width:100%;justify-content:flex-start}
.theme-win98 #root nav .absolute button:hover {background:#000080!important;color:#fff!important}
.theme-win98 #root nav>div:nth-child(2) {background:#c0c0c0!important;padding:8px!important;border:0!important}
.w98-address {display:flex;align-items:center;gap:8px;background:#c0c0c0;padding:6px 5px 8px;font-size:11px;min-height:35px;color:#000}
.w98-address label {padding:0 4px}
.w98-address-field {display:flex;align-items:center;gap:6px;background:white;box-shadow:var(--w98-inset);padding:5px 8px;flex:1;min-width:0;font-size:12px;height:25px;overflow:hidden;white-space:nowrap}
.w98-address-field span {overflow:hidden;text-overflow:ellipsis;color:#000}
.w98-address-field .w98-ui-icon {width:16px;height:16px}
.w98-address-go {color:#000;display:flex;align-items:center;gap:4px;text-decoration:none}
/* Portfolio content */
.theme-win98 #root main {background:#fff!important;color:#000;min-height:0!important;padding:0!important;border:2px solid;border-color:#808080 #fff #fff #808080;margin:0 2px;position:relative}
.theme-win98 #root main>section {background:#fff!important;padding:34px 34px!important;scroll-margin-top:16px;position:relative;border-bottom:1px solid #c0c0c0;min-width:0}
.theme-win98 #root main>section:nth-of-type(even) {background:#f7f7f7!important}
.theme-win98 #root main>section>div {max-width:none!important}
.theme-win98 #root main>section>div>div:first-child:has(h2) {margin-bottom:23px!important;text-align:left!important}
.theme-win98 #root main h2 {font-size:25px!important;line-height:1.2;margin-top:5px!important;font-weight:700;color:#000080!important}
.theme-win98 #root main h3 {font-size:15px;line-height:1.4}
.theme-win98 #root main p {line-height:1.65}
.theme-win98 #root main>section>div>div:first-child>span, .theme-win98 #root main>section>div>div:first-child>span>span {font-size:10px!important;letter-spacing:1.3px!important;color:#555!important}
.theme-win98 #root main>section .grid {gap:16px}
.theme-win98 #root main>section .mt-10, .theme-win98 #root main>section .mt-12, .theme-win98 #root main>section .md\:mt-12 {margin-top:24px!important}
.theme-win98 #root main>section .mb-16, .theme-win98 #root main>section .mb-14 {margin-bottom:24px!important}
.theme-win98 #root main>section .text-center {text-align:left}
.theme-win98 #root .w98-hero {padding:36px 36px 28px!important;min-height:0!important;overflow:visible!important}
.theme-win98 #root .w98-hero>div:first-child:not(.w98-hero-content) {display:none}
.theme-win98 #root .w98-hero .w98-hero-content {display:flex;flex-direction:row!important;align-items:center;gap:32px!important;max-width:none;width:100%}
.theme-win98 #root .w98-hero .w98-hero-copy {flex:1;min-width:0;text-align:left!important}
.theme-win98 #root .w98-hero .w98-hero-copy>div:first-child {margin-bottom:16px;justify-content:flex-start!important;gap:8px}
.theme-win98 #root .w98-hero .w98-hero-copy>div:first-child span {font-size:11px!important;letter-spacing:1px!important}
.theme-win98 #root .w98-hero h1 {display:block!important;font-size:clamp(38px,5.4vw,68px)!important;line-height:.99!important;margin:0;letter-spacing:-2px!important;font-weight:700;color:#000!important}
.theme-win98 #root .w98-hero .typing-line {display:block!important;color:#000!important}
.theme-win98 #root .w98-hero .typing-token {color:#000080!important}
.theme-win98 #root .w98-hero .typing-line:first-child .typing-token {color:#000!important}
.theme-win98 #root .w98-hero p {font-size:12px!important}
.theme-win98 #root .w98-hero .mt-6 {margin-top:17px!important;justify-content:flex-start!important}
.theme-win98 #root .w98-hero .mt-6>span[class*="border"] {background:#f0f0f0;color:#000!important;border:1px solid #aaa!important;box-shadow:inset 1px 1px #fff;padding:3px 8px;font-size:11px}
.theme-win98 #root .w98-hero .inline-flex.bg-surface {background:#f0f0f0;box-shadow:var(--w98-inset);border:0;padding:8px 12px;font-size:12px;display:flex;width:max-content;max-width:100%}
.theme-win98 #root .w98-hero a {background:#c0c0c0!important;color:#000!important;box-shadow:var(--w98-raised);border:0!important;padding:8px 22px;font-size:12px!important;text-decoration:none}
.theme-win98 #root .w98-hero a:active {box-shadow:var(--w98-inset)}
.theme-win98 #root .w98-hero .mt-3 p {font-size:11px!important;margin:0;color:#555!important}
.theme-win98 #root .w98-hero .w98-hero-photo {width:324px;flex:0 0 324px}
.theme-win98 #root .hero-photo-window {max-width:none!important;width:100%;padding:3px;background:#c0c0c0;box-shadow:var(--w98-raised);border:0!important;position:relative}
.theme-win98 #root .hero-photo-window>div {border:0!important;box-shadow:none!important;background:#c0c0c0;border-radius:0!important;overflow:hidden}
.theme-win98 #root .w98-photo-title {height:25px!important;padding:3px 4px!important;gap:5px!important;background:linear-gradient(90deg,#000080,#1084d0)!important;color:white!important;border:none!important;display:flex;align-items:center}
.theme-win98 #root .w98-photo-title>span:not(:last-of-type) {display:none}
.theme-win98 #root .w98-photo-title>span:last-of-type {color:white!important;font-size:11px!important;font-weight:700;margin:0!important;white-space:nowrap;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.theme-win98 #root .hero-photo-window .aspect-square {margin:3px 0 0;border:2px solid;border-color:#808080 #fff #fff #808080;aspect-ratio:1/1}
.theme-win98 #root .hero-photo-window img {filter:none!important;object-fit:cover!important}
.w98-photo-status {display:flex;justify-content:space-between;gap:8px;box-shadow:inset 1px 1px #808080,inset -1px -1px #fff;margin-top:3px;padding:3px 6px;font:10px/1.3 Tahoma,Arial,sans-serif;color:#333}
/* Specific cards keep sensible contrast and avoid turning every nested div into a window. */
.theme-win98 #root .w98-card {background:#efefef!important;border:0!important;box-shadow:var(--w98-raised)!important;padding:18px!important;transition:none!important;color:#000!important}
.theme-win98 #root a.w98-card:hover {background:#e5e5e5!important;text-decoration:none;outline:1px dotted #000;outline-offset:-5px}
.theme-win98 #root .w98-card h3 {color:#000080!important}
.theme-win98 #root .w98-card svg {color:#000080!important}
.theme-win98 #root .w98-card p {color:#333!important;font-size:13px;min-height:0!important}
.theme-win98 #root .w98-card .mb-4 {margin-bottom:10px}
.theme-win98 #root .w98-card span[class*="border"] {background:#fff!important;color:#444!important;border:1px solid #aaa!important;box-shadow:none!important;letter-spacing:0!important;font-size:10px;padding:2px 6px}
.theme-win98 #root .w98-progress {height:17px!important;border:0!important;box-shadow:var(--w98-inset)!important;background:#dfdfdf!important;padding:3px;margin-top:5px}
.theme-win98 #root .w98-progress>div {height:100%!important;box-shadow:none!important;background:repeating-linear-gradient(90deg,#000080 0,#000080 8px,transparent 8px,transparent 10px)!important}
.theme-win98 #root #skills .flex-wrap>span {background:#efefef!important;box-shadow:var(--w98-raised);border:0!important;color:#000!important;padding:6px 9px;font-size:11px}
.theme-win98 #root .career-content-grid {gap:20px;margin-top:24px;align-items:center;grid-template-columns:minmax(0,1fr) 240px}
.theme-win98 #root .career-hacker-avatar-wrap {background:transparent!important;border:0!important;box-shadow:none!important;width:100%;padding:0}
.theme-win98 #root .career-hacker-avatar {background:transparent!important;width:100%;max-width:240px;filter:none!important;image-rendering:pixelated}
.theme-win98 #root #career .border-l, .theme-win98 #root #experience .border-l {border-color:#808080;padding-left:22px}
.theme-win98 #root #testimonials .rounded-full {border-radius:50%!important}
.theme-win98 #root #videos .w98-card {padding:3px!important;background:#c0c0c0!important;overflow:hidden}
.theme-win98 #root #videos .w98-card h3 {padding:0!important;font-size:14px}
.theme-win98 #root #videos .w98-card .p-5, .theme-win98 #root #videos .w98-card .p-6 {padding:13px!important}
.theme-win98 #root #videos .w98-card img {filter:none!important;opacity:1!important}
.theme-win98 #root #contact .max-w-3xl {text-align:center!important;max-width:none}
.theme-win98 #root #contact .text-center, .theme-win98 #root #contact h2 {text-align:center!important}
.theme-win98 #root #contact .flex-wrap {justify-content:center!important}
.theme-win98 #root #contact .flex-wrap a {background:#c0c0c0!important;border:0!important;box-shadow:var(--w98-raised);color:#000!important;padding:8px 16px;font-size:12px;text-decoration:none}
.theme-win98 #root #contact .mt-16 {margin-top:24px}
.theme-win98 #root .contact-hacker-gif, .theme-win98 #root .bo-gif-tooltip {display:none!important}
.theme-win98 #root footer {background:#c0c0c0!important;border:0!important;color:#333;padding:15px 18px!important}
.theme-win98 #root footer p {font-size:10px!important;color:#333!important}
.w98-status {display:flex;align-items:center;gap:3px;margin:3px 2px 0;font-size:11px;color:#333}
.w98-status>span {box-shadow:inset 1px 1px #808080,inset -1px -1px #fff;display:flex;align-items:center;gap:5px;padding:3px 7px;min-width:0}
.w98-status>span:first-child {flex:1}
.w98-status .w98-ui-icon {width:14px;height:14px}
.theme-win98 #root main.w98-document>div {max-width:none;padding:28px!important}
.theme-win98 #root main.w98-document h1 {font-size:32px!important;line-height:1.2;color:#000080!important}
.theme-win98 #root main.w98-document article {background:#efefef!important;box-shadow:var(--w98-raised);border:0!important;padding:20px!important}
/* Desktop icons use authored pixel SVGs, no emoji or generic bordered blocks. */
#w98-desktop-icons {position:fixed;top:20px;left:13px;width:92px;display:flex;flex-direction:column;gap:18px;z-index:1}
.w98-desktop-icon {display:flex;align-items:center;flex-direction:column;gap:5px;width:92px;padding:3px;color:#fff;text-align:center;text-decoration:none;font:11px/1.3 Tahoma,Arial,sans-serif;border:1px solid transparent;outline-offset:-1px}
.w98-desktop-icon img {width:38px;height:38px;image-rendering:pixelated}
.w98-desktop-icon span {padding:1px 3px;text-shadow:1px 1px #004848;color:#fff}
.w98-desktop-icon:hover span, .w98-desktop-icon:focus-visible span {background:#000080;outline:1px dotted #fff}
/* Taskbar */
#w98-taskbar {position:fixed;left:0;right:0;bottom:0;z-index:2147483000;height:36px;background:#c0c0c0;box-shadow:inset 0 1px #fff,inset 0 2px #dfdfdf;display:flex;align-items:center;gap:6px;padding:4px 3px 3px;color:#000;font-size:11px}
.theme-win98 #w98-taskbar button {height:27px;min-height:27px;padding:3px 8px;display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px}
.theme-win98 #w98-taskbar .w98-start-btn {font-weight:700;flex-shrink:0;padding:3px 7px}
.w98-start-btn .w98-ui-icon {width:20px;height:20px}
.w98-start-btn[aria-expanded="true"] {box-shadow:var(--w98-inset)!important;background:#ddd}
.w98-task-divider {width:3px;height:25px;box-shadow:inset 1px 0 #808080,inset -1px 0 #fff;flex-shrink:0}
.theme-win98 #w98-taskbar .w98-quick-btn {box-shadow:none;padding:3px;min-width:25px;width:27px}
.theme-win98 #w98-taskbar .w98-quick-btn:hover {box-shadow:var(--w98-raised)}
.w98-task-buttons {flex:1;display:flex;gap:4px;min-width:0}
.theme-win98 #w98-taskbar .w98-task-btn {justify-content:flex-start;width:210px;max-width:40vw;min-width:0;overflow:hidden}
.w98-task-btn span {overflow:hidden;text-overflow:ellipsis}
.theme-win98 #w98-taskbar .w98-task-btn.is-current {font-weight:700;background:repeating-conic-gradient(#fff 0 25%,#dfdfdf 0 50%) 0/2px 2px;box-shadow:var(--w98-inset)}
.w98-tray {margin-left:auto;display:flex;align-items:center;gap:9px;box-shadow:inset 1px 1px #808080,inset -1px -1px #fff;height:27px;padding:3px 9px;white-space:nowrap;flex-shrink:0}
.w98-tray img {width:16px;height:16px}
.w98-clock {font-size:11px;font-variant-numeric:tabular-nums;color:#000}
/* Start menu and keyboard navigation */
#w98-start-menu {position:fixed;left:3px;bottom:36px;z-index:2147483001;background:#c0c0c0;box-shadow:var(--w98-raised),2px 2px #000;display:flex;width:286px;max-width:calc(100vw - 8px);padding:3px;color:#000}
#w98-start-menu[hidden] {display:none!important}
.w98-start-brand {width:31px;background:#808080;display:flex;align-items:flex-end;flex-shrink:0;overflow:hidden;padding:7px 5px}
.w98-start-brand span {writing-mode:vertical-rl;transform:rotate(180deg);font-size:19px;line-height:21px;white-space:nowrap;color:#c0c0c0;font-weight:700;letter-spacing:.4px}
.w98-start-brand b {color:white;font-weight:400}
.w98-start-list {flex:1;padding:3px 0;min-width:0}
.theme-win98 #w98-start-menu .w98-start-link {display:flex;align-items:center;gap:11px;width:100%;padding:8px 10px!important;min-height:42px;box-shadow:none;background:transparent;border:0;text-align:left;color:#000;font:12px/1.3 Tahoma,Arial,sans-serif;text-decoration:none}
.w98-start-link .w98-ui-icon {width:27px;height:27px}
.theme-win98 #w98-start-menu .w98-start-link:hover,.theme-win98 #w98-start-menu .w98-start-link:focus-visible {background:#000080;color:#fff!important;outline:none!important}
.w98-start-link .w98-menu-arrow {margin-left:auto;font-size:11px}
.w98-start-separator {border-top:1px solid #808080;box-shadow:0 1px #fff;height:2px;margin:5px 6px}
/* Second Layer shares the same native window palette. Terminal contents stay distinct. */
html.theme-win98 #bo-root {
  --bo-green:#000080;--bo-green2:#000080;--bo-accent:#000080;--bo-bg:#008080;--bo-panel:#c0c0c0;--bo-line:#808080;--bo-text:#000;--bo-muted:#444;
  background:#008080!important;color:#000!important;font-family:Tahoma,"MS Sans Serif",Arial,sans-serif!important;bottom:36px!important;
}
html.theme-win98 #bo-root * {border-radius:0!important;font-family:Tahoma,"MS Sans Serif",Arial,sans-serif!important;text-shadow:none!important;backdrop-filter:none!important}
html.theme-win98 #bo-root :is(.bo-v15-matrix,.bo-gridbg,.bo-scan) {display:none!important}
html.theme-win98 #bo-root .bo-top {height:48px;margin:6px 6px 0;padding:3px 8px;background:#c0c0c0!important;border:0;box-shadow:var(--w98-raised)}
html.theme-win98 #bo-root .bo-brand, html.theme-win98 #bo-root .bo-brand strong, html.theme-win98 #bo-root .bo-brand span:last-child {color:#000080;font:700 12px Tahoma,sans-serif;letter-spacing:0}
html.theme-win98 #bo-root .bo-status {background:#ddd;box-shadow:var(--w98-inset);color:#000}
html.theme-win98 #bo-root .bo-status b {color:#000080}
html.theme-win98 #bo-root .bo-desktop {inset:54px 0 0;padding:8px 8px 38px;background:#008080!important}
html.theme-win98 #bo-root .bo-v15-frame {background:#c0c0c0;box-shadow:var(--w98-raised);grid-template-columns:210px minmax(0,1fr);padding:3px}
html.theme-win98 #bo-root .bo-v15-sidebar {background:#c0c0c0;border-right:1px solid #808080;min-height:0;height:calc(100dvh - 116px);padding:14px 9px;box-shadow:1px 0 #fff;scrollbar-color:#808080 #c0c0c0}
html.theme-win98 #bo-root .bo-v15-sidebrand {background:linear-gradient(90deg,#000080,#1084d0);padding:9px;margin:0 0 12px;border:0;gap:7px}
html.theme-win98 #bo-root .bo-v15-brandmark {background:#c0c0c0;color:#000080;box-shadow:var(--w98-raised)}
html.theme-win98 #bo-root .bo-v15-brandtext :is(strong,small) {color:#fff;font-family:Tahoma,sans-serif!important;letter-spacing:0}
html.theme-win98 #bo-root .bo-v15-navlabel, html.theme-win98 #bo-root .bo-v15-sidefootnote {color:#333;letter-spacing:0}
html.theme-win98 #bo-root .bo-v15-navitem {background:#c0c0c0!important;border:0!important;box-shadow:var(--w98-raised);padding:9px 7px;min-height:51px}
html.theme-win98 #bo-root .bo-v15-navitem.is-current {box-shadow:var(--w98-inset);background:#ddd!important}
html.theme-win98 #bo-root .bo-v15-navnum {background:#fff;border:0;box-shadow:var(--w98-inset);color:#000080;font-size:11px}
html.theme-win98 #bo-root .bo-v15-navcopy strong {color:#000;font-size:12px}
html.theme-win98 #bo-root .bo-v15-navcopy small, html.theme-win98 #bo-root .bo-v15-navarrow {color:#444}
html.theme-win98 #bo-root .bo-v15-workspace {background:#fff;box-shadow:var(--w98-inset);padding:22px}
html.theme-win98 #bo-root .bo-intro {background:#fff!important;border:0!important;padding:0 0 18px;margin-bottom:16px;box-shadow:none}
html.theme-win98 #bo-root .bo-intro::before {display:none}
html.theme-win98 #bo-root .bo-kicker {color:#000080;letter-spacing:1px}
html.theme-win98 #bo-root .bo-intro h2 {color:#000080;font-size:clamp(25px,3vw,40px);letter-spacing:-1px}
html.theme-win98 #bo-root .bo-intro p {color:#333;font-size:13px}
html.theme-win98 #bo-root .bo-command {color:#000080}
html.theme-win98 #bo-root :is(.bo-v15-metric,.bo-v15-app,.bo-app,.bo-v2-panel,.bo-v2-story,.bo-v2-detail,.bo-v2-compare,.bo-ac-card,.bo-ac-profile,.bo-ac-case,.bo-ac-results,.bo-cr-track-summary,.bo-cr-stage,.bo-cr-career,.bo-cr-lab) {background:#efefef!important;border:0!important;box-shadow:var(--w98-raised);color:#000}
html.theme-win98 #bo-root :is(.bo-v15-metric,.bo-v15-app) :is(strong,b,h3,h4) {color:#000080!important}
html.theme-win98 #bo-root :is(.bo-v15-metric,.bo-v15-app) :is(p,small,span) {color:#333}
html.theme-win98 #bo-root :is(.bo-v15-cardicon,.bo-v15-icon,.bo-v15-category) {background:#fff!important;color:#000080!important;border-color:#aaa!important}
html.theme-win98 #bo-root button {background:#c0c0c0!important;color:#000!important;border:0!important;box-shadow:var(--w98-raised)!important;min-height:26px}
html.theme-win98 #bo-root button.is-active,html.theme-win98 #bo-root button[aria-selected="true"] {box-shadow:var(--w98-inset)!important;background:#ddd!important}
html.theme-win98 #bo-root .bo-v15-ctilink {background:#c0c0c0;border:0;color:#000;box-shadow:var(--w98-raised)}
html.theme-win98 #bo-root .bo-v15-cti-icon {color:#000080}
html.theme-win98 #bo-root .bo-window {background:#c0c0c0!important;border:0!important;padding:3px;box-shadow:var(--w98-raised),2px 2px #000}
html.theme-win98 #bo-root .bo-titlebar {background:linear-gradient(90deg,#000080,#1084d0)!important;border:0;min-height:28px;padding:3px 4px;cursor:move}
html.theme-win98 #bo-root .bo-titlebar .bo-title {color:#fff!important;font-size:12px;font-weight:700}
html.theme-win98 #bo-root .bo-dots {gap:3px}
html.theme-win98 #bo-root .bo-dot-btn {width:20px!important;height:20px!important;min-height:20px;padding:0!important;border:0!important}
html.theme-win98 #bo-root .bo-dot {width:12px;height:12px;background:transparent!important;border:0}
html.theme-win98 #bo-root .bo-body {margin-top:3px;background:#fff!important;box-shadow:var(--w98-inset);color:#000;padding:15px}
html.theme-win98 #bo-root .bo-body :is(h1,h2,h3,h4,.bo-section-title,.bo-v2-title,.bo-v2-eyebrow,.bo-ac-title,.bo-cr-heading) {color:#000080!important}
html.theme-win98 #bo-root .bo-body :is(p,li,label,.bo-v2-lead,.bo-ac-lead,.bo-cr-lead) {color:#333}
html.theme-win98 #bo-root :is(.bo-v2-section,.bo-v2-strip,.bo-v2-hero) {background:#efefef!important;color:#000!important;border-color:#aaa!important;box-shadow:none}
html.theme-win98 #bo-root :is(input,textarea,select) {background:#fff!important;color:#000!important;box-shadow:var(--w98-inset);border:0}
html.theme-win98 #bo-root :is(pre,code,.bo-term,.bo-terminal,.bo-terminal-output,.bo-term-out) {background:#000!important;color:#c0c0c0!important;font-family:"Lucida Console","Courier New",monospace!important}
html.theme-win98 #bo-root :is(pre,code,.bo-term,.bo-terminal,.bo-terminal-output,.bo-term-out) * {color:inherit;font-family:inherit!important}
html.theme-win98 #bo-root .bo-dock {background:#c0c0c0!important;border:0;box-shadow:var(--w98-raised);bottom:0;min-height:32px;padding:3px;height:auto}
/* Genuine classic scrollbar geometry */
.theme-win98 ::-webkit-scrollbar {width:16px;height:16px}
.theme-win98 ::-webkit-scrollbar-track {background:repeating-conic-gradient(#dfdfdf 0 25%,#fff 0 50%) 0/2px 2px}
.theme-win98 ::-webkit-scrollbar-thumb {background:#c0c0c0;box-shadow:var(--w98-raised);border:0}
.theme-win98 ::-webkit-scrollbar-corner {background:#c0c0c0}
.theme-win98 ::-webkit-scrollbar-button:single-button {display:block;width:16px;height:16px;background-color:#c0c0c0;box-shadow:var(--w98-raised);background-position:center;background-repeat:no-repeat;background-size:7px}
.theme-win98 ::-webkit-scrollbar-button:vertical:decrement {background-image:url('/assets/w98-arrow-up.svg')}
.theme-win98 ::-webkit-scrollbar-button:vertical:increment {background-image:url('/assets/w98-arrow-down.svg')}
@media(min-width:1500px) {body.theme-win98 {padding-left:138px;padding-top:32px}.theme-win98 #root .w98-hero {padding:42px 48px!important}.theme-win98 #root .w98-hero .w98-hero-photo {width:360px;flex-basis:360px}}
@media(max-width:1100px) {body.theme-win98 {padding:16px 16px 58px 112px}.theme-win98 #root .w98-hero .w98-hero-photo {width:275px;flex-basis:275px}.theme-win98 #root nav>div:first-child>a {display:none}.theme-win98 #root nav>div:first-child {justify-content:flex-end}.theme-win98 #root main>section {padding:28px 24px!important}.theme-win98 #root .career-content-grid {grid-template-columns:minmax(0,1fr) 190px}}
@media(max-width:850px) {body.theme-win98 {padding:12px 12px 60px}#w98-desktop-icons {display:none}.theme-win98 #root nav>div:first-child>a {display:flex}.theme-win98 #root .w98-hero .w98-hero-photo {width:265px;flex-basis:265px}}
@media(max-width:640px) {
  body.theme-win98 {padding:6px 6px calc(54px + env(safe-area-inset-bottom))!important;font-size:13px!important}
  .theme-win98 #root {max-width:100%;padding:3px}.w98-titlebar {height:27px}.w98-titlebar-label {font-size:11px}
  .theme-win98 .w98-control {height:20px;width:21px;min-height:20px}.w98-menu-row {min-height:29px}.theme-win98 .w98-menu-item {font-size:11px;padding:4px 7px!important}.w98-version {display:none}
  .theme-win98 #root nav>div:first-child {min-height:41px;padding:5px 6px!important}.theme-win98 #root nav>div:first-child>a {max-width:180px;font-size:10px}.theme-win98 #root nav .absolute button {min-height:33px}
  .theme-win98 #root nav>div:nth-child(2) a {min-height:34px;padding:7px 9px;font-size:12px}
  .w98-address {padding:5px 2px;font-size:10px;gap:3px}.w98-address-field {font-size:11px;padding:5px 6px}.w98-address-go {display:none}
  .theme-win98 #root main>section {padding:24px 17px!important}.theme-win98 #root main h2 {font-size:23px!important}.theme-win98 #root main h3 {font-size:14px!important}
  .theme-win98 #root .w98-hero {padding:25px 17px 22px!important}
  .theme-win98 #root .w98-hero .w98-hero-content {flex-direction:column-reverse!important;align-items:stretch;gap:22px!important}
  .theme-win98 #root .w98-hero .w98-hero-photo {width:min(100%,290px);flex-basis:auto;align-self:center}
  .theme-win98 #root .w98-hero h1 {font-size:49px!important;letter-spacing:-2px!important}
  .theme-win98 #root .w98-hero .w98-hero-copy>div:first-child {margin-bottom:14px;gap:7px}.theme-win98 #root .w98-hero .w98-hero-copy>div:first-child span {font-size:10px!important;letter-spacing:.5px!important}
  .theme-win98 #root .w98-card {padding:15px!important}.theme-win98 #root .career-content-grid {grid-template-columns:minmax(0,1fr) 94px!important;gap:12px!important}
  .theme-win98 #root .career-hacker-avatar {max-width:94px}.theme-win98 #root .career-content-grid h3 {font-size:13px!important}
  .theme-win98 #root main.w98-document>div {padding:21px 16px!important}.theme-win98 #root main.w98-document h1 {font-size:27px!important}
  .w98-status {font-size:10px}.w98-status>span {padding:4px 5px}.w98-status>span:last-child {display:none}
  #w98-taskbar {height:calc(43px + env(safe-area-inset-bottom));padding:5px 4px calc(5px + env(safe-area-inset-bottom));gap:4px}
  .theme-win98 #w98-taskbar button {height:32px;min-height:32px;font-size:11px}.theme-win98 #w98-taskbar .w98-task-btn {width:150px;max-width:none;flex:1}
  .theme-win98 #w98-taskbar .w98-quick-btn, #w98-taskbar .w98-task-divider {display:none}.w98-tray {height:32px;padding:3px 7px;gap:5px}.w98-tray .w98-tray-network {display:none}
  #w98-start-menu {bottom:calc(43px + env(safe-area-inset-bottom));max-height:calc(100dvh - 60px);overflow:auto}.theme-win98 #w98-start-menu .w98-start-link {min-height:45px}
  html.theme-win98 #bo-root {bottom:calc(43px + env(safe-area-inset-bottom))!important}
  html.theme-win98 #bo-root .bo-top {height:auto;min-height:44px}.theme-win98 #bo-root .bo-status {display:none}
  html.theme-win98 #bo-root .bo-v15-frame {grid-template-columns:1fr}.theme-win98 #bo-root .bo-v15-sidebar {height:auto;position:static;border-right:0;padding:8px}
  html.theme-win98 #bo-root .bo-v15-nav {grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  html.theme-win98 #bo-root .bo-v15-navitem {min-height:43px;padding:6px 5px;gap:5px}.theme-win98 #bo-root .bo-v15-navcopy small {display:none}
  html.theme-win98 #bo-root .bo-v15-workspace {padding:16px}.theme-win98 #bo-root .bo-v15-sidebrand {margin-bottom:8px}.theme-win98 #bo-root .bo-v15-sidefooter {display:none}
}
@media(prefers-reduced-motion:reduce) {.theme-win98 *, .theme-win98 *::before,.theme-win98 *::after {scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Window state controls */
.theme-win98 [hidden] {display:none!important}
.theme-win98 #root .w98-photo-hidden {display:none!important}
.theme-win98 #root .w98-photo-collapsed .aspect-square, .theme-win98 #root .w98-photo-collapsed .w98-photo-status {display:none!important}
.theme-win98 #root .w98-photo-maximized {position:fixed!important;z-index:2147482000;top:12px;left:50%;transform:translateX(-50%)!important;width:min(550px,calc(100vw - 24px))!important;max-height:calc(100dvh - 68px);overflow:auto}
.theme-win98 #root .w98-boot {background:#008080!important;z-index:2147482000;color:#000}
.theme-win98 #root .w98-boot>div {background:#c0c0c0!important;padding:28px!important;box-shadow:var(--w98-raised);border:0!important;color:#000!important}
.theme-win98 #root .w98-boot h1,.theme-win98 #root .w98-boot p,.theme-win98 #root .w98-boot span {color:#000080!important;text-shadow:none}
/* Neutralize the previous HUD and floating navigation, including runtime styles. */
html.theme-win98 body::before,html.theme-win98 body::after {display:none!important;background:none!important}
html.theme-win98 #root {background:#c0c0c0!important;overflow:visible!important}
html.theme-win98 #root .w98-chrome,html.theme-win98 #root .w98-menu-row {background:#c0c0c0!important}
html.theme-win98 #root nav {width:100%!important;max-width:none!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;translate:none!important;margin:0!important;box-shadow:none!important;border-radius:0!important}
html.theme-win98 #root .hero-photo-window:not(.w98-photo-maximized) {width:100%!important;max-width:100%!important}
html.theme-win98 #root main h2 {color:#000080!important}
html.theme-win98 #root #about .bio-paragraph {font-size:14px!important}
html.theme-win98 #root #about p {font-size:14px!important;line-height:1.75!important}
html.theme-win98 #root #about .text-lg,html.theme-win98 #root #about .md\:text-xl {font-size:14px!important}
@font-face {font-family:'W98 UI';src:url('/assets/w98-fonts/ms-sans-serif.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face {font-family:'W98 UI';src:url('/assets/w98-fonts/ms-sans-serif-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
html.theme-win98 #root .scanline::before,html.theme-win98 #root .scanline::after {content:none!important;display:none!important}
html.theme-win98 #root main.scanline::before,html.theme-win98 #root main.scanline::after {content:none!important;display:none!important}
html.theme-win98 #root main h2.text-foreground {color:#000080!important}
html.theme-win98 .w98-titlebar-label,html.theme-win98 .w98-menu-item,html.theme-win98 .w98-version,html.theme-win98 .w98-desktop-icon,
html.theme-win98 #w98-start-menu .w98-start-link,html.theme-win98 #w98-taskbar button,html.theme-win98 .w98-clock,html.theme-win98 .w98-address,
html.theme-win98 #root .w98-photo-title>span,html.theme-win98 .w98-photo-status,html.theme-win98 .w98-status {font-family:'W98 UI',Tahoma,Arial,sans-serif!important;-webkit-font-smoothing:none;font-size:11px}
html.theme-win98 #root .w98-chrome .w98-menu-item {font-size:11px}
html.theme-win98 #w98-taskbar .w98-start-btn {font-size:12px}
html.theme-win98 #root nav a,html.theme-win98 #root nav button {font-family:'W98 UI',Tahoma,Arial,sans-serif!important;font-size:11px!important;letter-spacing:0!important}
html.theme-win98 #root.w98-photo-front main {z-index:70!important;overflow:visible!important}
html.theme-win98 #root.w98-photo-front .w98-hero {z-index:70!important;overflow:visible!important}
/* The original six-second/session boot lifecycle now displays the Windows 98 splash. */
html.theme-win98 #root [aria-label="Sequência de boot"] {
  position:fixed!important;inset:0!important;display:block!important;background:#b4d9f1!important;
  z-index:2147483500!important;border:0!important;box-shadow:none!important;overflow:hidden;
}
html.theme-win98 #root [aria-label="Sequência de boot"]>div:not(.w98-startup) {display:none!important}
html.theme-win98 #root [aria-label="Sequência de boot"]>button {z-index:3!important;background:#c0c0c0!important;color:#000!important;border:0!important;box-shadow:var(--w98-raised)!important;font-size:11px!important;top:16px;right:16px;padding:6px 11px!important}
html.theme-win98 #root [aria-label="Sequência de boot"]>.w98-startup {
  position:absolute;inset:0!important;width:100%;height:100%;max-width:none!important;border:0!important;box-shadow:none!important;padding:0!important;
  background:radial-gradient(ellipse 40% 15% at 14% 67%,#fff 0%,#ffffffa0 42%,#ffffff00 76%),radial-gradient(ellipse 42% 18% at 90% 66%,#fff 0%,#ffffffa0 44%,#ffffff00 75%),radial-gradient(ellipse 34% 16% at 57% 87%,#ffffff 0%,#ffffff80 48%,#ffffff00 76%),radial-gradient(ellipse 45% 16% at 10% 91%,#fff 0%,#ffffffb0 45%,#ffffff00 75%),linear-gradient(#65a8df 0%,#c7e0f3 50%,#edf6fb 100%)!important;
}
.w98-startup-logo {position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(630px,88vw);display:flex;flex-direction:column;align-items:center;gap:0}
.w98-startup-flag {width:310px;max-width:65vw;height:auto;margin-bottom:-3px;filter:drop-shadow(1px 2px 0 rgba(0,0,0,.12))}
.w98-startup-wordmark {position:relative;width:max-content;max-width:100%;font-family:Arial,Helvetica,sans-serif!important;line-height:1}
html.theme-win98 #root .w98-startup-microsoft {display:block;color:#000!important;font:25px/1 Arial,Helvetica,sans-serif!important;letter-spacing:-1px;padding-left:5px;margin-bottom:3px}
.w98-startup-name {display:flex;align-items:baseline;gap:12px;white-space:nowrap;letter-spacing:-5px}
html.theme-win98 #root .w98-startup-name strong {font:700 clamp(50px,8vw,89px)/1 Arial,Helvetica,sans-serif!important;color:#000!important}
html.theme-win98 #root .w98-startup-name span {font:400 clamp(50px,8vw,94px)/1 Arial,Helvetica,sans-serif!important;color:#fff!important;text-shadow:1px 1px 0 rgba(0,0,0,.25)!important;letter-spacing:-4px}
.w98-startup-footer {position:absolute;bottom:48px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;gap:10px;font:11px/1.4 'W98 UI',Tahoma,sans-serif;color:#224979}
html.theme-win98 #root .w98-startup-footer span {color:#224979!important;font:11px/1.4 'W98 UI',Tahoma,sans-serif!important}
.w98-startup-stripe {position:absolute;bottom:20px;left:0;right:0;height:17px;background:repeating-linear-gradient(90deg,#0058ad 0,#0058ad 38px,#62b8e6 38px,#62b8e6 66px,#bee9fc 66px,#bee9fc 82px);background-size:328px 100%;animation:w98-startup-flow 1.6s linear infinite}
@keyframes w98-startup-flow {to{background-position:328px 0}}
@media(max-width:640px) {.w98-startup-logo {top:44%;width:90vw}.w98-startup-flag {width:255px;max-width:70vw}.w98-startup-name {gap:8px;letter-spacing:-3px}.w98-startup-microsoft {font-size:18px!important}.w98-startup-footer {bottom:52px;left:16px;right:16px;flex-direction:column;align-items:flex-start;gap:4px}.w98-startup-stripe {bottom:20px}}
@media(prefers-reduced-motion:reduce) {.w98-startup-stripe {animation:none!important}}
/* Operator module text inherits the classic foreground instead of neon colors. */
html.theme-win98 #bo-root .bo-app b,html.theme-win98 #bo-root .bo-app:hover b {color:#000080!important}
html.theme-win98 #bo-root .bo-app span:not(.bo-app-icon):not(.bo-v15-cardaction) {color:#333!important}
html.theme-win98 #bo-root .bo-app-icon {background:#fff!important;color:#000080!important;border:0!important;box-shadow:var(--w98-inset)!important}
html.theme-win98 #bo-root .bo-v15-cardaction {color:#000080!important;letter-spacing:0!important}
html.theme-win98 #bo-root .bo-v15-sectionbar h3 {color:#000080!important}
html.theme-win98 #bo-root .bo-v15-kicker {color:#555!important}
html.theme-win98 #bo-root .bo-v15-counter {background:#c0c0c0!important;color:#000!important;border:0!important;box-shadow:var(--w98-inset)}
html.theme-win98 #bo-root .bo-v15-sidebrand {padding:9px!important;margin-bottom:12px!important}
html.theme-win98 body.w98-booting #w98-desktop-icons,html.theme-win98 body.w98-booting #w98-taskbar,html.theme-win98 body.w98-booting #w98-start-menu {display:none!important}
/* Consistent module dialogs, including the curriculum and terminal UI added in earlier versions. */
html.theme-win98 #bo-root .bo-window .bo-body {background:#fff!important;color:#222!important;box-shadow:var(--w98-inset)!important;height:calc(100% - 44px);overflow:auto}
html.theme-win98 #bo-root .bo-body :is(p,li,label,small,span,strong,b) {color:#333!important}
html.theme-win98 #bo-root .bo-body :is(h1,h2,h3,h4,h5) {color:#000080!important}
html.theme-win98 #bo-root .bo-body a {color:#000080!important}
html.theme-win98 #bo-root .bo-body :is(article,fieldset,.bo-cr-resource,.bo-cr-track-summary,.bo-cr-stage,.bo-cr-career,.bo-cr-lab,.bo-v2-panel,.bo-v2-evidence,.bo-v2-hypothesis,.bo-v2-control,.bo-v2-tactic-card,.bo-v2-intel-stat,.bo-ac-card,.bo-ac-profile,.bo-ac-case,.bo-ac-results,.bo-ac-pending,.bo-v3-screen,.bo-v3-card,.bo-v3-safety,.bo-v3-insight) {background:#efefef!important;color:#222!important;border:0!important;box-shadow:var(--w98-raised)!important;padding:14px}
html.theme-win98 #bo-root .bo-body :is(.bo-v2-pill,.bo-cr-badge,.bo-ac-badges,.bo-v3-tag) {background:#fff!important;color:#000080!important;border:1px solid #aaa!important;padding:3px 6px}
html.theme-win98 #bo-root .bo-body .bo-v3-start-guide span {background:#efefef!important;border-color:#aaa!important;color:#333!important}
html.theme-win98 #bo-root .bo-body :is(.bo-v2-caution,.bo-ac-terminal-banner,.bo-v3-console-head) {background:#c0c0c0!important;color:#000!important;border-color:#808080!important;box-shadow:var(--w98-inset)}
html.theme-win98 #bo-root .bo-body :is(.bo-v3-output,.bo-ac-report-preview,.bo-v2-export,.bo-v2-mock,.bo-terminal,.bo-term,.bo-term-out,.bo-terminal-output) {background:#000!important;color:#c0c0c0!important;box-shadow:var(--w98-inset);font-family:'Lucida Console','Courier New',monospace!important}
html.theme-win98 #bo-root .bo-body :is(.bo-v3-output,.bo-ac-report-preview,.bo-v2-export,.bo-v2-mock,.bo-terminal,.bo-term,.bo-term-out,.bo-terminal-output) * {color:#c0c0c0!important;font-family:'Lucida Console','Courier New',monospace!important}
html.theme-win98 #bo-root .bo-body button {color:#000!important;background:#c0c0c0!important}
html.theme-win98 #bo-root .bo-body button:hover {background:#ddd!important;color:#000!important}
/* v25: compact Explorer tools, folder navigation and consistent classic chrome. */
.w98-explorer-toolbar {display:flex;align-items:center;gap:3px;padding:4px 5px;border-top:1px solid #fff;border-bottom:1px solid #808080;box-shadow:0 1px #fff;min-height:56px}
html.theme-win98 #root .w98-tool {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:58px;min-height:46px;padding:4px 8px!important;background:transparent;box-shadow:none;font:11px/1 'W98 UI',Tahoma,sans-serif!important}
html.theme-win98 #root .w98-tool:not(:disabled):hover {box-shadow:inset 1px 1px #fff,inset -1px -1px #808080}
html.theme-win98 #root .w98-tool:not(:disabled):active,html.theme-win98 #root .w98-tool[aria-pressed="true"] {box-shadow:var(--w98-inset);background:#d7d7d7}
.w98-tool .w98-ui-icon {width:24px;height:24px}
.w98-tool:disabled .w98-ui-icon {filter:grayscale(1);opacity:.45}
.w98-toolbar-separator {height:38px;width:2px;background:#808080;box-shadow:1px 0 #fff;margin:0 5px}
.w98-explorer-sidebar {display:none}
html.theme-win98 .w98-titlebar {height:23px;background:linear-gradient(90deg,#000080 0%,#1084d0 100%);user-select:none}
html.theme-win98 #root .w98-photo-title {height:23px!important}
html.theme-win98 .w98-status {min-height:23px}
html.theme-win98 #root .w98-card {box-shadow:inset 1px 1px #fff,inset -1px -1px #808080!important;border:1px solid #c0c0c0!important}
html.theme-win98 #root .w98-card:hover {outline-offset:-4px}
html.theme-win98 #w98-taskbar .w98-task-buttons {min-width:0}
html.theme-win98 #w98-taskbar .w98-task-btn {min-width:0}
html.theme-win98 #w98-taskbar .w98-task-btn span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(min-width:1280px) {
  .w98-explorer-sidebar {display:block;float:left;position:sticky;top:12px;width:178px;margin:5px 5px 0;padding:0 2px 14px;background:#fff;z-index:12;font:11px/1.5 'W98 UI',Tahoma,sans-serif;box-shadow:inset -1px 0 #808080}
  .w98-folders-heading {display:flex;align-items:center;justify-content:space-between;gap:5px;background:#c0c0c0;padding:3px 5px;margin-bottom:5px;box-shadow:inset 0 -1px #808080}
  html.theme-win98 #root .w98-folders-close {font:700 14px/1 Tahoma,sans-serif!important;min-height:18px;height:18px;width:19px;padding:0!important}
  html.theme-win98 #root .w98-folder-root {display:flex;align-items:center;gap:5px;background:transparent;box-shadow:none;font:11px/1.3 'W98 UI',Tahoma,sans-serif!important;min-height:30px;width:100%;padding:4px 5px!important;text-align:left}
  html.theme-win98 #root .w98-folder-link {position:relative;display:flex;align-items:center;gap:6px;margin-left:12px;padding:6px 5px 6px 10px;min-height:30px;color:#000;text-decoration:none!important;font:11px/1.3 'W98 UI',Tahoma,sans-serif!important;box-shadow:inset 1px 0 #aaa}
  .w98-folder-link::before {content:'';position:absolute;left:0;top:50%;width:8px;border-top:1px dotted #888}
  .w98-folder-link .w98-ui-icon,.w98-folder-root .w98-ui-icon {width:16px;height:16px}
  .w98-folder-link span {white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
  html.theme-win98 #root .w98-folder-link:hover {background:#e4e4e4}
  html.theme-win98 #root .w98-folder-link.is-selected {background:#000080;color:#fff}
  html.theme-win98 #root .w98-has-folders>section {margin-left:190px;padding:30px 28px!important}
  html.theme-win98 #root .w98-has-folders .w98-hero h1 {font-size:56px!important}
  html.theme-win98 #root .w98-has-folders .w98-hero-photo {width:280px;flex-basis:280px}
  html.theme-win98 #root.w98-folders-hidden .w98-explorer-sidebar {display:none}
  html.theme-win98 #root.w98-folders-hidden .w98-has-folders>section {margin-left:0}
}
@media(max-width:1279px) {html.theme-win98 #root [data-w98-tool="folders"] {display:none}}
@media(max-width:640px) {
  .w98-explorer-toolbar {min-height:38px;padding:3px;gap:3px}
  html.theme-win98 #root .w98-tool {min-width:34px;min-height:30px;height:30px;padding:4px 7px!important;flex-direction:row;gap:6px}
  .w98-tool .w98-ui-icon {width:20px;height:20px}
  .w98-tool:not([data-w98-tool="cv"]) span {display:none}
  .w98-toolbar-separator {height:26px;margin:0 3px}
  html.theme-win98 #w98-taskbar .w98-task-btn {width:auto!important;flex:1;min-width:0}
  html.theme-win98 #w98-taskbar .w98-task-btn .w98-ui-icon {width:16px;height:16px}
}
/* v26: the desktop fits the viewport; the website scrolls inside Internet Explorer. */
html.theme-win98 {
  width:100%;height:100%;overflow:hidden!important;overscroll-behavior:none;
  --w98-taskbar-height:36px;
}
html.theme-win98 body.theme-win98 {
  position:fixed;inset:0;width:100%;height:100vh;height:100dvh;min-height:0!important;
  overflow:hidden!important;overscroll-behavior:none;
}
html.theme-win98 #root.w98-browser-frame {
  display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;
  min-width:0;isolation:isolate;
}
html.theme-win98 #root.w98-browser-frame>.w98-chrome,
html.theme-win98 #root.w98-browser-frame>nav,
html.theme-win98 #root .w98-address,
html.theme-win98 #root.w98-browser-frame>.w98-status {flex:0 0 auto}
html.theme-win98 #root .w98-browser-container {display:flex;flex-direction:column;flex:1 1 0;min-height:0!important;min-width:0;max-height:100%}
html.theme-win98 #root main.w98-scroll-pane {
  flex:1 1 0;min-height:0!important;min-width:0;max-height:100%;
  overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;
  scrollbar-gutter:stable;scroll-padding:16px;scroll-behavior:auto;
  -webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom;
}
html.theme-win98 #root main.w98-scroll-pane>section {scroll-margin-top:0}
html.theme-win98 #root.w98-photo-front main.w98-scroll-pane {overflow-x:hidden!important;overflow-y:auto!important}
html.theme-win98 #root .hero-photo-window.w98-photo-maximized[popover] {margin:0!important;right:auto!important;bottom:auto!important}
html.theme-win98 #root .hero-photo-window.w98-photo-maximized {max-height:calc(100dvh - var(--w98-taskbar-height) - 24px)!important}
html.theme-win98 #root .hero-photo-window[popover]::backdrop {background:transparent}
/* Keep enlarged photos usable in browsers without the popover top layer. */
html.theme-win98 #root.w98-photo-front main.w98-scroll-pane:has(.w98-photo-maximized:not([popover])) {overflow:visible!important}
html.theme-win98 #root .w98-explorer-sidebar {top:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain}
html.theme-win98 #w98-desktop-icons {bottom:calc(var(--w98-taskbar-height) + 12px);overflow-y:auto;overscroll-behavior:contain}
html.theme-win98 body.w98-maximized {padding:4px 4px calc(var(--w98-taskbar-height) + 4px)!important}
html.theme-win98 #root.w98-browser-frame .w98-status {overflow:hidden}
html.theme-win98 #root.w98-browser-frame .w98-current-section {max-width:38%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
@media(max-width:640px) {
  html.theme-win98 {--w98-taskbar-height:calc(43px + env(safe-area-inset-bottom))}
  html.theme-win98 #root nav:has(#mobile-menu) {max-height:max(41px,min(45dvh,calc(100dvh - var(--w98-taskbar-height) - 196px)));overflow-y:auto!important;overscroll-behavior:contain}
}
@media(max-height:500px) {
  html.theme-win98 #root .w98-explorer-toolbar {display:none}
  html.theme-win98 body.theme-win98:not(.w98-maximized) {padding-top:4px!important;padding-bottom:calc(var(--w98-taskbar-height) + 4px)!important}
}

/* A closed IE relaunches after three seconds; minimized windows restore immediately. */
html.theme-win98.w98-launching,html.theme-win98.w98-launching * {cursor:url('/assets/w98-wait.svg') 12 12,wait!important}

/* v28: the same Windows 98 chrome on IE, Photo, Second Layer and the recovery terminal. */
html.theme-win98 :is(.w98-titlebar,#root .w98-photo-title,#bo-root .bo-titlebar,#root .w98-native-titlebar) {
  display:flex!important;align-items:center!important;gap:5px!important;height:23px!important;min-height:23px!important;
  padding:3px 3px 3px 5px!important;background:linear-gradient(90deg,var(--w98-blue),var(--w98-blue-end))!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;color:#fff!important;
  font:700 11px/1 'W98 UI',Tahoma,Arial,sans-serif!important;user-select:none;
}
html.theme-win98 :is(#root .hero-photo-window,#bo-root .bo-window,#root .w98-native-window) {
  padding:3px!important;background:var(--w98-face)!important;border:0!important;border-radius:0!important;
  box-shadow:var(--w98-raised),2px 3px 0 rgba(0,0,0,.25)!important;
}
html.theme-win98 :is(#bo-root .bo-title-left) {display:contents!important}
html.theme-win98 :is(#bo-root .bo-title,#root .w98-native-titlebar>div:not(.w98-controls)) {
  order:0;display:flex!important;align-items:center;gap:6px;flex:1;min-width:0;margin:0!important;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff!important;
  font:700 11px/1 'W98 UI',Tahoma,Arial,sans-serif!important;
}
html.theme-win98 #bo-root .bo-title::before {content:'';width:16px;height:16px;flex-shrink:0;background:url('/assets/w98-terminal.svg') center/16px 16px no-repeat;image-rendering:pixelated}
html.theme-win98 #root .w98-photo-title>span:last-of-type::before {content:'';display:inline-block;width:16px;height:16px;margin-right:6px;vertical-align:middle;background:url('/assets/w98-document.svg') center/16px 16px no-repeat;image-rendering:pixelated}
html.theme-win98 #root .w98-native-titlebar>div:not(.w98-controls) :is(span,svg) {color:#fff!important;font:inherit!important;letter-spacing:0!important}
html.theme-win98 #root .w98-native-titlebar>div:not(.w98-controls) svg {width:16px;height:16px;flex-shrink:0}
html.theme-win98 :is(.w98-controls,#bo-root .bo-dots) {order:1;display:flex!important;align-items:center;gap:2px!important;flex-shrink:0;margin:0 0 0 auto!important}
html.theme-win98 :is(#root,#bo-root) .w98-controls .w98-control {
  display:grid!important;place-items:center!important;position:relative!important;width:18px!important;height:18px!important;
  min-width:18px!important;min-height:18px!important;flex:0 0 18px!important;margin:0!important;padding:0!important;
  color:#000!important;background:var(--w98-face)!important;border:0!important;border-radius:0!important;
  box-shadow:var(--w98-raised)!important;font-size:0!important;line-height:1!important;cursor:pointer;transform:none!important;
}
html.theme-win98 .w98-controls .w98-control[data-w98-action='minimize'] {order:0}
html.theme-win98 .w98-controls .w98-control[data-w98-action='maximize'] {order:1}
html.theme-win98 :is(#root,#bo-root) .w98-controls .w98-control[data-w98-action='close'] {order:2;margin-left:2px!important}
html.theme-win98 :is(#root,#bo-root) .w98-controls .w98-control:active {box-shadow:var(--w98-inset)!important}
html.theme-win98 .w98-controls .w98-control> :is(span,i,svg) {display:none!important}
html.theme-win98 :is(#bo-root .bo-window,#root .w98-native-window) .w98-control[aria-pressed='true'][data-w98-action='maximize']::before {width:9px;height:8px;box-shadow:2px -2px 0 -1px #c0c0c0,2px -2px 0 0 #000}
html.theme-win98 #bo-root .bo-titlebar>.bo-close {display:none!important}
html.theme-win98 #bo-root .bo-window .bo-body {height:calc(100% - 26px)!important;margin-top:3px!important}
html.theme-win98 #bo-root .bo-window.bo-minimized {height:29px!important;min-height:29px!important;overflow:hidden!important}
html.theme-win98 #bo-root .bo-titlebar :is(.bo-title,.w98-control) {font-family:'W98 UI',Tahoma,Arial,sans-serif!important}

/* v29: media covers stay clear; retain the overlay layout and native play controls. */
html.theme-win98 #root #videos .aspect-video [class~="bg-background/40"] {
  background:transparent!important;background-image:none!important;
}

/* v30: one shared command row; React navigation stays in its original DOM parent. */
html.theme-win98 #root.w98-browser-frame.w98-menus-unified {
  display:grid;grid-template-columns:max-content minmax(0,1fr);
  grid-template-rows:auto auto auto auto minmax(0,1fr) auto;
}
html.theme-win98 #root.w98-menus-unified :is(.w98-chrome,.w98-browser-container) {display:contents!important}
html.theme-win98 #root.w98-menus-unified .w98-titlebar {grid-column:1/-1;grid-row:1}
html.theme-win98 #root.w98-menus-unified .w98-menu-row {grid-column:1/-1;grid-row:2}
html.theme-win98 #root.w98-menus-unified .w98-explorer-toolbar {
  grid-column:1;grid-row:3;align-self:stretch;min-width:0;margin:0;
  border-top:0;border-right:1px solid #808080;box-shadow:inset -1px 0 #fff,0 1px #fff;
}
html.theme-win98 #root.w98-menus-unified .w98-site-nav {
  grid-column:2;grid-row:3;min-width:0;width:auto!important;max-width:100%!important;
  display:flex;flex-direction:column;justify-content:center;align-self:stretch;overflow:visible;
}
html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:first-child {
  width:100%;min-width:0;min-height:0;padding:4px 6px!important;gap:6px;
}
html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:first-child>a {
  flex:1;min-width:0;max-width:115px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
}
html.theme-win98 #root.w98-menus-unified .w98-site-nav .gap-6 {gap:2px!important;flex-wrap:nowrap;flex-shrink:0}
html.theme-win98 #root.w98-menus-unified .w98-site-nav a:not(:first-child) {padding:4px!important}
html.theme-win98 #root.w98-menus-unified .w98-tool {min-width:48px;padding:4px 5px!important}
html.theme-win98 #root.w98-menus-unified .w98-address {grid-column:1/-1;grid-row:4}
html.theme-win98 #root.w98-menus-unified main.w98-scroll-pane {grid-column:1/-1;grid-row:5}
html.theme-win98 #root.w98-menus-unified .w98-status {grid-column:1/-1;grid-row:6}
@media(max-width:1279px) {
  html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:first-child>a {display:none!important}
  html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:first-child {justify-content:flex-end}
  html.theme-win98 #root.w98-menus-unified .w98-explorer-toolbar {min-height:40px;gap:2px;padding:3px}
  html.theme-win98 #root.w98-menus-unified .w98-tool {min-width:27px;min-height:30px;padding:3px!important}
  html.theme-win98 #root.w98-menus-unified .w98-tool>span {display:none}
  html.theme-win98 #root.w98-menus-unified .w98-tool .w98-ui-icon {width:20px;height:20px}
  html.theme-win98 #root.w98-menus-unified .w98-toolbar-separator {height:27px;margin:0 3px}
}
@media(max-width:767px) {
  html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:nth-child(2) {
    position:absolute!important;top:100%!important;left:0!important;right:0!important;
    max-height:45dvh;overflow-y:auto;box-shadow:var(--w98-raised)!important;z-index:60;
  }
  html.theme-win98 #root.w98-menus-unified .w98-site-nav>div:first-child {padding:3px!important}
  html.theme-win98 #root.w98-menus-unified .w98-site-nav .gap-3 {gap:4px!important}
}
@media(max-height:500px) {
  html.theme-win98 #root.w98-menus-unified .w98-explorer-toolbar {display:flex}
}

/* v31: the right-click warning uses Clippy and stays above the taskbar. */
html.theme-win98 .ctf-context-guard {display:none!important}
html.theme-win98 .w98-clippy-popup {
  position:fixed;right:12px;bottom:calc(var(--w98-taskbar-height) + 12px);z-index:2147483647;
  width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - var(--w98-taskbar-height) - 24px);
  overflow:auto;padding:3px;background:var(--w98-face);border:0;border-radius:0;
  box-shadow:var(--w98-raised),2px 3px 0 rgba(0,0,0,.25);color:#000;font:12px/1.4 Tahoma,Arial,sans-serif;
}
html.theme-win98 .w98-clippy-popup .w98-controls .w98-control {background:var(--w98-face);box-shadow:var(--w98-raised);font-size:0}
html.theme-win98 .w98-clippy-popup .w98-control:active {box-shadow:var(--w98-inset)}
.w98-clippy-body {display:flex;align-items:center;gap:12px;padding:16px 12px 8px}
/* Display the animated character without its embedded raster titlebar. */
.w98-clippy-art {position:relative;width:132px;aspect-ratio:192/144;flex:0 0 132px;overflow:hidden}
.w98-clippy-art img {position:absolute;width:104.1667%;max-width:none;height:auto;left:-2.0833%;top:-19.4444%;image-rendering:pixelated}
.w98-clippy-bubble {position:relative;flex:1;min-width:0;padding:12px;background:#ffffe1;border:1px solid #000;box-shadow:1px 1px #808080;overflow-wrap:anywhere}
.w98-clippy-bubble::before {content:'';position:absolute;left:-7px;top:50%;width:12px;height:12px;background:#ffffe1;border-left:1px solid #000;border-bottom:1px solid #000;transform:translateY(-50%) rotate(45deg)}
.w98-clippy-bubble strong {color:#000080;font-size:13px}
.w98-clippy-bubble p {margin:6px 0;color:#222;font-size:12px;line-height:1.4}
.w98-clippy-bubble code {display:block;color:#000;font:11px/1.4 'Lucida Console','Courier New',monospace}
.w98-clippy-actions {display:flex;justify-content:flex-end;padding:2px 12px 12px}
html.theme-win98 .w98-clippy-actions button {min-width:75px;font-family:'W98 UI',Tahoma,Arial,sans-serif!important}
@media(max-width:480px) {
  .w98-clippy-body {gap:9px;padding:12px 9px 6px}
  .w98-clippy-art {width:92px;flex-basis:92px}
  .w98-clippy-bubble {padding:9px}
}
