:root {
  color-scheme: dark;
  --ansi-bg: #01020a;
  --ansi-panel: #030315;
  --ansi-panel-2: #0b0c35;
  --ansi-line: #343bb0;
  --ansi-line-soft: #222765;
  --ansi-text: #c9d0ff;
  --ansi-muted: #7f88d3;
  --ansi-cyan: #6ff7ff;
  --ansi-magenta: #ff63cf;
  --ansi-yellow: #fff26f;
  --ansi-green: #75ffbd;
  --ansi-red: #ff727e;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--ansi-bg); scrollbar-color: #4b52bf #08091e; }
body { margin: 0; min-height: 100vh; }
a { color: var(--ansi-cyan); }
button, input, textarea, select { font: inherit; }

/* Shared ANSI scanline atmosphere */
.ansi-home-page::after,
.ansi-entry-page::after,
body.ansi-site-theme::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 9999;
  pointer-events: none;
  opacity: .075;
  background: repeating-linear-gradient(to bottom, transparent 0 3px, #8cb5ff 4px);
  mix-blend-mode: screen;
}

/* Entry terminal */
.ansi-entry-page {
  min-height: 100vh;
  padding: 24px;
  display: grid;
  place-items: center;
  color: var(--ansi-text);
  background: radial-gradient(circle at 50% 40%, rgba(58,48,176,.2), transparent 48%), var(--ansi-bg);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.ansi-entry-terminal {
  width: min(920px, 100%);
  min-height: min(720px, calc(100vh - 48px));
  display: grid;
  grid-template-rows: auto 1fr auto;
  border: 2px solid var(--ansi-line);
  background: var(--ansi-panel);
  box-shadow: 0 0 0 6px #08091f, 0 0 80px rgba(77,86,255,.22), inset 0 0 70px rgba(51,40,160,.12);
}
.ansi-entry-terminal header,
.ansi-entry-terminal footer {
  min-height: 38px;
  padding: 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #8a92de;
  background: #101149;
  border-bottom: 1px solid var(--ansi-line);
  font-size: .58rem;
}
.ansi-entry-terminal footer { border-top: 1px solid var(--ansi-line); border-bottom: 0; }
.ansi-entry-terminal section { padding: 34px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.ansi-entry-log { align-self: stretch; margin: 0 0 26px; color: #6570c2; font-size: .65rem; line-height: 1.8; text-align: left; }
.ansi-entry-title, .ansi-home-hero h1 { font: 950 clamp(3.2rem, 10vw, 7.4rem)/.75 ui-sans-serif, system-ui, sans-serif; letter-spacing: -.08em; text-shadow: 5px 5px #30258e; }
.ansi-entry-title span, .ansi-entry-title i, .ansi-home-hero h1 span, .ansi-home-hero h1 i { display: block; }.ansi-entry-title span, .ansi-home-hero h1 span { color: var(--ansi-cyan); }.ansi-entry-title i, .ansi-home-hero h1 i { color: var(--ansi-magenta); font-style: normal; }
.ansi-entry-terminal section > p:not(.ansi-entry-log) { margin: 24px 0 14px; color: var(--ansi-yellow); font-size: .62rem; letter-spacing: .12em; }
.ansi-entry-object { width: 160px; height: 160px; margin: 6px 0 16px; display: grid; place-items: center; overflow: hidden; border: 1px solid var(--ansi-line); background: #080820; }
.ansi-entry-object img { max-width: 130px; max-height: 130px; image-rendering: auto; }
.ansi-entry-button { padding: 12px 18px; border: 1px solid var(--ansi-cyan); color: var(--ansi-cyan); font-size: .75rem; font-weight: 900; text-decoration: none; }
.ansi-entry-button:hover { color: #030315; background: var(--ansi-cyan); text-shadow: none; }
.ansi-entry-terminal button { margin-top: 12px; padding: 6px 8px; border: 0; color: #727ccc; background: transparent; cursor: pointer; font-size: .57rem; }

/* Homepage */
.ansi-home-page {
  min-height: 100vh;
  padding: 22px;
  color: var(--ansi-text);
  background: radial-gradient(circle at 50% 18%, rgba(75,58,205,.18), transparent 40%), var(--ansi-bg);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.ansi-home-terminal {
  width: min(1240px, 100%);
  min-height: calc(100vh - 44px);
  margin: auto;
  border: 2px solid var(--ansi-line);
  background: var(--ansi-panel);
  box-shadow: 0 0 0 5px #08091f, 0 0 80px rgba(83,85,255,.2), inset 0 0 70px rgba(55,40,160,.1);
}
.ansi-home-status { min-height: 36px; padding: 0 15px; display: flex; align-items: center; justify-content: space-between; color: #8990e8; background: #10114a; border-bottom: 1px solid var(--ansi-line); font-size: .58rem; }
.ansi-home-hero { padding: 28px 25px 20px; text-align: center; }
.ansi-home-rule { overflow: hidden; font-size: clamp(.48rem, 1.4vw, .85rem); white-space: nowrap; }.ansi-home-rule.cyan { color: var(--ansi-cyan); }.ansi-home-rule.magenta { color: var(--ansi-magenta); }
.ansi-home-stars { margin: 13px 0 7px; color: var(--ansi-yellow); font-size: .55rem; letter-spacing: .2em; }
.ansi-home-hero h1 { margin: 0; }
.ansi-home-hero h1 span { color: var(--ansi-cyan); }.ansi-home-hero h1 i { color: var(--ansi-magenta); font-style: normal; }
.ansi-home-subtitle { margin: 25px 0 16px; color: var(--ansi-yellow); font-size: .62rem; letter-spacing: .11em; }
.ansi-home-intro { margin: 0 25px 18px; padding: 14px 17px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 25px; border-block: 1px dashed #3b42a9; }
.ansi-home-intro p { margin: 0; color: #aeb6f3; font-size: .69rem; line-height: 1.7; }.ansi-home-intro b { color: var(--ansi-yellow); }.ansi-home-intro .ansi-home-quote { color: var(--ansi-magenta); text-align: right; white-space: nowrap; }
.ansi-home-layout { margin: 0 25px; display: grid; grid-template-columns: 1.05fr .95fr; border: 1px solid var(--ansi-line); }
.ansi-home-layout > * { min-width: 0; padding: 22px; position: relative; }.ansi-home-doors { border-right: 1px solid var(--ansi-line); }
.ansi-box-label { position: absolute; top: -8px; left: 16px; padding: 0 8px; color: var(--ansi-cyan); background: var(--ansi-panel); font-size: .62rem; }
.ansi-home-doors a { min-height: 55px; padding: 0 8px; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 7px; color: #bec7ff; border-bottom: 1px dotted #292d7c; text-decoration: none; font-size: .7rem; }
.ansi-home-doors a:hover { color: #050410; background: var(--ansi-cyan); text-shadow: none; }.ansi-home-doors kbd { color: var(--ansi-magenta); font: 900 .72rem inherit; }.ansi-home-doors span { font-weight: 800; }.ansi-home-doors small { margin-top: 4px; display: block; color: #737dc6; font-size: .55rem; font-weight: 400; }.ansi-home-doors em { color: #777fc6; font-size: .52rem; font-style: normal; }.ansi-home-doors a:hover kbd, .ansi-home-doors a:hover em, .ansi-home-doors a:hover small { color: #5d176c; }
.ansi-post-meta { display: flex; justify-content: space-between; color: #747cca; font-size: .53rem; }.ansi-home-sysop h2 { margin: 24px 0 10px; color: var(--ansi-yellow); font-size: 1.6rem; }.ansi-home-sysop > p { color: #aab2f4; font-size: .68rem; line-height: 1.65; }
.ansi-home-upload { margin-top: 18px; padding: 12px; display: grid; border-left: 3px solid var(--ansi-magenta); background: #161347; }.ansi-home-upload b { color: var(--ansi-magenta); font-size: .55rem; }.ansi-home-upload span { margin: 7px 0 3px; color: var(--ansi-cyan); font-size: .7rem; }.ansi-home-upload small { color: #7f87d5; font-size: .55rem; }.ansi-home-upload a { margin-top: 11px; color: var(--ansi-yellow); font-size: .55rem; text-decoration: none; }.ansi-home-sysop p.ansi-home-signoff { color: var(--ansi-magenta); text-align: right; }
.ansi-network { position: relative; margin: 18px 25px 0; padding: 22px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; border: 1px solid var(--ansi-line); }.ansi-network a { padding: 12px; display: grid; gap: 5px; border: 1px solid #262b74; text-decoration: none; }.ansi-network a:hover { border-color: var(--ansi-magenta); background: #14123f; }.ansi-network b { color: var(--ansi-cyan); font-size: .61rem; }.ansi-network span { color: #747dbe; font-size: .54rem; }
.ansi-home-bottom { margin: 16px 25px 0; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--ansi-line); }.ansi-home-bottom div { min-height: 58px; padding: 10px; display: grid; place-items: center; border-right: 1px solid var(--ansi-line); }.ansi-home-bottom div:last-child { border: 0; }.ansi-home-bottom b { color: #626bc5; font-size: .5rem; }.ansi-home-bottom span { color: #c0c8ff; font-size: .7rem; }.ansi-home-bottom .ansi-online { color: var(--ansi-green); }
.ansi-home-prompt { min-height: 70px; padding: 18px 25px; display: flex; align-items: center; color: var(--ansi-cyan); font-size: .68rem; }.ansi-home-prompt b { color: var(--ansi-yellow); }.ansi-home-prompt i { margin-left: 7px; color: var(--ansi-magenta); font-style: normal; animation: ansi-blink 1s steps(1) infinite; }.ansi-home-prompt a { margin-left: auto; color: #6b72be; font-size: .54rem; }

/* Site-wide BBS header */
.ansi-site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  min-height: 64px;
  padding: 0 max(18px, calc((100vw - 1420px)/2));
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: stretch;
  border-bottom: 1px solid var(--ansi-line);
  background: rgba(3,3,21,.96);
  box-shadow: 0 10px 28px rgba(0,0,0,.46);
  backdrop-filter: blur(12px);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
.ansi-site-brand { padding: 0 19px 0 0; display: flex; align-items: center; gap: 9px; color: #e7eaff; text-decoration: none; }.ansi-site-brand > b { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--ansi-magenta); color: var(--ansi-magenta); }.ansi-site-brand span { font-size: .68rem; font-weight: 900; }.ansi-site-brand small { margin-top: 3px; display: block; color: #6d75b0; font-size: .47rem; font-weight: 400; }
.ansi-site-header nav { min-width: 0; display: flex; align-items: stretch; justify-content: center; border-inline: 1px solid #272b6d; }.ansi-site-header nav a { padding: 0 13px; display: grid; place-items: center; color: #8790d2; text-decoration: none; font-size: .55rem; font-weight: 800; }.ansi-site-header nav a:hover, .ansi-site-header nav a[aria-current="page"] { color: #050410; background: var(--ansi-cyan); text-shadow: none; }
.ansi-site-online { padding-left: 18px; align-self: center; color: #7f88c5; font-size: .52rem; }.ansi-site-online i { width: 7px; height: 7px; margin-right: 7px; display: inline-block; border-radius: 50%; background: var(--ansi-green); box-shadow: 0 0 11px var(--ansi-green); }
.ansi-site-header a:focus-visible,
.ansi-home-doors a:focus-visible,
.ansi-home-upload a:focus-visible,
.ansi-network a:focus-visible,
.ansi-home-prompt a:focus-visible {
  outline: 2px solid var(--ansi-yellow);
  outline-offset: -3px;
  color: var(--ansi-yellow);
}

/* Keep the minimized AI helper in the corner without letting its artwork
   become a second sidebar. The open chat panel keeps the widget's own size. */
.cai-root[data-state="minimized"] .cai-launcher {
  width: 120px !important;
  height: 164px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.cai-root[data-state="minimized"] [data-cai-lava-image] {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: contain !important;
}

/* Existing site content, restyled without changing data or behavior */
body.ansi-site-theme,
body.real-site-page.ansi-site-theme {
  min-height: 100vh !important;
  color: var(--ansi-text) !important;
  background: radial-gradient(circle at 50% 12%, rgba(58,48,176,.18), transparent 34%), var(--ansi-bg) !important;
  background-image: radial-gradient(circle at 50% 12%, rgba(58,48,176,.18), transparent 34%) !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
  text-shadow: 0 0 7px rgba(109,135,255,.15);
}
body.ansi-site-theme::before { content: none !important; display: none !important; background: none !important; }
.ansi-site-theme .real-site-wrapper { width: min(1420px, calc(100% - 36px)) !important; max-width: none !important; margin: 28px auto !important; padding: 0 !important; border: 1px solid var(--ansi-line) !important; background: rgba(3,3,21,.94) !important; box-shadow: 0 28px 80px rgba(0,0,0,.54), inset 0 0 70px rgba(55,40,160,.08) !important; }
.ansi-site-theme .real-site-wrapper > br:first-child { display: none; }
.ansi-site-theme .real-site-main { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; display: grid !important; grid-template-columns: minmax(0,1fr) 260px !important; gap: 0 !important; align-items: start !important; }
.ansi-site-theme .real-site-content { min-width: 0 !important; padding: 24px !important; border-right: 1px solid var(--ansi-line-soft) !important; order: 0 !important; grid-column: 1 !important; grid-row: 1 !important; }
.ansi-site-theme .real-site-sidebar { min-width: 0 !important; width: auto !important; padding: 24px 14px !important; position: sticky !important; top: 92px !important; order: 1 !important; grid-column: 2 !important; grid-row: 1 !important; background: var(--ansi-panel) !important; }
.ansi-site-theme .real-site-header { width: min(1420px, calc(100% - 36px)) !important; max-width: none !important; margin: 28px auto 0 !important; padding: 20px !important; display: grid !important; grid-template-columns: auto 1fr !important; gap: 20px !important; border: 1px solid var(--ansi-line) !important; background: var(--ansi-panel) !important; color: var(--ansi-text) !important; box-shadow: none !important; }
.ansi-site-theme .real-site-header img, .ansi-site-theme .deadlock-sidebar-info img, .ansi-site-theme .steam-profile-card img { border: 1px solid var(--ansi-magenta) !important; border-radius: 0 !important; box-shadow: 5px 5px #241d72 !important; }
.ansi-site-theme .real-site-title { color: var(--ansi-cyan) !important; font-family: inherit !important; font-weight: 900 !important; letter-spacing: -.03em; text-shadow: 3px 3px #25217b !important; }
.ansi-site-theme .real-site-subtitle { color: var(--ansi-magenta) !important; }
.ansi-site-theme .real-site-description { color: #a7afea !important; line-height: 1.65 !important; }

.ansi-site-theme .real-site-section { margin: 0 0 18px !important; overflow: visible !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: var(--ansi-panel) !important; box-shadow: none !important; }
.ansi-site-theme .real-site-section-header { min-height: 38px !important; padding: 0 13px !important; display: flex !important; align-items: center !important; color: var(--ansi-cyan) !important; border: 0 !important; border-bottom: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: #101149 !important; font-family: inherit !important; font-size: .66rem !important; font-weight: 900 !important; letter-spacing: .1em !important; text-transform: uppercase !important; text-shadow: none !important; }
.ansi-site-theme .real-site-section-header::before { content: "╢ "; color: var(--ansi-magenta); }
.ansi-site-theme .real-site-section-header::after { content: " ╟"; color: var(--ansi-magenta); }
.ansi-site-theme .real-site-section-body { padding: 20px !important; color: var(--ansi-text) !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.ansi-site-theme h1, .ansi-site-theme h2, .ansi-site-theme h3, .ansi-site-theme h4 { color: var(--ansi-yellow) !important; font-family: inherit !important; text-shadow: none !important; }
.ansi-site-theme p, .ansi-site-theme li, .ansi-site-theme dd { color: #aab2eb; line-height: 1.65; }
.ansi-site-theme a { color: var(--ansi-cyan); text-decoration-color: rgba(111,247,255,.5); }
.ansi-site-theme a:hover { color: var(--ansi-yellow); }
.ansi-site-theme hr { border: 0; border-top: 1px dashed var(--ansi-line); }
.ansi-site-theme code, .ansi-site-theme pre { color: var(--ansi-green) !important; border: 1px solid #2e745d !important; background: #03140f !important; font-family: inherit !important; }

/* Sidebar doors */
.ansi-site-theme .real-site-menu { width: 100% !important; margin: 0 !important; padding: 0 !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: #060722 !important; box-shadow: none !important; }
.ansi-site-theme .real-site-menu::before { content: "╢ BOARD DIRECTORY ╟"; padding: 11px 12px; display: block; color: var(--ansi-cyan); border-bottom: 1px solid var(--ansi-line); background: #101149; font-size: .57rem; letter-spacing: .08em; }
.ansi-site-theme .real-site-menu ul { margin: 0 !important; padding: 9px !important; list-style: none !important; }
.ansi-site-theme .real-site-menu li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.ansi-site-theme .real-site-menu li.deadlock-menu-label { padding: 14px 8px 5px !important; color: var(--ansi-magenta) !important; font-size: .55rem !important; letter-spacing: .08em; }
.ansi-site-theme .real-site-menu a { padding: 10px 9px !important; display: block !important; color: #98a1df !important; border-bottom: 1px dotted #2a2f78 !important; background: transparent !important; font-size: .61rem !important; text-decoration: none !important; }
.ansi-site-theme .real-site-menu a::before { content: "> "; color: var(--ansi-magenta); }
.ansi-site-theme .real-site-menu a:hover { color: #030315 !important; background: var(--ansi-cyan) !important; text-shadow: none !important; }
.ansi-site-theme .deadlock-sidebar-info, .ansi-site-theme .deadlock-sidebar-profile { padding: 14px !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: #080925 !important; box-shadow: none !important; }

/* Portal headers and cards */
.ansi-site-theme .deadlock-portal-header { padding: 24px !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: linear-gradient(135deg, #11104a, #08082a) !important; box-shadow: none !important; }
.ansi-site-theme .deadlock-portal-header-eyebrow { color: var(--ansi-magenta) !important; font-size: .58rem !important; letter-spacing: .12em; }
.ansi-site-theme .deadlock-portal-header-cta, .ansi-site-theme .deadlock-portal-nav-card, .ansi-site-theme .guestbook-portal-link { border: 1px solid #3b43b2 !important; border-radius: 0 !important; background: #090a2c !important; box-shadow: none !important; }
.ansi-site-theme .deadlock-portal-nav-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 9px !important; }
.ansi-site-theme .deadlock-portal-nav-card { padding: 15px !important; color: var(--ansi-text) !important; text-decoration: none !important; }
.ansi-site-theme .deadlock-portal-nav-card:hover, .ansi-site-theme .guestbook-portal-link:hover { border-color: var(--ansi-magenta) !important; background: #171445 !important; transform: none !important; }
.ansi-site-theme .deadlock-portal-nav-card strong, .ansi-site-theme .guestbook-portal-title { color: var(--ansi-cyan) !important; font-family: inherit !important; }
.ansi-site-theme .deadlock-portal-nav-card small, .ansi-site-theme .guestbook-portal-copy { color: #7f88c8 !important; }
.ansi-site-theme .deadlock-portal-link { position: relative; display: block; overflow: hidden; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; }.ansi-site-theme .deadlock-portal-link img { display: block; width: 100%; filter: saturate(.7) contrast(1.1) hue-rotate(12deg); }.ansi-site-theme .deadlock-portal-caption { color: var(--ansi-cyan) !important; background: #0e1048 !important; font-family: inherit !important; }

/* Lists, cards, reports */
.ansi-site-theme .deadlock-player-browser-controls, .ansi-site-theme .deadlock-player-request-section, .ansi-site-theme .auto-check-section, .ansi-site-theme .prediction-search-panel, .ansi-site-theme .prediction-artifact-panel, .ansi-site-theme .prediction-callout { border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: #080925 !important; box-shadow: none !important; }
.ansi-site-theme .deadlock-player-list { gap: 9px !important; }
.ansi-site-theme .deadlock-player-card, .ansi-site-theme .prediction-feature-card, .ansi-site-theme .deadlock-hero-browser-result, .ansi-site-theme .deadlock-report-pair-panel { border: 1px solid #30378f !important; border-radius: 0 !important; background: #070823 !important; box-shadow: none !important; }
.ansi-site-theme .deadlock-player-card:hover, .ansi-site-theme .prediction-feature-card:hover { border-color: var(--ansi-magenta) !important; transform: none !important; }
.ansi-site-theme .deadlock-player-card h2 { color: var(--ansi-cyan) !important; }
.ansi-site-theme .deadlock-player-avatar { border: 1px solid var(--ansi-magenta) !important; border-radius: 0 !important; background: #15134c !important; }
.ansi-site-theme .prediction-pill, .ansi-site-theme .mr-hero-chip { border: 1px solid #3d45a8 !important; border-radius: 0 !important; color: var(--ansi-cyan) !important; background: #111141 !important; }
.ansi-site-theme .prediction-buff { color: var(--ansi-green) !important; }.ansi-site-theme .prediction-nerf, .ansi-site-theme .prediction-warning, .ansi-site-theme .automation-status-failed { color: var(--ansi-red) !important; }
.ansi-site-theme .automation-status-passed-with-warnings, .ansi-site-theme .prediction-unclear { color: var(--ansi-yellow) !important; }
.ansi-site-theme .automation-status-row, .ansi-site-theme .auto-check-line { border-color: #2d337f !important; background: #080925 !important; }

/* Tables and data */
.ansi-site-theme .table-wrapper, .ansi-site-theme .prediction-table-wrap { overflow-x: auto !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; }
.ansi-site-theme table { width: 100%; border-collapse: collapse !important; color: var(--ansi-text) !important; border: 1px solid var(--ansi-line) !important; border-radius: 0 !important; background: #05061d !important; box-shadow: none !important; font-family: inherit !important; }
.ansi-site-theme th { padding: 10px !important; color: var(--ansi-yellow) !important; border: 1px solid #3a41a2 !important; background: #15134d !important; font-size: .61rem !important; letter-spacing: .05em; text-transform: uppercase; }
.ansi-site-theme td { padding: 9px !important; color: #aeb6ed !important; border: 1px solid #242a70 !important; background: transparent !important; font-size: .64rem !important; }
.ansi-site-theme tr:nth-child(even) td { background: rgba(33,32,91,.32) !important; }
.ansi-site-theme tr:hover td { background: rgba(45,40,122,.48) !important; }

/* Forms */
.ansi-site-theme label { color: var(--ansi-cyan) !important; font-size: .62rem !important; font-weight: 800 !important; }
.ansi-site-theme input, .ansi-site-theme textarea, .ansi-site-theme select { border: 1px solid #4149aa !important; border-radius: 0 !important; outline: 0 !important; color: #e3e7ff !important; background: #060720 !important; box-shadow: inset 0 0 16px rgba(35,40,110,.18) !important; font-family: inherit !important; }
.ansi-site-theme input:focus, .ansi-site-theme textarea:focus, .ansi-site-theme select:focus { border-color: var(--ansi-cyan) !important; box-shadow: 0 0 0 2px rgba(111,247,255,.15) !important; }
.ansi-site-theme button, .ansi-site-theme .auto-check-btn { border: 1px solid var(--ansi-cyan) !important; border-radius: 0 !important; color: var(--ansi-cyan) !important; background: #090a2a !important; box-shadow: none !important; font-family: inherit !important; font-weight: 900 !important; }
.ansi-site-theme button:hover, .ansi-site-theme .auto-check-btn:hover { color: #030315 !important; background: var(--ansi-cyan) !important; transform: none !important; }
.ansi-site-theme .guestbook-warning { border: 1px solid #b89631 !important; border-radius: 0 !important; color: var(--ansi-yellow) !important; background: #211b08 !important; }
.ansi-site-theme .guestbook-entry { border: 1px solid #343b98 !important; border-radius: 0 !important; background: #080925 !important; box-shadow: none !important; }

/* Timeline */
.ansi-site-theme .site-timeline { border-left: 2px solid var(--ansi-magenta) !important; }
.ansi-site-theme .site-timeline-entry::before { background: var(--ansi-cyan) !important; border-radius: 0 !important; box-shadow: 0 0 10px var(--ansi-cyan) !important; transform: rotate(45deg); }
.ansi-site-theme .site-timeline-date { color: var(--ansi-magenta) !important; font-family: inherit !important; }.ansi-site-theme .site-timeline-title { color: var(--ansi-yellow) !important; font-family: inherit !important; }

/* Footer */
.ansi-site-theme .footer { margin: 0 !important; padding: 18px !important; border-top: 1px solid var(--ansi-line) !important; color: #737dbf !important; background: #080925 !important; font-family: inherit !important; font-size: .58rem !important; text-align: center; }
.ansi-site-theme .footer::before { content: "CHEERUP BBS / SYSOP: "; color: var(--ansi-magenta); }

/* Website Maze keeps its game canvas, inside the BBS shell */
body.ansi-maze-page { background: radial-gradient(circle at 50% 12%, rgba(58,48,176,.18), transparent 34%), var(--ansi-bg) !important; }
.ansi-maze-page .page { width: min(1680px, calc(100% - 36px)) !important; margin: 28px auto !important; padding: 24px !important; border: 1px solid var(--ansi-line) !important; background: var(--ansi-panel) !important; box-shadow: 0 28px 80px rgba(0,0,0,.54) !important; }
.ansi-maze-page .page > header { padding-bottom: 20px; border-bottom: 1px dashed var(--ansi-line); }
.ansi-maze-page .eyebrow { color: var(--ansi-magenta) !important; font-family: inherit !important; }
.ansi-maze-page .eyebrow::before { border-radius: 0 !important; background: var(--ansi-cyan) !important; box-shadow: 0 0 14px var(--ansi-cyan) !important; transform: rotate(45deg); }
.ansi-maze-page .subtitle { color: #919ad9 !important; font-family: inherit !important; }
.ansi-maze-page .game-shell, .ansi-maze-page .card { border-color: var(--ansi-line) !important; border-radius: 0 !important; background: #05061d !important; box-shadow: none !important; }
.ansi-maze-page .controls { border-color: var(--ansi-line) !important; background: #101149 !important; color: var(--ansi-cyan) !important; font-family: inherit !important; }

@keyframes ansi-blink { 50% { opacity: 0; } }

@media (max-width: 1060px) {
  .ansi-site-header { position: relative; display: block; padding: 13px; }.ansi-site-online { display: none; }
  .ansi-site-brand { padding: 0 0 12px; }
  .ansi-site-header nav { justify-content: flex-start; overflow-x: auto; border: 1px solid var(--ansi-line-soft); }
  .ansi-site-header nav a { min-height: 38px; padding-inline: 11px; font-size: .5rem; white-space: nowrap; }
  .ansi-site-theme .real-site-main { grid-template-columns: minmax(0,1fr) 220px !important; }
}

@media (max-width: 800px) {
  .ansi-entry-page, .ansi-home-page { padding: 0; }
  .ansi-entry-terminal, .ansi-home-terminal { min-height: 100vh; border: 0; box-shadow: none; }
  .ansi-home-intro { grid-template-columns: 1fr; }.ansi-home-intro .ansi-home-quote { text-align: left; }
  .ansi-home-layout { grid-template-columns: 1fr; }.ansi-home-doors { border-right: 0; border-bottom: 1px solid var(--ansi-line); }
  .ansi-network { grid-template-columns: 1fr 1fr; }
  .ansi-site-theme .real-site-wrapper { width: calc(100% - 16px) !important; margin: 8px auto !important; }
  .ansi-site-theme .real-site-main { display: block !important; }
  .ansi-site-theme .real-site-content { padding: 12px !important; border-right: 0 !important; order: 0 !important; }
  .ansi-site-theme .real-site-sidebar { padding: 0 12px 12px !important; position: static !important; order: 1 !important; }
  .ansi-site-theme .real-site-header { width: calc(100% - 16px) !important; margin: 8px auto 0 !important; grid-template-columns: 1fr !important; }
  .ansi-site-theme .deadlock-portal-nav-grid { grid-template-columns: 1fr !important; }
  .ansi-maze-page .page { width: calc(100% - 16px) !important; margin: 8px auto !important; padding: 13px !important; }
}

@media (max-width: 520px) {
  .ansi-entry-terminal header span:nth-child(2), .ansi-home-status span:nth-child(2) { display: none; }
  .ansi-entry-terminal section { padding: 24px 14px; }.ansi-entry-title, .ansi-home-hero h1 { font-size: 3.5rem; }
  .ansi-home-hero { padding-inline: 10px; }.ansi-home-subtitle { font-size: .48rem; line-height: 1.5; }
  .ansi-home-intro, .ansi-home-layout, .ansi-network, .ansi-home-bottom { margin-inline: 10px; }
  .ansi-home-layout > * { padding: 18px 11px; }.ansi-home-doors a { grid-template-columns: 35px 1fr; }.ansi-home-doors em { display: none; }
  .ansi-network, .ansi-home-bottom { grid-template-columns: 1fr 1fr; }.ansi-home-bottom div:nth-child(2) { border-right: 0; }.ansi-home-bottom div:nth-child(-n+2) { border-bottom: 1px solid var(--ansi-line); }
  .ansi-home-prompt { padding-inline: 10px; font-size: .55rem; }.ansi-home-prompt a { display: none; }
  .ansi-site-theme .real-site-section-body { padding: 14px !important; }
  .ansi-site-theme .deadlock-report-pair-grid, .ansi-site-theme .prediction-feature-grid { grid-template-columns: 1fr !important; }
  .cai-root { right: 6px !important; bottom: 6px !important; }
  .cai-root[data-state="minimized"] .cai-launcher { width: 92px !important; height: 126px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
