/* 예약서/조회서 전용. 기존 .fo_wrap 의 폼 스타일 및 게시판에 영향 없음. */
.bnb-booking{border-top:1px solid #888;padding:16px 0 28px;color:#242424;font-size:14px;}
.bnb-booking *, .bnb-booking *::before, .bnb-booking *::after{box-sizing:border-box;}
.bnb-booking .bnb-row{display:flex;align-items:center;gap:12px;min-height:54px;margin:0;padding:4px 0;}
.bnb-booking .bnb-label{display:block;flex:0 0 116px;max-width:116px;font-weight:500;line-height:1.5;white-space:nowrap;color:#292929;}
.bnb-booking .bnb-control{position:relative;display:flex;align-items:center;flex:1;min-width:0;}
.bnb-booking .bnb-input{display:block;min-width:0;width:100%;height:45px;border:1px solid #dedede;border-radius:0;background:#fff;padding:0 20px;font-size:14px;font-family:inherit;color:#222;line-height:1.5;box-shadow:none;}
.bnb-booking .bnb-input:focus{outline:1px solid #599add;outline-offset:0;border-color:#599add;}
.bnb-booking .bnb-input::placeholder{color:#929292;opacity:1;font-weight:400;}
.bnb-booking .bnb-req{position:absolute;right:8px;top:4px;font-size:13px;color:#e24d4d;line-height:1;pointer-events:none;}
.bnb-booking .bnb-select{width:38%;max-width:380px;padding-right:25px;cursor:pointer;}
.bnb-booking .bnb-room-control{gap:20px;}
.bnb-booking .bnb-options-text{font-size:14px;white-space:nowrap;color:#343434;}
.bnb-booking .bnb-date-row{justify-content:flex-start;}
.bnb-booking .bnb-date-control{flex:0 1 185px;max-width:185px;}
.bnb-booking .bnb-date-control .bnb-input{padding:0 10px;}
.bnb-booking .bnb-date-end-label{flex:0 0 auto;font-weight:500;white-space:nowrap;margin-left:16px;}
.bnb-booking .bnb-date-control .bnb-req{right:2px;top:1px;}
.bnb-booking .bnb-content-row{align-items:center;}
.bnb-booking .bnb-textarea{min-height:172px;max-height:600px;padding:13px 20px;resize:vertical;line-height:1.65;}
.bnb-booking .bnb-content-row .bnb-req{top:6px;}
.bnb-booking .bnb-agree{padding:14px 0 0 128px;color:#626262;font-size:13px;line-height:1.9;}
.bnb-booking .bnb-agree label{cursor:pointer;}
.bnb-booking .bnb-agree input{vertical-align:-2px;}
.bnb-booking .bnb-agree a,.bnb-booking .bnb-text-link{color:#5c656b;text-decoration:underline;text-underline-offset:3px;}
.bnb-booking .bnb-actions{display:flex;gap:20px;justify-content:center;align-items:center;padding:22px 0 0;}
.bnb-booking .bnb-button{display:inline-flex;align-items:center;justify-content:center;min-width:160px;height:44px;border:0;border-radius:0;padding:0 22px;background:#222;color:#fff;font-size:13px;font-family:inherit;font-weight:500;text-align:center;cursor:pointer;text-decoration:none;line-height:1.5;}
.bnb-booking .bnb-button:hover{background:#404040;color:#fff;}
.bnb-booking .bnb-button:disabled{opacity:.7;cursor:wait;}
.bnb-booking .bnb-error,.bnb-booking .bnb-success{padding:12px 16px;margin:0 0 15px;font-size:13px;line-height:1.6;border:1px solid #d9d9d9;background:#fbfbfb;}
.bnb-booking .bnb-error{color:#b53636;border-color:#efcaca;background:#fff6f6;}
.bnb-booking .bnb-success{color:#27613f;border-color:#bdd5c4;background:#f6fbf7;}
.bnb-booking .bnb-honeypot{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;}
.bnb-booking .bnb-read-row{align-items:flex-start;}
.bnb-booking .bnb-read-row .bnb-label{padding-top:13px;font-weight:600;}
.bnb-booking .bnb-read-value{flex:1;min-width:0;min-height:45px;padding:12px 20px;border:1px solid #dedede;background:#fff;font-weight:600;white-space:normal;overflow-wrap:anywhere;line-height:1.5;}
.bnb-booking .bnb-read-row.is-long .bnb-read-value{min-height:168px;white-space:pre-wrap;}
.bnb-booking .bnb-colon{margin-left:5px;}
.bnb-booking .bnb-status-line{padding:14px 0 4px;font-size:14px;font-weight:600;}
.bnb-booking .bnb-status-help{font-size:12px;color:#777;line-height:1.5;}
.bnb-booking .bnb-booking-result .bnb-actions{padding-top:18px;}
.bnb-booking .bnb-admin-box{margin-top:12px;border:1px solid #dedede;background:#fff;padding:14px 20px;}
.bnb-booking .bnb-admin-title{font-size:14px;font-weight:700;color:#222;margin-bottom:9px;}
.bnb-booking .bnb-admin-body{font-size:14px;line-height:1.7;min-height:20px;color:#333;overflow-wrap:anywhere;}
.bnb-booking .bnb-admin-help{font-size:12px;line-height:1.6;color:#777;margin:10px 0 0;}
.bnb-booking .bnb-booking-confirm .bnb-status-help{display:none;}
@media(max-width:850px){.bnb-booking .bnb-label{flex-basis:94px;max-width:94px;}.bnb-booking .bnb-date-row{flex-wrap:wrap;}.bnb-booking .bnb-date-control{flex-basis:160px;}.bnb-booking .bnb-agree{padding-left:106px;}.bnb-booking .bnb-date-end-label{margin-left:0;}}
@media(max-width:580px){
 .bnb-booking{padding-top:10px;}
 .bnb-booking .bnb-row{gap:7px;align-items:stretch;flex-direction:column;padding:8px 0;min-height:0;}
 .bnb-booking .bnb-label{flex:none;max-width:none;font-size:14px;}
 .bnb-booking .bnb-control{width:100%;flex:none;}
 .bnb-booking .bnb-input{height:43px;padding:0 12px;font-size:14px;}
 .bnb-booking .bnb-textarea{min-height:145px;padding:12px;}
 .bnb-booking .bnb-select{width:55%;}
 .bnb-booking .bnb-room-control{gap:10px;}
 .bnb-booking .bnb-options-text{font-size:12px;}
 .bnb-booking .bnb-date-row{display:grid;grid-template-columns:1fr 1fr;column-gap:10px;row-gap:6px;}
 .bnb-booking .bnb-date-row .bnb-label,.bnb-booking .bnb-date-end-label{grid-row:1;margin:0;}
 .bnb-booking .bnb-date-row .bnb-date-control{grid-row:2;max-width:none;width:100%;}
 .bnb-booking .bnb-date-control .bnb-input{padding:0 4px;font-size:12px;}
 .bnb-booking .bnb-agree{padding-left:0;}
 .bnb-booking .bnb-actions{flex-wrap:wrap;gap:10px;}
 .bnb-booking .bnb-read-row .bnb-label{padding-top:0;}
 .bnb-booking .bnb-read-value{width:100%;padding:12px;min-height:42px;}
 .bnb-booking .bnb-read-row.is-long .bnb-read-value{min-height:130px;}
 .bnb-booking .bnb-admin-box{padding:12px;}
}
