.nsse-test-button{display:block;width:min(100%,360px);margin:12px auto 0;padding:13px 18px;border:1px solid rgba(194,145,244,.58);border-radius:999px;color:#fff;background:linear-gradient(135deg,rgba(66,35,96,.96),rgba(25,15,43,.98));box-shadow:0 10px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);font:inherit;font-weight:700;letter-spacing:.04em;cursor:pointer}.nsse-test-button:active{transform:translateY(1px)}
.nsse-overlay{--nsse-text:rgba(255,253,255,.97);--nsse-soft:rgba(237,226,248,.72);position:fixed;z-index:2147483000;inset:0;display:grid;place-items:center;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));box-sizing:border-box;background:rgba(3,2,8,.58);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity 380ms ease,visibility 380ms ease}.nsse-overlay.is-open{opacity:1;visibility:visible}.nsse-overlay.is-blackout{background:#000}
.nsse-stage{position:relative;width:min(100%,960px);aspect-ratio:3/2;overflow:hidden;border:1px solid rgba(202,166,255,.22);border-radius:18px;background:#050309;box-shadow:0 24px 80px rgba(0,0,0,.62);opacity:1;transition:opacity 720ms ease}.nsse-stage.is-fading{opacity:0}
.nsse-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.016);transition:opacity 620ms ease,transform 1800ms cubic-bezier(.22,.61,.36,1)}.nsse-image.is-current{opacity:1;transform:scale(1)}
.nsse-atmosphere{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 58%,rgba(3,1,8,.025) 74%,rgba(3,1,8,.22) 100%),linear-gradient(0deg,rgba(4,2,8,.12),transparent 34%)}
.nsse-voice{position:absolute;z-index:3;top:9%;right:7.5%;height:52%;max-width:38%;display:flex;flex-direction:row;direction:rtl;align-items:flex-start;justify-content:flex-start;gap:clamp(10px,1.35vw,18px);pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.85))}.nsse-voice[data-count="1"]{right:10%;top:13%}.nsse-voice[data-count="2"]{right:9%}.nsse-voice[data-count="4"],.nsse-voice[data-count="5"],.nsse-voice[data-count="6"]{max-width:46%;gap:clamp(8px,1.05vw,14px)}
.nsse-breath{writing-mode:vertical-rl;text-orientation:upright;display:block;direction:ltr;white-space:nowrap;color:var(--nsse-text);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:clamp(11px,1.22vw,15px);font-weight:500;line-height:1.42;letter-spacing:.10em;opacity:.98;text-shadow:0 1px 3px rgba(0,0,0,.98),0 0 7px rgba(91,43,139,.34);transform:translateY(calc(var(--nsse-breath-index) * 3px))}.nsse-voice[data-mood="hesitant"] .nsse-breath:nth-child(even){transform:translateY(14px)}.nsse-voice[data-mood="warm"] .nsse-breath:nth-child(2){transform:translateY(8px)}.nsse-voice[data-mood="curious"] .nsse-breath:last-child{transform:translateY(10px)}.nsse-voice[data-mood="soft"] .nsse-breath:nth-child(even){transform:translateY(7px)}
.nsse-glyph{display:inline-block;opacity:0;filter:blur(2.4px);transform:translateY(3px);transition:opacity 190ms ease,filter 260ms ease,transform 260ms cubic-bezier(.2,.75,.3,1)}.nsse-glyph.is-visible{opacity:1;filter:blur(0);transform:translateY(0)}
.nsse-choices{position:absolute;z-index:4;left:50%;bottom:4%;width:min(68%,650px);padding:1px;box-sizing:border-box;border-radius:18px;background:linear-gradient(135deg,rgba(231,207,255,.38),rgba(255,255,255,.10),rgba(156,105,211,.34));box-shadow:0 18px 48px rgba(0,0,0,.30),0 0 28px rgba(93,45,143,.12);opacity:0;transform:translate(-50%,18px);visibility:hidden;pointer-events:none;transition:opacity 330ms ease,transform 420ms cubic-bezier(.2,.75,.3,1),visibility 330ms ease}.nsse-choices.is-open{opacity:1;transform:translate(-50%,0);visibility:visible;pointer-events:auto}
.nsse-choices-inner{position:relative;padding:12px 18px;border-radius:17px;background:linear-gradient(180deg,rgba(18,11,29,.44),rgba(7,4,13,.62));backdrop-filter:blur(14px) saturate(118%);-webkit-backdrop-filter:blur(14px) saturate(118%);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.nsse-choice{position:relative;display:flex;align-items:center;width:100%;margin:0;padding:8px 10px;border:0;border-bottom:1px solid rgba(238,222,255,.11);color:rgba(255,255,255,.93);background:transparent;text-align:left;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:clamp(10px,1.24vw,13px);font-weight:500;line-height:1.45;letter-spacing:.045em;text-shadow:0 1px 5px rgba(0,0,0,.9);cursor:pointer;opacity:0;transform:translateY(5px);animation:nsse-choice-in 360ms ease forwards;animation-delay:calc(var(--nsse-choice-index) * 55ms)}.nsse-choice:last-child{border-bottom:0}.nsse-choice-marker{flex:0 0 auto;width:5px;height:5px;margin-right:10px;border:1px solid rgba(226,198,255,.70);border-radius:50%;box-shadow:0 0 8px rgba(187,132,244,.42);transition:background 180ms ease,box-shadow 180ms ease,transform 180ms ease}.nsse-choice-label{transition:transform 180ms ease,opacity 180ms ease}.nsse-choice:hover .nsse-choice-marker,.nsse-choice:focus-visible .nsse-choice-marker{background:rgba(235,211,255,.92);box-shadow:0 0 12px rgba(202,153,255,.75);transform:scale(1.18)}.nsse-choice:hover .nsse-choice-label,.nsse-choice:focus-visible .nsse-choice-label{transform:translateX(3px)}.nsse-choice:focus-visible{outline:1px solid rgba(221,191,255,.36);outline-offset:-2px;border-radius:8px}.nsse-choice:active{opacity:.66}
.nsse-close{position:absolute;z-index:5;top:10px;left:10px;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(255,255,255,.13);border-radius:50%;color:rgba(255,255,255,.88);background:rgba(8,5,14,.24);font-size:19px;line-height:1;cursor:pointer}
@keyframes nsse-choice-in{to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.nsse-stage{width:100%;border-radius:14px}.nsse-voice{top:8%;right:7%;height:55%;max-width:48%;gap:8px}.nsse-voice[data-count="1"]{right:9%;top:11%}.nsse-voice[data-count="4"],.nsse-voice[data-count="5"],.nsse-voice[data-count="6"]{max-width:55%;gap:6px}.nsse-breath{font-size:clamp(10px,2.8vw,12px);line-height:1.38;letter-spacing:.08em}.nsse-choices{bottom:3%;width:72%;border-radius:15px}.nsse-choices-inner{padding:8px 10px;border-radius:14px}.nsse-choice{padding:6px 6px;font-size:clamp(9px,2.45vw,11px);line-height:1.4}.nsse-choice-marker{width:4px;height:4px;margin-right:8px}.nsse-close{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.nsse-overlay,.nsse-stage,.nsse-image,.nsse-glyph,.nsse-choices,.nsse-choice{transition-duration:1ms!important;animation-duration:1ms!important}}

/* =========================================================
   v1.0.2 — Voice Aura / Refined Player Glass
   ========================================================= */
.nsse-breath{
  text-shadow:
    0 1px 3px rgba(0,0,0,.96),
    0 0 5px rgba(115,66,164,.34),
    0 0 11px rgba(173,119,222,.22),
    0 0 18px rgba(116,69,157,.12);
}

.nsse-choices{
  width:min(70%,660px);
  padding:1px;
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(238,220,255,.50),rgba(255,255,255,.08) 38%,rgba(166,109,220,.38) 72%,rgba(231,205,255,.28));
  box-shadow:
    0 22px 60px rgba(0,0,0,.38),
    0 0 34px rgba(128,75,181,.16),
    inset 0 1px 0 rgba(255,255,255,.20);
  isolation:isolate;
}
.nsse-choices::before,
.nsse-choices::after{
  content:"";
  position:absolute;
  pointer-events:none;
}
.nsse-choices::before{
  inset:-1px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 15% 0%,rgba(255,255,255,.30),transparent 24%),
    radial-gradient(circle at 87% 100%,rgba(186,126,235,.22),transparent 28%);
  z-index:-1;
}
.nsse-choices::after{
  left:12%;
  right:12%;
  bottom:-8px;
  height:18px;
  border-radius:50%;
  background:rgba(117,65,164,.24);
  filter:blur(13px);
  z-index:-2;
}
.nsse-choices-inner{
  overflow:hidden;
  padding:14px 20px;
  border-radius:23px;
  background:
    linear-gradient(180deg,rgba(26,16,40,.40),rgba(8,5,15,.68)),
    radial-gradient(circle at 50% -20%,rgba(199,157,238,.16),transparent 44%);
  backdrop-filter:blur(18px) saturate(132%);
  -webkit-backdrop-filter:blur(18px) saturate(132%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -1px 0 rgba(181,127,225,.10);
}
.nsse-choices-inner::before{
  content:"";
  position:absolute;
  top:0;
  left:9%;
  right:9%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  opacity:.58;
}
.nsse-choice{
  min-height:34px;
  padding:8px 13px;
  border-bottom:1px solid transparent;
  background:
    linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent) bottom/100% 1px no-repeat;
  font-size:clamp(9.5px,1.12vw,12.5px);
  letter-spacing:.055em;
  transition:background 220ms ease,box-shadow 220ms ease,transform 220ms ease,opacity 180ms ease;
}
.nsse-choice:last-child{background:none}
.nsse-choice::before{
  content:"";
  position:absolute;
  inset:3px 4px;
  border-radius:12px;
  background:linear-gradient(90deg,rgba(196,145,239,.12),rgba(255,255,255,.035),transparent 78%);
  opacity:0;
  transform:scaleX(.96);
  transform-origin:left center;
  transition:opacity 220ms ease,transform 260ms ease;
  pointer-events:none;
}
.nsse-choice:hover::before,
.nsse-choice:focus-visible::before{
  opacity:1;
  transform:scaleX(1);
}
.nsse-choice-marker{
  position:relative;
  width:6px;
  height:6px;
  margin-right:12px;
  border:0;
  background:rgba(231,209,250,.42);
  box-shadow:0 0 0 1px rgba(225,194,250,.38),0 0 10px rgba(182,121,231,.38);
}
.nsse-choice-marker::after{
  content:"";
  position:absolute;
  inset:-4px;
  border:1px solid rgba(226,194,250,.18);
  border-radius:50%;
  opacity:.55;
  transition:transform 220ms ease,opacity 220ms ease;
}
.nsse-choice:hover .nsse-choice-marker,
.nsse-choice:focus-visible .nsse-choice-marker{
  background:rgba(245,231,255,.96);
  box-shadow:0 0 0 1px rgba(244,226,255,.72),0 0 15px rgba(205,150,249,.90);
  transform:scale(1.05);
}
.nsse-choice:hover .nsse-choice-marker::after,
.nsse-choice:focus-visible .nsse-choice-marker::after{
  transform:scale(1.35);
  opacity:.9;
}
.nsse-choice-label{
  position:relative;
  z-index:1;
  text-shadow:0 1px 5px rgba(0,0,0,.88),0 0 9px rgba(118,68,165,.13);
}
.nsse-choice:hover .nsse-choice-label,
.nsse-choice:focus-visible .nsse-choice-label{
  transform:translateX(5px);
  opacity:1;
}
.nsse-choice:focus-visible{
  outline:0;
  box-shadow:inset 0 0 0 1px rgba(222,188,251,.18);
}

