/* =========================
   THEME TOKENS
   ========================= */
:root {
  --ui-scale: 1.08;
  --color-bg: #0d0f11;
  --color-surface: #09252A;
  --color-text: #f8fafc;
  --color-muted: #a4a9ad;
  --color-border: #2c2f32;
  --color-primary: #FBEE23;
  --color-primary-contrast: #0d0f11;
  --color-link: #ffe84c;
  --color-link-hover: #fff8b3;
  --color-accent: #ff9b20;
  --color-accent-contrast: #0d0f11;
  --color-primary-hover: #e2d41f;
  --color-primary-active: #c7b81a;
  --focus-ring: #fff8b3;
  --selection-bg: #ffe84c;
  --selection-text: #0d0f11;
  --color-success: #28a745;
  --color-danger: #dc3545;
  --row-divider: rgba(255, 255, 255, 0.08);
  --color-track: #3d4c55;
  --max-content-width: 1200px;
  --font-sans: ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,"Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";
  --font-mono: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --shadow-1: 0 6px 20px rgba(0,0,0,0.15);
  --terminal-font-size: 0.94rem;
  --landing-h1-min: 2.2rem;
  --landing-h1-vw: 6.2vw;
  --landing-h1-max: 3.6rem;
  --landing-h2-min: 1.1rem;
  --landing-h2-vw: 3vw;
  --landing-h2-max: 1.75rem;
  --brand-logo-min: 96px;
  --brand-logo-vw: 12vw;
  --brand-logo-max: 144px;
  --color-social-linkedin: #0A66C2;
  --color-social-mastodon: #6364ff;
  --color-social-github: #f3e8d7;
  --color-social-discord: #5865f2;
  --color-social-kofi: #29abe0;
  --color-social-patreon: #f96854;
  --rarity-color-common: #9aa4b8;
  --rarity-color-uncommon: #22d3ee;
  --rarity-color-rare: #3b82f6;
  --rarity-color-legendary: #7c4dff;
  --rarity-color-mythic: #ffc107;
  --team-gradient-start: color-mix(in hsl,var(--color-surface) 88%,var(--color-bg));
  --team-gradient-end: color-mix(in hsl,var(--color-surface) 94%,var(--color-bg));
}

/* =========================
   LAYOUT CORE
   ========================= */
.container { max-width: var(--max-content-width); margin-inline: auto; padding-inline: var(--space-5); width: 100%; }
.centered { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; }
.row { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--space-4); align-items: start; }
.col { grid-column: span 12; }
@media (min-width: 576px) { .col-sm-6 { grid-column: span 6; } }

/* =========================
   ITEM COLORS
   ========================= */
.rarity-common { color: var(--rarity-color-common); }
.rarity-uncommon { color: var(--rarity-color-uncommon); }
.rarity-rare { color: var(--rarity-color-rare); }
.rarity-legendary { color: var(--rarity-color-legendary); }
.rarity-mythic { color: var(--rarity-color-mythic); }

/* =========================
   BASE RESET & TYPOGRAPHY
   ========================= */
html { font-size: calc(100% * var(--ui-scale)); }
*,*::before,*::after { box-sizing: border-box; }
html,body { height: 100%; }
body { margin: 0; background: var(--color-bg); color: var(--color-text); font-family: var(--font-sans); line-height: 1.55; display: flex; min-height: 100dvh; flex-direction: column; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--color-link); text-decoration: none; }
a:hover { color: var(--color-link-hover); text-decoration: underline; }
h1,h2,h3 { margin: 0 0 var(--space-3) 0; line-height: 1.2; }
p { margin: 0 0 var(--space-3) 0; }

/* =========================
   ACCESSIBILITY
   ========================= */
:where(a,button,input,textarea,select):focus-visible { outline: 2px solid var(--color-link); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; } }

/* =========================
   NAVBAR
   ========================= */
