/* EVER YOURS v69 — bilingual lyrics + story unlock interaction + profile refresh */

/* Lyrics: preserve the original English lyric as the visual lead, with Korean translation directly beneath. */
.music-lyrics-section h4 {
  display:flex;
  align-items:baseline;
  gap:10px;
  margin-bottom:15px!important;
}
.music-section-en {
  color:#d1b978;
  font:650 11.5px/1 var(--v18-mono);
  letter-spacing:.15em;
  text-transform:uppercase;
}
.music-section-ko {
  color:#6f746f;
  font:600 10.5px/1 var(--ko-sans);
  letter-spacing:-.01em;
}
.music-line-pair {
  position:relative;
  display:grid!important;
  gap:3px!important;
  margin-bottom:15px!important;
  padding-left:12px;
}
.music-line-pair::before {
  content:'';
  position:absolute;
  left:0;
  top:.42em;
  bottom:.34em;
  width:1px;
  background:linear-gradient(180deg,rgba(205,177,111,.52),rgba(205,177,111,.08));
}
.music-line-en {
  display:block;
  color:#f0ede6!important;
  font:550 15.5px/1.55 var(--v18-sans)!important;
  letter-spacing:-.012em;
  text-shadow:0 1px 12px rgba(0,0,0,.25);
}
.music-line-ko {
  display:block;
  color:#9b9e99!important;
  font:500 13.5px/1.62 var(--ko-sans)!important;
  letter-spacing:-.02em;
  word-break:keep-all;
}

/* Story detail: left card is informational; the reader itself is the unlock control. */
.story-scene-card.story-scene-static {
  cursor:default!important;
  user-select:none;
}
.story-scene-card.story-scene-static:hover .story-scene-image img {
  transform:none!important;
  filter:saturate(.72) brightness(.72)!important;
}
.story-scene-card.story-scene-static .story-scene-copy b {
  color:#7e8d8e;
  letter-spacing:.13em;
}
.story-reader.story-reader-locked {
  overflow:hidden!important;
  position:relative;
}
.story-unlock-panel {
  position:relative;
  width:100%;
  height:100%;
  min-height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:0;
  padding:48px clamp(24px,5vw,72px);
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 42%,rgba(142,170,173,.075),transparent 27%),
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 35%),
    #0c1010;
  color:inherit;
  cursor:pointer;
  text-align:center;
  transition:background .35s ease;
}
.story-unlock-panel::before,
.story-unlock-panel::after {
  content:'';
  position:absolute;
  pointer-events:none;
}
.story-unlock-panel::before {
  inset:20px;
  border:1px solid rgba(128,151,153,.12);
}
.story-unlock-panel::after {
  width:min(340px,58%);
  height:1px;
  top:calc(50% + 108px);
  background:linear-gradient(90deg,transparent,rgba(190,169,111,.36),transparent);
}
.story-unlock-panel:hover {
  background:
    radial-gradient(circle at 50% 42%,rgba(142,170,173,.13),transparent 30%),
    linear-gradient(180deg,rgba(255,255,255,.018),transparent 38%),
    #0d1111;
}
.story-unlock-panel:focus-visible {
  outline:2px solid rgba(202,181,123,.72);
  outline-offset:-5px;
}
.story-unlock-kicker {
  color:#66797c;
  font:600 10px/1 var(--v18-mono);
  letter-spacing:.2em;
}
.story-unlock-icon {
  position:relative;
  width:42px;
  height:35px;
  margin:25px 0 20px;
  border:1px solid rgba(192,171,114,.5);
  border-radius:2px;
  box-shadow:0 0 28px rgba(192,171,114,.07);
}
.story-unlock-icon::before {
  content:'';
  position:absolute;
  left:50%;
  top:-16px;
  width:21px;
  height:18px;
  border:1px solid rgba(192,171,114,.5);
  border-bottom:0;
  border-radius:14px 14px 0 0;
  transform:translateX(-50%);
}
.story-unlock-icon i {
  position:absolute;
  left:50%;
  top:12px;
  width:3px;
  height:9px;
  border-radius:2px;
  background:#c0ab72;
  transform:translateX(-50%);
}
.story-unlock-panel > strong {
  max-width:680px;
  color:#dce1df;
  font:500 clamp(32px,3.2vw,48px)/1.08 var(--ko-serif);
  letter-spacing:-.045em;
  word-break:keep-all;
}
.story-unlock-panel > p {
  max-width:480px;
  margin:18px 0 24px;
  color:#7f8b8a;
  font:500 14px/1.75 var(--ko-sans);
  letter-spacing:-.015em;
  word-break:keep-all;
}
.story-unlock-panel > b {
  display:flex;
  align-items:center;
  gap:12px;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(192,171,114,.36);
  background:rgba(192,171,114,.035);
  color:#c6b278;
  font-style:normal;
  transition:border-color .25s ease, background .25s ease, transform .25s ease;
}
.story-unlock-panel:hover > b {
  transform:translateY(-1px);
  border-color:rgba(211,190,130,.62);
  background:rgba(192,171,114,.07);
}
.story-unlock-panel > b em {
  font:650 10px/1 var(--v18-mono);
  font-style:normal;
  letter-spacing:.15em;
}
.story-unlock-panel > b small {
  padding-left:12px;
  border-left:1px solid rgba(192,171,114,.22);
  color:#7d817c;
  font:600 9px/1 var(--v18-mono);
  letter-spacing:.1em;
}
.story-unlock-panel > i {
  margin-top:32px;
  color:#536265;
  font:600 9px/1 var(--v18-mono);
  font-style:normal;
  letter-spacing:.16em;
}

@media (max-width:760px) {
  .music-section-en { font-size:11px; }
  .music-section-ko { font-size:10.5px; }
  .music-line-pair { gap:4px!important; margin-bottom:16px!important; padding-left:10px; }
  .music-line-en { font-size:15px!important; line-height:1.5!important; }
  .music-line-ko { font-size:13.5px!important; line-height:1.62!important; }
  .story-unlock-panel { min-height:460px; padding:40px 22px; }
  .story-unlock-panel::before { inset:12px; }
  .story-unlock-panel > strong { font-size:clamp(29px,8.5vw,39px); }
  .story-unlock-panel > p { font-size:14px; }
}

/* Profile/canon refresh — expanded LIMBO archive record without adding a new route. */
.v70-limbo-facts,
.v70-limbo-modal-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.v70-limbo-facts {
  width:100%;
  max-width:760px;
  margin:2px 0 25px;
}
.v70-limbo-facts > div,
.v70-limbo-modal-grid > div {
  min-width:0;
  padding:13px 14px;
  border:1px solid rgba(130,154,166,.15);
  background:rgba(255,255,255,.018);
}
.v70-limbo-facts small,
.v70-limbo-modal-grid small {
  display:block;
  margin-bottom:7px;
  color:#8c6d67;
  font:600 9px/1 var(--v18-mono);
  letter-spacing:.14em;
}
.v70-limbo-facts strong,
.v70-limbo-modal-grid strong {
  display:block;
  color:#c0c5c4;
  font:550 12.5px/1.55 var(--ko-sans);
  letter-spacing:-.015em;
  word-break:keep-all;
}
.v25-limbo-modal > div > p + p {
  margin-top:13px;
}
.v70-limbo-modal-grid {
  margin-top:21px;
}

@media (max-width:760px) {
  .v70-limbo-facts,
  .v70-limbo-modal-grid {
    grid-template-columns:1fr;
  }
  .v70-limbo-facts > div,
  .v70-limbo-modal-grid > div {
    padding:12px 13px;
  }
}
