:root{--investigation-bg:var(--app-bg,#f6f3ee);--investigation-surface:var(--app-surface,#fffdfa);--investigation-text:var(--app-text,#1d2735);--investigation-muted:var(--app-muted,#627084);--investigation-primary:var(--app-primary,#2b6f62);--investigation-link:var(--app-link,var(--investigation-primary));--investigation-border:rgba(98,112,132,.18);--investigation-safe-top:var(--app-safe-top,var(--app-safe-area-inset-top,env(safe-area-inset-top,0px)));--investigation-safe-bottom:var(--app-safe-bottom,var(--app-safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}*{box-sizing:border-box}body{margin:0;background:var(--investigation-bg);color:var(--investigation-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.investigation-detail-body:not(.investigation-detail-body--app){background:linear-gradient(180deg,var(--investigation-bg),#fff)}.investigation-page{width:min(100%,760px);margin:0 auto;padding:1rem 1rem calc(5.5rem + var(--investigation-safe-bottom))}.investigation-detail-page{display:grid;gap:.75rem;padding-top:calc(.65rem + var(--investigation-safe-top));padding-bottom:calc(6.25rem + var(--investigation-safe-bottom))}.investigation-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;min-height:2.5rem;padding-top:.15rem}.investigation-back-to-village,.back-link{display:inline-flex;align-items:center;gap:.35rem;width:max-content;color:var(--investigation-link);text-decoration:none;font-weight:800;border:1px solid var(--investigation-border);border-radius:999px;background:color-mix(in srgb,var(--investigation-surface) 92%,transparent);backdrop-filter:blur(12px);padding:.58rem .82rem;font-size:.9rem}.investigation-hero,.investigation-explainer,.investigation-login-card,.investigation-action-card,.investigation-progress-card,.investigation-clue-card,.investigation-reward-card,.investigation-card,.clue-card,.notice,.success-panel{background:var(--investigation-surface);border:1px solid var(--investigation-border);border-radius:1.05rem;padding:.95rem;box-shadow:0 6px 18px rgba(15,23,42,.06)}.investigation-hero{display:grid;gap:.55rem;box-shadow:none}.investigation-eyebrow{margin:0;color:var(--investigation-primary);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.investigation-hero h1{margin:0;font-size:clamp(1.55rem,7vw,2.25rem);line-height:1.05;letter-spacing:-.025em}.investigation-hero__description{margin:0;color:var(--investigation-muted);font-size:.98rem;line-height:1.48}.investigation-hero__meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.1rem}.investigation-hero__meta span,.pill{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:999px;background:color-mix(in srgb,var(--investigation-primary) 10%,var(--investigation-surface));color:var(--investigation-primary);padding:.28rem .6rem;font-size:.78rem;font-weight:850}.investigation-action-card,.investigation-login-card{display:grid;gap:.65rem}.investigation-action-card h2,.investigation-explainer h2,.investigation-login-card h2,.investigation-progress-card h2,.investigation-clue-card h2{margin:0;font-size:1.13rem;line-height:1.18}.investigation-action-card p,.investigation-explainer p,.investigation-login-card p,.investigation-progress-card p,.investigation-reward-card p{margin:0;color:var(--investigation-muted);line-height:1.5}.investigation-explainer{display:grid;gap:.8rem;background:color-mix(in srgb,var(--investigation-surface) 86%,var(--investigation-bg))}.investigation-explainer>div{display:grid;gap:.5rem}.investigation-steps,.investigation-benefits{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.investigation-steps li,.investigation-benefits li{position:relative;padding:.58rem .65rem .58rem 1.85rem;border-radius:.85rem;background:color-mix(in srgb,var(--investigation-bg) 62%,var(--investigation-surface));color:var(--investigation-text);font-weight:750;font-size:.92rem}.investigation-steps li::before,.investigation-benefits li::before{content:"✓";position:absolute;left:.65rem;top:.55rem;color:var(--investigation-primary);font-weight:900}.investigation-login-card{background:color-mix(in srgb,var(--investigation-primary) 7%,var(--investigation-surface))}.investigation-card{display:grid;gap:.8rem}.investigation-card img,.mystery{width:100%;border-radius:.95rem;object-fit:cover;max-height:320px;background:var(--investigation-bg)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;min-height:2.7rem;padding:.72rem 1rem;text-decoration:none;font-weight:900;cursor:pointer}.primary{border:0;background:var(--investigation-primary);color:#fff;box-shadow:0 8px 18px color-mix(in srgb,var(--investigation-primary) 24%,transparent)}.secondary{border:1px solid var(--investigation-border);background:var(--investigation-surface);color:var(--investigation-link)}.primary:focus-visible,.secondary:focus-visible,.investigation-back-to-village:focus-visible{outline:3px solid color-mix(in srgb,var(--investigation-primary) 25%,transparent);outline-offset:3px}.primary[disabled]{opacity:.65;cursor:wait}.hint{font-size:1.02rem;line-height:1.55;color:var(--investigation-text);margin:.2rem 0}.status{font-weight:800;color:var(--investigation-primary);min-height:1.2rem}.success-panel{margin-top:.85rem;background:color-mix(in srgb,var(--investigation-primary) 8%,var(--investigation-surface))}.investigation-clue-card{display:grid;gap:.7rem}.investigation-clue-card details{margin:.2rem 0}.investigation-clue-card summary{cursor:pointer;font-weight:850;color:var(--investigation-link)}.confetti-piece{position:fixed;top:-10px;width:8px;height:14px;z-index:9999;pointer-events:none;animation:investigation-confetti 1.4s ease-out forwards}@keyframes investigation-confetti{to{transform:translateY(105vh) rotate(720deg);opacity:0}}@media(min-width:720px){.investigation-page{padding-left:1.25rem;padding-right:1.25rem}.investigation-explainer{grid-template-columns:1fr 1fr;align-items:start}.investigation-action-card{grid-template-columns:1fr auto;align-items:center}.investigation-action-card .primary{justify-self:end}.investigation-card{grid-template-columns:240px 1fr}.investigation-card{grid-template-columns:1fr}.investigation-hero,.investigation-explainer,.investigation-login-card,.investigation-action-card,.investigation-clue-card,.investigation-reward-card{padding:1.1rem}}
.investigation-topbar{justify-content:space-between;gap:.75rem}.investigation-lang{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;border:1px solid var(--investigation-border);border-radius:999px;background:color-mix(in srgb,var(--investigation-surface) 92%,transparent);padding:.45rem .7rem;font-weight:900;color:var(--investigation-primary)}.investigation-cover{width:100%;max-height:300px;object-fit:cover;border-radius:1rem;background:var(--investigation-bg)}.investigation-progressbar{height:.6rem;border-radius:999px;background:color-mix(in srgb,var(--investigation-primary) 12%,var(--investigation-surface));overflow:hidden}.investigation-progressbar span{display:block;height:100%;border-radius:999px;background:var(--investigation-primary);transition:width .25s ease}.success-panel audio{width:100%;margin:.6rem 0}.notice h1{margin:.2rem 0 .5rem}.notice p{margin:0 0 1rem;color:var(--investigation-muted)}

.investigation-detail-body,
.investigation-detail-body * {
  max-width: 100%;
}
.investigation-detail-body {
  overflow-x: hidden;
}
.investigation-detail-body .investigation-page {
  width: min(100%, 760px);
  max-width: 100%;
}
.investigation-detail-page {
  min-width: 0;
}
.investigation-detail-page .investigation-topbar {
  justify-content: space-between;
  gap: .55rem;
  min-width: 0;
  width: 100%;
}
.investigation-detail-page .investigation-back-to-village {
  flex: 0 1 auto;
  min-width: 0;
  max-width: min(58vw, 18rem);
  width: fit-content;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.investigation-back-to-village__label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.investigation-detail-page .language-switcher {
  flex: 0 0 auto;
  margin: 0;
  min-width: 0;
}
.investigation-detail-page .language-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.investigation-detail-page .language-dropdown-wrapper {
  position: relative;
  min-width: 0;
}
.investigation-detail-page .language-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--investigation-border);
  background: color-mix(in srgb, var(--investigation-surface) 92%, transparent);
  color: var(--investigation-primary);
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(15,23,42,.06);
  max-width: 42vw;
}
.investigation-detail-page .language-current {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  min-width: 0;
}
.investigation-detail-page .language-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.investigation-detail-page .language-dropdown-menu {
  position: absolute;
  top: calc(100% + .45rem);
  right: 0;
  z-index: 20;
  display: none;
  min-width: min(12rem, calc(100vw - 2rem));
  padding: .35rem;
  border: 1px solid var(--investigation-border);
  border-radius: .9rem;
  background: var(--investigation-surface);
  box-shadow: 0 18px 38px rgba(15,23,42,.16);
}
.investigation-detail-page .language-dropdown-wrapper.open .language-dropdown-menu {
  display: grid;
  gap: .2rem;
}
.investigation-detail-page .language-option {
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .55rem .65rem;
  border-radius: .7rem;
  color: var(--investigation-text);
  text-decoration: none;
  font-weight: 800;
}
.investigation-detail-page .language-option.active,
.investigation-detail-page .language-option:hover {
  background: color-mix(in srgb, var(--investigation-primary) 10%, var(--investigation-surface));
  color: var(--investigation-primary);
}
.investigation-detail-page .language-check {
  margin-left: auto;
}
.investigation-detail-page .investigation-hero h1,
.investigation-clue-card h1,
.investigation-clue-card .hint,
.investigation-detail-page p,
.investigation-detail-page h2,
.investigation-detail-page h3 {
  overflow-wrap: anywhere;
  word-break: normal;
}
.investigation-play-progress {
  display: grid;
  gap: .55rem;
  background: var(--investigation-surface);
  border: 1px solid var(--investigation-border);
  border-radius: 1.05rem;
  padding: .85rem .95rem;
  box-shadow: 0 6px 18px rgba(15,23,42,.06);
  overflow: hidden;
  min-width: 0;
}
.investigation-play-progress__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  min-width: 0;
}
.investigation-play-progress__label {
  color: var(--investigation-text);
  font-size: .95rem;
  font-weight: 900;
  line-height: 1.25;
}
.investigation-play-progress__text {
  margin: 0;
  color: var(--investigation-muted);
  font-size: .86rem;
  line-height: 1.4;
}
.investigation-play-progress .investigation-progressbar {
  height: .45rem;
}
.investigation-detail-page .investigation-clue-card {
  overflow: hidden;
  min-width: 0;
  gap: .8rem;
}
.investigation-detail-page .investigation-clue-card h1 {
  margin: 0;
  font-size: clamp(1.3rem, 6vw, 1.85rem);
  line-height: 1.12;
  letter-spacing: -.02em;
}
.investigation-detail-page .investigation-clue-card .mystery {
  display: block;
  width: 100%;
  max-width: 100%;
  max-height: none;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: .95rem;
}
.investigation-detail-page .hint {
  max-width: 100%;
  margin: 0;
  font-size: clamp(.98rem, 3.4vw, 1.08rem);
  line-height: 1.62;
}
.investigation-detail-page .primary,
.investigation-detail-page .secondary {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}
.investigation-detail-page .investigation-clue-card > .primary,
.investigation-detail-page .success-panel .primary {
  width: 100%;
}
.investigation-detail-page .status {
  margin: 0;
}
.investigation-detail-page .success-panel {
  overflow: hidden;
  min-width: 0;
}
.investigation-detail-page img,
.investigation-detail-page audio {
  max-width: 100%;
}
@media (max-width: 380px) {
  .investigation-detail-page .investigation-back-to-village {
    max-width: 52vw;
    padding-left: .65rem;
    padding-right: .65rem;
  }
  .investigation-detail-page .language-dropdown-toggle {
    max-width: 38vw;
    padding-left: .62rem;
    padding-right: .62rem;
  }
}
html:has(.investigation-detail-body) {
  overflow-x: hidden;
}
