/* v2.0 — rebuilt visual system based on the relife diagnosis UX. */
.tsunagu-workstyle-app{font-family:"Noto Sans JP",system-ui,sans-serif;color:#273b36;max-width:760px;margin:28px auto;line-height:1.8;letter-spacing:.018em}
.tsunagu-workstyle-app *{box-sizing:border-box}
.twd-panel{border:1px solid #dcece5;border-radius:18px;padding:28px;background:#fff;box-shadow:0 4px 20px rgba(30,65,47,.035)}
.twd-head{text-align:left;background:#edf8f2;border-radius:12px;padding:24px 25px;margin-bottom:26px;border:0}
.twd-head small{display:block;color:#53776d;font-size:13px;font-weight:600}
.twd-head h2{font-size:clamp(21px,3vw,27px);line-height:1.5;color:#125e52;margin:8px 0;font-weight:700;letter-spacing:.02em;text-align:left}
.twd-head p{font-size:14px;margin:0;color:#53776d;line-height:1.8;text-align:left}
.twd-panel h3{font-size:19px;line-height:1.6;margin:22px 0 13px;color:#273b36;font-weight:700}
.twd-panel p{line-height:1.85}
.twd-muted,.twd-result-label{color:#65776b}.twd-small{font-size:12px}
.twd-progressline{display:flex;justify-content:space-between;color:#64746e;font-size:13px;font-weight:600;margin:0 0 9px}
.twd-track{height:7px;background:#e5ece8;border-radius:8px;overflow:hidden;margin:8px 0 22px}
.twd-track>div{height:100%;background:#7ccdaa;border-radius:8px;transition:width .2s}
.twd-question-story{padding:15px 18px;background:#f0f8f4;border:1px solid #dcece5;border-radius:10px;color:#365c4f;margin:16px 0;white-space:pre-line;line-height:1.85}
.twd-choices{display:grid;gap:10px;margin:17px 0}
.tsunagu-workstyle-app label.twd-choice{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:15px 16px;border:1px solid #dce7e0;border-radius:10px;background:#fff;cursor:pointer;min-height:56px;text-align:left!important;font-size:15px;line-height:1.7;margin:0;width:100%}
.twd-choice span{flex:1;min-width:0;text-align:left!important}
.tsunagu-workstyle-app .twd-choice input[type=radio]{position:static!important;opacity:1!important;visibility:visible!important;flex:0 0 19px!important;width:19px!important;height:19px!important;min-width:19px!important;margin:0!important;accent-color:#6cbd99}
.twd-choice:has(input:checked){background:#edf8f2!important;border-color:#72bea0!important}
.twd-field{margin:19px 0}.twd-label{font-size:15px;font-weight:700;margin-bottom:9px}
.twd-select,.twd-input{display:block;width:100%;padding:13px;border:1px solid #cbded4;border-radius:9px;background:#fff;font:inherit;font-size:16px;color:#273b36;min-height:47px}
.twd-actions{display:flex;gap:12px;justify-content:space-between;margin-top:26px}
.tsunagu-workstyle-app .twd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:47px;padding:12px 18px;border-radius:9px;border:1px solid #7ccdaa;background:#7ccdaa;color:#fff!important;font:inherit;font-size:15px;font-weight:700;text-align:center;text-decoration:none!important;cursor:pointer;line-height:1.5}
.twd-actions .twd-btn{flex:1;min-width:0}
.tsunagu-workstyle-app .twd-btn:hover:not(:disabled){background:#68be98;border-color:#68be98}
.tsunagu-workstyle-app .twd-btn:disabled{opacity:.45;cursor:not-allowed}
.tsunagu-workstyle-app .twd-btn.twd-outline{background:#fff;color:#2b8a67!important;border-color:#9acdb7}
.tsunagu-workstyle-app .twd-btn.twd-outline:hover{background:#edf8f2}
.twd-panel>.twd-btn,.twd-link,.twd-revise,.twd-restart{width:100%;margin-top:13px}
.twd-consent{background:#f5f8f6;border-radius:10px;padding:16px;margin:19px 0;font-size:14px}
.twd-consent label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.twd-consent input{margin-top:5px;accent-color:#65b991}
.twd-consent small{display:block;color:#60736b;font-size:12px;line-height:1.8;margin-top:7px}.twd-consent a{display:inline-block;margin-top:8px;color:#16745c}
.twd-error{padding:12px;color:#9b2222;background:#fff0ee;border-radius:8px;margin-top:15px}
.twd-result-title{display:block;text-align:center;color:#125e52;background:#edf8f2;border:1px solid #dcece5;border-radius:12px;font-size:clamp(22px,4vw,29px);padding:22px 12px;margin:12px 0 14px}
.twd-highlight{background:#edf8f2;border-radius:11px;padding:20px;margin:20px 0}.twd-highlight p{margin:10px 0 0}
.twd-section{margin:23px 0;padding:0 0 20px;border-bottom:1px solid #e7eee9}.twd-section h3{margin:0 0 10px;color:#125e52}.twd-section p{margin:0 0 10px}
.twd-score{margin:15px 0}.twd-score>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:4px}
.twd-review-list{display:grid;gap:10px;max-height:410px;overflow-y:auto;margin:18px 0;padding:2px}
.twd-review-item{border:1px solid #dce8e1;border-radius:10px;padding:12px 15px;background:#fff}
.twd-review-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#2c8064;font-size:13px}
.twd-review-edit{border:1px solid #9acdb7;border-radius:8px;padding:6px 12px;background:#fff;color:#287f60;font:inherit;font-size:12px;cursor:pointer}
.twd-review-question{font-size:14px;font-weight:600;margin:8px 0 4px}.twd-review-answer{color:#60736b;font-size:13px;margin:0!important}
.twd-link{margin-top:24px!important}.twd-external-icon{display:inline-block;flex:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.twd-share{border:0;margin:28px 0 14px;padding:0}.twd-share h3{color:#273b36}
.twd-share-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}
.tsunagu-workstyle-app .twd-share-link{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;height:48px;padding:0 3px;border:1px solid transparent;border-radius:9px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
.tsunagu-workstyle-app .twd-share-line{background:#7ccdaa;color:#fff;border-color:#7ccdaa}
.tsunagu-workstyle-app .twd-share-x{background:#383d3b;color:#fff;border-color:#383d3b}
.tsunagu-workstyle-app .twd-share-threads{background:#fff;color:#383d3b;border-color:#cbd3ce}
.tsunagu-workstyle-app .twd-share-copy{background:#858f8a;color:#fff;border-color:#858f8a}
.twd-share-status{font-size:13px;color:#26765b;min-height:1em}
@media(max-width:560px){.tsunagu-workstyle-app{margin:12px auto;letter-spacing:.012em}.twd-panel{padding:14px;border-radius:14px}.twd-head{padding:19px 16px;margin-bottom:20px}.twd-head h2{font-size:21px}.twd-head p{font-size:13px}.twd-panel h3{font-size:17px}.tsunagu-workstyle-app label.twd-choice{font-size:14px;padding:12px;min-height:53px}.twd-actions{gap:8px}.twd-actions .twd-btn{padding:10px 8px;font-size:13px}.twd-share-actions{gap:5px}.tsunagu-workstyle-app .twd-share-link{font-size:12px}.twd-review-list{max-height:360px}}
@media(max-width:350px){.twd-share-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
