/* Shared single-line choices and text actions. Portrait, timeline and icon
   buttons keep their own composition; artwork and game rules are unchanged. */
.phone :is(.choice-list,.cl-choices,.cl-paper-actions) { container-type:inline-size; }
.phone :is(.choice-list,.cl-choices) { gap:10px; }
.phone :is(.choice-decision,.edict-single-choice,.cl-choices) .choice {
 display:flex; flex-direction:row; align-items:baseline; justify-content:center; gap:4px;
 width:100%; min-width:0; max-width:100%; height:auto; min-height:44px;
 padding:10px 12px; text-align:center; white-space:nowrap; line-height:1.35;
 font-size:18px; letter-spacing:0; flex-shrink:0;
}
.phone :is(.choice-decision,.edict-single-choice) .choice strong {
 display:inline-flex; flex:0 0 auto; align-items:baseline; justify-content:center; gap:3px;
 font:500 1em/1.35 'Kaiti SC',STKaiti,KaiTi,serif; letter-spacing:0; white-space:nowrap;
}
.phone :is(.choice-decision,.edict-single-choice) .choice small,
.phone .cishen-stage .choice .choice-cost {
 display:inline; flex:0 0 auto; margin:0; padding:0;
 font:400 clamp(10px,3.5cqi,12px)/1.35 'Songti SC',STSong,serif;
 letter-spacing:0; white-space:nowrap; color:#cfb583;
}
.phone :is(.choice-decision,.edict-single-choice) .choice.selected small { color:#634421; }
.phone .choice-decision .choice-list { gap:10px; }
.phone .choice-notes { flex-shrink:0; margin:12px 0 0; padding:0 2px; }
.phone .choice-notes .choice-payment-note { margin:5px 0; color:#d3b391; font:11px/1.75 'Songti SC',STSong,serif; }
.phone .choice-notes b { font-weight:500; color:#e2c89d; }
.phone .choice-explanations { flex-shrink:0; margin:14px 0 0; color:#cbbb9d; font:12px/1.8 'Songti SC',STSong,serif; }
.phone .choice-explanations summary { cursor:pointer; color:#d6bb84; padding-block:6px; }
.phone .choice-explanations p { margin:9px 0; }
.phone .choice-explanations b { font-weight:500; color:#e2cba5; }
.phone .choice-list + .cishen-free { margin-top:16px; }

/* Override older 64–94px minimums without changing their gold/plaque artwork. */
.phone :is(
 .primary,.confirm,.secondary,.action-kind,.note-primary,.note-secondary,
 .feedback-card button:not(.dialogue-character-help),.choice[data-fallback],
 .event-strategies button,.event-exit,.intent-preview-back,.intent-preview-confirm,
 .outcome-actions button,.chapter-replay,.chapter-resume,
 .cl-gold-button,.cl-outline-button,.cl-small-button,.cl-choices .choice,
 .cl-live-offer button,.cl-story-entry button,
 .timeline-confirm button,[data-story-point],[data-chapter-start],
 #preview-cishen,#seal-draft,#seal-letter,#feedback-next,#send-custom
) {
 height:auto !important; min-height:44px !important; min-width:0 !important; max-width:100%;
 padding-block:9px !important; padding-inline:18px !important;
 white-space:nowrap; text-wrap:nowrap; line-height:1.4 !important;
 font-size:clamp(13px,3.8vw,17px); letter-spacing:.02em;
}
.phone .cl-choices .choice { font-size:clamp(14px,5.3cqi,17px); }
.phone :is(.cl-note-footer,.cl-review-row) .cl-small-button { font-size:13px; min-height:38px !important; padding:7px 16px !important; }
.phone .cl-paper-actions :is(.cl-gold-button,.cl-outline-button) { padding-inline:9px !important; font-size:clamp(12px,5.2cqi,16px); }
.phone .composer .fallbacks .choice { min-height:38px !important; padding:7px 14px !important; }
.phone :is(.choice-footer,.cl-choices) { flex-shrink:0; }
@media(max-width:360px) {
 .phone :is(.choice-decision,.edict-single-choice,.cl-choices) .choice { gap:2px; padding-inline:9px; }
 .phone .choice-notes .choice-payment-note { font-size:11px; }
 .phone :is(.cl-gold-button,.cl-outline-button,.cl-choices .choice) { padding-inline:12px !important; }
}

.phone .choice-decision .choice.choice--long { font-size:clamp(12px,5.5cqi,18px); }
