/* Large, direct controls for the 1366 x 768 reception terminal. */
.reception-screen { background: #f5f5f2; color: #202923; }
.reception-screen main { width: 100%; max-width: none; min-height: 100dvh; padding: 24px 32px; display: flex; flex-direction: column; }
.reception-screen main > header { flex-shrink: 0; min-height: 60px; margin-bottom: 16px; gap: 16px; }
.reception-screen h1 { font-size: 40px; line-height: 1.2; }
.reception-screen header > div:last-child { border: 0; border-radius: 0; background: transparent; padding: 0; }
.reception-screen header p { font-size: 22px; }
.reception-screen #waiting { font-size: 38px; margin-left: 16px; }
.reception-screen .reception-form { flex: 1; display: grid; grid-template-rows: minmax(174px, 1fr) auto auto auto; gap: 16px; padding: 24px 28px; border: 0; border-top: 3px solid #293d31; border-radius: 6px; }
.reception-screen .people-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.reception-screen legend, .reception-screen label[for] { font-size: 28px; font-weight: 700; line-height: 34px; }
.reception-screen .people-options { margin-top: 12px; gap: 20px; height: calc(100% - 46px); }
.reception-screen .people-options label > span { height: 100%; min-height: 128px; border-color: #9eaea3; color: #293d31; border-radius: 10px; gap: 10px; }
.reception-screen .people-options label > span > span:first-child { font-size: 56px; line-height: 1.1; }
.reception-screen .people-options label > span > span:nth-child(2) { font-size: 28px; }
.reception-screen .people-options svg { width: 30px; height: 30px; top: 12px; right: 12px; }
.reception-screen .people-options input:checked + span { border-color: #08734e; background: #e4f3e9; color: #075b3f; box-shadow: inset 0 0 0 2px #08734e; }
.reception-screen .name-step { margin: 0; padding: 0; border: 0; }
.reception-screen #participant-name { margin-top: 12px; min-height: 68px; padding: 12px 20px; border-color: #9eaea3; border-radius: 8px; font-size: 30px; line-height: 1.35; }
.reception-screen #participant-name::placeholder { color: #68776d; }
.reception-screen .submit-step { margin: 0; }
.reception-screen button[type="submit"] { min-height: 76px; padding: 16px 24px; border-radius: 8px; font-size: 30px; line-height: 1.3; }
.reception-screen .reception-feedback { min-height: 84px; }
.reception-screen .reception-feedback > div { margin: 0; padding: 10px 18px; border-radius: 8px; }
.reception-screen .reception-feedback p:first-child { font-size: 24px; line-height: 1.3; }
.reception-screen .reception-feedback p + p { margin-top: 2px; font-size: 20px; line-height: 1.4; }
@media (max-width: 700px) {
    .reception-screen main { padding: 20px 16px; }
    .reception-screen main > header { align-items: center; }
    .reception-screen h1 { font-size: 28px; }
    .reception-screen header p { font-size: 16px; }
    .reception-screen #waiting { font-size: 28px; margin-left: 8px; }
    .reception-screen .reception-form { flex: initial; grid-template-rows: auto auto auto auto; padding: 20px 16px; gap: 24px; }
    .reception-screen legend, .reception-screen label[for] { font-size: 24px; }
    .reception-screen .people-options { gap: 10px; height: auto; }
    .reception-screen .people-options label > span { min-height: 110px; gap: 4px; }
    .reception-screen .people-options label > span > span:first-child { font-size: 42px; }
    .reception-screen .people-options label > span > span:nth-child(2) { font-size: 20px; }
    .reception-screen .people-options svg { width: 20px; height: 20px; top: 6px; right: 6px; }
    .reception-screen #participant-name { font-size: 24px; }
    .reception-screen .reception-feedback { min-height: 0; }
}
