.rover-discovery-base[hidden] { display: none !important; }
.rover-discovery-entry { position: fixed; z-index: 120; right: 18px; top: max(18px, env(safe-area-inset-top)); min-width: 118px; min-height: 64px; border: 2px solid #fff8e5; border-radius: 20px; background: #ffe1a0; color: #273443; padding: 10px 18px; font: 800 20px/1.15 system-ui, sans-serif; box-shadow: 0 5px 22px #0004; cursor: pointer; }
.rover-discovery-entry small { display: block; font-size: 12px; font-weight: 650; margin-top: 5px; }
.rover-discovery-menu, .rover-discovery-activity { position: fixed; inset: 0; z-index: 150; font-family: system-ui, sans-serif; color: #263949; box-sizing: border-box; }
.rover-discovery-menu *, .rover-discovery-activity * { box-sizing: border-box; }
.rover-discovery-menu button, .rover-discovery-activity button { font: 750 17px/1.2 system-ui, sans-serif; min-height: 58px; min-width: 58px; border: 2px solid #c9d7d9; border-radius: 16px; padding: 10px 16px; background: #fffaf0; color: #233b49; cursor: pointer; touch-action: none; }
.rover-discovery-menu button:focus-visible, .rover-discovery-activity button:focus-visible, .rover-discovery-entry:focus-visible { outline: 4px solid #147b8b; outline-offset: 3px; }
.rover-discovery-activity button:disabled { opacity: .52; cursor: default; }
.rover-discovery-activity button[aria-pressed="true"] { background: #b2eddf; border-color: #227a6d; }
.rover-discovery-menu { overflow: auto; background: radial-gradient(ellipse at 85% 0, #d0e7ed 0, transparent 50%), #f8f4e9; padding: max(20px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)); }
.rover-discovery-menu.mars { background: radial-gradient(ellipse at 85% 0, #f1c3a5 0, transparent 50%), #faf3e4; }
.rover-discovery-menu header { display: flex; align-items: center; justify-content: space-between; gap: 18px; max-width: 1100px; margin: 0 auto; }
.rover-discovery-menu header span { font-size: 15px; color: #52626a; }
.rover-discovery-menu-copy { max-width: 1100px; margin: clamp(24px, 6vh, 70px) auto 30px; }
.rover-discovery-menu-copy small { color: #537180; font-size: 13px; letter-spacing: .1em; font-weight: 800; }
.rover-discovery-menu h1 { color: #263949; font-size: clamp(29px, 4vw, 52px); line-height: 1.06; margin: 12px 0 16px; }
.rover-discovery-menu-copy p { margin: 0; font-size: 18px; color: #546370; }
.rover-discovery-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; max-width: 1100px; margin: auto; }
.rover-discovery-cards button { display: flex; flex-direction: column; align-items: flex-start; text-align: left; border: 1px solid #d8d7ca; border-radius: 26px; padding: 18px; min-height: 300px; background: #fffdf4; box-shadow: 0 9px 24px #3349390d; touch-action: manipulation; transition: transform .15s; }
.rover-discovery-cards button:hover { transform: translateY(-4px); border-color: #5b938e; }
.rover-discovery-cards img { display: block; object-fit: contain; width: 100%; height: 160px; margin-bottom: 18px; border-radius: 16px; background: radial-gradient(ellipse, #e2eadb, #eff0e300 72%); }
.rover-discovery-cards strong { font-size: 22px; line-height: 1.16; }
.rover-discovery-cards span { margin-top: 10px; font-size: 15px; line-height: 1.45; font-weight: 500; color: #536670; }
.rover-discovery-menu-note { text-align: center; font-size: 15px; margin-top: 25px; color: #617176; }
.rover-discovery-stage { position: absolute; inset: 0; }
.rover-discovery-stage canvas { display: block; width: 100%; height: 100%; }
.rover-discovery-top { position: absolute; top: max(14px, env(safe-area-inset-top)); left: max(16px, env(safe-area-inset-left)); right: max(16px, env(safe-area-inset-right)); display: flex; gap: 14px; align-items: flex-start; pointer-events: none; }
.rover-discovery-top > * { pointer-events: auto; }
.rover-discovery-title { flex: 1; background: #fffaf0ee; border: 1px solid #fff8; border-radius: 20px; padding: 12px 18px; max-width: 500px; box-shadow: 0 4px 15px #14202820; }
.rover-discovery-title small { display: block; font-size: 11px; letter-spacing: .08em; color: #48616d; font-weight: 800; }
.rover-discovery-title h2 { color: #263949; font-size: clamp(19px, 2.2vw, 28px); line-height: 1.1; margin: 5px 0; }
.rover-discovery-title span { display: block; font-size: 13px; color: #4e625e; }
.rover-discovery-top > button:last-child { margin-left: auto; font-size: 14px; }
.rover-discovery-bottom { position: absolute; bottom: max(16px, env(safe-area-inset-bottom)); left: max(18px, env(safe-area-inset-left)); right: max(18px, env(safe-area-inset-right)); display: flex; flex-direction: column; align-items: center; gap: 10px; pointer-events: none; }
.rover-discovery-bottom > * { pointer-events: auto; }
.rover-discovery-message { display: flex; align-items: center; gap: 12px; padding: 10px 12px 10px 18px; border-radius: 20px; background: #fffaf0f5; box-shadow: 0 4px 18px #0002; max-width: 760px; width: fit-content; }
.rover-discovery-message p { margin: 0; font-size: 17px; line-height: 1.4; font-weight: 650; }
.rover-discovery-message button { font-size: 13px; flex-shrink: 0; }
.rover-discovery-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; max-width: 850px; }
.rover-discovery-actions button { background: #ffe0a1; border-color: #f2c265; box-shadow: 0 3px 0 #9d6a2a66; }
.rover-discovery-driving { width: 100%; display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.rover-discovery-pad { display: flex; gap: 7px; }
.rover-discovery-pad button { width: 62px; font-size: 27px; background: #f7fbf3f5; }
.rover-discovery-guide { min-width: 165px !important; max-width: 270px; background: #bcebdd !important; border-color: #7ebcac !important; }
.rover-discovery-guide small { display: block; font-size: 12px; line-height: 1.25; font-weight: 600; margin-top: 5px; }
.rover-discovery-error { position: absolute; z-index: 10; left: 50%; top: 40%; transform: translate(-50%, -50%); width: min(480px, 90vw); background: #fff8e9; border: 2px solid #c57a4c; border-radius: 22px; padding: 20px; }
.rover-discovery-error button { margin: 5px; }
@media (max-width: 900px) { .rover-discovery-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rover-discovery-cards button { min-height: 240px; } .rover-discovery-cards img { height: 115px; } }
@media (max-width: 600px) {
  .rover-discovery-entry { top: max(12px, env(safe-area-inset-top)); right: 12px; min-width: 102px; min-height: 58px; font-size: 17px; padding: 8px 12px; }
  .rover-discovery-entry small { font-size: 11px; }
  .rover-discovery-menu { padding: max(14px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom)); }
  .rover-discovery-menu header span { font-size: 12px; max-width: 135px; text-align: right; }
  .rover-discovery-menu-copy { margin: 25px auto 20px; }
  .rover-discovery-menu-copy p { font-size: 16px; }
  .rover-discovery-cards { gap: 10px; }
  .rover-discovery-cards button { padding: 12px; min-height: 232px; border-radius: 19px; }
  .rover-discovery-cards strong { font-size: 18px; }
  .rover-discovery-cards span { font-size: 13px; }
  .rover-discovery-top { left: 10px; right: 10px; gap: 7px; }
  .rover-discovery-top button { padding: 8px; font-size: 13px; }
  .rover-discovery-title { padding: 9px 11px; border-radius: 15px; min-width: 0; }
  .rover-discovery-title h2 { font-size: 18px; }
  .rover-discovery-title small { font-size: 9px; }
  .rover-discovery-title span { font-size: 11px; }
  .rover-discovery-top > button:last-child { max-width: 64px; font-size: 12px; }
  .rover-discovery-bottom { left: 10px; right: 10px; gap: 8px; bottom: max(10px, env(safe-area-inset-bottom)); }
  .rover-discovery-message { padding: 8px 9px 8px 12px; gap: 8px; width: 100%; border-radius: 16px; }
  .rover-discovery-message p { font-size: 14px; }
  .rover-discovery-message button { max-width: 65px; padding: 8px; font-size: 12px; }
  .rover-discovery-actions { width: 100%; gap: 6px; }
  .rover-discovery-actions button { flex: 1 1 40%; font-size: 15px; padding: 8px 10px; min-height: 58px; }
  .rover-discovery-pad { display: grid; grid-template-columns: repeat(2, 58px); gap: 5px; }
  .rover-discovery-pad button { width: 58px; padding: 8px; }
  .rover-discovery-guide { min-width: 135px !important; max-width: 205px; font-size: 16px !important; }
}
@media (max-height: 520px) and (min-width: 601px) {
  .rover-discovery-top { top: 7px; }
  .rover-discovery-title { padding: 7px 12px; }
  .rover-discovery-title h2 { font-size: 19px; }
  .rover-discovery-bottom { bottom: 7px; gap: 5px; }
  .rover-discovery-message { padding: 5px 8px 5px 13px; }
  .rover-discovery-message p { font-size: 14px; }
  .rover-discovery-driving { position: absolute; bottom: 0; pointer-events: none; }
  .rover-discovery-driving > * { pointer-events: auto; }
  .rover-discovery-pad { display: grid; grid-template-columns: repeat(2, 58px); }
  .rover-discovery-pad button { width: 58px; }
  .rover-discovery-actions { max-width: calc(100% - 310px); }
  .rover-discovery-message { max-width: calc(100% - 300px); }
  .rover-discovery-actions button { font-size: 14px; padding: 8px; }
}
@media (prefers-reduced-motion: reduce) { .rover-discovery-cards button { transition: none; } }
