/* Large touch targets for the host tablet, scoped to table details. */
#tabledetailsmodal{width:min(940px,94vw)!important;max-width:94vw!important;max-height:92dvh!important;padding:22px!important;overflow:auto;box-sizing:border-box;border-radius:16px}
#tabledetailsmodal .modalbar{position:sticky;top:-22px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-22px -22px 20px;padding:16px 22px;background:#172b25;border-bottom:1px solid #789386}
#tabledetailsmodal .modalbar h2{font-size:23px;margin:0}
#tabledetailsmodal .modalbar button{min-width:52px;min-height:52px;font-size:24px}
#tabledetailsmodal #detailcard{padding:18px;margin:0}
#tabledetailsmodal #title{font-size:26px!important;margin:0 0 16px}
#tabledetailsmodal #detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
#tabledetailsmodal #detail>p,#tabledetailsmodal #detail>label,#tabledetailsmodal #detail>details,#tabledetailsmodal #detail>div,#tabledetailsmodal #detail>input,#tabledetailsmodal #detail>small{grid-column:1/-1}
#tabledetailsmodal #detail button{min-height:58px!important;padding:14px 18px!important;font-size:17px!important;line-height:1.35!important;white-space:normal;width:100%;margin:0!important}
#tabledetailsmodal #detail .controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0!important}
#tabledetailsmodal #detail label{font-size:16px;line-height:1.5}
#tabledetailsmodal #detail input,#tabledetailsmodal #detail select{min-height:50px;font-size:18px;padding:12px;margin:8px 0}
#tabledetailsmodal #detail>p{font-size:17px;line-height:1.55;margin:0}
#tabledetailsmodal #detail .guestpicker{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:10px 0}
#tabledetailsmodal #detail details{border:2px solid #789386;border-radius:12px;padding:14px;margin:4px 0}
#tabledetailsmodal #detail summary{font-size:20px!important;font-weight:750;min-height:48px;line-height:1.5;padding:8px;cursor:pointer;color:#e9d29c}
body.light #tabledetailsmodal .modalbar{background:#edf1e6;color:#1c392a}body.light #tabledetailsmodal #detail summary{color:#244d38}
@media(max-width:600px){#tabledetailsmodal{padding:14px!important}#tabledetailsmodal .modalbar{top:-14px;margin:-14px -14px 14px;padding:12px 14px}#tabledetailsmodal #detail,#tabledetailsmodal #detail .controls{grid-template-columns:1fr}#tabledetailsmodal #detail button{font-size:16px!important}#tabledetailsmodal #detailcard{padding:10px}}
/* Use the tablet width so actions fit without a long vertical list. */
@media(min-width:800px){
 #tabledetailsmodal{width:min(1120px,96vw)!important;max-width:96vw!important;padding:14px!important}
 #tabledetailsmodal .modalbar{top:-14px;margin:-14px -14px 10px;padding:8px 16px}
 #tabledetailsmodal .modalbar h2{font-size:21px}
 #tabledetailsmodal .modalbar button{min-height:42px;min-width:42px}
 #tabledetailsmodal #detailcard{padding:10px}
 #tabledetailsmodal #title{font-size:23px!important;margin-bottom:8px}
 #tabledetailsmodal #detail{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
 #tabledetailsmodal #detail>label,#tabledetailsmodal #detail>input{grid-column:auto}
 #tabledetailsmodal #detail button{min-height:46px!important;padding:9px 12px!important;font-size:15px!important}
 #tabledetailsmodal #detail .controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0!important}
 #tabledetailsmodal #detail input,#tabledetailsmodal #detail select{min-height:42px;font-size:16px;padding:8px;margin:5px 0}
 #tabledetailsmodal #detail .guestpicker{gap:6px;margin:6px 0}
 #tabledetailsmodal #detail details{padding:8px;margin:0}
 #tabledetailsmodal #detail summary{font-size:18px!important;min-height:36px;padding:4px}
 #tabledetailsmodal #detail>p{font-size:15px;line-height:1.35}
}

#tabledetailsmodal #detail>.departure-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