@media(max-width:700px){
  .nsse-choices{width:76%;border-radius:20px}
  .nsse-choices-inner{padding:10px 12px;border-radius:19px}
  .nsse-choice{min-height:29px;padding:6px 8px;font-size:clamp(9px,2.28vw,10.8px);letter-spacing:.04em}
  .nsse-choice-marker{width:5px;height:5px;margin-right:9px}
}

/* =========================================================
   v1.0.4 — Moonlight Frame
   Purple → blue → white light, CSS only.
   ========================================================= */
.nsse-choices{
  padding:1px;
  border:0;
  border-radius:23px;
  background:
    linear-gradient(115deg,
      rgba(155,105,224,.66) 0%,
      rgba(102,137,235,.56) 42%,
      rgba(238,245,255,.72) 72%,
      rgba(136,96,210,.52) 100%);
  box-shadow:
    0 20px 58px rgba(0,0,0,.38),
    0 0 18px rgba(120,91,210,.17),
    0 0 34px rgba(91,135,231,.10);
  isolation:isolate;
  overflow:visible;
}
.nsse-choices::before{
  content:"";
  position:absolute;
  inset:4px;
  z-index:2;
  pointer-events:none;
  border:1px solid transparent;
  border-radius:18px;
  background:
    linear-gradient(rgba(10,7,18,.20),rgba(10,7,18,.20)) padding-box,
    linear-gradient(105deg,
      rgba(187,145,245,.26),
      rgba(117,155,242,.22) 42%,
      rgba(245,249,255,.34) 68%,
      rgba(157,112,225,.20)) border-box;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    0 0 12px rgba(121,142,236,.08);
}
.nsse-choices::after{
  content:"";
  position:absolute;
  z-index:-1;
  left:8%;
  right:8%;
  bottom:-12px;
  height:24px;
  border-radius:50%;
  background:linear-gradient(90deg,rgba(113,75,181,.08),rgba(103,145,232,.18),rgba(240,246,255,.10),rgba(122,76,185,.08));
  filter:blur(16px);
  pointer-events:none;
}
.nsse-choices-inner{
  position:relative;
  z-index:1;
  overflow:hidden;
  margin:1px;
  padding:14px 20px;
  border-radius:21px;
  background:
    radial-gradient(circle at 78% -15%,rgba(219,231,255,.095),transparent 34%),
    radial-gradient(circle at 14% 112%,rgba(144,92,215,.105),transparent 38%),
    linear-gradient(180deg,rgba(20,14,33,.43),rgba(7,5,15,.70));
  backdrop-filter:blur(18px) saturate(126%);
  -webkit-backdrop-filter:blur(18px) saturate(126%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.075),
    inset 0 -1px 0 rgba(104,137,222,.075);
}
.nsse-choices-inner::before{
  content:"";
  position:absolute;
  top:0;
  left:12%;
  right:12%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(201,218,255,.50),rgba(255,255,255,.72),rgba(178,142,235,.38),transparent);
  opacity:.52;
  pointer-events:none;
}
.nsse-choice{
  min-height:34px;
  padding:8px 13px;
  border:0;
  background:
    linear-gradient(90deg,transparent,rgba(180,197,243,.055),transparent) bottom/100% 1px no-repeat;
  font-size:clamp(9.5px,1.12vw,12.5px);
  letter-spacing:.055em;
  transition:background 220ms ease,box-shadow 220ms ease,transform 220ms ease,opacity 180ms ease;
}
.nsse-choice:last-child{background:none}
.nsse-choice::before{
  content:"";
  position:absolute;
  inset:3px 4px;
  border-radius:11px;
  background:linear-gradient(90deg,rgba(126,96,205,.13),rgba(112,151,232,.08),rgba(245,248,255,.025),transparent 84%);
  opacity:0;
  transform:scaleX(.97);
  transform-origin:left center;
  transition:opacity 220ms ease,transform 260ms ease;
  pointer-events:none;
}
.nsse-choice:hover::before,
.nsse-choice:focus-visible::before{opacity:1;transform:scaleX(1)}
.nsse-choice-marker{
  position:relative;
  width:5px;
  height:5px;
  margin-right:11px;
  border:0;
  background:rgba(211,222,255,.52);
  box-shadow:
    0 0 0 1px rgba(171,148,230,.34),
    0 0 9px rgba(118,151,235,.34);
}
.nsse-choice-marker::after{
  content:"";
  position:absolute;
  inset:-4px;
  border:1px solid rgba(192,207,250,.16);
  border-radius:50%;
  opacity:.50;
  transition:transform 220ms ease,opacity 220ms ease;
}
.nsse-choice:hover .nsse-choice-marker,
.nsse-choice:focus-visible .nsse-choice-marker{
  background:rgba(248,251,255,.96);
  box-shadow:
    0 0 0 1px rgba(217,228,255,.70),
    0 0 12px rgba(115,154,243,.76),
    0 0 18px rgba(162,111,226,.35);
  transform:scale(1.05);
}
.nsse-choice:hover .nsse-choice-marker::after,
.nsse-choice:focus-visible .nsse-choice-marker::after{transform:scale(1.34);opacity:.86}
.nsse-choice-label{
  position:relative;
  z-index:1;
  text-shadow:0 1px 5px rgba(0,0,0,.88),0 0 8px rgba(109,123,209,.12);
}
.nsse-choice:hover .nsse-choice-label,
.nsse-choice:focus-visible .nsse-choice-label{transform:translateX(4px);opacity:1}
.nsse-choice:focus-visible{outline:0;box-shadow:inset 0 0 0 1px rgba(178,197,245,.13)}
.nsse-frame-ornament{display:none!important}

