:root {
  --color-primary: #0070d1;
  --color-primary-pressed: #0064b7;
  --color-primary-active: #004d8d;
  --color-on-primary: #ffffff;
  --color-link-light: #0064b7;
  --color-link-dark: #53b1ff;
  --color-commerce: #d53b00;
  --color-commerce-pressed: #aa2f00;
  --color-on-commerce: #ffffff;
  --color-ink: #000000;
  --color-ink-deep: #121314;
  --color-charcoal: #1f2024;
  --color-body-light: rgba(0,0,0,0.6);
  --color-mute-light: #6b6b6b;
  --color-ash-light: #cccccc;
  --color-body-dark: rgba(255,255,255,0.7);
  --color-mute-dark: rgba(229,229,229,0.55);
  --color-ash-dark: rgba(229,229,229,0.2);
  --color-canvas-light: #ffffff;
  --color-surface-soft: #f3f3f3;
  --color-surface-card: #f5f7fa;
  --color-canvas-dark: #000000;
  --color-surface-dark-elevated: #121314;
  --color-surface-dark-card: #181818;
  --color-hairline-light: #f3f3f3;
  --color-hairline-dark: rgba(229,229,229,0.2);
  --color-on-dark: #ffffff;
  --color-on-dark-mute: #cccccc;
  --color-warning: #c81b3a;
  --color-ps-plus-gold-start: #ffce21;
  --color-ps-plus-gold-mid: #f5a623;
  --color-ps-plus-gold-end: #ee8e00;
  --rounded-none: 0px;
  --rounded-sm: 4px;
  --rounded-md: 8px;
  --rounded-lg: 16px;
  --rounded-full: 9999px;
  --space-xxs: 4px;
  --space-xs: 8px;
  --space-sm: 12px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-xxl: 48px;
  --space-section: 96px;
  --font-display: "PlayStation SST", system-ui, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-body: "PlayStation SST", system-ui, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
}
* { box-sizing: border-box; }
html { background: #111; }
body {
  margin: 0 auto; max-width: 390px; min-height: 100vh;
  font-family: var(--font-body); color: #fff; background: #000;
  font-size: 16px; line-height: 1.5; padding-bottom: 64px;
}
a { color: var(--color-link-dark); text-decoration: none; }
.top { background: #000; padding: 12px 16px; display: flex; align-items: center; justify-content: space-between; }
.logo { font-weight: 500; color: #fff; letter-spacing: 0.4px; }
.back { font-size: 12px; color: #ccc; }
.hero { padding: 32px 16px; background: #000; }
.hero h1 { font-size: 32px; font-weight: 300; line-height: 1.25; margin: 0 0 8px; }
.hero p { margin: 0; color: rgba(255,255,255,0.7); font-size: 14px; }
.hero-cta {
  display: inline-flex; margin-top: 16px; background: #0070d1; color: #fff;
  border-radius: 9999px; padding: 12px 22px; font-weight: 700; font-size: 14px;
}
.block { padding: 20px 16px; background: #fff; color: #000; }
.block.dark { background: #121314; color: #fff; }
.block.blue { background: #0070d1; color: #fff; }
.block h2 { font-size: 22px; font-weight: 300; margin: 0 0 12px; }
.cell { display: block; background: #f5f7fa; border-radius: 8px; padding: 16px; margin-bottom: 8px; color: #000; }
.cell h3 { margin: 0 0 4px; font-size: 16px; font-weight: 600; }
.cell p { margin: 0; color: rgba(0,0,0,0.6); font-size: 14px; }
.row { display: flex; justify-content: space-between; gap: 8px; padding: 12px 0; border-bottom: 1px solid #f3f3f3; font-size: 14px; }
.row:last-child { border-bottom: 0; }
.row span { color: #6b6b6b; }
.ph { background: #f3f3f3; color: #888; height: 140px; display: flex; align-items: center; justify-content: center; font-size: 13px; margin-bottom: 12px; border-radius: 8px; }
.plus-bar { height: 4px; background: linear-gradient(90deg,#ffce21,#ee8e00); margin: -20px -16px 16px; }
form label { display: block; margin: 0 0 4px; font-size: 14px; }
form input, form textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; font: inherit; margin-bottom: 12px; }
form button { width: 100%; padding: 12px; border: 0; border-radius: 9999px; background: #0070d1; color: #fff; font: inherit; font-weight: 700; }
.tab {
  position: fixed; left: 50%; bottom: 0; transform: translateX(-50%);
  width: 100%; max-width: 390px; display: flex; background: #000; border-top: 1px solid rgba(229,229,229,0.2);
}
.tab a { flex: 1; text-align: center; padding: 12px 0; font-size: 11px; font-weight: 500; color: rgba(255,255,255,0.55); }
.tab a.on { color: #53b1ff; }

.ph { overflow: hidden; }
.ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
