/* PRIME 2 — refinamento visual do Quadro de Horários e editor de célula */

/* Cabeçalho da página */
.p2-schedule-page .p2-section-head{margin-bottom:24px;align-items:flex-start}
.p2-schedule-page .p2-kicker{font-size:11px;font-weight:950;letter-spacing:.13em;color:#8b1748}
.p2-schedule-page .p2-title{margin-top:7px;font-size:29px;line-height:1.15;font-weight:900;letter-spacing:-.035em;color:#16324a}
.p2-schedule-page .p2-section-head .p2-muted{margin-top:12px;font-size:14px;font-weight:560;line-height:1.5;color:#617786}
.p2-schedule-page #p2-back-units{min-height:44px;padding:0 17px;font-size:13px;font-weight:850;border-color:#d6e0e6;color:#18364a;box-shadow:0 5px 16px rgba(24,42,67,.07)}

/* Barra da unidade */
.p2-schedule-page .p2-board-toolbar{margin-bottom:28px;padding:18px 20px;border:1px solid #e1e7eb;border-radius:17px;background:rgba(255,255,255,.88);box-shadow:0 7px 22px rgba(24,42,67,.05)}
.p2-schedule-page .p2-board-toolbar>label{display:grid;gap:7px;font-size:11px;font-weight:900;color:#3c5668;letter-spacing:.015em}
.p2-schedule-page .p2-board-toolbar select{height:44px;border:1px solid #cbd8df;border-radius:11px;background:#fff;padding:0 13px;color:#18364a;font-size:12px;font-weight:800;box-shadow:inset 0 1px 2px rgba(24,42,67,.03)}
.p2-schedule-page .p2-board-badges{gap:9px}
.p2-schedule-page .p2-badge{min-height:31px;padding:7px 11px;font-size:10.5px;font-weight:900;border:1px solid #e0e7eb;background:#f2f6f8;color:#405b6c}
.p2-schedule-page .p2-badge-money{padding-inline:12px!important;background:#edf8f2!important;border:1px solid #cde6d7!important;color:#1d6042!important}
.p2-schedule-page .p2-badge-money b{margin-left:4px;font-size:11px;font-weight:950;color:#087a42}

/* Blocos das salas */
.p2-schedule-stack{gap:22px!important}
.p2-schedule-room{overflow:hidden;border:1px solid #e5dce1!important;border-radius:18px!important;background:#fff;box-shadow:0 8px 25px rgba(24,42,67,.06)}
.p2-schedule-room>header{min-height:54px!important;padding:0 18px!important;gap:11px!important;background:linear-gradient(90deg,#8d1749,#7c143f)!important;color:#fff!important}
.p2-schedule-room>header span{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.13);font-size:15px}
.p2-schedule-room>header strong{font-size:14px!important;font-weight:950!important;letter-spacing:.015em!important}

/* Grade */
.p2-schedule-grid{table-layout:fixed!important}
.p2-schedule-grid thead th{height:43px!important;padding:0 10px!important;background:#79143e!important;color:#fff!important;font-size:10.5px!important;font-weight:900!important;letter-spacing:.01em!important;text-align:center!important;vertical-align:middle!important}
.p2-schedule-grid thead th:first-child{width:96px!important}
.p2-schedule-grid tbody>tr>th{width:96px!important;padding:0 8px!important;background:#90194b!important;color:#fff!important;text-align:center!important;vertical-align:middle!important}
.p2-schedule-grid tbody>tr>th b{display:block;font-size:11.5px!important;font-weight:950!important;line-height:1.15!important}
.p2-schedule-grid tbody>tr>th small{display:block;margin-top:5px;font-size:8.5px!important;font-weight:750!important;line-height:1.1!important;color:rgba(255,255,255,.9)!important}
.p2-schedule-grid tbody td{height:84px!important;padding:0!important;vertical-align:top!important;border-color:#e2d8de!important;background:#fff}
.p2-schedule-grid tbody td.is-occupied{background:#edf8f3!important}
.p2-schedule-grid tbody td.is-editable{cursor:pointer;transition:background .16s ease,box-shadow .16s ease}
.p2-schedule-grid tbody td.is-editable:hover{background:#e4f4ec!important;box-shadow:inset 0 0 0 2px rgba(134,31,76,.13)}
.p2-schedule-grid .p2-board-cell{min-height:84px!important;padding:11px 10px!important;gap:6px!important;align-content:start!important}
.p2-schedule-grid .p2-allocation{border:0!important;background:transparent!important;padding:0!important;display:block!important;box-shadow:none!important}
.p2-schedule-grid .p2-allocation>b{display:block!important;font-size:10.5px!important;font-weight:900!important;line-height:1.23!important;color:#102f43!important;letter-spacing:-.005em!important;overflow-wrap:anywhere}
.p2-schedule-grid .p2-allocation>small:not(.p2-allocation-rent){display:block;margin-top:5px;color:#637886;font-size:9px;font-weight:650;line-height:1.25}
.p2-schedule-grid .p2-cell-add{font-size:17px!important;font-weight:700!important;line-height:1;color:#7890a0!important}

/* Valor do aluguel dentro da célula */
.p2-schedule-grid .p2-allocation-rent{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:wrap!important;margin-top:9px!important;padding-top:7px!important;border-top:1px solid #d6e9df!important;color:#49665a!important;font-size:9px!important;line-height:1.25!important;text-transform:none!important}
.p2-schedule-grid .p2-allocation-rent span{font-size:9px!important;font-weight:750!important;color:#597368!important}
.p2-schedule-grid .p2-allocation-rent strong{font-size:10px!important;font-weight:950!important;color:#086d3d!important;white-space:nowrap!important}
.p2-schedule-grid .p2-allocation-rent em{font-size:8.5px!important;font-style:normal!important;font-weight:700!important;color:#775d69!important;white-space:nowrap!important}

/* Modal — fundo e caixa */
#p2-cell-dialog{width:min(840px,calc(100vw - 34px))!important;max-width:840px!important;max-height:92vh!important;margin:auto!important;padding:0!important;border:0!important;border-radius:23px!important;background:#fcf8fa!important;color:#203744!important;box-shadow:0 28px 75px rgba(12,27,43,.33)!important;overflow:hidden!important}
#p2-cell-dialog::backdrop{background:rgba(14,29,48,.68)!important;backdrop-filter:blur(5px)!important}
#p2-cell-dialog .p2-cell-dialog-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:19px 22px!important;border-bottom:1px solid #eadde4!important;background:rgba(255,255,255,.76)!important}
#p2-cell-dialog .p2-cell-dialog-head h2{margin:0!important;font-size:20px!important;line-height:1.2!important;font-weight:950!important;letter-spacing:-.025em!important;color:#143247!important}
#p2-cell-dialog .p2-cell-dialog-head .p2-btn{min-height:40px!important;padding:0 14px!important;font-size:12px!important;font-weight:850!important;border-color:#d4dfe5!important}
#p2-cell-dialog .p2-cell-dialog-body{padding:21px 22px 23px!important;overflow:auto!important}
#p2-cell-dialog .p2-kicker{font-size:10px!important;font-weight:950!important;letter-spacing:.13em!important;color:#94194f!important}
#p2-cell-dialog .p2-cell-dialog-body>.p2-muted{margin:18px 0 20px!important;font-size:13.5px!important;font-weight:560!important;color:#647987!important;line-height:1.45!important}

/* Campos */
#p2-cell-dialog .p2-cell-entry{display:grid!important;grid-template-columns:minmax(220px,1.7fr) 122px 145px 96px auto!important;gap:11px!important;align-items:end!important}
#p2-cell-dialog .p2-cell-entry label,#p2-cell-dialog .p2-cell-note{display:grid!important;gap:7px!important;font-size:10px!important;font-weight:900!important;letter-spacing:.035em!important;text-transform:uppercase!important;color:#765d69!important}
#p2-cell-dialog .p2-cell-entry input,#p2-cell-dialog .p2-cell-entry select,#p2-cell-dialog .p2-cell-note input{width:100%!important;height:44px!important;border:1px solid #d7c7cf!important;border-radius:11px!important;background:#fff!important;padding:0 12px!important;font-size:12px!important;font-weight:700!important;color:#203744!important;box-shadow:0 1px 3px rgba(24,42,67,.03)!important}
#p2-cell-dialog .p2-cell-entry input:focus,#p2-cell-dialog .p2-cell-entry select:focus,#p2-cell-dialog .p2-cell-note input:focus{outline:0!important;border-color:#9c2a5c!important;box-shadow:0 0 0 4px rgba(134,31,76,.09)!important}
#p2-cell-dialog #p2-cell-add{height:44px!important;min-width:112px!important;padding:0 16px!important;font-size:13px!important;font-weight:900!important;border-radius:11px!important;white-space:nowrap!important}

/* Profissionais adicionados */
#p2-cell-dialog .p2-cell-prof-list{display:grid!important;gap:9px!important;margin:14px 0!important}
#p2-cell-dialog .p2-cell-prof-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:60px!important;padding:11px 13px!important;border:1px solid #cfe5da!important;border-radius:13px!important;background:#edf8f3!important}
#p2-cell-dialog .p2-cell-prof-row>div{min-width:0}
#p2-cell-dialog .p2-cell-prof-row b{display:block!important;font-size:14px!important;font-weight:950!important;line-height:1.25!important;color:#153449!important}
#p2-cell-dialog .p2-cell-prof-row small{display:block!important;margin-top:4px!important;font-size:11px!important;font-weight:650!important;color:#547366!important}
#p2-cell-dialog .p2-cell-prof-row button{width:32px!important;height:32px!important;flex:0 0 32px!important;border:0!important;border-radius:9px!important;background:#fff!important;color:#b82454!important;font-size:14px!important;font-weight:900!important;cursor:pointer!important;box-shadow:0 2px 7px rgba(24,42,67,.05)!important}

/* Reservado e bloqueado */
#p2-cell-dialog .p2-cell-choice{display:flex!important;align-items:center!important;gap:13px!important;min-height:66px!important;margin-top:10px!important;padding:12px 15px!important;border:1px solid #e4dbe0!important;border-radius:13px!important;background:#fff!important;text-transform:none!important;cursor:pointer!important}
#p2-cell-dialog .p2-cell-choice input{width:16px!important;height:16px!important;accent-color:#8b1748!important;flex:0 0 auto!important}
#p2-cell-dialog .p2-cell-choice span{display:block!important}
#p2-cell-dialog .p2-cell-choice span b{display:block!important;font-size:13.5px!important;font-weight:900!important;color:#263d4b!important}
#p2-cell-dialog .p2-cell-choice span small{display:block!important;margin-top:3px!important;font-size:10.5px!important;font-weight:560!important;color:#71838e!important;line-height:1.35!important}
#p2-cell-dialog .p2-cell-choice.danger{border-color:#efc9c7!important;background:#fff8f7!important}
#p2-cell-dialog .p2-cell-choice.danger span b{color:#c52c2c!important}
#p2-cell-dialog .p2-cell-note{margin-top:14px!important}

/* Rodapé */
#p2-cell-dialog .p2-cell-dialog-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important;padding:14px 20px!important;border-top:1px solid #eadde4!important;background:#fff!important}
#p2-cell-dialog .p2-cell-dialog-actions .p2-btn{min-height:42px!important;padding:0 17px!important;font-size:12.5px!important;font-weight:900!important;border-radius:11px!important}
#p2-cell-dialog #p2-cell-save{min-width:78px!important}

@media(max-width:900px){
  #p2-cell-dialog .p2-cell-entry{grid-template-columns:1fr 1fr!important}
  #p2-cell-dialog #p2-cell-add{grid-column:1/-1!important;width:100%!important}
}
@media(max-width:760px){
  .p2-schedule-page .p2-title{font-size:24px}
  .p2-schedule-page .p2-board-toolbar{grid-template-columns:1fr!important;padding:14px!important}
  .p2-schedule-page .p2-board-badges{justify-content:flex-start!important}
  #p2-cell-dialog{width:calc(100vw - 18px)!important;border-radius:18px!important}
  #p2-cell-dialog .p2-cell-dialog-head,#p2-cell-dialog .p2-cell-dialog-body{padding-left:16px!important;padding-right:16px!important}
  #p2-cell-dialog .p2-cell-entry{grid-template-columns:1fr!important}
  #p2-cell-dialog #p2-cell-add{grid-column:auto!important}
}
