/* Approved Figma diagnosis tokens. Opt in all five diagnoses; shared renderer. */
.shcj-service.diagnosis-refresh,.diagnosis-refresh-shell,#shcj-key-assistant{--ui-ink:#142f46;--ui-muted:#52677b;--ui-blue:#1769d2;--ui-line:#dde6ee;--ui-card-line:#dde6ee;--ui-tint:#edf5fd;--ui-surface:#f8fafc;--ui-radius:16px;--ui-small-radius:12px;--ui-touch:56px;--ui-shadow:none;font-family:"Noto Sans JP",system-ui,-apple-system,"Yu Gothic",sans-serif;font-size:16px;line-height:1.75;color:var(--ui-ink)}
body.diagnosis-refresh{margin:0;background:var(--ui-surface);overflow-wrap:anywhere}
.diagnosis-refresh *{box-sizing:border-box}
.diagnosis-refresh :is(main,#category-diagnosis){width:100%;max-width:840px;margin:0 auto;padding:32px 40px;background:transparent}
.diagnosis-refresh[data-lock-state=result] :is(main,#category-diagnosis){max-width:940px}
.diagnosis-refresh :is(h1,h2,h3,h4){margin:0;letter-spacing:0;color:var(--ui-ink)}
.diagnosis-refresh :is(h1,#result-title){font-size:28px;line-height:42px;margin:0 0 16px}
.diagnosis-refresh :is(.ui-question h2,#category-diagnosis h2){font-size:26px;line-height:39px;margin:0 0 12px}
.diagnosis-refresh :is(p,ul,ol){margin-block:12px}
.diagnosis-refresh :is(small,.hint,.kit-notice){font-size:14px;line-height:23px;color:var(--ui-muted)}
.diagnosis-refresh :is(a,a:visited){color:var(--ui-blue)}
.diagnosis-refresh :is(.ui-button,.ui-button:visited){min-height:56px;padding:14px 16px;border-radius:12px;background:var(--ui-blue);color:white;font-size:16px;line-height:24px;text-decoration:none}
.diagnosis-refresh .ui-button:hover{background:#1055b0;color:white;text-decoration:none}
.diagnosis-refresh :is(.ui-button.secondary,.ui-button.secondary:visited){background:white;color:var(--ui-blue);border-color:var(--ui-line)}
.diagnosis-refresh .ui-button.secondary:hover{background:var(--ui-tint);color:var(--ui-blue)}
.diagnosis-refresh :is(button,a,input,select,summary):focus-visible{outline:3px solid var(--ui-blue);outline-offset:3px}
.diagnosis-refresh :is(form,.conversation-prompt){padding:0;border:0;box-shadow:none;background:transparent;border-radius:0}
.diagnosis-refresh .conversation-speaker{display:none}
.diagnosis-refresh .conversation-prompt{margin:0 0 12px}
.diagnosis-refresh .ui-progress{display:grid;gap:8px;padding:0;margin:0 0 24px}
.diagnosis-refresh :is(.ui-counter,.kit-progress){font-size:14px;line-height:22px;color:var(--ui-blue);font-weight:700;margin:0}
.diagnosis-refresh .ui-step-number{display:inline;font-size:14px;letter-spacing:0;margin-right:8px}
.diagnosis-refresh .ui-step-label{display:inline;font-size:14px}
.diagnosis-refresh .ui-progress-note{font-size:14px;line-height:23px;margin:0;color:var(--ui-muted)}
.diagnosis-progress-track{height:4px;background:var(--ui-line);border-radius:8px;overflow:hidden}
.diagnosis-progress-fill{height:100%;background:var(--ui-blue)}
.diagnosis-refresh :is(.choices,.kit-choices){display:grid;grid-template-columns:1fr;gap:12px;margin:16px 0}
.diagnosis-refresh :is(.choice,.kit-choice){display:flex;align-items:center;gap:12px;min-height:62px;padding:16px;border:1px solid var(--ui-line);border-radius:12px;background:white;color:var(--ui-ink);font-size:16px;font-weight:400;line-height:28px}
.diagnosis-refresh :is(.choice,.kit-choice):has(input:checked){padding:16px;border:1px solid var(--ui-blue);background:var(--ui-tint);color:var(--ui-ink);font-weight:400}
.diagnosis-refresh :is(.choice,.kit-choice):has(input:focus-visible){outline:3px solid var(--ui-blue);outline-offset:3px}
.diagnosis-refresh :is(.choice,.kit-choice) input{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:var(--ui-blue)}
.diagnosis-refresh :is(.choice,.kit-choice) span{white-space:normal;overflow-wrap:anywhere;min-width:0}
.diagnosis-refresh :is(.ui-unknown,.kit-unknown){color:var(--ui-blue);font-weight:700}
.diagnosis-refresh :is(.ui-instruction,.kit-multiple){font-size:14px;line-height:22px;color:var(--ui-blue);font-weight:700;background:transparent;padding:0;margin:12px 0}
.diagnosis-refresh .diagnosis-question-help{font-size:16px;line-height:28px;color:var(--ui-muted);margin:12px 0}
.diagnosis-refresh :is(input[type=number],input[type=text],select){min-height:62px;padding:16px;border:1px solid var(--ui-line);border-radius:12px;font-size:16px;line-height:28px;color:var(--ui-ink);background:white}
.diagnosis-refresh .field-grid{grid-template-columns:1fr;gap:12px}
.diagnosis-refresh .field{font-size:14px;font-weight:700;gap:12px;margin-block:16px}
.diagnosis-refresh :is(.actions,#category-diagnosis>nav){display:flex;gap:12px;margin:24px 0 0}
.diagnosis-refresh :is(.actions,#category-diagnosis>nav) .ui-button{flex:1;min-width:0}
.diagnosis-refresh :is(.ui-details,.kit-details,.guide){border-color:var(--ui-line);margin:16px 0}
.diagnosis-refresh :is(.ui-details,.kit-details,.guide)>summary{min-height:56px;padding:14px 0;font-size:16px;line-height:28px;color:var(--ui-blue)}
.diagnosis-refresh :is(#lock-start,#service-start){padding:0;display:flex;flex-direction:column;gap:24px}
.diagnosis-refresh :is(#lock-start,#service-start)[hidden]{display:none}
.diagnosis-refresh :is(#lock-start,#service-start) :is(h1,p){margin:0}
.diagnosis-refresh.embedded :is(#lock-start,#service-start) .standalone{display:block}
.diagnosis-refresh :is(#lock-start,#service-start)>.ui-button{max-width:none;width:100%}
.diagnosis-context{display:flex;gap:12px;align-items:center;padding:16px;border-radius:16px;background:var(--ui-tint);margin:0}
.diagnosis-context img{display:block;width:64px;height:64px;flex:0 0 64px;object-fit:cover;border-radius:8px}
.diagnosis-context strong{font-size:20px;line-height:30px}
.diagnosis-start-facts h2{font-size:20px;line-height:30px}
.diagnosis-start-facts ol{padding-left:24px;margin-bottom:0}
.diagnosis-start-caution{padding:20px;background:#f7f1e6;border-radius:16px}
.diagnosis-refresh #category-diagnosis>.kit-notice{margin:20px 0}
.diagnosis-refresh .result-common{display:flex;flex-direction:column;gap:24px}
.diagnosis-refresh .result-common :is(.ui-card,.dedicated-fold){margin:0;border-radius:16px;padding:20px;background:white;border:1px solid var(--ui-line);box-shadow:none;min-width:0}
.diagnosis-refresh .result-common .dedicated-summary{background:var(--ui-tint);border:0}
.diagnosis-refresh .result-common .ui-result-checks{background:#f7f1e6;border:0}
.diagnosis-refresh .result-common :is(h3,.result-candidate h3){font-size:20px;line-height:30px;margin:0 0 12px}
.diagnosis-refresh .result-common .result-candidate>.eyebrow{font-size:14px;line-height:22px;margin:0 0 12px;color:var(--ui-blue)}
.diagnosis-refresh .result-common .result-candidate>.ui-purchase-role{font-size:14px;line-height:23px;color:#7c541b}
.diagnosis-refresh .result-common .ui-checklist{display:block;padding-left:22px;border:0;border-radius:0;overflow:visible;background:transparent;font-size:16px;line-height:28px}
.diagnosis-refresh .result-common .ui-checklist li{padding:0;border:0;background:transparent;font-size:16px;line-height:28px;margin:8px 0}
.diagnosis-refresh .result-common .ui-checklist li:before{content:none}
.diagnosis-refresh .result-common .result-card-checks{color:#7c541b;font-size:14px;line-height:23px}
.diagnosis-refresh .result-common .result-card-checks h3{font-size:14px;line-height:23px;color:#7c541b}
.diagnosis-refresh .result-common .result-card-checks .ui-checklist li{font-size:14px;line-height:23px}
.diagnosis-refresh .result-common .purchase-options{padding:0;margin:16px 0 0;background:transparent}
.diagnosis-refresh .result-common .purchase-options>strong{display:block;font-size:14px;line-height:23px}
.diagnosis-refresh .result-common .purchase-options>small{font-size:14px;line-height:23px;margin:12px 0}
.diagnosis-refresh .result-common .purchase-options>p{font-size:14px;line-height:23px;color:var(--ui-muted)}
.diagnosis-refresh .result-common .purchase-stores{display:grid;gap:12px}
.diagnosis-refresh .result-common .purchase-stores :is(a,a:visited,a:focus,a:active){min-height:56px;padding:14px 16px;border-radius:12px;background:var(--ui-blue);color:white;text-decoration:none}
.diagnosis-refresh .result-common .purchase-stores a:hover{background:#1055b0;color:white}
.diagnosis-refresh .result-common .purchase-stores .purchase-pixel{position:absolute;width:1px;height:1px}
.diagnosis-refresh .result-common .shcj-product-image{width:160px;max-width:100%;margin:12px auto}
.diagnosis-refresh .result-common .shcj-product-image-material img:not([width="1"]){max-width:160px;max-height:160px;width:auto;height:auto;object-fit:contain}
.diagnosis-refresh .result-common .shcj-product-image figcaption{font-size:14px;line-height:23px}
.diagnosis-refresh .result-common .result-other{display:grid;grid-template-columns:1fr;gap:24px}
.diagnosis-refresh .result-common .result-other>h3{grid-column:1/-1;margin:0}
.diagnosis-refresh .result-common .result-related a{display:flex;align-items:center;min-height:56px;padding:16px;margin-top:12px;border:1px solid var(--ui-line);border-radius:12px;text-decoration:none}
.diagnosis-refresh .result-common .result-related a:hover{background:var(--ui-tint)}
.diagnosis-answer-review{margin-top:32px}
.diagnosis-answer-review dl{display:grid;gap:8px;margin:12px 0}
.diagnosis-answer-review dt{font-size:14px;color:var(--ui-muted)}
.diagnosis-answer-review dd{margin:0 0 8px;font-size:16px}
.diagnosis-refresh-shell.shcj-site{background:var(--ui-surface);max-width:none}
.diagnosis-refresh-shell .ui-lock-content{max-width:none;padding:0}
.diagnosis-refresh-shell .ui-lock-intro,.diagnosis-refresh-shell>h1{display:none}
.diagnosis-refresh-shell iframe[data-shcj-frame]{margin:0;background:var(--ui-surface)}
.diagnosis-refresh-shell .ui-lock-information{max-width:860px;margin:24px auto;padding:20px}
@media(min-width:900px){.diagnosis-refresh .result-common .result-other{grid-template-columns:repeat(2,minmax(0,1fr))}.diagnosis-refresh .result-common .result-primary .purchase-stores{grid-template-columns:repeat(3,minmax(0,1fr))}.diagnosis-refresh .result-common .result-primary .purchase-stores>small{grid-column:1/-1}}
@media(max-width:600px){.diagnosis-refresh :is(main,#category-diagnosis){padding:20px}.diagnosis-refresh :is(.actions,#category-diagnosis>nav){flex-direction:column}.diagnosis-refresh .result-common{gap:24px}}
/* Same result data in the compact assistant; long safety information can scroll. */
body.diagnosis-refresh.assistant-mode :is(main,#category-diagnosis){padding:20px;max-width:none}
.diagnosis-refresh.assistant-mode :is(#lock-start,#service-start,#service-review,#category-diagnosis>h1,#category-diagnosis>.kit-notice,#category-diagnosis>nav:has(.result-review-button),#result-title,#result>.eyebrow,#result>.actions,#diagnosis-review,#category-review,main>footer){display:none}
.diagnosis-refresh.assistant-mode #assistant-summary{margin:0;padding:0;background:transparent}
.diagnosis-refresh.assistant-mode .assistant-compact{gap:16px}
.diagnosis-refresh.assistant-mode .assistant-compact .ui-card{border:0;padding:0;background:transparent}
.diagnosis-refresh.assistant-mode .assistant-compact .dedicated-summary{padding:16px;background:var(--ui-tint);border-radius:16px}
.diagnosis-refresh.assistant-mode .assistant-compact .result-candidate>.result-card-checks{margin-block:12px}
.diagnosis-refresh.assistant-mode .assistant-compact .shcj-product-image{width:96px}
.diagnosis-refresh.assistant-mode .assistant-compact .shcj-product-image-material img:not([width="1"]){max-width:96px;max-height:96px}
.diagnosis-refresh.assistant-mode .assistant-compact>.assistant-handoff{display:flex;width:100%}
.diagnosis-refresh.assistant-mode.assistant-parent-handoff .assistant-handoff{display:none}
.diagnosis-refresh[data-lock-state=questions] #category-diagnosis>h1{display:none}

.diagnosis-refresh[data-lock-state=start] .diagnosis-session-notice{display:none}