@media(max-width:700px){
  .nsse-choices{width:76%;border-radius:20px}
  .nsse-choices::before{inset:3px;border-radius:16px}
  .nsse-choices-inner{padding:10px 12px;border-radius:18px}
  .nsse-choice{min-height:29px;padding:6px 8px;font-size:clamp(9px,2.28vw,10.8px);letter-spacing:.04em}
  .nsse-choice-marker{width:5px;height:5px;margin-right:9px}
}


/* =========================================================
   v1.0.5 — Clear Moonlight Glass
   月光フレームを維持しながら内部の遮光とぼかしを約半分へ。
   ========================================================= */
.nsse-choices::before{
  background:
    linear-gradient(rgba(10,7,18,.075),rgba(10,7,18,.075)) padding-box,
    linear-gradient(105deg,
      rgba(187,145,245,.26),
      rgba(117,155,242,.22) 42%,
      rgba(245,249,255,.34) 68%,
      rgba(157,112,225,.20)) border-box;
}
.nsse-choices-inner{
  background:
    radial-gradient(circle at 78% -15%,rgba(219,231,255,.050),transparent 34%),
    radial-gradient(circle at 14% 112%,rgba(144,92,215,.055),transparent 38%),
    linear-gradient(180deg,rgba(20,14,33,.20),rgba(7,5,15,.34));
  backdrop-filter:blur(8px) saturate(112%);
  -webkit-backdrop-filter:blur(8px) saturate(112%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.085),
    inset 0 -1px 0 rgba(104,137,222,.060);
}
.nsse-choice{
  text-shadow:
    0 1px 2px rgba(0,0,0,.98),
    0 2px 7px rgba(0,0,0,.76),
    0 0 8px rgba(93,74,143,.18);
}
.nsse-choice::before{
  background:linear-gradient(90deg,rgba(126,96,205,.10),rgba(112,151,232,.055),rgba(245,248,255,.018),transparent 84%);
}
@media(max-width:700px){
  .nsse-choices-inner{
    background:
      radial-gradient(circle at 78% -15%,rgba(219,231,255,.045),transparent 34%),
      radial-gradient(circle at 14% 112%,rgba(144,92,215,.050),transparent 38%),
      linear-gradient(180deg,rgba(20,14,33,.18),rgba(7,5,15,.31));
    backdrop-filter:blur(7px) saturate(110%);
    -webkit-backdrop-filter:blur(7px) saturate(110%);
  }
}

