/* ささえの輪をつくる */
.wa{padding:28px 0 72px;min-height:70vh;background:radial-gradient(1200px 500px at 50% -10%,var(--bg3),transparent 70%),var(--bg)}
.wa-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.wa-mode{display:flex;align-items:center;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px}
.wa-mode[hidden]{display:none}
.wa-ml{font-size:.78rem;color:var(--sub);padding:0 8px}
.wa-mode button{font:inherit;font-size:.88rem;border:0;background:none;color:var(--ink);padding:6px 14px;border-radius:999px;cursor:pointer}
.wa-mode button[aria-checked="true"]{background:var(--accent);color:var(--accent-ink)}
.wa-card{max-width:680px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:clamp(22px,4vw,40px);box-shadow:0 18px 50px -30px rgba(44,62,87,.35);animation:waIn .45s ease both}
@keyframes waIn{from{opacity:0;transform:translateY(10px)}}
.wa-k{font-size:.8rem;letter-spacing:.14em;color:var(--accent);margin:0 0 6px}
.wa h1{font-family:var(--display);font-weight:500;color:var(--head);font-size:clamp(1.3rem,3.2vw,1.7rem);line-height:1.5;margin:4px 0 10px}
.wa-intro{text-align:center}
.wa-isvg{width:min(300px,80%);display:block;margin:6px auto 8px}
.wa-ifair{display:flex;justify-content:center;gap:clamp(10px,4vw,34px);margin:6px 0 10px}
.wa-ifair figure{margin:0;text-align:center}
.wa-ifair img{height:clamp(90px,16vw,130px);filter:drop-shadow(0 6px 14px rgba(242,184,128,.45))}
.wa-ifair figcaption{font-family:var(--display);font-size:1.05rem}
.wa-ifair small{display:block;font-size:.72rem;color:var(--sub)}
.wa-dots{display:flex;gap:8px;justify-content:center;margin:14px 0 4px}
.wa-dots i{width:8px;height:8px;border-radius:50%;background:var(--line)}
.wa-dots i.on{background:var(--accent)}
.wa-act{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.wa-act .btn{cursor:pointer;font:inherit}
.wa-prom{list-style:none;padding:0;margin:18px 0 0;display:flex;gap:6px 18px;justify-content:center;flex-wrap:wrap}
.wa-prom li::before{content:"・";color:var(--accent)}
.wa-roles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.wa-role{font:inherit;color:inherit;text-align:left;background:var(--card);border:2px solid var(--line);border-radius:16px;padding:16px;cursor:pointer}
.wa-role b{display:block;color:var(--c);font-size:1.1rem}
.wa-role small{color:var(--sub);font-size:.8rem}
.wa-role.on{border-color:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 15%,transparent)}
/* 質問 */
.wa-q{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.wa-lights{grid-column:1/-1;display:flex;align-items:center;gap:18px;justify-content:center}
.wa-lights small{color:var(--sub)}
.wl{display:flex;align-items:center;gap:6px;font-size:.85rem}
.wl i{width:22px;height:22px;border-radius:50%;border:2px solid var(--c);background:conic-gradient(var(--c) calc(var(--p)*360deg),transparent 0);box-shadow:0 0 calc(var(--p)*16px) var(--c);transition:box-shadow .6s}
.wl b{font-weight:500;color:var(--head)}
.wa-qcard{background:var(--card);border:1px solid var(--line);border-top:5px solid var(--fc);border-radius:24px;padding:clamp(20px,3.6vw,34px);box-shadow:0 18px 50px -30px rgba(44,62,87,.35);animation:waIn .4s ease both}
.wa-who{display:flex;align-items:center;gap:12px}
.wa-who img{height:64px;filter:drop-shadow(0 4px 10px color-mix(in srgb,var(--fc) 50%,transparent))}
.wa-who b{display:block;font-family:var(--display);font-size:1.15rem;color:var(--fc)}
.wa-who small{color:var(--sub);font-size:.8rem}
.wa-qt{margin-top:14px!important}
.wa-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.wa-opts.row{grid-template-columns:repeat(5,minmax(0,1fr))}
.wa-o{font:inherit;color:var(--ink);background:color-mix(in srgb,var(--fc,var(--accent)) 6%,var(--card));border:1.5px solid color-mix(in srgb,var(--fc,var(--accent)) 35%,var(--line));border-radius:14px;padding:14px 12px;cursor:pointer;text-align:center;line-height:1.5;transition:background .2s,transform .15s}
.wa-o:hover{transform:translateY(-1px)}
.wa-o.on{background:var(--fc,var(--accent));border-color:var(--fc,var(--accent));color:#fff}
.wa-o.many.on::before{content:"✓ "}
.wa-o.sm{padding:8px 10px;font-size:.88rem}
.wa-o.ghost{background:transparent;border-style:dashed;padding:8px 14px;font-size:.88rem;color:var(--sub)}
.wa-o.ghost.on{background:var(--sub);color:#fff;border-style:solid}
.wa-always{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.wa-why{margin-top:16px;background:var(--bg3);border-radius:12px;padding:10px 14px;font-size:.9rem}
.wa-why summary{cursor:pointer;color:var(--accent);font-weight:500}
.wa-why p{margin:6px 0 0}
.wa-note{display:block;margin-top:12px}
.wa-note span{display:block;font-size:.82rem;color:var(--sub);margin-bottom:4px}
.wa-note textarea{width:100%;box-sizing:border-box;font:inherit;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--bg);color:var(--ink)}
.wa-scale{margin:18px 4px 0}
.wa-scale input{width:100%;accent-color:var(--fc)}
.wa-sl{display:flex;justify-content:space-between;font-size:.8rem;color:var(--sub)}
.wa-sv{text-align:center;font-family:var(--display);font-size:1.3rem;color:var(--fc);margin:6px 0 0}
.wa-rely{display:grid;gap:10px;margin-top:12px}
.wr-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-bottom:1px dashed var(--line);padding-bottom:8px}
.wr-row span{display:flex;gap:6px}
.wa-feelring{max-width:340px;margin:6px auto 0}
.wa-feelring .tap{cursor:pointer}
.wa-empty{color:var(--sub)}
.wa-live{position:sticky;top:110px;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:14px;text-align:center}
.wa-live p{margin:0 0 4px}
/* 輪 */
.wa-ring{width:100%;height:auto;display:block}
.wr-out{stroke:var(--line);stroke-width:2;stroke-dasharray:3 6}
.wr-mid{stroke:var(--line);stroke-width:1.5}
.wr-arc{fill:none;stroke:var(--line);stroke-width:4;stroke-linecap:round}
.wr-arc.on{stroke:var(--gold);stroke-width:9;filter:drop-shadow(0 0 8px rgba(226,194,122,.8))}
.wr-st{font-size:12px;fill:var(--sub);font-family:var(--body)}
.wr-st.on{fill:var(--head);font-weight:700}
.wr-ln{stroke:var(--gold)}
.wr-you{stroke:#fff;stroke-width:3;transition:r .5s}
.wr-glow{fill:var(--apricot);opacity:.22}
.wr-yt{font-family:var(--display);font-size:15px;fill:#fff}
.wr-pt{fill:#fff;font-family:var(--body);font-weight:700}
.wr-pt.q{fill:#9AA8BC}
.wr-p{animation:waIn .5s ease both}
.wr-cs{fill:none;stroke:#9AA8BC;stroke-dasharray:3 3}
.wr-cs.on{fill:var(--gold);stroke:none}
.wr-cst{font-size:10px;fill:var(--head)}
/* 確かめ */
.wa-list{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:8px}
.wa-list button{width:100%;font:inherit;color:inherit;text-align:left;display:grid;grid-template-columns:52px 1fr auto;gap:2px 10px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer}
.wl-f{font-family:var(--display);font-size:.85rem;grid-row:span 2}
.wl-q{font-size:.8rem;color:var(--sub)}
.wa-list b{grid-column:2;font-weight:500}
.wl-e{grid-column:3;grid-row:1/3;color:var(--accent)}
/* 結果 */
.wa-res{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start;animation:waIn .6s ease both}
.wa-resring{background:radial-gradient(circle at 50% 40%,#203656,#132235 70%);border-radius:28px;padding:22px;color:#F5EBD8;text-align:center;--line:#33465F;--sub:#A9B4C4;--head:#F7E3B5;--gold:#E2C27A}
.wa-resring .wa-k{color:#E2C27A}
.wa-leg{color:#A9B4C4!important}
.wa-resnote h1{margin-top:0}
.wa-n{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--c);border-radius:12px;padding:12px 14px;margin:10px 0;font-size:.95rem}
.wa-n b{display:block;font-family:var(--display);font-weight:500;color:var(--c);margin-bottom:2px}
.wa-nd{margin-top:14px}
.wa-save{display:flex;gap:8px;align-items:center;margin-top:14px;font-size:.92rem}
.wa-danger{max-width:900px;margin:0 auto 20px;background:#FFF1F1;border:2px solid #E07A7A;border-radius:18px;padding:16px 20px;color:#5B2A2A}
.wa-danger b{font-size:1.1rem}
.wa-danger ul{margin:6px 0 0}
@media (max-width:860px){
  .wa-q,.wa-res{grid-template-columns:1fr}
  .wa-live{position:static;max-width:300px;margin:0 auto;order:3}
  .wa-roles{grid-template-columns:1fr}
  .wa-opts.row{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){.wa-opts{grid-template-columns:1fr}}
/* 文字いちばん大きいとき：選択肢は1列 */
html[data-fs="3"] .wa-opts,html[data-fs="3"] .wa-opts.row{grid-template-columns:1fr}
@media (max-width:760px){.wa{padding-bottom:150px}}
.wa-sub{margin-top:16px;padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--fc) 8%,var(--card));border:1px dashed color-mix(in srgb,var(--fc) 45%,var(--line))}
.wa-sub p{margin:0 0 4px;font-size:.92rem}
/* まだ答えていないところの、うっすらした枠 */
.wr-ghost{fill:none;stroke:var(--gold);stroke-opacity:.32;stroke-width:1.3;stroke-dasharray:3 4}
.wr-ghost.i{animation:waGh 3s ease-in-out infinite;animation-delay:calc(var(--i)*.4s)}
@keyframes waGh{0%,100%{stroke-opacity:.18}50%{stroke-opacity:.55}}
.wr-gl{stroke:var(--gold);stroke-opacity:.14;stroke-width:1;stroke-dasharray:2 5}
.wr-cst.gh{fill:var(--sub);opacity:.45}
.wr-arc{stroke-opacity:.9}
/* いま聞いているところを、もわもわ照らす */
.wr-haze{pointer-events:none;opacity:.3;transform-box:view-box;transform-origin:200px 200px;animation:waHaze 3.4s ease-in-out infinite}
.wr-haze.b{animation-duration:4.6s;animation-delay:-1.7s;opacity:.2}
@keyframes waHaze{0%,100%{opacity:.14;transform:scale(.97)}50%{opacity:.32;transform:scale(1.03)}}
.wa-now{display:inline-block;margin-top:2px;font-size:.78rem;color:var(--fc);animation:waNow 2.4s ease-in-out infinite}
@keyframes waNow{0%,100%{opacity:.55}50%{opacity:1}}
/* できあがり：答えたところの縁が、順に光る */
.wa-ring.done .wr-p circle,.wa-ring.done .wr-you,.wa-ring.done .wr-arc.on,.wa-ring.done .wr-cs.on{animation:waRim 2.2s ease-out both;animation-delay:var(--d,0s)}
.wa-ring.done .wr-p circle{stroke:#fff;stroke-width:2.5}
@keyframes waRim{0%{filter:none}35%{filter:drop-shadow(0 0 10px #FFF4D2) drop-shadow(0 0 18px rgba(226,194,122,.9))}100%{filter:drop-shadow(0 0 5px rgba(226,194,122,.55))}}
@media (prefers-reduced-motion:reduce){.wr-haze,.wr-ghost.i,.wa-now,.wa-ring.done *{animation:none!important}}
/* 灯守のおてつだい：横のボタン */
.wa-hbtn{position:fixed;left:0;top:42%;z-index:60;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px 12px 8px;border:2px solid #E2B85A;border-left:0;border-radius:0 18px 18px 0;background:linear-gradient(180deg,#2A2418,#1A1610);color:#F4E3B0;font:inherit;font-size:.82rem;line-height:1.35;cursor:pointer;box-shadow:0 0 18px rgba(226,184,90,.45);animation:waHb 2.6s ease-in-out infinite}
.wa-hbtn img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid #E2B85A}
.wa-hbtn[aria-pressed="true"]{background:linear-gradient(180deg,#F4E3B0,#E2B85A);color:#2B2416}
.wa-hbtn[aria-pressed="true"] span::after{content:"（いま入）";display:block;font-size:.7rem}
@keyframes waHb{0%,100%{box-shadow:0 0 10px rgba(226,184,90,.35)}50%{box-shadow:0 0 26px rgba(226,184,90,.8)}}
@media (max-width:760px){.wa-hbtn{top:auto;bottom:150px;font-size:.72rem;padding:8px 8px 8px 6px}.wa-hbtn img{width:40px;height:40px}}
/* 灯守の吹き出し */
.wa-hm{display:flex;gap:12px;align-items:flex-start;margin:10px 0 4px}
.wa-hm img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid #E2B85A;flex:none;box-shadow:0 0 14px rgba(226,184,90,.4)}
.wa-hm p{position:relative;margin:0;padding:12px 16px;border-radius:4px 18px 18px 18px;background:#FFFBF0;color:#2B2416;font-family:"Kiwi Maru",serif;font-size:1.05rem;line-height:1.8}
.wa-hm b{display:block;font-size:.8rem;color:#8A6A2A}
.wa-hm-again{display:inline-block;margin-top:6px;margin-left:4px;font:inherit;font-size:.85rem;padding:4px 12px;border-radius:999px;border:1px solid #C9A04A;background:#fff;color:#6B4E16;cursor:pointer}
.wa-hm-again::before{content:"🔈 "}
/* 色と番号のボタン */
.wa-help .wa-opts,.wa-help .wa-opts.row{grid-template-columns:1fr}
.wa-o.hc{position:relative;display:flex;align-items:center;gap:14px;text-align:left;font-size:1.12rem;padding:16px 18px;border:2px solid var(--hc);background:color-mix(in srgb,var(--hc) 14%,var(--card));color:var(--ink)}
.wa-o.hc::before{content:attr(data-n);flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--hc);color:#fff;font-weight:700;font-size:1.2rem}
.wa-o.many.hc.on::before{content:"✓"}
.wa-o.hc.on{background:var(--hc);color:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--hc) 35%,transparent)}
.wa-o.hc.on::before{background:#fff;color:var(--hc)}
.wa-o.sm.hc{font-size:.95rem;padding:8px 12px;gap:8px}.wa-o.sm.hc::before{width:26px;height:26px;font-size:.9rem}
.wa-help .wr-row span{flex-wrap:wrap}
.wa-help .wa-qt{font-size:clamp(1.4rem,3.6vw,1.9rem)}
@media (max-width:760px){.wa-hbtn span{display:none}.wa-hbtn{padding:6px 6px 6px 4px}.wa-hbtn[aria-pressed="true"]::after{content:"入";font-size:.7rem;font-weight:700}}
/* 答え方をえらぶ画面 */
.wa-howc{max-width:860px}
.wa-how{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.wa-hw{font:inherit;color:inherit;text-align:left;display:grid;grid-template-columns:56px 1fr;gap:4px 14px;align-items:start;padding:18px;border-radius:18px;border:2px solid var(--line);background:var(--card);cursor:pointer;transition:transform .15s,border-color .2s,box-shadow .2s}
.wa-hw:hover{transform:translateY(-2px)}
.wa-hw .hw-ic{grid-row:span 3;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:1.6rem}
.wa-hw b{font-family:var(--display);font-size:1.25rem;color:var(--head)}
.wa-hw .hw-d{font-size:.95rem;line-height:1.6}
.wa-hw small{color:var(--sub);font-size:.8rem}
.hw-quick{background:#5FB3A1}.hw-quick::before{content:"»";color:#fff;font-weight:700}
.hw-feel{background:#F2A65A}.hw-feel::before{content:"〜";color:#fff;font-weight:700}
.hw-read{background:#6F9BE0}.hw-read::before{content:"✎";color:#fff}
.hw-help{background:#E2B85A;overflow:hidden}.hw-help img{width:100%;height:100%;object-fit:cover}
.wa-hw[data-how="help"]{border-color:#E2B85A55;background:linear-gradient(135deg,rgba(226,184,90,.12),var(--card) 60%)}
.wa-hw.on{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent),0 0 22px color-mix(in srgb,var(--accent) 35%,transparent)}
.wa-hw[data-how="help"].on{border-color:#E2B85A;box-shadow:0 0 0 4px rgba(226,184,90,.25),0 0 22px rgba(226,184,90,.45)}
@media (max-width:640px){.wa-how{grid-template-columns:1fr}}
/* 上の切りかえを目立たせる */
.wa-mode{padding:6px;border:1.5px solid color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 16px color-mix(in srgb,var(--accent) 20%,transparent)}
.wa-mode button{font-size:1rem;padding:9px 16px;display:inline-flex;align-items:center;gap:6px}
.wa-ml{font-size:.9rem;font-weight:700;color:var(--head)}
.wa-mode .wm-help{border:1.5px solid #E2B85A;color:#E2C27A}
.wa-mode .wm-help img{width:24px;height:24px;border-radius:50%;object-fit:cover}
.wa-mode .wm-help[aria-checked="true"]{background:#E2B85A;color:#2B2416}
.wa-mnow{grid-column:1/-1;margin:0;text-align:center;font-size:.92rem;color:var(--sub)}
.wa-mnow b{color:var(--accent);margin-right:4px}
.wa-help .wa-mnow b{color:#E2B85A}
@media (max-width:760px){.wa-mode{flex-wrap:wrap;justify-content:center;border-radius:20px}.wa-mode button{font-size:.9rem;padding:8px 12px}.wa-ml{width:100%;text-align:center}}
/* やめて、前の画面にもどる */
.wa-quit{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500;transition:border-color .2s,background .2s}
.wa-quit span{font-size:1.1rem}
.wa-quit:hover,.wa-quit:focus-visible{border-color:#E0826E;background:color-mix(in srgb,#E0826E 12%,var(--card))}
.wa-top{row-gap:12px}
@media (max-width:760px){.wa-quit{order:-1;width:100%;justify-content:center}}
/* 確認のための追加の1問（10-30） */
.wa-sub-k{display:inline-block;margin-bottom:6px;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:700;color:#fff;background:var(--fc)}

/* 10-31 見立てへの声（なるほど・もう少し知りたい・ちがうかも） */
.wa-fb{margin:18px 0 10px;padding:14px 16px;border-radius:16px;background:color-mix(in srgb,#E2C27A 12%,transparent);border:1px solid color-mix(in srgb,#E2C27A 50%,transparent)}
.wa-fb-k{font-weight:700;margin:0 0 8px}
.wa-fb-b{display:flex;flex-wrap:wrap;gap:8px}
.wa-fb-b button{font:inherit;padding:8px 16px;border-radius:999px;border:1.5px solid #D8BC78;background:#fff;color:#2C3E57;cursor:pointer}
.wa-fb-b button[aria-pressed="true"]{background:#3A8676;border-color:#3A8676;color:#fff}
.wa-fb-c{display:grid;gap:4px;margin-top:10px;font-size:.86rem}
.wa-fb-c input{font:inherit;padding:8px 12px;border-radius:10px;border:1px solid #DDD3BE;background:#fff}
.wa-fb-n{margin:8px 0 0}
/* 10-31 階をえらぶ（灯守のおすすめ→本人が選ぶ） */
.wa-pick .wa-pq{margin:14px 0}
.wa-pq-t{font-weight:700;margin:0 0 8px}
.wa-floors{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 8px}
.wa-fl{position:relative;font:inherit;text-align:left;display:grid;gap:6px;padding:14px 14px 16px;border-radius:18px;cursor:pointer;border:2px solid var(--fc);background:var(--fb);color:var(--ft)}
.wa-fl.fl1{--fc:#5FB3A1;--fb:#FFF8EE;--ft:#2B3A36}
.wa-fl.fl2{--fc:#9B7BC8;--fb:#2B2340;--ft:#EDE6F8}
.wa-fl.fl3{--fc:#E2C27A;--fb:#131A29;--ft:#F5E9C8}
.wa-fl-n b{display:block;font-family:var(--display);font-size:1.05rem}
.wa-fl-n small{opacity:.8}
.wa-fl-d{font-size:.84rem;line-height:1.7}
.wa-fl .wa-fl-sg{position:absolute;top:-10px;right:12px;font-style:normal;font-size:.72rem;padding:2px 10px;border-radius:999px;background:#E2C27A;color:#2C2410;font-weight:700}
.wa-fl.rec{box-shadow:0 0 0 3px color-mix(in srgb,var(--fc) 30%,transparent),0 0 22px 4px color-mix(in srgb,var(--fc) 45%,transparent)}
.wa-fl.on{outline:3px solid #3A8676;outline-offset:3px}
.wa-pnote{text-align:center}
.wa-keep{margin:14px 0;padding:12px 14px;border-radius:14px;border:1px dashed #C9B48A}
.wa-keep p{margin:0 0 6px}.wa-keep b{display:block}
@media (max-width:640px){.wa-floors{grid-template-columns:1fr}}
.wa-fl{align-content:start}
.wa-seed{background:rgba(242,201,100,.14);border-radius:10px;padding:8px 12px}

/* 版271 プランごとの作り分け（流れとこたえ。輪の形はこのあと直す） */
.wa-pl{display:inline-block;padding:1px 10px;border-radius:999px;font-size:.78rem;letter-spacing:.06em;background:color-mix(in srgb,var(--gold,#C9A65A) 18%,transparent);color:var(--head);border:1px solid color-mix(in srgb,var(--gold,#C9A65A) 55%,transparent)}
body[data-wa-plan="p1"] .wa-pl{background:linear-gradient(90deg,#EEF1F5,#D9DFE7);color:#3A4656;border-color:#B9C2CF}
body[data-wa-plan="p2"] .wa-pl{background:linear-gradient(90deg,#FBF6EE,#EFE7F7,#E6F3F1);color:#4A3F63;border-color:#D8CBE8}
body[data-wa-plan="pm"] .wa-pl{background:linear-gradient(90deg,#FFE9B0,#E2C27A);color:#3A2C0A;border-color:#C9A65A}
.wa-pre{margin:.2em 0 .4em;font-size:.86rem;color:var(--sub);font-family:var(--display)}
.wa-xinfo{margin-top:10px}
.wa-3t{display:flex;align-items:center;justify-content:center;gap:6px;margin:6px 0 12px;font-size:.82rem}
.wa-3t span{padding:3px 12px;border-radius:999px;border:1px solid var(--line);color:var(--sub)}
.wa-3t span.on{background:#131A29;color:#FFE9B0;border-color:#E2C27A;box-shadow:0 0 12px rgba(226,194,122,.5)}
.wa-3t i{width:18px;height:1px;background:#E2C27A;opacity:.6}
.wa-sec-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#F7F1FF;color:#7A5FB0;font-size:1.4rem;border:1px solid #D8CBE8}
.wa-hear-t textarea{min-height:110px}
.wa-pmopen{text-align:center}
.wa-3rings{width:min(420px,100%);margin:6px auto 10px;display:block}
.wa-3rings circle{fill:none;stroke:#E2C27A;stroke-width:2;stroke-dasharray:4 4;animation:wa3r 6s linear infinite}
.wa-3rings circle.c{stroke-width:3;stroke-dasharray:none;filter:drop-shadow(0 0 6px rgba(226,194,122,.8))}
.wa-3rings text{font-size:12px;text-anchor:middle;fill:var(--head);font-family:var(--display)}
@keyframes wa3r{to{stroke-dashoffset:-48}}
.wa-3list{text-align:left;max-width:520px;margin:10px auto;padding-left:1.4em}.wa-3list li{margin:4px 0}.wa-3list b{margin-right:.6em}
.wa-pros-b{display:inline-flex;align-items:center;gap:4px;margin:8px 0 0;padding:3px 12px;border-radius:999px;border:1px dashed #9C8FD6;background:transparent;color:#6E5DB8;font-size:.8rem;cursor:pointer}
.wa-pros-b::before{content:"?";display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#9C8FD6;color:#fff;font-size:.7rem;font-weight:700}
.wa-n .wa-pros-b{display:flex;width:max-content}
.wa-pros{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:16px;background:rgba(10,14,30,.5)}
.wa-pros[hidden]{display:none}
.wa-pros-in{position:relative;width:min(640px,100%);max-height:86vh;overflow:auto;background:var(--card,#fff);color:var(--ink,#2C3E57);border-radius:20px;padding:22px 22px 18px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.wa-pros-in h2{margin:0 0 4px;font-size:1.3rem}.wa-pros-in h3{margin:16px 0 6px;font-size:1rem;color:#6E5DB8}
.wa-pros-in dl{margin:0;display:grid;grid-template-columns:minmax(9em,auto) 1fr;gap:4px 12px;font-size:.9rem}
.wa-pros-in dt{font-weight:700}.wa-pros-in dd{margin:0;color:var(--sub)}
.wa-pros-x{position:absolute;right:10px;top:8px;border:0;background:none;font-size:1.4rem;cursor:pointer;color:var(--sub)}
.wa-pros-f{margin-top:14px}
@media (max-width:560px){.wa-pros-in dl{grid-template-columns:1fr}.wa-pros-in dd{margin-bottom:6px}}
.wa-hmk{margin:6px 0 2px;font-family:var(--display);font-weight:500;color:var(--head)}.wa-hmk small{display:block;font-size:.76rem;color:var(--sub)}
.wa-plk{margin:0 0 8px;font-size:.86rem;color:var(--sub);display:flex;gap:8px;align-items:center}
.wa-step a{display:inline-block;margin-left:.4em}
.wa-up{margin-top:8px}
.wa-quote{font-family:var(--display)}
.wa-emg{font-weight:700}
.wa-h2{font-size:1.08rem;margin:18px 0 6px}
.wa-9{overflow-x:auto;margin:6px 0 10px}
.wa-9 table{border-collapse:separate;border-spacing:4px;width:100%;min-width:520px;font-size:.84rem}
.wa-9 th{font-family:var(--display);font-weight:500;padding:4px 6px;text-align:left;vertical-align:bottom}
.wa-9 th small{display:block;font-size:.68rem;color:var(--sub)}
.wa-9 tbody th{background:#131A29;color:#FFE9B0;border-radius:10px;writing-mode:horizontal-tb;white-space:nowrap}
.wa-9 td{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px;line-height:1.6;vertical-align:top}
.wa-eyes{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--card)}
.wa-eyes-k{margin:0 0 6px;font-size:.84rem;color:var(--sub)}
.wa-eyes-b{display:flex;gap:6px;flex-wrap:wrap}
.wa-eyes-b button{padding:4px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--head);cursor:pointer;font:inherit;font-size:.86rem}
.wa-eyes-b button[aria-pressed="true"]{background:#131A29;color:#FFE9B0;border-color:#E2C27A}
.wa-eyes-t{margin:10px 0 0;line-height:1.8}
.wa-eyes-q{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.wa-shelf{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.wa-shelf li{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--card);display:flex;flex-direction:column;gap:2px}
.wa-shelf small{color:var(--sub)}.wa-shelf a{font-size:.86rem}
.wa-rep{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 6px}.wa-rep b{margin-right:4px}.wa-rep small{flex-basis:100%;color:var(--sub)}
.wa-nurse{margin:12px 0;padding:12px 14px;border-radius:14px;border:1px solid #E2C27A;background:color-mix(in srgb,#E2C27A 10%,var(--card));display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.wa-nurse small{color:var(--sub)}
.wa-q>.wa-3t{grid-column:1/-1}
/* 版276 見立ての下の3つのボタンの、その場の次の一歩 */
.wa-fbm,.wa-fbd,.wa-fbx{margin:14px 0 4px;padding:14px 16px;border-radius:14px;background:rgba(18,40,92,.06);border:1px solid rgba(60,110,200,.22)}
.wa-fbm-k{margin:0 0 8px;font-weight:700;color:#2B4F9E}.wa-fbm-k small{display:block;font-weight:400;font-size:.8rem;opacity:.8}
.wa-fbm .wa-shelf li{display:flex;flex-direction:column;gap:3px}.wa-fbm-t{font-size:.84rem;line-height:1.6}
.wa-fbx{background:rgba(226,194,122,.1);border-color:rgba(226,194,122,.5)}.wa-fbx .wa-opts{display:flex;flex-wrap:wrap;gap:8px}
.wa-fbx-ok{color:#3E7F70;margin-top:8px}
.wa-fbd-b{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wa-fbd-b button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:12px;border:2px solid var(--fc);background:#fff;cursor:pointer;font:inherit}
.wa-fbd-b img{width:38px;height:38px;object-fit:contain}.wa-fbd-b b{font-size:1.15rem;color:var(--fc)}.wa-fbd-b span{font-size:.76rem;line-height:1.3;text-align:center}
.wr-fbdot circle:first-child{animation:wrFb 2.4s ease-in-out infinite}@keyframes wrFb{50%{opacity:.6}}
/* 版277 レポートの見出し */
.wa-n .wa-n-h{margin:0 0 4px;font-size:.86rem;color:var(--c);font-weight:600;display:flex;align-items:baseline;gap:2px;flex-wrap:wrap}
.wa-n .wa-n-h b{font-size:1.15rem;display:inline;margin:0;color:var(--c)}.wa-n .wa-n-h small{margin-left:auto;font-size:.72rem;font-weight:400;opacity:.75;color:inherit}
.wa-3l{font-size:.74rem;line-height:1.6;opacity:.75;margin:2px 0 10px}
.wa-how{display:block!important;margin:18px 0 6px;padding:12px 14px;border-radius:12px;border:1px dashed rgba(120,120,140,.35);font-size:.8rem;line-height:1.75}.wa-how b{display:block;margin-bottom:4px;font-size:.86rem}.wa-how p{margin:0}
.wa-how b,.wa-how p{display:block!important;width:auto!important;grid-column:auto!important}
.wa-wg{margin:6px 0 0;font-size:.78rem;opacity:.75}.wa-wg a{color:inherit;text-underline-offset:3px}
.wa-net{margin:18px auto 0;max-width:760px;font-size:.74rem;line-height:1.6;opacity:.7;text-align:center;padding:0 16px}
/* 版283 作業場（輪づくりの間は、HPの飾りを止める。残すのは文字ボタンと「HPにもどる」） */
body.wa-work header.top,body.wa-work .nav-reg-float,body.wa-work footer,body.wa-work .wa-hbtn,body.wa-work .hm-box,body.wa-work .hm-tab{display:none!important}
html:has(body.wa-work)::after,body.wa-work::after,body.wa-work::before{display:none!important;content:none!important}
body.wa-work main.wa{padding-top:14px}
body.wa-work .wa-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
body[data-wafl="1"]{--flc:#5FB3A1}body[data-wafl="2"]{--flc:#9B7BC8}body[data-wafl="3"]{--flc:#E2C27A}
.wa-ring .wr-out{stroke:var(--flc,#C9A15A)!important;stroke-width:3;transition:stroke .4s}
.wa-ring .wr-moon{stroke:#DCE3EE;stroke-width:1;stroke-opacity:.95}
.wa-rt{margin:0;font-family:var(--display,inherit);font-size:1.15rem;color:var(--flc);letter-spacing:.08em;text-align:center}
.wa-rd{margin:2px auto 6px;max-width:30em;font-size:.76rem;line-height:1.6;opacity:.8;text-align:center}
.wa-leg3{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 14px;margin:6px 0 0;font-size:.78rem}
.wa-leg3 span{display:inline-flex;align-items:baseline;gap:4px;color:var(--c)}.wa-leg3 i{width:9px;height:9px;border-radius:50%;background:var(--c);align-self:center}.wa-leg3 b{font-size:1rem}
.wr-flab{display:none}
@media (min-width:900px){.wr-flab{display:inline}.wa-live .wa-leg3,.wa-resring .wa-leg3{display:none}}
.wa-fw{font-size:1.1rem}.wa-fw em{font-style:normal;font-size:.86rem;font-weight:500;opacity:.85}
.wa-def{font-size:.86rem;line-height:1.7;opacity:.85}
.wa-flgo{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:14px 0 6px}
.wa-flgo .btn:not(.ghost){background:var(--flc);border-color:var(--flc)}.wa-flgo .btn.ghost{border-color:var(--flc)}
.wa-dot{margin:8px 0 0;min-height:2.6em;color:#E9E2D0}
/* 軽い版：ずっと動く部品は0。答えた瞬間だけ0.6秒 */
.wa-lite #waStage *:not(.wr-pop),.wa-lite #waStage *::before,.wa-lite #waStage *::after{animation:none!important}
.wa-lite .wr-haze.lite{opacity:.18}
.wa-ring.wr-pop{animation:wrPop .6s ease-out!important;transform-origin:50% 50%}
@keyframes wrPop{0%{transform:scale(.985)}40%{transform:scale(1.02)}100%{transform:scale(1)}}
/* きれい版：光のにじみとゆっくりした呼吸。見ていないときは止める */
.wa-rich .wa-live .wa-ring .wr-out{filter:drop-shadow(0 0 6px var(--flc))}
.wa-rich .wa-live .wa-ring .wr-glow{animation:wrBreath 6s ease-in-out infinite;transform-origin:200px 200px}
@keyframes wrBreath{0%,100%{opacity:.35;transform:scale(.97)}50%{opacity:.7;transform:scale(1.04)}}
.wa-paused *{animation-play-state:paused!important}
.wa-ring.still *{animation:none!important}
/* 版283 スマホ：上に輪、下に問い1つ。上の部分は小さく */
@media (max-width:899px){
  body.wa-work .wa-q{display:flex!important;flex-direction:column;gap:12px}
  body.wa-work .wa-q>.wa-live{order:-1;padding:10px 10px 8px;margin:0}
  body.wa-work .wa-live .wa-ring{display:block;width:auto;max-width:100%;height:34vh;margin:0 auto}
  body.wa-work .wa-live .wa-rd{font-size:.7rem;margin-bottom:2px}
  body.wa-work .wa-live .wa-livenote{display:none}
  body.wa-work .wa-mnow{display:none}
  body.wa-work .wa-quit{width:auto;padding:6px 14px;font-size:.82rem;min-height:0}
  body.wa-work .wa-top .sw-lock{flex:1 1 100%}
  body.wa-work .wa-top .sw-lock h1,body.wa-work .wa-top .sw-lock b{font-size:1.05rem}
}
@media (max-width:899px){
  body.wa-work .wa-top{gap:8px}
  body.wa-work .wa-top .wa-quit{order:0}
  body.wa-work .wa-top .fs-ctl{order:1;margin-left:auto}
  body.wa-work .wa-top .sw-lock{order:2}
  body.wa-work .wa-top .wa-mode{order:3;flex:1 1 100%;padding:6px 8px;gap:4px}
  body.wa-work .wa-top .wa-mode .wa-ml{display:none}
  body.wa-work .wa-top .wa-mode button{padding:5px 10px;font-size:.8rem;min-height:0}
  body.wa-work .wa-top .sw-lock small{display:none}
  body.wa-work .wa-top .sw-mark{width:34px;height:34px}
  body.wa-work .wa-q>.wa-live{width:100%;max-width:none;box-sizing:border-box}
  body.wa-work .wa-live .wa-ring{height:30vh}
  body.wa-work .wa-live .wa-rd{display:none}
}
@media (max-width:899px){body.wa-work .wa-q>.wa-qcard,body.wa-work .wa-q>*{width:100%;max-width:none;box-sizing:border-box}}
/* 版284 作業場の左下にブランド、いちばん下に薄い免責 */
.wa-brand{display:none}
body.wa-work .wa-brand{display:flex;align-items:center;gap:6px;width:max-content;margin:28px 0 0 16px;padding:4px 12px 4px 4px;border-radius:999px;background:rgba(255,255,255,.85);border:1px solid rgba(200,161,90,.45);text-decoration:none;color:#2B3446;font-family:var(--display,inherit);font-size:.8rem;letter-spacing:.08em}
body.wa-work .wa-brand svg{width:26px;height:26px}
@media (min-width:900px){body.wa-work .wa-brand{position:fixed;left:14px;bottom:14px;margin:0;z-index:30;box-shadow:0 4px 14px rgba(0,0,0,.08)}}
.wa-dis{display:none}
body.wa-work .wa-dis{display:block;max-width:760px;margin:10px auto 0;padding:0 16px calc(24px + env(safe-area-inset-bottom,0px));font-size:.68rem;line-height:1.7;opacity:.55;text-align:center}
/* 版289 輪づくりの流れ（見本の自動ツアー）への入口 */
.wa-tour{font-size:.8rem;color:inherit;opacity:.8;text-decoration:underline;text-underline-offset:3px;margin-left:12px;white-space:nowrap}
.wa-tour:hover{opacity:1}
@media (max-width:760px){.wa-tour{font-size:.74rem;margin-left:6px}}

/* 11-02 無料の結果：ほかの答えに一言ずつ */
.wa-1l{margin:6px 0 0;padding-left:1.1em}.wa-1l li{margin:5px 0;line-height:1.6}.wa-n .wa-1l b{display:inline;color:inherit;font-weight:600;font-family:inherit;margin:0}

/* 11-02 立場は家族の中の4つ（1行ボタン） */
.wa-roles.wa-pos{grid-template-columns:1fr 1fr;gap:10px}
.wa-pos .wa-role{padding:12px 14px;border-radius:12px;display:flex;flex-direction:column;gap:2px}
.wa-pos .wa-role b{color:var(--c)}
.wa-pos .wa-role.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 18%,transparent)}
@media (max-width:420px){.wa-roles.wa-pos{grid-template-columns:1fr}}
.wa-li-pos{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;padding:10px 12px;border-top:1px dashed var(--line)}
