/* Стили модуля бронирования «Аделина». Палитра проекта. */
#booking-app{font-family:Onest,sans-serif;color:#2E2820}

/* Компактная строка: Заезд · Выезд · Гостей · кнопка */
.bk-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:14px;align-items:end;position:relative}
.bk-fld{display:flex;flex-direction:column;gap:8px;min-width:0;position:relative}
.bk-fld-cap{font:500 13px/1 Onest;color:#6E6757}
.bk-fld-val{font:500 15px/1.2 Onest;color:#34271B;background:#fff;border:1.5px solid #E0D4BC;border-radius:12px;padding:0 14px;height:52px;width:100%;text-align:left;cursor:pointer;box-sizing:border-box}
button.bk-fld-val{display:flex;align-items:center;gap:9px}
.bk-fld-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bk-fld-val:hover{border-color:#C8B79A}
.bk-fld-val:focus{outline:none;border-color:#5C4632;box-shadow:0 0 0 3px rgba(92,70,50,.14)}
.bk-fld-ph{color:#9A9081}
.bk-fld-active .bk-fld-val{border-color:#5C4632;box-shadow:0 0 0 3px rgba(92,70,50,.14)}
.bk-go{align-self:end;height:52px;font:600 16px/1 Onest;color:#fff;background:#C05A38;border:none;padding:0 26px;border-radius:12px;cursor:pointer;white-space:nowrap}
.bk-go:hover{background:#A54B2E}

/* Календарь-поповер (по клику) */
.bk-pop{position:absolute;top:calc(100% + 10px);left:0;z-index:60;width:320px;max-width:84vw;background:#fff;border:1px solid #E6DCC6;border-radius:14px;padding:16px;box-shadow:0 24px 50px -18px rgba(36,26,18,.45)}
.bk-pop-right{left:auto;right:0}
.bk-pop-hint{font:400 12px/1 Onest;color:#9A9081;margin-top:10px}
.bk-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.bk-nav-label{font:600 13px/1 Onest;letter-spacing:.14em;text-transform:uppercase;color:#A8503B}
.bk-arrow{width:34px;height:34px;border-radius:9px;border:1px solid #E0D4BC;background:#fff;color:#34271B;font-size:18px;cursor:pointer}
.bk-arrow:disabled{opacity:.4;cursor:not-allowed}
.bk-cal{width:100%}
.bk-month-title{font-family:Spectral,serif;font-weight:600;font-size:16px;color:#34271B;margin-bottom:8px;text-align:center}
.bk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.bk-wd{font:600 10px/1 Onest;color:#9A9081;text-align:center;padding:4px 0}
.bk-cell{aspect-ratio:1/1;border:1px solid transparent;border-radius:8px;background:#fff;color:#34271B;font:500 13px/1 Onest;cursor:pointer}
.bk-cell:hover:not(.bk-disabled){border-color:#C05A38}
.bk-empty{background:transparent;border:none;cursor:default}
.bk-disabled{color:#C7BCA6;background:#F3EDDF;cursor:not-allowed;text-decoration:line-through}
.bk-inrange{background:#EBE7D2}
.bk-sel{background:#C05A38;color:#fff;border-color:#C05A38}

/* Поповер «Гостей»: взрослые и дети со степперами − n + */
.bk-gpop{width:280px}
.bk-grow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0}
.bk-grow + .bk-grow{border-top:1px solid #F0E9D9}
.bk-grow-label{font:500 15px/1.3 Onest;color:#34271B}
.bk-grow-sub{font:400 12px/1.3 Onest;color:#9A9081}
.bk-step{display:flex;align-items:center;gap:10px}
.bk-stepbtn{width:34px;height:34px;border-radius:9px;border:1px solid #E0D4BC;background:#fff;color:#34271B;font:500 18px/1 Onest;cursor:pointer}
.bk-stepbtn:hover:not(:disabled){border-color:#C05A38;color:#C05A38}
.bk-stepbtn:disabled{opacity:.4;cursor:not-allowed}
.bk-stepnum{min-width:22px;text-align:center;font:600 15px/1 Onest;color:#34271B}
.bk-gdone{width:100%;margin-top:12px;height:42px;font:600 15px/1 Onest;color:#fff;background:#C05A38;border:none;border-radius:10px;cursor:pointer}
.bk-gdone:hover{background:#A54B2E}

/* Сводка */
/* Статус и стоимость (разделитель + зелёная точка + цена) */
.bk-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:24px;border-top:1px solid #EFE6D4}
.bk-status-l{display:flex;align-items:center;gap:10px}
.bk-dot{width:10px;height:10px;border-radius:50%;background:#6F9E5F;flex:0 0 auto}
.bk-status-txt{font:500 14px/1.3 Onest;color:#5C4632}
.bk-status-r{display:flex;align-items:baseline;gap:10px}
.bk-status-sub{font:400 14px/1 Onest;color:#6E6757}
.bk-status-total{font-family:Spectral,serif;font-weight:600;font-size:28px;color:#34271B}

/* Контактные поля */
.bk-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;align-items:end;margin-top:18px}
.bk-input{font:400 15px/1.2 Onest;color:#34271B;background:#fff;border:1.5px solid #E0D4BC;border-radius:11px;padding:14px;width:100%;box-sizing:border-box}
.bk-input:focus{outline:none;border-color:#3C5945;box-shadow:0 0 0 3px rgba(60,89,69,.14)}
.bk-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.bk-agree{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font:400 13px/1.5 Onest;color:#5A5446;cursor:pointer}
.bk-agree a{color:#A8503B}
.bk-error{grid-column:1/-1;font:500 13px/1.4 Onest;color:#A8503B;background:#F6E9DC;border:1px solid #E6CCB8;border-radius:10px;padding:11px 13px;margin-top:14px}
.bk-submit{grid-column:1/-1;justify-self:start;font:600 16px/1 Onest;color:#fff;background:#C05A38;border:none;padding:16px 28px;border-radius:12px;cursor:pointer}
.bk-submit:hover{background:#A54B2E}
.bk-submit:disabled{opacity:.6;cursor:default}

/* Подтверждение */
.bk-done{background:#fff;border:1px solid #D2DCC9;border-radius:14px;padding:26px}
.bk-done-title{font-family:Spectral,serif;font-weight:600;font-size:20px;color:#34271B;margin-bottom:6px}
.bk-done-text{font:400 15px/1.5 Onest;color:#6E6757}

@media(max-width:640px){
  .bk-row{grid-template-columns:1fr 1fr}
  .bk-go{grid-column:1/-1}
  .bk-pop{width:auto;left:0;right:0;max-width:none}
  .bk-pop-right{left:0;right:0}
  .bk-gpop{width:auto}
}
.bk-loading,.bk-availability-error{margin-bottom:14px;padding:12px 14px;border-radius:10px;font:500 13px/1.45 Onest,sans-serif;}
.bk-loading{background:#f6f1e6;color:#6e6757;}
.bk-availability-error{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f6e9dc;border:1px solid #e6ccb8;color:#a8503b;}
.bk-retry{flex:0 0 auto;border:1px solid #c05a38;background:#fff;color:#a8503b;border-radius:8px;padding:8px 12px;font:600 13px/1 Onest,sans-serif;cursor:pointer;}
.bk-go:disabled,.bk-fld-val:disabled{opacity:.55;cursor:not-allowed;}
