/* Only the original completion dialog/keyboard is adjusted. Schedule CSS is untouched. */
.rating-box {width:min(96vw,1000px);max-height:98dvh;padding:20px;}
.rating-label,.keyboard-button {width:100%;}
.rating-label textarea {resize:none;min-height:90px;}
.keyboard-key {flex:1;min-width:0;min-height:60px;padding:5px 2px;font-size:22px;}
.keyboard-key.wide {flex:1.7;min-width:0;font-size:18px;}
.keyboard-key.space {flex:4;}
.rating-box .confirm-actions {position:sticky;bottom:0;background:#fffdf5;padding-top:8px;}
.rating-prior {max-height:180px;overflow-y:auto;overscroll-behavior:contain;white-space:normal;}
.prior-heading,.prior-empty,.prior-note,.prior-stamp,.prior-note-text {display:block;}
.prior-heading {font-size:16px;margin-bottom:6px;}
.prior-note {padding:8px 0;border-top:1px solid #a7bdd5;}
.prior-stamp {font-size:14px;color:#284b71;}
.prior-note-text {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.3;margin-top:4px;}
@media(max-height:1100px) {
 .rating-overlay {padding:6px;}
 .rating-box {padding:12px;}
 .rating-box h2 {font-size:28px;}
 .rating-type {margin-bottom:8px;font-size:20px;}
 .rating-label {gap:3px;font-size:18px;}
 .rating-label select,.rating-label textarea {padding:6px;}
 .rating-label textarea {min-height:68px;height:68px;}
 .keyboard-button {min-height:44px;}
 .keyboard-key {min-height:46px;font-size:20px;}
 .keyboard-key.wide {font-size:12px;}
 .inline-keyboard {padding:5px;gap:4px;}
 .keyboard-row {gap:3px;}
 .star-picker {margin:2px 0 4px;}
 .star-button {font-size:42px;}
 .rating-prior {font-size:14px;margin:4px 0;padding:5px;}
 .rating-prior {max-height:110px;}
 .rating-box .confirm-button {min-height:44px;padding:8px;font-size:20px;}
}
