.entry-form .area span em{font-style:normal;font-weight:400;font-size:13px;color:var(--muted);border:1px solid var(--line);border-radius:30px;padding:0 8px}
.strength-box .disclose{background:none;border:0;padding:0;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer}.strength-box .disclose:before{content:'▸';display:inline-block;margin-right:6px}.strength-box .disclose[aria-expanded=true]:before{content:'▾'}
.strengths{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 6px}
.strengths label{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:4px 12px;border:1px solid var(--line);background:#fff;border-radius:30px;cursor:pointer}
.strengths label span{margin:0;font-size:15px;font-weight:500}
.strengths input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--green)}
.nextstep{margin-top:48px;display:grid;gap:44px}
.ns-demo{font-size:14px;color:var(--muted);border:1px dashed var(--line);padding:8px 14px;background:var(--white)}
.nextstep h2{font-size:26px}
.nextstep h3{font-family:AINSerif,serif;font-weight:500;font-size:21px}
.lv-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.lv{background:var(--white);border:1px solid var(--line);padding:18px 20px;display:grid;gap:2px}
.lv.found{border-color:var(--gold-ink);box-shadow:inset 0 3px 0 var(--gold)}
.lv.empty{border-style:dashed;color:var(--muted)}
.lv-kind{font-size:13px;letter-spacing:.12em;color:var(--gold-ink)}
.lv-place{font-size:19px;font-weight:600}
.lv-big{font-family:AINSerif,serif;font-size:40px;line-height:1.2;color:var(--green);font-variant-numeric:tabular-nums}
.lv-big small{font-size:18px;margin-left:2px}
.lv.none .lv-big{color:var(--muted);font-size:30px}
.lv-note{margin-top:12px;padding:12px 16px;background:#eaece3;border-left:3px solid #73846b;font-size:16px}
.ns-top ol{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px;counter-reset:none}
.ns-top li{display:grid;grid-template-columns:40px 1fr;gap:14px;background:var(--white);border:1px solid var(--line);padding:14px 16px}
.ns-top .no{width:36px;height:36px;border-radius:50%;background:var(--green);color:var(--paper);display:grid;place-items:center;font-family:AINSerif,serif;font-size:18px}
.ns-top .kw{font-family:AINSerif,serif;font-size:21px;line-height:1.5;text-wrap:balance}
.ns-top .fact,.ns-top .guess{font-size:15px;line-height:1.7;margin-top:6px}
.ns-top .fact b,.ns-top .guess b{display:inline-block;font-size:12px;font-weight:600;padding:0 8px;margin-right:8px;border-radius:2px;background:var(--green);color:var(--paper)}
.ns-top .guess{color:var(--muted)}
.ns-top .guess b{background:#efe6d2;color:var(--gold-ink)}
.tier{display:inline-block;vertical-align:middle;font-family:AINSans,sans-serif;font-size:13px;line-height:1.6;padding:1px 10px;border-radius:30px;border:1px solid}
.tier.certain{background:var(--gold);border-color:var(--gold);color:var(--green)}
.tier.challenge{background:#fff;border-color:#537189;color:#2c4a60}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.col{background:var(--white);border:1px solid var(--line);padding:18px 18px 10px;align-self:start}
.col.certain{border-top:3px solid var(--gold)}
.col.challenge{border-top:3px solid #537189}
.col h3 small{font-family:AINSans,sans-serif;font-size:14px;color:var(--muted)}
.col details{border-top:1px solid #e3dccb;padding:8px 0}
.col summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;font-weight:600;font-size:16px}
.col summary i{font-style:normal;font-weight:400;font-size:12px;border:1px solid var(--line);border-radius:30px;padding:0 8px;color:var(--muted)}
.col dl{margin:4px 0 6px;display:grid;grid-template-columns:7.5em 1fr;gap:4px 10px;font-size:14px;line-height:1.7}
.col dt{color:var(--gold-ink)}
.col dd{margin:0}
.plan-table{margin-top:14px;border:1px solid var(--line);background:var(--white)}
.pt-row{display:grid;grid-template-columns:1.05fr 1.2fr 1.6fr 1.25fr;border-top:1px solid var(--line)}
.pt-row>span{padding:14px;font-size:14px;line-height:1.7;min-width:0}
.pt-row>span+span{border-left:1px solid #e3dccb}
.pt-head{border-top:0;background:var(--green);color:var(--paper)}
.pt-head>span{font-size:13px;padding:10px 14px}
.pt-plan b{display:block;font-family:AINSerif,serif;font-size:19px;font-weight:500}
.pt-plan em{display:block;font-style:normal;color:var(--gold-ink);font-weight:600;font-variant-numeric:tabular-nums}
.pt-plan small{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:4px}
.pt-kw{display:flex;flex-wrap:wrap;gap:6px;align-content:start}
.pt-kw i{font-style:normal;font-size:13px;border:1px solid var(--line);padding:0 8px;border-radius:2px;background:#faf7ef}
.proposal-sheet{display:none}
@media(max-width:800px){
 .lv-row,.cols{grid-template-columns:1fr}
 .pt-head{display:none}
 .pt-row{grid-template-columns:1fr}
 .pt-row>span+span{border-left:0;border-top:1px dashed #e3dccb}
 .pt-row>span:nth-child(3):before{content:'この言葉にどう効くか';display:block;font-size:12px;color:var(--gold-ink)}
 .pt-row>span:nth-child(4):before{content:'どこまで狙えるか（目安・保証しません）';display:block;font-size:12px;color:var(--gold-ink)}
 .ns-top .kw{font-size:19px}
 .col dl{grid-template-columns:1fr}
}
@media print{
 body.print-proposal>header,body.print-proposal>footer,body.print-proposal .sales-bar,body.print-proposal #app>.result{display:none!important}
 body.print-proposal main{padding:0;max-width:none}
 body.print-proposal .proposal-sheet{display:block;font-size:8pt;line-height:1.45;color:#102e26}
 .proposal-sheet .ps-head{display:flex;gap:14px;align-items:center;border-bottom:1.5pt solid #092e25;padding-bottom:6pt;min-height:0;max-width:none;margin:0}
 .proposal-sheet .ps-head p{font-size:8.6pt;color:#52645c}
 .proposal-sheet .ps-title{font-family:AINSerif,serif;font-size:15pt!important;color:#092e25!important}
 .proposal-sheet .ps-levels{display:flex;gap:10pt;margin:8pt 0}
 .proposal-sheet .ps-levels p{flex:1;margin:0;border:0.7pt solid #c3b79f;padding:5pt 8pt}
 .proposal-sheet .ps-levels b{margin-right:6pt}
 .proposal-sheet h4{font-family:AINSerif,serif;font-weight:500;font-size:11pt;margin:8pt 0 4pt}
 .proposal-sheet table{width:100%;border-collapse:collapse}
 .proposal-sheet th,.proposal-sheet td{border:0.6pt solid #c3b79f;padding:3pt 5pt;vertical-align:top;text-align:left}
 .proposal-sheet th{background:#092e25;color:#f5f1e8;font-weight:500}
 .proposal-sheet .ps-foot{margin-top:6pt;font-size:7.6pt;color:#52645c}
 .proposal-sheet tr{break-inside:avoid}
 .proposal-sheet table{table-layout:fixed}
 .ps-top th:nth-child(1){width:4%}.ps-top th:nth-child(2){width:17%}.ps-top th:nth-child(3){width:10%}.ps-top th:nth-child(4){width:32%}
 .ps-plans th:nth-child(1){width:14%}.ps-plans th:nth-child(3){width:30%}
}
.goal-field em{font-size:13px;font-style:normal;font-weight:400;color:var(--muted)}
.goal-field small{font-size:14px;line-height:1.8;color:var(--muted)}
.goal-summary{margin:24px 0 32px;padding:22px 24px;background:#eaece3;border:1px solid #c3ccb9;border-left:4px solid var(--gold-ink)}
.goal-summary h2{font-family:AINSerif,serif;font-size:clamp(23px,3vw,32px);line-height:1.5;margin:8px 0 12px;text-wrap:balance}
.goal-summary p{line-height:1.8}.goal-summary .goal-limit{font-weight:600;margin:10px 0}
.goal-measurements>p{margin:12px 0;line-height:1.8}
.measurement-table{border:1px solid var(--line);background:var(--white);margin-top:20px}
.mt-row{display:grid;grid-template-columns:1fr 2fr 2fr;border-top:1px solid var(--line)}
.mt-row>span{padding:16px;font-size:15px;line-height:1.8;min-width:0;overflow-wrap:anywhere}
.mt-row>span+span{border-left:1px solid var(--line)}.mt-head{background:var(--green);color:var(--paper);border-top:0}
.mt-row.selected{background:#edf0e6;box-shadow:inset 4px 0 var(--gold-ink)}
.mt-row small{display:block;font-size:13px;line-height:1.8;margin-top:6px}.mt-row [role=rowheader]{font-weight:600}
body.view-proposal #app>.result{display:none}body.view-proposal .goal-proposal{display:block}
.goal-proposal{background:var(--white);border:1px solid var(--line);padding:32px;color:var(--green);font-size:15px;line-height:1.8}
.goal-proposal .proposal-controls{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px}
.goal-proposal .ps-head{display:flex;gap:20px;border-bottom:2px solid var(--green);padding-bottom:16px;align-items:center}
.goal-proposal .ps-head .ps-title{font-family:AINSerif,serif;font-size:24px;line-height:1.5}
.goal-proposal .ps-head p+p{font-size:13px;margin-top:6px}
.goal-proposal .ps-goal{padding:18px 20px;background:#edf0e6;border-left:3px solid var(--gold-ink);margin:20px 0}
.goal-proposal .ps-goal h2{font-family:AINSerif,serif;font-size:26px;line-height:1.5;margin:6px 0}
.goal-proposal .ps-levels{display:flex;gap:16px;font-variant-numeric:tabular-nums}
.goal-proposal h3{font-family:AINSerif,serif;font-size:21px;margin:20px 0 8px}
.goal-proposal .ps-keywords{display:flex;flex-wrap:wrap;gap:4px 16px}.ps-keywords span{display:block}
.goal-proposal .ps-note,.goal-proposal .ps-foot{font-size:13px;color:var(--muted);line-height:1.8;margin:8px 0}
.goal-proposal table{border-collapse:collapse;width:100%;table-layout:fixed;margin-top:16px}
.goal-proposal th,.goal-proposal td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.goal-proposal th{background:var(--green);color:var(--paper);font-weight:500}
.goal-proposal th:first-child{width:22%}.goal-proposal th:nth-child(2){width:40%}
.goal-proposal .ps-measure{display:grid;grid-template-columns:7em 1fr;gap:8px 16px}.ps-measure dd{margin:0}
.goal-proposal .ps-boundary{border-top:1px solid var(--line);padding-top:12px;margin-top:16px;font-weight:600}
@media(max-width:800px){
 .goal-summary{padding:18px}.mt-head{display:none}.mt-row{grid-template-columns:1fr}.mt-row>span+span{border-left:0;border-top:1px dashed var(--line)}
 .mt-row>span:nth-child(2):before{content:'当社で測る物（設定後）';display:block;color:var(--gold-ink);font-size:13px;font-weight:600}
 .mt-row>span:nth-child(3):before{content:'お店から見せてもらう物（任意）';display:block;color:var(--gold-ink);font-size:13px;font-weight:600}
 .goal-proposal{padding:18px}.goal-proposal .ps-head{flex-direction:column;align-items:flex-start;gap:12px}
 .goal-proposal .ps-head .ps-title{font-size:22px}.goal-proposal .ps-goal{padding:14px}.goal-proposal .ps-goal h2{font-size:23px}
 .goal-proposal .ps-levels{flex-direction:column;gap:4px}.goal-proposal .ps-plans,.goal-proposal .ps-plans tbody,.goal-proposal .ps-plans tr,.goal-proposal .ps-plans td{display:block}
 .goal-proposal .ps-plans thead{display:none}.goal-proposal .ps-plans tr+tr{margin-top:16px}
 .goal-proposal .ps-plans td:first-child{background:#edf0e6}.goal-proposal .ps-plans td:nth-child(2):before{content:'目的に向けた対策';display:block;font-weight:600}
 .goal-proposal .ps-plans td:nth-child(3):before{content:'どこまで狙えるか（目安）';display:block;font-weight:600}
 .goal-proposal .ps-measure{grid-template-columns:1fr;gap:4px}.goal-proposal .ps-measure dd{margin-bottom:8px}
}
@media print{
 .goal-summary{break-inside:avoid}
 body.print-proposal .goal-proposal{border:0;padding:0;font-size:8.4pt;line-height:1.6}
 .goal-proposal .proposal-controls{display:none!important}
 .goal-proposal .ps-head{flex-direction:row;align-items:center;gap:12pt;padding-bottom:6pt}
 .goal-proposal .ps-head .ps-title{font-size:15pt!important}.goal-proposal .ps-head p+p{font-size:8pt;margin:0}
 .goal-proposal .ps-goal{margin:8pt 0;padding:6pt 9pt}.goal-proposal .ps-goal h2{font-size:13pt;margin:2pt 0}
 .goal-proposal .ps-levels{display:flex;flex-direction:row;gap:6pt;margin:5pt 0}.goal-proposal .ps-levels p{padding:4pt}
 .goal-proposal h3{font-size:10pt;margin:7pt 0 3pt}
 .goal-proposal .ps-keywords{gap:2pt 10pt}.goal-proposal .ps-keywords small{font-size:7pt}
 .goal-proposal .ps-note,.goal-proposal .ps-foot{font-size:7.2pt;line-height:1.5;margin:4pt 0}
 .goal-proposal table{display:table;margin-top:6pt}.goal-proposal thead{display:table-header-group!important}.goal-proposal tbody{display:table-row-group!important}
 .goal-proposal tr{display:table-row!important}.goal-proposal th,.goal-proposal td{display:table-cell!important;font-size:8pt;padding:4pt;line-height:1.65}
 .goal-proposal td:before{display:none!important}.goal-proposal th:first-child{width:20%}.goal-proposal th:nth-child(2){width:43%}
 .goal-proposal .ps-measure{display:grid;grid-template-columns:6em 1fr;gap:3pt 7pt}.goal-proposal .ps-measure dd{margin:0}
 .goal-proposal .ps-boundary{padding-top:5pt;margin-top:5pt;font-size:8pt}
}
.goal-summary .button{margin-top:16px;white-space:normal;text-align:left}
@media print{.goal-summary .no-print{display:none!important}}

/* Keep short Japanese feature/service words together where space allows. */
.ns-top .kw{word-break:keep-all;overflow-wrap:anywhere}
