/* 全画面共通: 本文18px、補足16px、見出しは役割ごとに統一。 */
:root{--text-body:18px;--text-note:16px;--text-h1:clamp(28px,4vw,40px);--text-h2:clamp(24px,3vw,30px);--text-h3:22px}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:var(--text-body)!important;overflow-wrap:break-word}
body p,body li,body td,body label,body summary{font-size:var(--text-body)!important;line-height:1.9}
body h1,body .hero h1,body.full-page h1{font-size:var(--text-h1)!important;line-height:1.5}
body h2,body .card h2,body h2.sec{font-size:var(--text-h2)!important;line-height:1.55}
body h3,body .v2-package h3{font-size:var(--text-h3)!important;line-height:1.65}
body button,body .btn,body input,body select,body textarea{font-size:var(--text-body)!important;max-width:100%;font-family:inherit}
body button,body .btn{white-space:normal;overflow-wrap:anywhere;line-height:1.65;min-height:44px}
body small,body .note,body .hint,body .sub,body .lead,body .eyebrow,body .slash,body .number,body .section-tag,body .foot,body footer,body figcaption,body .v2-caption,body .diagram-note,body .gnote,body .date,body .bs-caption,body .bs-time,body .bs-reassure,body th{font-size:var(--text-note)!important;line-height:1.9}
body .lead{font-size:var(--text-body)!important}
body pre,body code,body .code{font-size:var(--text-note)!important;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
body header,body header nav{flex-wrap:wrap}
body img,body video{max-width:100%;height:auto}
body table{max-width:100%;table-layout:fixed}
body th,body td{overflow-wrap:anywhere}
body input:not([type=checkbox]):not([type=radio]),body select,body textarea{min-width:0;min-height:44px}
body input[type=checkbox],body input[type=radio]{flex-shrink:0}
#bunshin-generating .bs-document strong,#bunshin-generating .bs-document>span,#bunshin-generating .bs-input,#bunshin-generating .bs-output{font-size:16px!important}
#bunshin-generating .bs-document strong{white-space:normal;text-align:center;line-height:1.6}
#bunshin-generating .bs-main-copy{font-size:22px!important;line-height:1.7}
@media(max-width:600px){
 body .btn-row{display:flex;flex-direction:column;align-items:stretch}
 body .btn-row>*{width:100%;text-align:center;justify-content:center}
 body .btn{padding:12px 16px;letter-spacing:0}
 body .nav{gap:10px;flex-wrap:wrap}
 body .share{flex-wrap:wrap}
 body .share>*{max-width:100%;overflow-wrap:anywhere}
 body table th,body table td{padding:10px 6px}
 body .slot{grid-template-columns:minmax(0,1fr)}
 body .v2-package{padding:18px 14px}
 #bunshin-generating .bs-machine{gap:5px}
 #bunshin-generating .bs-input,#bunshin-generating .bs-output{max-width:80px;text-align:center;line-height:1.6}
 #bunshin-generating .bs-stream{min-width:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body .spinner{animation:none}}