/* =========================================================
   v1.0.6 — Moonlit Choice Typography
   プレイヤーの返答文字に、細い月光縁と柔らかな奥行きを追加。
   ========================================================= */
.nsse-choice-label{
  color:rgba(252,250,255,.96);
  -webkit-text-stroke:.28px rgba(222,213,255,.42);
  text-shadow:
    0 1px 1px rgba(0,0,0,.98),
    0 2px 5px rgba(0,0,0,.82),
    0 0 5px rgba(176,151,235,.26),
    0 0 12px rgba(105,132,215,.16);
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.52));
}
.nsse-choice:hover .nsse-choice-label,
.nsse-choice:focus-visible .nsse-choice-label{
  color:rgba(255,255,255,1);
  -webkit-text-stroke:.32px rgba(235,229,255,.54);
  text-shadow:
    0 1px 1px rgba(0,0,0,.98),
    0 2px 5px rgba(0,0,0,.82),
    0 0 7px rgba(194,170,247,.38),
    0 0 15px rgba(126,158,236,.24);
}
@media(max-width:700px){
  .nsse-choice-label{
    -webkit-text-stroke:.24px rgba(222,213,255,.40);
    text-shadow:
      0 1px 1px rgba(0,0,0,.98),
      0 2px 4px rgba(0,0,0,.84),
      0 0 5px rgba(176,151,235,.24),
      0 0 10px rgba(105,132,215,.14);
  }
}


