/* Shared navigation and deliberate interaction surfaces. */
input,textarea,[contenteditable="true"] { -webkit-user-select:text; user-select:text; }
button,a { touch-action:manipulation; }
.language-select { font:inherit; font-size:12px; color:#475569; background:#f8fafc; border:1px solid #e2e8f0; border-radius:8px; padding:6px 8px; max-width:100px; cursor:pointer; }
.language-select:focus-visible,a:focus-visible,button:focus-visible { outline:2px solid #64748b; outline-offset:4px; }
.download-page .app-name-top { text-decoration:none; color:inherit; }
.download-main { max-width:900px; margin:0 auto; padding:110px 24px 60px; }
.download-heading { text-align:center; margin-bottom:32px; }
.download-heading>.mono { font-size:12px; color:#a66a35; letter-spacing:2px; }
.download-heading h1 { font-family:var(--font-pixel); font-size:clamp(30px,5vw,44px); margin:12px 0; }
.download-heading p,.download-copy p,.download-steps p,.download-help p { color:#64748b; line-height:1.8; }
.download-window { border:1px solid #dce4ef; border-radius:24px; overflow:hidden; background:white; box-shadow:0 16px 40px #47556908; }
.download-grid { display:grid; grid-template-columns:1.2fr 1fr; padding:36px; gap:28px; align-items:center; }
.download-copy h2 { font-family:var(--font-pixel); font-size:30px; margin:16px 0; }
.download-platform { color:#64748b; border:1px solid #e2e8f0; border-radius:6px; padding:4px 8px; font-size:12px; }
.download-copy p { font-size:15px; }
.download-primary { display:block; padding:15px 12px; margin-top:24px; background:#d97706; border:1px solid #b65e06; border-radius:12px; color:white; text-decoration:none; text-align:center; font-weight:700; box-shadow:0 6px 16px #d977061f; }
.download-primary:hover { background:#bc6507; transform:translateY(-2px); }
.download-copy small { display:block; margin-top:10px; color:#64748b; font-size:12px; text-align:center; }
.download-art { background:#f8fafc; border-radius:20px; display:flex; flex-direction:column; align-items:center; padding:20px; }
.download-art img { width:100%; max-width:240px; height:auto; image-rendering:pixelated; }
.download-art span { color:#94a3b8; font-size:12px; margin-top:12px; }
.download-steps { margin:40px 0; }
.download-steps h2,.download-help h2 { font-family:var(--font-pixel); font-size:23px; }
.download-steps ol { padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.download-steps li { background:white; border:1px solid #e2e8f0; padding:20px; border-radius:16px; }
.download-steps li>span { color:#9c7353; font-size:22px; }
.download-steps h3 { font-size:16px; margin:14px 0 8px; }
.download-steps p { font-size:14px; margin:0; }
.download-help { display:flex; justify-content:space-between; align-items:center; gap:20px; background:#f8fafc; border-radius:16px; padding:24px; }
.download-help h2 { margin:0 0 8px; }.download-help p { margin:0; font-size:14px; }
.download-help button { flex-shrink:0; background:white; border:1px solid #cbd5e1; border-radius:10px; padding:12px 16px; color:#334155; cursor:pointer; font:inherit; }
.download-bottom { text-align:center; color:#64748b; margin-top:28px; font-size:14px; }.download-bottom a { color:#925b2e; }
html[lang="en"] .window-typing-lead { font-size:clamp(16px,2.6vw,23px); }
@media(max-width:560px) { .download-main { padding:90px 20px 40px; }.download-grid { grid-template-columns:1fr; padding:24px; }.download-art img { max-width:160px; }.download-steps ol { grid-template-columns:1fr; }.download-steps li { display:flex; gap:20px; }.download-steps h3 { margin-top:0; }.download-help { flex-direction:column; align-items:stretch; }.language-select { font-size:11px; max-width:82px; padding:5px; }.top-bar-nav { gap:5px; } }
.top-bar-nav .nav-link { display:block; }
@media(max-width:380px) { .top-bar-inner { padding-left:12px; padding-right:12px; }.top-bar-left { gap:5px; }.top-bar-nav .nav-link { padding:4px 5px; font-size:11px; }.app-logo { font-size:20px; } }
.experience-reward-hint { font-size:13px; color:#8c6048; margin:12px 0 0; text-align:center; }
.experience-discounts { display:contents; }
.experience-discounts strong { white-space:nowrap; }
.pixg-brand-icon { display:block; width:34px; height:30px; object-fit:contain; }
.pixg-brand-hero { display:block; width:150px; height:125px; object-fit:contain; }
@media(max-width:520px) { .pixg-brand-hero {width:120px;height:100px;} }
.experience-discounts>label.earned { color:#34725b; }
.experience-discounts>label strong { margin-left:auto; }
.reward-hint-toast { position:fixed; z-index:10000; left:50%; bottom:28px; transform:translateX(-50%); width:max-content; max-width:calc(100vw - 40px); padding:14px 20px; border-radius:14px; background:#334155; color:white; font-size:14px; box-shadow:0 8px 24px #0f172a26; pointer-events:none; }
.reward-hint-toast[hidden] { display:none; }
.purchase-window .purchase-pricing-col {grid-row:1;}
.purchase-window .purchase-companion-scene {grid-row:1;}
.purchase-window>.purchase-grid {grid-template-rows:auto;}
@media(max-width:520px){.purchase-window .purchase-companion-scene {grid-row:2;}}

#windowLeft .experience-reward-hint,
#spaceDemo .experience-reward-hint {
  width:fit-content;
  max-width:100%;
  align-self:center;
  margin:12px auto 0;
  padding:9px 16px;
  border:1px solid #285b49;
  border-radius:12px;
  background:#34725b;
  color:#fff;
  font-size:13px;
  font-weight:700;
  line-height:1.5;
  text-align:center;
  text-wrap:balance;
  box-shadow:inset 0 1px 0 #ffffff20,0 3px 8px #285b4914;
}

/* Reward and supporter options share the same card and checkbox geometry. */
.purchase-window .supporter-direct { gap:8px; font-size:12px; color:#0f172a; flex-wrap:nowrap; }
.purchase-window .supporter-direct .supporter-checkbox {width:14px;height:14px;margin:0;accent-color:#0f172a;}
.purchase-window [data-reward-row]:has(input:disabled) {color:#94a3b8;}
.purchase-window [data-reward-row].earned {color:#34725b;}
.pricing-brand-logo {display:block;width:58px;height:48px;object-fit:contain;}

.purchase-window [data-reward-row][hidden] { display:none !important; }

/* A single, focused download window using the landing page's visual language. */
.download-only {max-width:688px; padding-top:120px;}
.download-focus {padding:36px 32px 40px;display:flex;flex-direction:column;align-items:center;text-align:center;}
.download-logo {width:160px;height:134px;object-fit:contain;margin-bottom:18px;}
.download-focus h1 {font-family:var(--font-pixel);font-size:32px;margin:20px 0 12px;}
.download-focus>p {font-size:15px;color:#64748b;line-height:1.7;margin:0;}
.download-focus .download-primary {width:100%;max-width:340px;margin:28px 0 14px;font-family:var(--font-pixel);font-size:19px;}
.download-focus .download-note {font-size:12px;max-width:340px;}
.download-home {display:block;width:fit-content;margin:24px auto 0;color:#64748b;font-size:13px;text-decoration:none;}
.download-home:hover {color:#0f172a;text-decoration:underline;}
@media(max-width:560px){.download-only{padding-top:90px;}.download-focus{padding:28px 20px 32px;}.download-focus h1{font-size:28px;}}