.app-navbar { position: sticky; top: 0; z-index: 1000; background: inherit; border-bottom: 1px solid var(--color-border); backdrop-filter: saturate(120%) blur(6px); }
.app-navbar .nav-inner { display: flex; align-items: center; justify-content: space-between; padding: 0.5rem 0; }
.nav-brand { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--color-text); text-decoration: none; }
.nav-logo { width: 24px; height: 24px; border-radius: 4px; }
.brand-title { font-weight: 700; letter-spacing: 0.2px; }
.nav-toggle { display: none; background: transparent; border: 1px solid var(--color-border); border-radius: 8px; padding: 0.4rem 0.5rem; color: var(--color-text); }
.nav-toggle-bar { display: block; width: 20px; height: 2px; margin: 4px 0; background: var(--color-text); border-radius: 2px; }
.nav-menu { display: flex; align-items: center; gap: 1rem; }
.nav-links { display: flex; align-items: center; gap: 0.25rem; list-style: none; margin: 0; padding: 0; }
.nav-link { display: inline-block; padding: 0.5rem 0.75rem; color: var(--color-text); text-decoration: none; border-radius: 8px; transition: background-color 120ms ease,color 120ms ease,opacity 120ms ease,transform 120ms ease; opacity: 0.95; }
.nav-link:hover,.nav-link:focus-visible { background: rgba(255,255,255,0.08); outline: none; opacity: 1; }
.nav-link.is-active { background: rgba(255,255,255,0.12); font-weight: 600; opacity: 1; }
.nav-actions { display: flex; align-items: center; gap: 0.75rem; }
@media (max-width: 900px) { .nav-toggle { display: inline-block; } .nav-menu { display: none; } .nav-menu.is-open,.nav-menu.open { display: grid; gap: 0.75rem; width: 100%; padding-top: 0.75rem; } .nav-links { display: grid; gap: 0.25rem; } .nav-actions { justify-content: flex-start; } }

/* =========================
   SOCIAL ICONS
   ========================= */
