/* かさねぼし 画面の見た目（見本 uranai_mock/base.css を土台に、スマホ幅〜PC幅で崩れない形へ）。外部フォント・外部通信なし */
:root{
  --night:#1c1733;--night2:#2a2150;--card:rgba(255,248,238,.07);--card-line:rgba(255,236,210,.16);
  --cream:#f7efe3;--sub:#c9bfd8;--mute:#a79dbd;--gold:#ecc77f;--peach:#f4b393;--blue:#9fb2ea;--mist:#b9b0cc;--paper:#fbf6ee;--ink:#3a2f4f;
  --mincho:"Hiragino Mincho ProN","Hiragino Mincho Pro","Yu Mincho","YuMincho","Noto Serif JP",serif;
  --sans:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Noto Sans JP",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
html{background:#15112a}
body{min-height:100vh;min-height:100dvh;font-family:var(--sans);color:var(--cream);line-height:1.75;font-size:15px;letter-spacing:.02em;-webkit-font-smoothing:antialiased;overflow-x:hidden;background:transparent}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(120% 60% at 50% -10%,#4a3a7a 0%,rgba(74,58,122,0) 60%),radial-gradient(80% 40% at 100% 100%,rgba(244,179,147,.14) 0%,rgba(244,179,147,0) 70%),linear-gradient(180deg,var(--night2) 0%,var(--night) 55%,#15112a 100%)}
body.night-deep::before{filter:brightness(.85)}
.stars{position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:radial-gradient(1.2px 1.2px at 12% 8%,#fff8 50%,transparent 51%),radial-gradient(1px 1px at 28% 18%,#fff6 50%,transparent 51%),radial-gradient(1.6px 1.6px at 72% 6%,#ffe9b8cc 50%,transparent 51%),radial-gradient(1px 1px at 88% 22%,#fff7 50%,transparent 51%),radial-gradient(1.3px 1.3px at 46% 12%,#fff5 50%,transparent 51%),radial-gradient(1px 1px at 8% 34%,#fff4 50%,transparent 51%),radial-gradient(1.4px 1.4px at 94% 44%,#ffe9b899 50%,transparent 51%),radial-gradient(1px 1px at 60% 30%,#fff4 50%,transparent 51%),radial-gradient(1px 1px at 20% 62%,#fff3 50%,transparent 51%),radial-gradient(1.2px 1.2px at 80% 70%,#fff3 50%,transparent 51%),radial-gradient(1px 1px at 40% 88%,#fff3 50%,transparent 51%)}
#app{position:relative;z-index:1;max-width:460px;margin:0 auto;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.screen{flex:1;display:flex;flex-direction:column;animation:fadein .5s ease-out both}
#app.same .screen{animation:none}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wrap{padding:0 22px}
.top{min-height:56px;display:flex;align-items:flex-end;justify-content:space-between;padding:16px 22px 10px}
.logo{font-family:var(--mincho);font-size:17px;letter-spacing:.18em;color:var(--cream);display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer}
.logo .mark{width:22px;height:22px;position:relative;display:inline-block}
.logo .mark i{position:absolute;width:12px;height:12px;border-radius:50%}
.logo .mark i:nth-child(1){left:0;top:5px;background:rgba(236,199,127,.85)}
.logo .mark i:nth-child(2){left:6px;top:2px;background:rgba(244,179,147,.6)}
.logo .mark i:nth-child(3){left:10px;top:7px;background:rgba(159,178,234,.55)}
.top .right{font-size:12px;color:var(--sub)}
h1,h2,h3{font-family:var(--mincho);font-weight:600;letter-spacing:.06em;word-break:auto-phrase;text-wrap:balance}
.paper .once,.paper li,.you small,.promise span,.after{text-wrap:balance}
.nb{display:inline-block}
button{font-family:inherit;color:inherit}
a{color:var(--gold)}
.small{font-size:12px;color:var(--sub);line-height:1.7}.tiny{font-size:11px;color:var(--mute);line-height:1.7}
.center{text-align:center}
.card{background:var(--card);border:1px solid var(--card-line);border-radius:20px;padding:18px}
.btn{display:block;width:100%;text-align:center;border:none;border-radius:999px;padding:16px 0;font-size:16px;font-weight:600;letter-spacing:.08em;cursor:pointer;min-height:52px;transition:transform .15s ease-out,opacity .2s}
.btn:active{transform:scale(.98)}
.btn.main{background:linear-gradient(180deg,#f3d595 0%,#e6b56c 100%);color:#3a2a14;box-shadow:0 6px 24px rgba(236,199,127,.28)}
.btn.ghost{background:transparent;color:var(--cream);border:1px solid var(--card-line)}
.btn[disabled]{cursor:not-allowed;box-shadow:none;background:rgba(236,199,127,.14);color:rgba(247,239,227,.55);border:1px solid rgba(236,199,127,.28)}
.btn.main:not([disabled]){animation:ready .6s ease-out both}
@keyframes ready{from{box-shadow:0 0 0 rgba(236,199,127,0)}to{box-shadow:0 6px 24px rgba(236,199,127,.28)}}
.chip{display:inline-block;padding:11px 17px;min-height:44px;border-radius:999px;border:1px solid var(--card-line);background:rgba(255,248,238,.05);font-size:14.5px;color:var(--cream);margin:0 6px 9px 0;cursor:pointer;line-height:1.45;transition:background .2s,border-color .2s,transform .15s ease-out}
.chip:active{transform:scale(.97)}
.chip.on{border-color:rgba(236,199,127,.8);background:rgba(236,199,127,.16);color:var(--gold)}
.chip.soon{opacity:.5;cursor:default;border-style:dashed}
.chip small{font-size:10.5px;color:var(--mute);margin-left:4px}
.pill{display:inline-flex;align-items:center;font-size:12px;padding:3px 10px;border-radius:999px;font-weight:600;letter-spacing:.04em;white-space:nowrap}
.pill.oi{background:rgba(244,179,147,.18);color:var(--peach)}.pill.mu{background:rgba(159,178,234,.18);color:var(--blue)}.pill.ka{background:rgba(185,176,204,.16);color:var(--mist)}
.foot{font-size:11px;color:var(--mute);text-align:center;line-height:1.8;padding:22px 26px 28px;margin-top:auto}
.foot a{color:var(--sub);white-space:nowrap}.foot .links{display:flex;flex-wrap:wrap;justify-content:center;gap:2px 16px;margin-top:6px}
input[type=text],input[type=email],select,textarea{width:100%;background:rgba(255,248,238,.07);border:1px solid var(--card-line);border-radius:14px;padding:12px 14px;color:var(--cream);font-size:16px;font-family:inherit;min-height:46px}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--sub) 50%),linear-gradient(135deg,var(--sub) 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
select option{color:#222}
label.f{display:block;font-size:12px;color:var(--sub);margin:14px 0 6px}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
/* ① 入口 */
.hero{padding:6px 0 0;text-align:center}
.orbit{width:210px;height:140px;margin:0 auto 2px;position:relative}
.orbit .ring{position:absolute;border-radius:50%;border:1px solid rgba(236,199,127,.35)}
.orbit .r1{width:120px;height:120px;left:18px;top:14px}.orbit .r2{width:120px;height:120px;left:72px;top:14px;border-color:rgba(244,179,147,.35)}.orbit .r3{width:120px;height:120px;left:45px;top:-2px;border-color:rgba(159,178,234,.3);transform:scale(.9)}
.orbit .core{position:absolute;left:96px;top:66px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#fff6dc 0%,#ecc77f 45%,rgba(236,199,127,0) 72%);box-shadow:0 0 34px 12px rgba(236,199,127,.35);animation:glow 3.6s ease-in-out infinite}
.orbit .s{position:absolute;width:6px;height:6px;border-radius:50%;background:#fbe7bd;box-shadow:0 0 10px #ecc77f}
@keyframes glow{0%,100%{box-shadow:0 0 34px 12px rgba(236,199,127,.3)}50%{box-shadow:0 0 44px 16px rgba(236,199,127,.5)}}
.lead{font-family:var(--mincho);font-size:27px;line-height:1.55;letter-spacing:.08em;margin-top:6px}
.sublead{font-size:14px;color:var(--sub);margin-top:12px;line-height:1.85}
.q{margin-top:20px}.q .label{font-size:13px;color:var(--gold);letter-spacing:.12em;margin-bottom:12px;text-align:center}
.chips{text-align:center}
.promise{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}
.promise div{text-align:center;padding:12px 4px;border-radius:14px;background:rgba(255,248,238,.05);border:1px solid var(--card-line)}
.promise b{display:block;font-family:var(--mincho);font-size:14px;font-weight:600;letter-spacing:.04em}.promise span{font-size:11px;color:var(--sub);line-height:1.5;display:block;margin-top:2px}
.cta{margin-top:22px}.cta .note{text-align:center;margin-top:10px}
.namebox{margin-top:16px}
/* ② 会話 */
.prog{display:flex;align-items:center;gap:6px;padding:4px 22px 12px}
.prog i{flex:1;height:3px;border-radius:3px;background:rgba(255,248,238,.12)}.prog i.on{background:linear-gradient(90deg,#ecc77f,#f4b393)}
.prog span{font-size:11px;color:var(--sub);margin-left:6px;white-space:nowrap}
.log{flex:1;padding:6px 18px 20px}
.who{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.av{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 50% 45%,#fff3d2 0%,#ecc77f 35%,#6b5a9c 75%);box-shadow:0 0 16px rgba(236,199,127,.35)}
.who b{font-family:var(--mincho);font-size:13px;color:var(--gold);font-weight:600;letter-spacing:.1em}
.ai{background:rgba(255,248,238,.08);border:1px solid var(--card-line);border-radius:4px 18px 18px 18px;padding:14px 16px;line-height:1.9;margin:0 26px 18px 0}
.me{background:linear-gradient(180deg,rgba(244,179,147,.26),rgba(236,199,127,.18));border-radius:18px 4px 18px 18px;padding:12px 16px;line-height:1.85;margin:0 0 18px 56px;word-break:break-word}
.log .new{animation:fadein .45s ease-out both}.log .ai.new{animation-delay:.06s}
.choices .chip{animation:fadein .45s ease-out both}.choices .chip:nth-child(2){animation-delay:.08s}.choices .chip:nth-child(3){animation-delay:.16s}.choices .chip:nth-child(4){animation-delay:.24s}
.typing{display:inline-flex;gap:5px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:.4;animation:dot 1.2s ease-in-out infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes dot{0%,100%{opacity:.25}50%{opacity:1}}
.bar{padding:12px 16px calc(18px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,236,210,.08);background:rgba(21,17,42,.72);position:sticky;bottom:0}
.input{display:flex;align-items:center;gap:10px;background:rgba(255,248,238,.07);border:1px solid var(--card-line);border-radius:999px;padding:4px 6px 4px 18px}
.input input{flex:1;background:none;border:none;padding:10px 0;min-height:40px;border-radius:0}.input input:focus{outline:none}
.send{width:44px;height:44px;flex:none;border-radius:50%;border:none;background:linear-gradient(180deg,#f3d595,#e6b56c);color:#3a2a14;font-weight:700;font-size:18px;cursor:pointer}
.bar .tiny{text-align:center;margin-top:8px}
/* ②' 入力 */
.birth{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px}
.tarot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 7px;margin-top:12px}
.tarot .tcard{width:calc((100% - 35px) / 6)}
.tcard{aspect-ratio:2/3;border-radius:8px;border:1px solid rgba(236,199,127,.4);background:linear-gradient(160deg,#3a2c66 0%,#231b45 100%);position:relative;cursor:pointer;transition:transform .25s ease-out,box-shadow .25s}
.tcard:before{content:"";position:absolute;inset:4px;border-radius:5px;border:1px solid rgba(236,199,127,.18)}
.tcard:after{content:"✦";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:14px;opacity:.7}
@media (hover:hover){.tcard:hover{transform:translateY(-3px)}}.tcard.on{transform:translateY(-6px);box-shadow:0 0 22px rgba(236,199,127,.6);border-color:var(--gold);background:linear-gradient(160deg,#4a3880 0%,#2b2154 100%)}.tcard.on:after{opacity:1;font-size:17px;text-shadow:0 0 10px rgba(236,199,127,.9)}
/* ③ 演出（光る・浮かぶ・めくれるの3つだけ。0.6〜0.8秒の ease-out） */
.stage{position:relative;width:min(320px,82vw);height:min(320px,82vw);margin:36px auto 0}
.circle{position:absolute;inset:0;border-radius:50%;border:1px dashed rgba(236,199,127,.28);transition:border-color 1.2s ease-out}.circle.c2{inset:14%;border-style:solid;border-color:rgba(255,236,210,.1)}.circle.c3{inset:29%;border-color:rgba(244,179,147,.18)}
.halo{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(236,199,127,.16) 0%,rgba(122,96,190,.10) 45%,rgba(122,96,190,0) 70%);opacity:.55;transition:opacity 1.4s ease-out,transform 1.4s ease-out}
.node{position:absolute;width:84px;text-align:center;transform:translate(-50%,-50%)}
.node .dot{position:relative;width:14px;height:14px;margin:0 auto 7px;border-radius:50%;background:rgba(255,248,238,.22);transition:background .6s ease-out,box-shadow .6s ease-out}
.node .dot:after{content:"";position:absolute;inset:-2px;border-radius:50%;border:1px solid rgba(236,199,127,.7);opacity:0}
.node b{display:block;font-size:12px;font-weight:500;color:var(--mute);white-space:nowrap;letter-spacing:.06em;transition:color .6s ease-out}
.node.lit .dot{background:#fbe7bd;box-shadow:0 0 18px 4px rgba(236,199,127,.55)}.node.lit b{color:var(--cream)}
.node.lit .dot:after{animation:ripple 1.1s ease-out both}
@keyframes ripple{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}
.cardc{position:absolute;left:50%;top:50%;width:30%;aspect-ratio:2/3.1;transform:translate(-50%,-50%) rotate(-4deg);perspective:700px}
.cardc .face{position:absolute;inset:0;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;font-family:var(--mincho);-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .8s ease-out;box-shadow:0 0 50px rgba(236,199,127,.22)}
.cardc .face:before{content:"";position:absolute;inset:6px;border-radius:6px;border:1px solid rgba(236,199,127,.35)}
.cardc .back{transition:transform .8s ease-out,opacity 0s .4s;background:linear-gradient(160deg,#3a2c66 0%,#231b45 100%);border:1px solid rgba(236,199,127,.55)}
.cardc .front{background:linear-gradient(170deg,#fbf3e2 0%,#efdcb8 100%);border:1px solid #e6c98f;transform:rotateY(180deg);color:#4a3418;opacity:0;transition:transform .8s ease-out,opacity 0s .4s}
.cardc .front:before{border-color:rgba(160,110,40,.35)}
.cardc .mark{color:var(--gold);font-size:26px;animation:glowt 3.6s ease-in-out infinite}
@keyframes glowt{0%,100%{text-shadow:0 0 6px rgba(236,199,127,.4)}50%{text-shadow:0 0 16px rgba(236,199,127,.9)}}
.cardc .nm{font-size:clamp(14px,4.6vw,19px);font-weight:600;letter-spacing:.12em;line-height:1.35;padding:0 8px}.cardc small{font-family:var(--sans);font-size:10.5px;color:#8a6a3c;letter-spacing:.12em}
.cardc.flip .back{transform:rotateY(-180deg);opacity:0}.cardc.flip .front{transform:rotateY(0deg);opacity:1}
.stage.all .circle{border-color:rgba(236,199,127,.55)}.stage.all .halo{opacity:1;transform:scale(1.12)}
.stage.all .node .dot{box-shadow:0 0 24px 7px rgba(236,199,127,.6)}
.msg{text-align:center;margin-top:30px;padding:0 18px}.msg h2{font-size:21px;line-height:1.6}.msg p{color:var(--sub);font-size:14px;margin-top:8px;min-height:24px}
.msg .in{animation:fadein .6s ease-out both}.msg p.in{animation-delay:.12s}
.breath{margin:24px auto 0;width:220px;text-align:center;font-family:var(--mincho);font-size:15px;color:var(--gold);letter-spacing:.2em}
.breath .bar2{height:2px;margin-top:10px;border-radius:2px;background:linear-gradient(90deg,rgba(236,199,127,0),#ecc77f 50%,rgba(236,199,127,0));animation:breathe 8s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.3;transform:scaleX(.5)}45%,55%{opacity:1;transform:scaleX(1)}}
.done{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;margin:18px 12px 0;font-size:12px;color:var(--mute)}
.done span{display:inline-flex;align-items:center;gap:4px;transition:color .6s ease-out}.done i{width:11px;height:11px;border-radius:50%;border:1px dashed rgba(185,176,204,.5);display:inline-block;transition:all .6s ease-out}
.done .ok{color:var(--peach)}.done .ok i{border:none;background:none;width:auto;height:auto}.done .ok i:before{content:"✓";font-style:normal;font-size:11px}
.done .now{color:var(--gold)}.done .now i{border-color:var(--gold);box-shadow:0 0 8px rgba(236,199,127,.6)}
/* ④ 結果 */
.head{padding:10px 0 4px}.head .kicker{font-size:12px;color:var(--gold);letter-spacing:.14em}.head h1{font-size:22px;line-height:1.55;margin-top:4px}
.paths{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 0}
.path{border-radius:16px;padding:11px 12px;border:1px solid var(--card-line);background:rgba(255,248,238,.04);text-align:left;cursor:pointer}
.path.on{border-color:rgba(236,199,127,.6);background:rgba(236,199,127,.09)}.path b{font-size:13.5px;display:block;font-weight:600;line-height:1.5}.path span{font-size:11.5px;color:var(--sub)}
.wind{margin-top:16px;padding:18px 18px 16px}.wind .row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.wind .title{font-family:var(--mincho);font-size:15px;letter-spacing:.08em}
.split{font-size:12.5px;color:#2a2150;background:linear-gradient(180deg,#f3d595,#e6b56c);border-radius:999px;padding:4px 12px;font-weight:700;letter-spacing:.06em;box-shadow:0 0 16px rgba(236,199,127,.3)}
.meter{display:flex;gap:6px;margin:14px 0 10px}.meter i{flex:1;height:32px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;font-weight:600;animation:lit .6s ease-out both}
.meter i:nth-child(2){animation-delay:.12s}.meter i:nth-child(3){animation-delay:.24s}.meter i:nth-child(4){animation-delay:.36s}.meter i:nth-child(5){animation-delay:.48s}
@keyframes lit{from{opacity:0;filter:brightness(1.6);transform:translateY(4px)}to{opacity:1;filter:none;transform:none}}
.split{animation:fadein .6s .7s ease-out both}
.meter .oi{background:rgba(244,179,147,.85);color:#3b2318}.meter .mu{background:rgba(159,178,234,.8);color:#1d2550}.meter .ka{background:rgba(185,176,204,.35);color:var(--cream)}
.count{display:flex;gap:14px;font-size:13px}.count b{font-size:20px;font-family:var(--mincho);margin-right:2px}.count .c1{color:var(--peach)}.count .c2{color:var(--blue)}.count .c3{color:var(--mist)}
.wind p{font-size:13.5px;color:var(--sub);margin-top:10px;line-height:1.8}
.list{margin-top:14px}.it{display:flex;gap:12px;padding:14px 2px;border-bottom:1px solid rgba(255,236,210,.08)}
.it .ic{width:34px;height:34px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mincho);font-size:15px;background:rgba(255,248,238,.07);color:var(--gold);border:1px solid var(--card-line)}
.it .body{flex:1;min-width:0}.it .nm{display:flex;align-items:center;justify-content:space-between;gap:8px}.it .nm b{font-size:14.5px;font-weight:600}.it .nm small{font-size:11px;color:var(--mute);font-weight:400;margin-left:6px}
.it p{font-size:13.5px;color:var(--sub);line-height:1.75;margin-top:3px}
.counter{margin-top:18px;border-radius:20px;padding:18px;background:linear-gradient(180deg,rgba(159,178,234,.14),rgba(159,178,234,.05));border:1px solid rgba(159,178,234,.35)}
.counter h3{font-size:15px;color:var(--blue)}.counter p{font-size:14.5px;line-height:1.9;margin-top:8px}.counter .cv-sub{font-size:11.5px;color:var(--mist);margin-top:2px;line-height:1.6}
.next{margin-top:18px}
.note{margin-top:14px;padding:14px;border-radius:16px;background:rgba(236,199,127,.08);border:1px solid rgba(236,199,127,.3);font-size:13.5px;line-height:1.8}
.note a{color:var(--gold)}
/* ⑤ 道しるべ・買う */
.summary{margin-top:14px;font-size:14.5px;line-height:1.9}
.choices{margin-top:16px}.ch{display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border-radius:16px;background:rgba(255,248,238,.05);border:1px solid var(--card-line);margin-bottom:8px}
.ch .n{width:26px;height:26px;flex:none;border-radius:50%;background:rgba(236,199,127,.16);color:var(--gold);font-family:var(--mincho);font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:1px}
.ch b{font-size:14.5px;font-weight:600;display:block;line-height:1.6}.ch span{font-size:12.5px;color:var(--sub);line-height:1.7;display:block;margin-top:2px}
.you{margin:16px 0 0;text-align:center;font-family:var(--mincho);font-size:16px;letter-spacing:.1em;color:var(--gold)}.you small{display:block;font-family:var(--sans);font-size:12px;color:var(--sub);letter-spacing:.02em;margin-top:4px}
.line{display:flex;align-items:center;gap:10px;margin:26px 0 14px;color:var(--sub);font-size:12px;letter-spacing:.1em}.line:before,.line:after{content:"";flex:1;height:1px;background:rgba(255,236,210,.18)}
.paper{background:var(--paper);color:var(--ink);border-radius:22px;padding:20px 18px 18px;box-shadow:0 10px 40px rgba(0,0,0,.35)}
.paper .t{display:flex;align-items:baseline;justify-content:space-between}.paper h2{font-size:19px;color:var(--ink)}
.price{font-family:var(--mincho);font-size:26px;font-weight:600;color:#7a4e1d}.price small{font-size:12px;font-family:var(--sans);color:#7b6f88;font-weight:400;margin-left:2px}
.paper .once{font-size:12.5px;color:#7a4e1d;background:#f6e7cc;border-radius:10px;padding:7px 10px;margin-top:8px;line-height:1.6}
.paper ul{list-style:none;margin-top:12px}.paper li{font-size:13.5px;line-height:1.7;padding:7px 0 7px 22px;position:relative;border-bottom:1px dashed #e6dccd}.paper li:last-child{border-bottom:none}.paper li:before{content:"✦";position:absolute;left:2px;top:7px;color:#c9953f;font-size:12px}
.paper .btn.main{margin-top:14px}.paper .btn[disabled]{background:#efe5d3;color:#9a8a70;border-color:#e3d5bb}.paper .tiny{color:#857a93;text-align:center;margin-top:10px}.paper .btn.ghost{color:var(--ink);border-color:#d8cdbb}
.save{margin-top:12px}
.paper table{width:100%;border-collapse:collapse;margin-top:10px;font-size:13px}.paper th{text-align:left;font-weight:600;color:#6d5f80;padding:8px 8px 8px 0;vertical-align:top;width:34%;border-bottom:1px dashed #e6dccd}.paper td{padding:8px 0;border-bottom:1px dashed #e6dccd;line-height:1.7}
/* ⑥ つらい悩み */
.screen.care{background:linear-gradient(180deg,#2a2348 0%,#1d1835 60%,#181430 100%)}
.stop{margin-top:6px;padding:20px 18px;border-radius:22px;background:rgba(255,248,238,.09);border:1px solid rgba(236,199,127,.3)}.stop .k{font-size:12px;color:var(--gold);letter-spacing:.12em}.stop p{font-size:15px;line-height:1.95;margin-top:8px}
.help{margin-top:14px}.help h3{font-size:14px;margin-bottom:8px;letter-spacing:.06em}
.h{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:14px;background:rgba(255,248,238,.06);border:1px solid var(--card-line);margin-bottom:8px}
.h>div{flex:1 1 190px;min-width:0}.h .go{margin-left:auto}.h b{font-size:14px;font-weight:600;display:block;line-height:1.5}.h span.d{font-size:11.5px;color:var(--sub);display:block;line-height:1.6}
.h .go{font-size:13px;color:#3a2a14;background:linear-gradient(180deg,#f3d595,#e6b56c);border-radius:999px;padding:8px 14px;white-space:nowrap;font-weight:600;text-decoration:none}
.after{margin-top:12px;font-size:12.5px;color:var(--sub);line-height:1.8;text-align:center}
/* 鑑定書 */
.kan .sec{margin-top:12px;background:var(--paper);color:var(--ink);border-radius:18px;padding:16px 16px 14px}
.kan .sec h3{font-size:15px;color:#6a3f10;display:flex;gap:8px;align-items:center}.kan .sec p{font-size:14px;line-height:1.9;margin-top:6px}
.kan .sec.counter2{background:#eaeefb;color:#232a52}.kan .sec.counter2 h3{color:#34408a}
.kan .st{margin-top:10px;padding-top:10px;border-top:1px dashed #e0d5c3}.kan .st b{font-size:14px}.kan .st small{display:block;font-size:12px;color:#7b6f88;margin-top:2px}
.kan .end{margin-top:20px;text-align:center;font-family:var(--mincho);line-height:2;font-size:15px;color:var(--gold)}
.actions{display:grid;gap:10px;margin-top:18px}
.legal{padding:0 22px 8px}.legal h2{font-size:18px;margin:20px 0 8px}.legal p,.legal li{font-size:13.5px;line-height:1.9;color:var(--sub)}.legal ul{padding-left:20px}
.legal table{width:100%;border-collapse:collapse;margin-top:10px}.legal th{text-align:left;width:34%;color:var(--gold);font-weight:500;font-size:13px;padding:10px 8px 10px 0;vertical-align:top;border-bottom:1px solid rgba(255,236,210,.1)}.legal td{font-size:13.5px;line-height:1.8;padding:10px 0;border-bottom:1px solid rgba(255,236,210,.1);color:var(--cream)}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:rgba(21,17,42,.95);border:1px solid var(--card-line);border-radius:999px;padding:10px 18px;font-size:13px;z-index:20}
/* 動きを減らす設定：浮かぶ・めくれる・広がるを止め、光る（色が変わる）だけにする */
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.node.lit .dot:after{opacity:0}.stage.all .halo{transform:none}}
@media (min-width:520px){#app{padding-bottom:20px}}
@media print{body{background:#fff;color:#222}.stars,.top,.actions,.foot,.noprint{display:none!important}.kan .sec{border:1px solid #ccc;break-inside:avoid}.kan .end{color:#555}#app{max-width:none}.screen{animation:none}}
