.se-camera[hidden], .se-achievement[hidden], .se-mission[hidden] { display: none; }
.se-camera { position: absolute; inset: 0; z-index: 12; overflow: hidden; overflow: clip; pointer-events: none; }
.se-camera-station { position: absolute; pointer-events: none; }
.se-camera-remnant { position: absolute; pointer-events: none; }
.se-camera-remnant canvas { display: block; width: 100%; height: 100%; }
.se-camera-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.se-camera-glow { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; mix-blend-mode: screen; }
.se-camera-target { position: absolute; z-index: 1; background: transparent; border: 0; border-radius: 24px; cursor: crosshair; touch-action: manipulation; padding: 0; pointer-events: auto; -webkit-tap-highlight-color: transparent; }
.se-camera-target[hidden] { display: none; }
.se-camera-target:focus-visible { outline: 2px solid var(--se-blue); outline-offset: 5px; }
.se-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.se-camera-hud { position: fixed; inset: 0; z-index: 40; overflow: hidden; contain: layout paint; isolation: isolate; pointer-events: none; }
/* The mission sits behind the logo (11) and cameras (12); medals stay at 40. */
.se-mission-hud { z-index: 10; }
.sideeye-page .se-brand-art { z-index: 11; }
.se-achievement { position: absolute; bottom: max(24px, env(safe-area-inset-bottom)); left: 50%; width: min(430px, calc(100% - 32px)); padding: 23px 48px 24px 26px; border: 1px solid rgb(75 77 74 / 65%); border-radius: 7px; background: rgb(231 233 226 / 82%); color: #171a18; transform: translate(-50%, 12px); opacity: 0; pointer-events: none; visibility: hidden; transition: transform .48s cubic-bezier(.2,.85,.25,1), opacity .25s, visibility .48s; }
.se-achievement.is-visible { transform: translate(-50%, 0); opacity: 1; visibility: visible; pointer-events: auto; }
.se-achievement-medal { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 16px; align-items: center; }
.se-achievement-icon { display: block; width: 56px; height: 56px; color: var(--se-medal-ink, #42647b); }
.se-achievement-name { font-family: var(--se-brand-font); font-size: 1.875rem; font-weight: 800; line-height: 1.15; letter-spacing: -.035em; }
.se-achievement-close { position: absolute; top: 7px; right: 7px; border: 0; background: transparent; color: #5e635a; width: 36px; height: 36px; font-size: 1.5rem; cursor: pointer; }
.se-achievement button:focus-visible { outline: 2px solid #42647b; outline-offset: 1px; border-radius: 4px; }
.se-mission { position: absolute; inset: 42% 0 auto; pointer-events: none; background: rgb(231 233 226 / 78%); color: #171a18; text-align: center; padding: 28px max(24px, calc((100vw - 1240px) / 2)); font-family: var(--se-brand-font); font-weight: 800; font-size: clamp(1.4rem, 3.1vw, 2.8rem); letter-spacing: -.035em; line-height: 1.2; transform: translateY(12px); opacity: 0; transition: opacity .3s, transform .4s cubic-bezier(.2,.85,.25,1); }
.se-mission.is-visible { opacity: 1; transform: translateY(0); }
@media (max-width: 800px) {
  .se-achievement { bottom: max(16px, env(safe-area-inset-bottom)); padding: 21px 42px 22px 22px; }
  .se-achievement-medal { grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }
  .se-achievement-icon { width: 40px; height: 40px; }
  .se-achievement-name { font-size: clamp(1.375rem, 6vw, 1.875rem); }
  .se-mission { top: 50%; padding: 18px 24px; font-size: clamp(1.25rem, 4.2vw, 1.55rem); }
}
@media (max-width: 520px) {
  .se-mission { top: 46%; }
}
@media (prefers-reduced-motion: reduce) {
  .se-achievement, .se-mission { transition: none; }
}