.social-icon { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; font-size: 16px; line-height: 1; background: rgba(255,255,255,0.08); color: #fff; transition: background-color 120ms ease,color 120ms ease,transform 120ms ease; }
.social-icon:hover,.social-icon:focus-visible { transform: translateY(-2px); outline: none; }
.social-icon--mastodon:hover,.social-icon--mastodon:focus-visible { background: var(--color-social-mastodon); color: var(--color-primary-contrast); }
.social-icon--github:hover,.social-icon--github:focus-visible { background: var(--color-social-github); color: var(--color-primary-contrast); }
.social-icon--discord:hover,.social-icon--discord:focus-visible { background: var(--color-social-discord); color: var(--color-primary-contrast); }
.social-icon--kofi:hover,.social-icon--kofi:focus-visible { background: var(--color-social-kofi); color: var(--color-primary-contrast); }
.social-icon--patreon:hover,.social-icon--patreon:focus-visible { background: var(--color-social-patreon); color: var(--color-primary-contrast); }
.social-icon--linkedin:hover,.social-icon--linkedin:focus-visible { background: var(--color-social-linkedin); color: var(--color-primary-contrast); }

/* =========================
   SOCIAL BAR LAYOUT
   ========================= */
.social-nav { margin-top: var(--space-5); display: flex; justify-content: center; }
.social-links { list-style: none; margin: 0; padding: 0; display: inline-flex; gap: var(--space-3); }
.social-links li { display: inline-flex; }

/* =========================
   METRIC
   ========================= */
.stats { display: inline-flex; gap: 0.5rem; align-items: baseline; }
.metric-number { font-weight: 700; font-size: 1.5rem; color: var(--color-text); }

/* =========================
   TABLES
   ========================= */
#logsTable,.data-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 0.92rem; color: var(--color-text); background: transparent; }
#logsTable caption,.data-table caption { caption-side: bottom; padding: 0.4rem 0.75rem; font-size: 0.85rem; color: var(--color-muted); }
#logsTable thead th,.data-table thead th { position: sticky; top: 0; z-index: 2; text-align: left; background: linear-gradient(to bottom,rgba(255,255,255,0.06),rgba(255,255,255,0.02)); color: var(--color-text); font-weight: 600; font-size: 0.85rem; padding: 0.6rem 0.75rem; border-bottom: 1px solid var(--color-border); }
#logsTable td,.data-table td { padding: 0.55rem 0.75rem; vertical-align: top; border-bottom: 1px solid var(--row-divider); }
#logsTable tbody tr:nth-child(odd),.data-table tbody tr:nth-child(odd) { background: transparent; }
#logsTable tbody tr:nth-child(even),.data-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.03); }
#logsTable tbody tr:hover,.data-table tbody tr:hover { background: rgba(255,255,255,0.06); }
#logsTable tr.log-row,.data-table tr.log-row { cursor: pointer; }
#logsTable .caret,.data-table .caret { display: inline-block; width: 0; height: 0; border-left: 6px solid var(--color-muted); border-top: 4px solid transparent; border-bottom: 4px solid transparent; margin-right: 8px; transition: transform 120ms ease,border-left-color 120ms ease; }
#logsTable tr.log-row[aria-expanded="true"] .caret,.data-table tr.log-row[aria-expanded="true"] .caret { transform: rotate(90deg); border-left-color: var(--color-link); }
#logsTable tr.log-row:focus-visible { outline: 2px solid var(--color-link); outline-offset: -2px; }
#logsTable tr.details-row,.data-table tr.details-row { display: none; }
#logsTable tr.details-row.open,.data-table tr.details-row.open { display: table-row; }
#logsTable .details-cell,.data-table .details-cell { background: color-mix(in hsl,var(--color-surface) 94%,var(--color-bg)); border-top: 1px solid var(--color-border); padding: 0.9rem 0.9rem; }
#logsTable .details-grid,.data-table .details-grid { display: grid; grid-template-columns: 120px 1fr; gap: 8px 16px; align-items: start; }
#logsTable .details-label,.data-table .details-label { color: var(--color-muted); font-weight: 600; }
#logsTable .details-text,.data-table .details-text { white-space: pre-wrap; word-break: break-word; }
#logsTable .details-pre,.data-table .details-pre { margin: 0; padding: 8px 10px; white-space: pre-wrap; word-wrap: break-word; word-break: break-word; font-family: var(--font-mono); background: color-mix(in hsl,var(--color-surface) 88%,var(--color-bg)); border: 1px solid var(--color-border); border-radius: 6px; }
@media (max-width: 640px) { #logsTable .details-grid,.data-table .details-grid { grid-template-columns: 1fr; } }
@media (max-width: 768px) { #logsTable { font-size: 0.88rem; } #logsTable thead th { font-size: 0.8rem; } }

/* =========================
   HOME CARDS
   ========================= */
.game-grid { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); }
.game-card { display: grid; gap: var(--space-2); padding: var(--space-4); background: color-mix(in hsl,var(--color-surface) 90%,var(--color-bg)); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-1); }
.game-card h4 { margin: 0; font-size: 1.05rem; }
.card-meta { font-size: 0.9rem; color: var(--color-muted); }
.card-actions { display: flex; gap: var(--space-2); flex-wrap: wrap; margin-top: var(--space-2); }
.status-badge { display: inline-flex; align-items: center; padding: 2px 8px; border-radius: 999px; font-size: 0.8rem; font-weight: 700; border: 1px solid var(--color-border); background: rgba(255,255,255,0.06); }
.status-active { color: #0b0f14; background: #ffc107; border-color: #ffc107; }
.status-pending { color: #0b0f14; background: #ffe082; border-color: #ffe082; }
.status-completed { color: #f3e8d7; background: rgba(255,255,255,0.08); }
.countdown-timer { margin-left: 2px; font-family: var(--font-mono); font-weight: 800; opacity: 0.9; }
.details-header { display: flex; justify-content: space-between; align-items: start; gap: var(--space-4); margin-bottom: var(--space-3); }
.status-stack { display: grid; gap: var(--space-2); justify-items: end; }
.tabs { display: flex; gap: 6px; margin: 8px 0 12px 0; border-bottom: 1px solid var(--color-border); }
.tab-link { appearance: none; border: 1px solid transparent; border-radius: 999px; padding: 6px 12px; font-weight: 700; background: transparent; color: var(--color-text); cursor: pointer; }
.tab-link.is-active { border-color: var(--color-border); background: rgba(255,255,255,0.06); }
.tab-panels { margin-top: var(--space-2); }
.tab-panel { display: none; }
.tab-panel.is-active { display: block; }
.list-item-header { display: flex; gap: var(--space-2); align-items: baseline; justify-content: space-between; }
.list-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.small-muted { font-size: 0.85rem; color: var(--color-muted); }
.leaderboard-placeholder { padding: var(--space-3); background: color-mix(in hsl,var(--color-surface) 94%,var(--color-bg)); border: 1px solid var(--color-border); border-radius: var(--radius-sm); }
@media (max-width: 640px) { .details-header { display: grid; } }

/* =========================
   LEADERBOARD SCROLL
   ========================= */
.leaderboard-scroll { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--color-border); border-radius: 10px; background: inherit; padding-bottom: 2px; }
.leaderboard-scroll table { min-width: 600px; }

/* =========================
   RESOURCES PAGE
   ========================= */
#resourcesContainer .resources-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 16px; }
#resourcesContainer .resource-item { height: 100%; list-style: none; }
#resourcesContainer .resource-card { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; height: 100%; padding: 12px 14px; text-decoration: none; color: inherit; border-radius: 10px; transition: transform 120ms ease,box-shadow 120ms ease,border-color 120ms ease,background-color 120ms ease; }
#resourcesContainer .resource-card:hover,#resourcesContainer .resource-card:focus-visible { transform: translateY(-1px); outline: none; box-shadow: 0 6px 18px rgba(0,0,0,0.25); }
#resourcesContainer .resource-icon { font-size: 24px; opacity: 0.85; }
#resourcesContainer .resource-name { margin-top: 6px; font-weight: 600; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#resourcesContainer .resource-meta { margin-top: 2px; font-size: 12px; opacity: 0.85; }

/* =========================
   MISC
   ========================= */
main section h3.h5 { margin-bottom: 12px; }
.surface-box + .surface-box { margin-top: 24px; }
.table td .rarity-common,.table td .rarity-uncommon,.table td .rarity-rare,.table td .rarity-legendary,.table td .rarity-mythic { font-weight: 600; }
.crowns { display: inline-flex; gap: 4px; margin-left: 6px; vertical-align: middle; }
.crown-badge { display: inline-flex; align-items: center; gap: 4px; padding: 2px 6px; border-radius: 999px; font-size: 0.78rem; font-weight: 700; line-height: 1; background: color-mix(in hsl,var(--color-primary) 35%,transparent); border: 1px solid var(--color-primary); color: var(--color-text); margin-left: var(--space-2); }
.crown-badge .crown-count { display: inline-block; }
.submit-results { margin-top: var(--space-2); display: grid; gap: var(--space-2); }
.submit-summary { font-weight: 600; }
.submit-title-success { color: var(--color-success); }
.submit-title-danger { color: var(--color-danger); }

/* =========================
   INVENTORY TABLE
   ========================= */
#inventoryTable thead th { position: sticky; top: 0; z-index: 2; text-align: left; background: linear-gradient(to bottom,rgba(255,255,255,0.06),rgba(255,255,255,0.02)); color: var(--color-text); font-weight: 600; font-size: 0.85rem; padding: 0.6rem 0.75rem; border-bottom: 1px solid var(--color-border); }
#inventoryTable td { padding: 0.55rem 0.75rem; vertical-align: middle; border-bottom: 1px solid var(--row-divider); }
#inventoryTable tbody tr:nth-child(odd) { background: transparent; }
#inventoryTable tbody tr:nth-child(even) { background: rgba(255,255,255,0.03); }
#inventoryTable tbody tr:hover { background: rgba(255,255,255,0.06); }
@media (max-width: 768px) { #inventoryTable { } }
@media (max-width: 480px) { #inventoryTable { font-size: 0.88rem; } }

/* =========================
   CODE THEME TOKENS
   ========================= */
:root {
  --color-code-bg: color-mix(in hsl,var(--color-surface) 96%,var(--color-bg));
  --color-inline-code-bg: color-mix(in hsl,var(--color-surface) 94%,var(--color-bg));
  --color-code-border: color-mix(in hsl,var(--color-border) 70%,var(--color-primary));
  --color-code-text: color-mix(in hsl,var(--color-text) 92%,white);
}

/* =========================
   CODE & PRE STYLES
   ========================= */
code { font-family: var(--font-mono); font-size: 0.92em; background: var(--color-inline-code-bg); color: var(--color-code-text); border: 1px solid var(--color-code-border); border-radius: var(--radius-sm); padding: 0.15em 0.35em; }
pre { margin: 0 0 var(--space-3) 0; background: var(--color-code-bg); border: 1px solid var(--color-code-border); border-radius: var(--radius-sm); padding: var(--space-4); overflow-x: auto; -webkit-overflow-scrolling: touch; box-shadow: 0 6px 18px rgba(0,0,0,0.28); }
pre code { display: block; font-family: var(--font-mono); font-size: var(--terminal-font-size,0.94rem); line-height: 1.55; background: transparent; border: 0; padding: 0; color: var(--color-code-text); white-space: pre; }
pre code::selection,code::selection { background: color-mix(in hsl,var(--color-primary) 28%,transparent); }
pre[title] { position: relative; padding-top: calc(var(--space-4) + 20px); }
pre[title]::before { content: attr(title); position: absolute; top: 6px; right: 10px; font-size: 0.75rem; font-weight: 700; color: var(--color-muted); background: color-mix(in hsl,var(--color-surface) 96%,var(--color-bg)); border: 1px solid var(--color-code-border); border-radius: 999px; padding: 2px 8px; }

/* =========================
   PLAYER ROW DETAILS
   ========================= */
.player-progress-surface { border: 1px solid var(--color-border); border-radius: var(--radius-md); background: color-mix(in hsl,var(--color-surface) 92%,var(--color-bg)); box-shadow: var(--shadow-1); overflow: hidden; }
.player-row-main:hover .player-toggle:not(:focus-visible) { background: rgba(255,255,255,0.05); }
.player-details-row td { background: color-mix(in hsl,var(--color-surface) 96%,var(--color-bg)); border-top: 1px solid var(--color-border); padding-top: 0; }
.player-toggle { cursor: pointer; background: none; border: none; padding: 0; color: inherit; font: inherit; text-align: left; display: inline-flex; align-items: center; gap: 8px; width: 100%; position: relative; padding: 6px 10px; margin: -2px -6px; border-radius: var(--radius-sm); line-height: 1.3; transition: background-color 120ms ease,color 120ms ease; }
.player-toggle::before { content: ""; width: 0; height: 0; border-left: 6px solid var(--color-muted); border-top: 4px solid transparent; border-bottom: 4px solid transparent; transition: transform 160ms ease,border-left-color 160ms ease; margin-right: 2px; flex-shrink: 0; }
.player-toggle[aria-expanded="true"]::before { transform: rotate(90deg); border-left-color: var(--color-link); }
.player-toggle:hover,.player-toggle:focus-visible { background: rgba(255,255,255,0.08); text-decoration: none; outline: none; }
.player-toggle:focus-visible { box-shadow: 0 0 0 2px var(--color-link); }
.player-name-text { font-weight: 600; letter-spacing: 0.3px; }
.player-progress-wrapper { padding: 10px 6px 6px; }
.player-progress-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 0.82rem; background: transparent; color: var(--color-text); font-variant-numeric: tabular-nums; }
.player-progress-table thead th { position: sticky; top: 0; z-index: 1; font-size: 0.68rem; letter-spacing: 0.55px; font-weight: 600; padding: 6px 8px; background: linear-gradient(to bottom,rgba(255,255,255,0.08),rgba(255,255,255,0.02)); border-bottom: 1px solid var(--color-border); color: var(--color-text); }
.player-progress-table tbody td { padding: 5px 8px; vertical-align: middle; border-bottom: 1px solid var(--row-divider); position: relative; }
.player-progress-table tbody tr:nth-child(odd) { background: transparent; }
.player-progress-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.03); }
.player-progress-table tbody tr:hover { background: rgba(255,255,255,0.06); }
.player-progress-table.is-compact tbody td { padding: 4px 6px; }
.pct-cell { min-width: 108px; font-family: var(--font-mono); font-weight: 600; letter-spacing: 0.2px; position: relative; }
.pct-bar-wrap { position: relative; display: flex; align-items: center; line-height: 1.15; min-height: 18px; isolation: isolate; }
.pct-bar { position: absolute; inset: 2px; background: linear-gradient(90deg,color-mix(in hsl,var(--color-primary) 55%,transparent),color-mix(in hsl,var(--color-primary) 18%,transparent) 70%); border-radius: 4px; width: var(--pct,0%); max-width: 100%; opacity: 0.32; transition: width 240ms ease,opacity 160ms ease; pointer-events: none; }
.pct-bar-wrap:hover .pct-bar { opacity: 0.48; }
.pct-label { position: relative; z-index: 1; display: inline-block; padding: 0 2px; color: var(--color-text); }
.pct-bar[data-state="low"] { background: linear-gradient(90deg,color-mix(in hsl,var(--color-danger) 50%,transparent),color-mix(in hsl,var(--color-danger) 15%,transparent) 75%); }
.pct-bar[data-state="mid"] { background: linear-gradient(90deg,color-mix(in hsl,var(--color-primary) 55%,transparent),color-mix(in hsl,var(--color-primary) 18%,transparent) 75%); }
.pct-bar[data-state="high"] { background: linear-gradient(90deg,color-mix(in hsl,var(--color-success) 55%,transparent),color-mix(in hsl,var(--color-success) 20%,transparent) 75%); }
@media (max-width: 640px) { .player-progress-table { font-size: 0.75rem; } .player-progress-table thead th { font-size: 0.64rem; padding: 5px 6px; } }

/* =========================
   RESPONSIVE SYSTEM
   ========================= */
@media (max-width: 1200px) { :root { --ui-scale: 1.04; } }
@media (max-width: 992px) { :root { --ui-scale: 1.00; } }
@media (max-width: 768px) { :root { --ui-scale: 0.97; } }
@media (max-width: 640px) { :root { --ui-scale: 0.95; } }
@media (max-width: 480px) { :root { --ui-scale: 0.93; } }
@media (min-width: 1440px) { :root { --max-content-width: 1320px; } }
h1 { font-size: clamp(1.8rem,3.6vw,3.2rem); }
h2 { font-size: clamp(1.35rem,2.4vw,2rem); }
h3 { font-size: clamp(1.1rem,1.6vw,1.4rem); }
h1,h2,h3 { text-wrap: balance; }
p { text-wrap: pretty; }
.app-navbar .nav-inner,.footer-nav { padding-inline: calc(var(--space-5) + env(safe-area-inset-left)) calc(var(--space-5) + env(safe-area-inset-right)); }
@supports not (padding-inline: env(safe-area-inset-left)) { .app-navbar .nav-inner,.footer-nav { padding-inline: var(--space-5); } }
@media (max-width: 480px) { .nav-links { gap: 0; } .nav-link { padding: 0.45rem 0.6rem; } .brand-title { display: none; } }
@media (max-height: 420px) and (orientation: landscape) { .app-navbar .nav-inner { padding-block: 0.35rem; } }
@media (prefers-reduced-motion: reduce) { .line,.landing-header { animation: none !important; } }

/* =========================
   PRINT
   ========================= */
@media print {
  :root { --color-bg: #ffffff; --color-surface: #ffffff; --color-text: #111111; --color-border: #dddddd; --row-divider: rgba(0,0,0,0.08); }
  body { background: #ffffff; color: #111111; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .app-navbar,.site-footer { display: none !important; }
  .surface-box,.game-card,.recognition-card,.terminal-box { box-shadow: none; }
}
