.relife-diagnosis{font-family:'Noto Sans JP',sans-serif;color:#273b36;max-width:760px;margin:30px auto;background:#fff;border:1px solid #dcece5;border-radius:18px;padding:24px;box-sizing:border-box;line-height:1.75}.relife-diagnosis *{box-sizing:border-box}.relife-head{text-align:center;background:#edf8f2;border-radius:12px;padding:25px 15px;margin-bottom:25px}.relife-head span{font-size:13px;color:#23846d;font-weight:700}.relife-head h2{font-size:25px;color:#125e52;margin:8px 0}.relife-head p{font-size:14px;margin:0;color:#53776d}.relife-progress{display:flex;justify-content:space-between;font-size:13px;color:#64746e}.relife-track{height:7px;background:#e5ece8;border-radius:8px;margin:9px 0 24px;overflow:hidden}.relife-track div{height:100%;background:#23846d;transition:width .2s}.relife-field{border:0;padding:0;margin:0}.relife-field legend{font-size:19px;font-weight:700;margin-bottom:16px}.relife-field legend small{font-weight:400;color:#65766e}.relife-choice{display:flex;align-items:center;gap:12px;padding:12px 15px;margin:9px 0;border:1px solid #dce7e0;border-radius:10px;cursor:pointer;font-size:15px}.relife-choice:has(input:checked){border-color:#23846d;background:#edf8f2}.relife-choice input{accent-color:#23846d;width:18px;height:18px;flex-shrink:0}.relife-actions{display:flex;gap:12px;justify-content:space-between;margin-top:26px}.relife-btn{background:#117668;color:#fff;border:1px solid #117668;border-radius:9px;padding:12px 18px;font-size:15px;font-weight:700;cursor:pointer;flex:1}.relife-btn.secondary{background:white;color:#117668}.relife-btn:disabled{opacity:.4;cursor:not-allowed}.relife-footnote{font-size:12px;color:#67756f;line-height:1.8}.relife-confirm{max-height:300px;overflow:auto;border:1px solid #e2e9e5;border-radius:10px}.relife-confirm>div{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid #e7eee9;font-size:12px}.relife-confirm strong{text-align:right}.relife-contact{margin-top:22px}.relife-contact h3,.relife-section h3{font-size:19px;margin:10px 0}.relife-contact>label:not(.relife-consent){display:block;margin:12px 0;font-size:14px}.relife-contact input[type=text],.relife-contact input[type=email]{display:block;width:100%;padding:12px;border:1px solid #cbded4;border-radius:8px;margin-top:4px;font-size:16px}.relife-consent{display:flex;gap:10px;align-items:start;font-size:13px}.relife-consent input{margin-top:6px;accent-color:#117668}.relife-honeypot{position:absolute;left:-9999px}.relife-error{color:#a43232;font-size:13px}.relife-rank{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#edf8f2;padding:18px;border-radius:12px;text-align:center}.relife-rank>div{background:white;border-radius:9px;padding:15px}.relife-rank small{display:block;color:#64776f}.relife-rank strong{font-size:55px;line-height:1.25;color:#117668}.relife-rank h3{font-size:20px;margin:13px 0;color:#174e43}.relife-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.relife-stats>div{text-align:center;background:#f5f7f6;border-radius:9px;padding:12px}.relife-stats strong{display:block;font-size:25px}.relife-stats span{font-size:12px;color:#64766d}.relife-section{margin:26px 0}.relife-strength{padding:8px 0;border-bottom:1px solid #edf0ee;color:#226b54}.relife-issue{border:1px solid #dce8e1;border-radius:10px;padding:15px;margin:12px 0}.relife-issue-title{display:flex;justify-content:space-between;gap:10px}.relife-issue-title span{font-size:12px;color:#93672e}.relife-answer{font-size:13px;color:#6d7771;margin:5px 0}.relife-tip{background:#edf8f2;border-radius:8px;padding:12px;margin-top:10px}.relife-tip b{font-size:12px;color:#117668}.relife-tip p{margin:3px 0;font-size:14px}@media(max-width:560px){.relife-diagnosis{padding:14px;margin:12px auto}.relife-head h2{font-size:21px}.relife-field legend{font-size:17px}.relife-choice{font-size:14px}.relife-rank h3{font-size:16px}.relife-rank strong{font-size:43px}.relife-btn{font-size:13px;padding:11px 8px}}@media print{body *{visibility:hidden!important}.relife-diagnosis,.relife-diagnosis *{visibility:visible!important}.relife-diagnosis{position:absolute;left:0;top:0;width:100%;max-width:none;border:0}.relife-actions{display:none!important}}

/* v0.1.1: theme-safe left-aligned choice text and right-aligned radio */
.relife-diagnosis label.relife-choice{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;text-align:left!important;gap:16px!important;width:100%;min-height:56px;direction:ltr!important}
.relife-diagnosis .relife-choice .relife-choice-text{display:block!important;flex:1 1 auto!important;min-width:0!important;text-align:left!important;margin:0!important;padding:0!important;float:none!important;position:static!important;order:0!important}
.relife-diagnosis .relife-choice input[type="radio"]{display:block!important;position:static!important;float:none!important;flex:0 0 20px!important;order:1!important;width:20px!important;height:20px!important;min-width:20px!important;max-width:20px!important;margin:0!important;padding:0!important;inset:auto!important;transform:none!important;opacity:1!important;visibility:visible!important;accent-color:#23846d;cursor:pointer}

.relife-consult{margin:22px 0;padding:20px;border:1px solid #a8d9c4;border-radius:12px;background:#f0faf5}.relife-consult h3{margin:0 0 8px;color:#125e52;font-size:18px}.relife-consult p{margin:0 0 15px;font-size:14px;line-height:1.8}.relife-consult .relife-btn{display:block;text-align:center;text-decoration:none;max-width:360px;margin:0 auto}

/* v0.3.4: show only the practical readiness decision; remove prototype rank */
.relife-decision{display:block;background:#edf8f2;border-radius:12px;padding:28px 22px;margin:20px 0 24px;text-align:center;border:1px solid #dcece5}.relife-decision small{display:block;color:#64776f;font-size:14px;margin-bottom:12px}.relife-decision h3{display:inline-block;max-width:100%;margin:0;padding:14px 22px;background:#d9edf5;border-radius:8px;color:#172b28;font-size:26px;line-height:1.55;overflow-wrap:anywhere}
@media(max-width:560px){.relife-decision{padding:20px 12px}.relife-decision h3{font-size:20px;padding:12px 14px}}

.relife-actions a.relife-btn{text-decoration:none;display:flex;align-items:center;justify-content:center;text-align:center}

.relife-quickedit{display:grid;gap:12px;max-height:65vh;overflow:auto;padding:4px 6px}.relife-edit-row{border:1px solid #dce8e1;border-radius:10px;padding:12px}.relife-edit-row label{display:block;font-size:14px;margin-bottom:6px}.relife-edit-row select{width:100%;font:inherit;color:#273b36;background:#fff;border:1px solid #bfd7cb;border-radius:8px;padding:10px;min-height:44px}

.relife-share{margin-top:18px;text-align:center}.relife-share [data-share-result]{max-width:420px;width:100%;margin:0 auto}.relife-share .relife-footnote{margin-top:10px}.relife-share-feedback{font-size:14px;color:#0c766c;margin-top:8px}

.relife-share-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.relife-share-buttons .relife-btn{min-width:0}.relife-share-line{background:#06c755!important;color:white!important}.relife-share-x{background:#171717!important;color:white!important}.relife-share-manual{width:100%;min-height:120px;margin-top:10px;padding:10px;border:1px solid #ddd;border-radius:8px}.relife-share-manual[hidden]{display:none}@media(max-width:480px){.relife-share-buttons{gap:6px}.relife-share-buttons .relife-btn{padding:12px 5px;font-size:14px}}

/* v0.5.0: prominent consultation CTA, subordinate edit actions */
.relife-booking-feature{margin:28px 0 18px;padding:25px 22px;text-align:center;background:#edf8f2;border:1px solid #c7e6d8;border-radius:15px}
.relife-booking-feature h3{margin:0 0 10px;color:#125e52;font-size:20px;line-height:1.5}
.relife-booking-feature p{margin:0 0 18px;color:#405e53;font-size:14px;line-height:1.8}
.relife-diagnosis .relife-booking-main{display:block!important;width:100%;max-width:520px;margin:0 auto;padding:17px 16px;background:#0c766c!important;color:#fff!important;border-radius:10px;text-align:center;text-decoration:none!important;font-size:18px;font-weight:700;line-height:1.5;box-shadow:0 4px 12px rgba(12,118,108,.16)}
.relife-diagnosis .relife-booking-main:hover{background:#095e56!important;color:#fff!important}
.relife-result-actions{margin-top:16px}
@media(max-width:560px){.relife-booking-feature{padding:20px 14px}.relife-booking-feature h3{font-size:18px}.relife-diagnosis .relife-booking-main{font-size:17px}.relife-result-actions .relife-btn{font-size:12px}}

.relife-share-threads{background:#171717!important;color:#fff!important}
@media(max-width:480px){.relife-share-buttons .relife-btn{font-size:12px;padding:12px 3px}}

/* v0.5.5: consistent share button alignment and distinct Threads styling */
.relife-diagnosis .relife-share-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:stretch}
.relife-diagnosis .relife-share-buttons .relife-btn{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-width:0!important;width:100%;height:48px;min-height:48px;padding:0 4px!important;margin:0!important;box-sizing:border-box;font-size:13px!important;font-weight:700!important;line-height:1.2!important;white-space:nowrap;text-decoration:none!important;border-radius:9px}
.relife-diagnosis .relife-share-buttons .relife-share-line{background:#06c755!important;color:#fff!important;border:1px solid #06c755!important}
.relife-diagnosis .relife-share-buttons .relife-share-x{background:#111!important;color:#fff!important;border:1px solid #111!important}
.relife-diagnosis .relife-share-buttons .relife-share-threads{background:#fff!important;color:#111!important;border:2px solid #222!important}
.relife-diagnosis .relife-share-buttons [data-share-copy]{background:#eaf2ee!important;color:#0c766c!important;border:1px solid #c8dcd1!important}
@media(max-width:380px){.relife-diagnosis .relife-share-buttons{gap:5px}.relife-diagnosis .relife-share-buttons .relife-btn{font-size:12px!important;padding:0 2px!important}}

.relife-privacy-notice{font-size:13px;line-height:1.8;color:#52645e;margin:0 0 14px}.relife-consent{display:flex;align-items:flex-start;gap:9px;cursor:pointer;font-size:14px;line-height:1.6}.relife-consent input{flex-shrink:0;width:18px;height:18px;margin-top:3px;accent-color:#117668}

/* Native share is a full-width alternative below the SNS buttons. */
.relife-share-native{display:block;width:100%;margin-top:12px;text-align:center;}
