/* Keep the two-panel artwork intact and give Korean copy room to wrap. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
input,button,summary{scroll-margin-block:24px}
.start-screen>*,.result-hero>*,.letter-grid>*,.recap-grid>*,.candidate-grid>*,.share-secondary>*{min-width:0}
.question-target,.share-preview,.result-intro,.section-heading h2{overflow-wrap:anywhere}
.toast{bottom:calc(20px + env(safe-area-inset-bottom));line-height:1.6}
.site-footer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
@media(max-width:760px){
 .site-header{padding:14px 16px;gap:8px;flex-wrap:wrap}
 .wordmark{font-size:1.25rem;min-height:44px;display:flex;align-items:center;gap:4px}
 .brand-credit{font-size:.875rem}
 .start-screen{padding:24px 16px 16px;gap:20px}
 .intro h1{font-size:clamp(1.75rem,7.8vw,2.25rem);letter-spacing:-.04em}
 .lead,.intro-foot p{font-size:1rem;line-height:1.75;word-break:keep-all;overflow-wrap:anywhere}
 .meta-pills span,.field-note,.card-caption{font-size:.875rem;line-height:1.5}
 .portrait-stage{height:150px}
 .portrait-stage .portrait{transform:scale(.68)}
 .floating-note{top:20px;right:22px}
 .start-fields{padding:18px}
 .primary,.secondary{min-height:52px;font-size:1rem;line-height:1.5}
 input,.manual-label input{font-size:1rem}
 .quiz-page{padding:0 12px;margin:12px auto 32px}
 .quiz-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;margin-bottom:8px}
 .quiz-toolbar .text-button,.quiz-toolbar>span{font-size:.875rem;line-height:1.5}
 .quiz-toolbar .text-button{white-space:nowrap;padding:10px 4px}
 .progress-track{margin-bottom:14px}
 .question-sheet{padding:14px 12px 16px;border-radius:18px}
 .question-label,.balance-page .question-label{font-size:.875rem;gap:8px;flex-wrap:wrap;margin-bottom:12px;line-height:1.5}
 .question-comic.question-art{margin:0 -4px 16px;border-radius:10px}
 .question-sheet .question-title{font-size:1.25rem;line-height:1.65;letter-spacing:-.02em;margin-bottom:20px}
 .question-target{margin-top:8px}
 .question-sheet .answer{font-size:1rem;line-height:1.65;min-height:68px;padding:14px 12px;gap:10px;border-radius:12px}
 .question-sheet .answer.selected{padding:13.5px 11.5px}
 .answer>span:nth-child(2){min-width:0}
 .question-bottom{gap:8px;margin-top:16px;text-align:center}
 .skip-button{min-height:48px;font-size:1rem}
 .question-bottom>span{font-size:.875rem;line-height:1.6;word-break:keep-all}
 .question-art:not(.question-comic){gap:12px;padding-inline:0}
 .result-page{padding:0 12px;margin-top:24px}
 .result-hero{padding:24px 12px;box-shadow:0 5px 0 #e4e7d9}
 .result-animal{padding:12px 0 0}
 .result-stamp{font-size:.75rem;left:10px;top:10px}
 .concept,.mbti-summary,.answer-recap h3,.picked,.interpretation,.taste-item h3,.taste-duel>span,.shared-note p{font-size:1rem;line-height:1.8;overflow-wrap:anywhere}
 .letter-grid span,.letter-grid p,.section-subtitle,.recap-top,.picked>span,.tiny-label{font-size:.875rem;line-height:1.7}
 .letter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .letter-grid>div{padding:14px 12px}
 .answer-recap,.taste-item{padding:18px 14px}
 .section-heading{gap:9px}
 .section-heading h2{font-size:1.25rem;line-height:1.5}
 .all-answers summary{font-size:1rem;line-height:1.6;gap:10px;padding:16px 14px}
 .share-section h2{font-size:1.5rem;line-height:1.5;word-break:keep-all}
 .share-section>p,.share-preview,.share-preview p{font-size:1rem}
 .share-choice{font-size:.875rem;min-height:48px;line-height:1.6;text-align:left}
 .share-choice input{width:22px;height:22px;flex-shrink:0}
 .share-secondary>button{min-height:48px;font-size:1rem;line-height:1.5;padding:12px 8px}
 .game-promo{padding:22px 16px}
 .game-copy>p,.game-copy .primary{font-size:1rem}
 .restart-section>.secondary{width:100%}
 .card-dialog{padding:14px;width:calc(100% - 24px);max-height:calc(100dvh - 32px - env(safe-area-inset-bottom));overflow:auto}
 .dialog-top{gap:8px}.dialog-top button{min-width:44px;min-height:44px}
}
@media(max-width:360px){
 .brand-credit{width:100%;font-size:.875rem}
 .site-header{gap:0}
 .quiz-toolbar>span{grid-column:1/-1;grid-row:2;text-align:center}
 .quiz-toolbar>b{grid-column:3}
 .share-secondary{flex-direction:column}
 .question-sheet .question-title{font-size:1.125rem}
 .art-actor .animal-art{transform:scale(.85);margin-inline:-10px}
}
@media(hover:none){.answer:hover{transform:none}}