/* =========================================================
   v1.1.1 — Still Photo Memory Collection
   Existing story UI is untouched. Gallery appears only by shortcode.
   ========================================================= */
.nsse-photo-memory{
  width:min(100%,760px);
  margin:18px auto;
  padding:16px;
  box-sizing:border-box;
  border:1px solid rgba(187,145,229,.28);
  border-radius:20px;
  color:#f8f2ff;
  background:linear-gradient(180deg,rgba(25,15,39,.72),rgba(8,5,14,.86));
  box-shadow:0 18px 52px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07);
}
.nsse-photo-memory__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 13px;
}
.nsse-photo-memory__head h3{
  margin:0;
  color:#f5eaff;
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  font-size:clamp(14px,2.6vw,18px);
  font-weight:600;
  letter-spacing:.07em;
}
.nsse-photo-memory__head span{
  color:rgba(224,201,248,.88);
  font-size:13px;
  letter-spacing:.08em;
}
.nsse-photo-memory__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.nsse-photo-memory__card{
  position:relative;
  display:block;
  overflow:hidden;
  min-width:0;
  aspect-ratio:3/2;
  padding:0;
  border:1px solid rgba(203,171,235,.28);
  border-radius:13px;
  background:#08050d;
  box-shadow:0 9px 24px rgba(0,0,0,.28);
  cursor:pointer;
}
.nsse-photo-memory__card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.nsse-photo-memory__card span{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  padding:8px 10px;
  color:#fff;
  background:linear-gradient(180deg,transparent,rgba(5,3,9,.82));
  font-size:11px;
  text-align:left;
  text-shadow:0 1px 4px rgba(0,0,0,.92);
}
.nsse-photo-memory__empty{
  margin:2px 0 0;
  padding:18px 8px;
  color:rgba(225,211,239,.62);
  font-size:13px;
  text-align:center;
}
.nsse-photo-memory__complete{
  margin:12px 0 0;
  padding:9px 12px;
  border-radius:12px;
  color:#f7ecff;
  background:linear-gradient(90deg,rgba(101,62,155,.38),rgba(91,111,190,.32),rgba(101,62,155,.38));
  font-size:13px;
  letter-spacing:.09em;
  text-align:center;
}
.nsse-overlay.is-memory-preview .nsse-voice,
.nsse-overlay.is-memory-preview .nsse-choices,
.nsse-overlay.is-memory-preview .nsse-atmosphere{
  display:none!important;
}
@media(max-width:700px){
  .nsse-photo-memory{margin:14px auto;padding:12px;border-radius:17px}
  .nsse-photo-memory__grid{gap:7px}
  .nsse-photo-memory__card{border-radius:10px}
  .nsse-photo-memory__card span{padding:7px 8px;font-size:9px}
}


/* v1.2.1 — 思い出アルバム回想再生 */
.nsse-overlay.is-memory-replay .nsse-stage::after{
  content:"MEMORY REPLAY";
  position:absolute;
  z-index:8;
  top:14px;
  left:16px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  color:rgba(255,255,255,.92);
  background:rgba(31,18,38,.58);
  backdrop-filter:blur(8px);
  font-size:10px;
  letter-spacing:.16em;
  pointer-events:none;
}


/* v1.2.2 — 回想完了案内とアルバム復帰 */
.nsse-overlay.is-memory-replay .nsse-stage.is-memory-replay-ready::before{
  content:"画面をタップして思い出アルバムへ戻る";
  position:absolute;
  z-index:9;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  width:max-content;
  max-width:82%;
  padding:7px 13px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  color:#fff;
  background:rgba(25,13,29,.68);
  box-shadow:0 5px 18px rgba(0,0,0,.24);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:10px;
  letter-spacing:.06em;
  text-align:center;
  pointer-events:none;
}
