/* Public feedback form */
.feedback-main{max-width:820px}
.feedback-form{display:grid;gap:.4rem}
.feedback-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.rating-group{margin:0 0 1.2rem;padding:0;border:0;min-width:0}
.rating-group legend{margin-bottom:.55rem;color:#fffaf4;font-weight:800;font-size:1rem}
.rating-group .required{color:#ee2633;font-weight:700;font-size:.82rem}
.rating-group .muted{font-weight:400;font-size:.82rem}
.rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem}
.rating-options.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.horror-public .rating-option{position:relative;margin:0;cursor:pointer}
.horror-public .rating-option input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;margin:0}
.rating-option span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-height:58px;padding:.45rem .2rem;border:1px solid #61464a;background:#0c0a0a;color:#f5eee7;text-align:center;transition:border-color .15s,background .15s}
.rating-option strong{font-size:1.15rem;line-height:1}
.rating-option small{font-size:.72rem;color:#c7bbb4}
.rating-option:hover span{border-color:#a3323b}
.rating-option input:checked+span{border-color:#e32836;background:#3a0b10;box-shadow:inset 0 0 0 1px #e32836}
.rating-option input:checked+span small{color:#fff}
.rating-option input:focus-visible+span{outline:3px solid #ffd06a;outline-offset:2px}
.horror-public .feedback-check{display:flex;gap:.6rem;align-items:center;margin:.4rem 0 1.2rem}
.horror-public .feedback-check input{width:20px;height:20px;min-height:0;margin:0;accent-color:#e32836}
.feedback-form button{justify-self:start}
@media (max-width:520px){.rating-option small{font-size:.62rem}.rating-option span{min-height:52px}}

/* Admin feedback page */
.feedback-progress{height:12px;background:#1d1617;border:1px solid #3b292b;overflow:hidden;margin:.6rem 0}
.feedback-progress span{display:block;height:100%;width:0;background:#bd111d;transition:width .3s}
.feedback-stars{color:#ffd06a;font-weight:800;white-space:nowrap}
.feedback-text{min-width:260px;max-width:460px;white-space:pre-wrap;overflow-wrap:anywhere}
.feedback-text p{margin:0 0 .5rem}
.feedback-audience{margin:0 0 1rem;padding:.8rem 1rem;border:1px solid #3b292b}
.feedback-audience legend{padding:0 .4rem;font-weight:800}
label.feedback-choice{display:flex!important;align-items:center;gap:.65rem;margin:.55rem 0;font-weight:600}
label.feedback-choice input{flex:0 0 auto;width:20px!important;height:20px;min-height:0!important;margin:0;accent-color:#bd111d}
.feedback-test-form{margin-top:1rem}
.feedback-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.feedback-section-head h2{margin:0}
.feedback-table td,.feedback-table th{white-space:normal!important;vertical-align:top}
.feedback-table td:nth-child(1){min-width:120px}
.feedback-scores{display:block;max-width:170px}
.feedback-cron{margin-top:1rem}
.feedback-cron summary{cursor:pointer;font-weight:700}
.feedback-cron pre{overflow-x:auto;padding:.8rem;background:#0b0909;border:1px solid #3b292b;white-space:pre-wrap;word-break:break-all}
/* Admin notifications page */
.notify-card .muted{margin:.3rem 0 .8rem}
label.notify-toggle{display:flex!important;align-items:center;gap:.65rem;margin:.45rem 0;flex-wrap:wrap}
label.notify-toggle input{flex:0 0 auto;width:20px!important;height:20px;min-height:0!important;margin:0;accent-color:#bd111d}
.notify-people{margin:0;padding:.7rem 1rem;border:1px solid #3b292b}
.notify-people legend{padding:0 .4rem;font-weight:800}
/* 2027 updates: work interest */
.work-interest{margin:.4rem 0 1rem;padding:.9rem 1rem;border:1px solid #61464a;min-width:0}
.work-interest>legend{padding:0 .4rem;font-weight:800;color:#fffaf4}
.work-details{margin-top:.6rem}
.work-age{margin:0 0 1rem;padding:0;border:0}
.work-age legend{font-weight:700;margin-bottom:.2rem}
.horror-public .work-interest input[type=radio]{width:20px;height:20px;min-height:0;margin:0;accent-color:#e32836}

/* Admin → Dates & tickets */
.season-table{width:100%;border-collapse:collapse}
.season-table th,.season-table td{padding:8px 10px;text-align:left;vertical-align:middle;border-bottom:1px solid rgba(255,255,255,.08)}
.season-table input{width:100%;min-width:0;margin:0}
.season-table input[type=number]{max-width:110px}
.season-table td:first-child{white-space:nowrap}
.season-table .check-row{justify-content:center;margin:0}
.past-nights{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}
.past-nights p{margin:0;flex:1 1 320px}
@media (max-width:640px){.season-table thead{display:none}.season-table tr{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1)}.season-table td{border:0;padding:2px 0}.season-table td:first-child,.season-table td:nth-child(2){grid-column:1/-1}.season-table input[type=number]{max-width:none}}
.quick-add{margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.weekday-picks{display:flex;flex-wrap:wrap;gap:6px 16px;border:0;padding:0;margin:8px 0 12px}
.weekday-picks legend{width:100%;margin-bottom:6px;font-weight:700}
.weekday-picks .check-row{margin:0}
.notice-panel{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.notice-panel h3{margin:0 0 8px}
.notice-panel .actions{display:flex;flex-wrap:wrap;gap:10px}
.notice-panel .actions form{margin:0}
.feedback-pdf-form{margin:0 0 18px;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(0,0,0,.18)}
.feedback-pdf-form .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
