/* URG360 v2.8.0 Alpha 1.14.59 — Refonte ergonomique Consultations */
#consultationsView,#v28ConsultationsHost,.v28c-shell-11459{min-width:0;width:100%}
.v28c-shell-11459{display:grid;gap:14px;max-width:1580px;margin:0 auto;padding-bottom:20px}
.v28c-main-head{display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(420px,auto);gap:18px;align-items:end!important;padding:2px 0 4px}
.v28c-title-block{min-width:0}.v28c-title-block h2{margin:.15rem 0 .2rem;font-size:1.7rem}.v28c-title-block .muted{margin:0;max-width:720px}
.v28c-controls{display:grid!important;grid-template-columns:auto minmax(190px,270px) minmax(150px,190px) auto;align-items:end;gap:8px!important;justify-self:end;min-width:0}.v28c-controls label{min-width:0}.v28c-controls select,.v28c-controls input{width:100%;min-width:0}
.v28c-secretary-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;border:1px solid #dce5ee;border-radius:13px;background:#f8fbff;min-width:0}.v28c-secretary-actions>div:first-child{display:grid;gap:2px;min-width:0}.v28c-secretary-actions>div:first-child>strong{font-size:1rem}.v28c-secretary-actions>div:first-child>span{font-size:.78rem;color:#667085}.v28c-secretary-actions>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.v28c-my-day{display:grid;gap:10px;padding:14px!important}.v28c-count-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#edf3f8;color:#36536f;font-size:.78rem;font-weight:800}.v28c-my-day-list{display:grid;gap:7px}.v28c-my-day-row{display:grid;grid-template-columns:72px minmax(260px,1fr) auto;gap:12px;align-items:center;border:1px solid #e0e7ee;border-radius:11px;padding:10px 12px}.v28c-my-time,.v28c-my-patient{display:grid;gap:2px;min-width:0}.v28c-my-time strong{font-size:1.1rem}.v28c-my-time small,.v28c-my-patient span,.v28c-my-patient small{font-size:.76rem;color:#667085;overflow-wrap:anywhere}
/* planning central */
.v28c-planner.card{padding:14px!important;display:grid;gap:10px!important;min-width:0;overflow:hidden}.v28c-planner-head{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(430px,auto)!important;gap:12px!important;align-items:end!important}.v28c-planner-intro h3{margin:.1rem 0 .2rem;font-size:1.15rem}.v28c-planner-intro p{margin:0}.v28c-planner-tools{display:flex!important;align-items:flex-end;justify-content:flex-end!important;gap:8px!important;width:auto!important;max-width:none!important;min-width:0!important}.v28c-room-day-control{display:grid!important;grid-template-columns:auto minmax(105px,140px)!important;gap:3px 8px!important;padding:7px 9px!important;min-width:250px}.v28c-room-day-control small{display:none}.v28c-day-nav{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.v28c-day-nav button{white-space:nowrap}
.v28c-planner-grid{border:1px solid #dce5ee;border-radius:11px;overflow-x:auto!important;overflow-y:hidden;background:#fff;min-width:0}.v28c-planner-columns-head,.v28c-planner-row{display:grid!important;grid-template-columns:78px repeat(var(--v28c-room-count,1),minmax(230px,1fr)) 104px!important;min-width:calc(182px + var(--v28c-room-count,1)*230px)!important;width:100%!important}.v28c-planner-columns-head{background:#f4f7fa;border-bottom:1px solid #dce5ee;position:sticky;top:0;z-index:3}.v28c-planner-columns-head>span{display:flex;align-items:center;justify-content:center;min-height:36px;padding:7px 9px;font-size:.72rem;font-weight:800;color:#52657a;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap;overflow:visible!important}.v28c-planner-time-head{justify-content:flex-start!important}.v28c-planner-cap-head{min-width:104px!important;white-space:nowrap!important;text-align:center}.v28c-planner-room-head{color:#173a63!important;border-inline:1px solid #e4eaf0}
.v28c-planner-row{min-height:66px!important;border-bottom:1px solid #edf1f4;align-items:stretch}.v28c-planner-row:last-child{border-bottom:0}.v28c-planner-time{padding:8px 9px!important;display:grid;align-content:center;gap:1px;border-right:1px solid #edf1f4}.v28c-planner-time strong{font-size:.95rem}.v28c-planner-time small{font-size:.7rem;color:#748294}.v28c-planner-row>.v28c-planner-appt,.v28c-planner-row>.v28c-planner-free,.v28c-planner-row>.v28c-planner-continuation,.v28c-planner-row>.v28c-planner-protected,.v28c-planner-row>.v28c-planner-full{margin:5px!important;padding:7px 9px!important;min-width:0!important;width:auto!important;border-radius:8px}.v28c-planner-appt strong,.v28c-planner-free strong{font-size:.88rem!important;line-height:1.15}.v28c-planner-appt span,.v28c-planner-appt small,.v28c-planner-free small{font-size:.7rem!important;line-height:1.2;overflow-wrap:anywhere}.v28c-planner-capacity{min-width:104px!important;border-left:1px solid #edf1f4;display:grid!important;place-content:center;text-align:center}.v28c-planner-capacity span{font-size:.86rem}.v28c-planner-capacity small{font-size:.68rem;color:#718093}
/* rendez-vous du jour */
.v28c-board.card{padding:13px 14px!important;display:grid;gap:10px;min-width:0}.v28c-kpis{grid-template-columns:repeat(6,minmax(95px,1fr))!important;gap:6px!important;overflow:auto}.v28c-kpis button{padding:8px 10px!important;border-radius:9px!important;min-width:95px}.v28c-kpis button span{font-size:.7rem}.v28c-kpis button strong{font-size:1.15rem}.v28c-capacity-summary{margin:0!important;gap:6px!important}.v28c-capacity-summary span{padding:6px 8px!important;font-size:.74rem!important}.v28c-appointments{gap:6px!important}.v28c-appointment{grid-template-columns:72px minmax(240px,1fr) minmax(120px,auto) minmax(210px,auto)!important;gap:10px!important;padding:9px 10px!important;border-radius:9px!important}.v28c-time strong{font-size:1rem!important}.v28c-actions{gap:5px!important}.v28c-actions button{white-space:nowrap}.v28c-service-note{font-size:.72rem;color:#7a8794;padding-top:3px}
.v28c-upcoming.card,.v28c-queue.card{padding:13px 14px!important;gap:8px!important}.v28c-section-head{gap:12px;min-width:0}.v28c-section-head>div{min-width:0}.v28c-section-head h3{margin:.1rem 0}.v28c-section-head p{margin:.15rem 0 0}.v28c-upcoming-row{grid-template-columns:145px minmax(220px,1fr) auto!important;padding:8px 10px!important}.v28c-request{padding:9px 10px!important}.v28c-empty{padding:14px!important}.v28c-empty.compact{padding:9px!important}
/* Disponibilités lointaines */
.v28c-availability-modal{width:min(1160px,calc(100vw - 24px))!important}.v28c-availability-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto auto;gap:9px;align-items:end;padding:13px 0}.v28c-availability-toolbar label{display:grid;gap:4px;font-size:.78rem;color:#667085}.v28c-availability-toolbar select{width:100%;min-width:0;border:1px solid #cfd9e3;border-radius:8px;padding:8px;background:#fff}.v28c-horizon-tabs{display:flex;gap:4px;background:#eef2f6;border-radius:9px;padding:4px}.v28c-horizon-tabs button{border:0;background:transparent;border-radius:6px;padding:7px 9px;color:#52657a;cursor:pointer}.v28c-horizon-tabs button.active{background:#fff;color:#173a63;font-weight:800;box-shadow:0 1px 4px rgba(20,45,70,.12)}.v28c-availability-results{display:grid;gap:14px;max-height:62vh;overflow:auto;padding-right:3px}.v28c-availability-month{display:grid;gap:7px}.v28c-availability-month>header{display:flex;justify-content:space-between;gap:10px;align-items:center;position:sticky;top:0;background:#fff;padding:4px 0;z-index:2}.v28c-availability-month>header span{font-size:.74rem;color:#667085}.v28c-availability-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.v28c-availability-days button{display:grid;gap:2px;text-align:left;border:1px solid #dce5ee;background:#fff;border-radius:9px;padding:8px;min-width:0;color:inherit;cursor:pointer}.v28c-availability-days button:hover{border-color:#8eabc7;background:#f7fbff}.v28c-availability-days button strong{font-size:.82rem}.v28c-availability-days button span,.v28c-availability-days button small{font-size:.68rem;color:#667085;overflow-wrap:anywhere}
/* modal planning médecins plus compacte */
.v28c-planning-editor{margin:10px 0!important;padding:12px!important}.v28c-day-doctor-row{grid-template-columns:minmax(160px,1fr) minmax(150px,.65fr) minmax(150px,.65fr)!important;gap:8px!important}.v28c-plan-rule{padding:8px 10px!important}
@media(max-width:1180px){.v28c-main-head{grid-template-columns:1fr}.v28c-controls{justify-self:stretch;grid-template-columns:auto minmax(170px,1fr) 170px auto}.v28c-planner-head{grid-template-columns:1fr!important}.v28c-planner-tools{justify-content:space-between!important}.v28c-appointment{grid-template-columns:68px minmax(210px,1fr) minmax(110px,auto)}.v28c-actions{grid-column:2/-1;justify-content:flex-start}.v28c-availability-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:850px){.v28c-controls{grid-template-columns:1fr 1fr}.v28c-secretary-actions{align-items:flex-start;flex-direction:column}.v28c-secretary-actions>div:last-child{justify-content:flex-start}.v28c-my-day-row{grid-template-columns:62px 1fr}.v28c-my-day-row>button{grid-column:2;justify-self:start}.v28c-planner-tools{align-items:stretch!important;flex-direction:column}.v28c-room-day-control{min-width:0;width:100%}.v28c-day-nav{justify-content:flex-start}.v28c-upcoming-row{grid-template-columns:120px 1fr!important}.v28c-upcoming-row>.v28c-status{grid-column:2}.v28c-availability-toolbar{grid-template-columns:1fr 1fr}.v28c-horizon-tabs{grid-column:1/-1}.v28c-availability-days{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.v28c-shell-11459{gap:10px}.v28c-controls{grid-template-columns:1fr}.v28c-controls button{width:100%}.v28c-planner.card,.v28c-board.card,.v28c-upcoming.card,.v28c-queue.card,.v28c-my-day.card{padding:10px!important}.v28c-planner-columns-head,.v28c-planner-row{grid-template-columns:68px repeat(var(--v28c-room-count,1),minmax(180px,1fr)) 92px!important;min-width:calc(160px + var(--v28c-room-count,1)*180px)!important}.v28c-planner-cap-head,.v28c-planner-capacity{display:flex!important;min-width:92px!important;align-items:center;justify-content:center}.v28c-appointment{grid-template-columns:58px 1fr!important}.v28c-tags,.v28c-actions{grid-column:2}.v28c-upcoming-row{grid-template-columns:1fr!important}.v28c-upcoming-row>.v28c-status{grid-column:1}.v28c-availability-toolbar{grid-template-columns:1fr}.v28c-horizon-tabs{grid-column:1}.v28c-availability-days{grid-template-columns:repeat(2,minmax(0,1fr))}.v28c-day-doctor-row{grid-template-columns:1fr!important}}

/* Alpha 1.14.59 final ergonomics */
.v28c-planner-empty-state{min-height:0!important}.v28c-planner-empty-state .v28c-empty{display:grid;gap:3px;min-height:0!important;text-align:left!important}.v28c-planner-empty-state .v28c-empty strong{color:#173a63;font-size:.9rem}.v28c-planner-empty-state .v28c-empty span{color:#667085;font-size:.76rem}.v28c-day-appointments-head{padding-bottom:2px;border-bottom:1px solid #edf1f4}.v28c-day-appointments-head h3{font-size:1.08rem}.v28c-board .v28c-empty{min-height:0!important}.v28c-planner-cap-head{font-size:.68rem!important;letter-spacing:.02em!important}.v28c-planner-capacity{overflow:hidden}.v28c-planner-capacity span,.v28c-planner-capacity small{white-space:nowrap}.v28c-planner-grid{max-width:100%}.v28c-planner-columns-head,.v28c-planner-row{contain:layout style}.v28c-planner-row>*{min-width:0}.v28c-planner-room-head{overflow:hidden!important;text-overflow:ellipsis}.v28c-planner-free,.v28c-planner-appt,.v28c-planner-continuation{overflow:hidden}.v28c-planner-tools{flex-wrap:wrap}.v28c-room-day-readonly{display:flex;align-items:center;min-height:38px;padding:7px 10px;border:1px solid #dce5ee;border-radius:9px;background:#f8fafc;white-space:nowrap}.v28c-day-nav{align-items:center}.v28c-secretary-actions button{white-space:nowrap}
@media(max-width:1050px){.v28c-planner-columns-head,.v28c-planner-row{grid-template-columns:72px repeat(var(--v28c-room-count,1),minmax(205px,1fr)) 100px!important;min-width:calc(172px + var(--v28c-room-count,1)*205px)!important}.v28c-planner-cap-head,.v28c-planner-capacity{min-width:100px!important}}

/* Alpha 1.14.59 — visibilité garantie Horaire / Occupation */
.v28c-planner-columns-head,.v28c-planner-row{contain:none!important}
.v28c-planner-time-head,.v28c-planner-time{position:sticky;left:0;z-index:4;background:#fff}
.v28c-planner-time-head{z-index:7;background:#f4f7fa!important;box-shadow:5px 0 8px -8px rgba(20,45,70,.55)}
.v28c-planner-cap-head,.v28c-planner-capacity{position:sticky;right:0;z-index:4;background:#fff;box-shadow:-5px 0 8px -8px rgba(20,45,70,.55)}
.v28c-planner-cap-head{z-index:7;background:#f4f7fa!important;overflow:visible!important;text-overflow:clip!important;padding-inline:8px!important;font-size:.67rem!important;line-height:1.1!important}
.v28c-planner-capacity{background:#fbfcfd}
.v28c-planner-grid{overscroll-behavior-x:contain;scrollbar-gutter:stable}
.v28c-planner-row:hover .v28c-planner-time,.v28c-planner-row:hover .v28c-planner-capacity{background:#f8fbfe}
@media(max-width:620px){
  .v28c-planner-cap-head{font-size:.63rem!important;padding-inline:5px!important}
  .v28c-planner-time-head,.v28c-planner-time{left:0}
  .v28c-planner-cap-head,.v28c-planner-capacity{right:0}
}

/* Consultations branch — planning journalier compact */
.v28c-planner-row{min-height:50px!important}
.v28c-planner-time{padding:4px 8px!important;gap:0!important}
.v28c-planner-time strong{font-size:.9rem!important;line-height:1.05}
.v28c-planner-time small{font-size:.66rem!important;line-height:1.05}
.v28c-planner-row>.v28c-planner-appt,.v28c-planner-row>.v28c-planner-free,.v28c-planner-row>.v28c-planner-continuation,.v28c-planner-row>.v28c-planner-protected,.v28c-planner-row>.v28c-planner-full{margin:3px!important;padding:5px 7px!important}
.v28c-planner-free{grid-template-columns:16px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:5px!important;row-gap:0!important;align-content:center}
.v28c-planner-free>span{grid-column:1;grid-row:1/3;align-self:center;font-size:1rem!important;line-height:1!important}
.v28c-planner-free>strong{grid-column:2;grid-row:1;font-size:.82rem!important;line-height:1.05!important}
.v28c-planner-free>small{grid-column:2;grid-row:2;font-size:.64rem!important;line-height:1.05!important}
.v28c-planner-appt strong{font-size:.82rem!important;line-height:1.08!important}
.v28c-planner-appt span,.v28c-planner-appt small{font-size:.66rem!important;line-height:1.1!important}
.v28c-planner-capacity span{font-size:.8rem!important;line-height:1.05}
.v28c-planner-capacity small{font-size:.64rem!important;line-height:1.05}

/* Consultations branch — compactage viewport v2 */
body:has(#consultationsView.active)>.topbar{min-height:60px!important;height:60px!important;padding-top:6px!important;padding-bottom:6px!important}
#v28ConsultationsHost .v28c-shell-11459{gap:7px!important}
#v28ConsultationsHost .v28c-main-head{align-items:center!important;gap:10px!important;padding:0!important}
#v28ConsultationsHost .v28c-title-block{display:grid!important;grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"back eyebrow title" ". subtitle subtitle";align-items:center;column-gap:9px;row-gap:1px}
#v28ConsultationsHost .v28c-title-block #v28cBack{grid-area:back;margin:0!important;padding:5px 0!important;white-space:nowrap}
#v28ConsultationsHost .v28c-title-block>.eyebrow{grid-area:eyebrow;margin:0!important;font-size:.64rem!important;white-space:nowrap}
#v28ConsultationsHost .v28c-title-block>h2{grid-area:title;margin:0!important;font-size:1.35rem!important;line-height:1.05}
#v28ConsultationsHost .v28c-title-block>.muted{grid-area:subtitle;margin:0!important;font-size:.74rem!important;line-height:1.2;max-width:none}
#v28ConsultationsHost .v28c-controls{align-items:center!important;gap:6px!important}
#v28ConsultationsHost .v28c-controls label{gap:2px!important;font-size:.72rem!important}
#v28ConsultationsHost .v28c-controls select,#v28ConsultationsHost .v28c-controls input{padding:7px 9px!important;min-height:34px!important}
#v28ConsultationsHost .v28c-controls button{padding:7px 10px!important;min-height:34px!important}
#v28ConsultationsHost .v28c-secretary-actions{gap:10px!important;padding:7px 10px!important;border-radius:10px!important}
#v28ConsultationsHost .v28c-secretary-actions>div:first-child{display:flex!important;align-items:baseline;gap:8px!important;white-space:nowrap}
#v28ConsultationsHost .v28c-secretary-actions>div:first-child>.eyebrow{margin:0!important;font-size:.62rem!important}
#v28ConsultationsHost .v28c-secretary-actions>div:first-child>strong{font-size:.88rem!important}
#v28ConsultationsHost .v28c-secretary-actions>div:first-child>span{display:none!important}
#v28ConsultationsHost .v28c-secretary-actions button{padding:7px 10px!important;min-height:34px!important}
#v28ConsultationsHost .v28c-my-day{gap:4px!important;padding:7px 10px!important;border-radius:11px!important}
#v28ConsultationsHost .v28c-my-day .v28c-section-head{align-items:center!important;gap:8px!important}
#v28ConsultationsHost .v28c-my-day .v28c-section-head>div{display:flex!important;align-items:baseline;gap:8px!important}
#v28ConsultationsHost .v28c-my-day .v28c-section-head .eyebrow{margin:0!important;font-size:.62rem!important}
#v28ConsultationsHost .v28c-my-day .v28c-section-head h3{margin:0!important;font-size:.96rem!important;white-space:nowrap}
#v28ConsultationsHost .v28c-my-day .v28c-section-head .muted{display:none!important}
#v28ConsultationsHost .v28c-my-day .v28c-count-pill{padding:3px 7px!important;font-size:.68rem!important}
#v28ConsultationsHost .v28c-my-day>.v28c-empty.compact{padding:2px 0!important;font-size:.72rem!important}
#v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact){grid-template-columns:auto minmax(180px,1fr)!important;align-items:center!important}
#v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact)>.v28c-section-head{grid-column:1}
#v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact)>.v28c-empty.compact{grid-column:2;text-align:center!important}
#v28ConsultationsHost .v28c-planner.card{padding:9px 10px!important;gap:6px!important;border-radius:11px!important}
#v28ConsultationsHost .v28c-planner-head{align-items:center!important;gap:8px!important}
#v28ConsultationsHost .v28c-planner-intro h3{margin:0!important;font-size:1rem!important}
#v28ConsultationsHost .v28c-planner-intro p{display:none!important}
#v28ConsultationsHost .v28c-room-day-control{padding:5px 7px!important;min-width:220px!important}
#v28ConsultationsHost .v28c-room-day-control select{padding:5px 7px!important;min-height:32px!important}
#v28ConsultationsHost .v28c-day-nav button{padding:6px 9px!important;min-height:32px!important}
#v28ConsultationsHost .v28c-planner-columns-head>span{min-height:28px!important;padding:4px 7px!important;font-size:.66rem!important}
#v28ConsultationsHost .v28c-planner-row{min-height:42px!important}
#v28ConsultationsHost .v28c-planner-time{padding:3px 7px!important}
#v28ConsultationsHost .v28c-planner-row>.v28c-planner-appt,#v28ConsultationsHost .v28c-planner-row>.v28c-planner-free,#v28ConsultationsHost .v28c-planner-row>.v28c-planner-continuation,#v28ConsultationsHost .v28c-planner-row>.v28c-planner-protected,#v28ConsultationsHost .v28c-planner-row>.v28c-planner-full{margin:2px!important;padding:4px 6px!important;border-radius:6px!important}
#v28ConsultationsHost .v28c-planner-free{display:grid!important;grid-template-columns:14px auto minmax(0,1fr)!important;grid-template-rows:1fr!important;align-items:center!important;align-content:center!important;column-gap:5px!important;row-gap:0!important}
#v28ConsultationsHost .v28c-planner-free>span{grid-column:1!important;grid-row:1!important;align-self:center!important;font-size:.9rem!important}
#v28ConsultationsHost .v28c-planner-free>strong{grid-column:2!important;grid-row:1!important;font-size:.78rem!important;white-space:nowrap}
#v28ConsultationsHost .v28c-planner-free>small{grid-column:3!important;grid-row:1!important;font-size:.62rem!important;white-space:nowrap;margin-left:3px}
#v28ConsultationsHost .v28c-planner-capacity span{font-size:.76rem!important}
#v28ConsultationsHost .v28c-planner-capacity small{font-size:.6rem!important}
@media(max-width:1180px){
  #v28ConsultationsHost .v28c-title-block{grid-template-columns:auto auto 1fr;grid-template-areas:"back eyebrow title" "subtitle subtitle subtitle"}
  #v28ConsultationsHost .v28c-title-block>.muted{font-size:.7rem!important}
  #v28ConsultationsHost .v28c-secretary-actions>div:first-child{white-space:normal}
}
@media(max-width:850px){
  body:has(#consultationsView.active)>.topbar{height:auto!important;min-height:56px!important}
  #v28ConsultationsHost .v28c-title-block{display:block!important}
  #v28ConsultationsHost .v28c-title-block #v28cBack{margin-bottom:4px!important}
  #v28ConsultationsHost .v28c-title-block>.eyebrow{margin-bottom:2px!important}
  #v28ConsultationsHost .v28c-title-block>.muted{margin-top:3px!important}
  #v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact){grid-template-columns:1fr!important}
  #v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact)>.v28c-section-head,#v28ConsultationsHost .v28c-my-day:has(>.v28c-empty.compact)>.v28c-empty.compact{grid-column:1}
}

/* Consultations branch — compactage vertical v3 */
body:has(#consultationsView.active)>main.layout{padding-top:8px!important;padding-bottom:18px!important}
#v28ConsultationsHost #v28ConsultationsMsg:empty{display:none!important}
#v28ConsultationsHost .v28c-shell-11459{gap:4px!important}
#v28ConsultationsHost .v28c-main-head,#v28ConsultationsHost .v28c-secretary-actions,#v28ConsultationsHost .v28c-my-day,#v28ConsultationsHost .v28c-planner.card{margin-top:0!important;margin-bottom:0!important}
@media(max-width:850px){body:has(#consultationsView.active)>main.layout{padding-top:8px!important}}
/* Branche Consultations — ajustements de validation UX */

/*
 * La topbar globale recouvre le début des vues métier sur la coque actuelle.
 * La vue Consultations réserve donc explicitement cette hauteur lorsqu'elle est active.
 * Le décalage est porté par la vue (et non par son bandeau) afin de ne pas créer de chevauchement.
 */
#consultationsView.active{
  padding-top:calc(var(--urg-topbar,76px) + 6px)!important;
  scroll-margin-top:calc(var(--urg-topbar,76px) + 6px)!important;
}

/* En-tête Consultations compact, dans le flux normal. */
#v28ConsultationsHost .v28c-main-head{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
  background:transparent!important;
  padding:2px 0 4px!important;
  margin:0!important;
  border-bottom:0!important;
}

/* En-tête desktop : tous les contrôles restent visibles, dont la date. */
@media (min-width:1181px){
  #v28ConsultationsHost .v28c-main-head{
    grid-template-columns:minmax(300px,.75fr) minmax(760px,1.25fr)!important;
    overflow:visible!important;
  }
  #v28ConsultationsHost .v28c-controls{
    display:flex!important;
    align-items:flex-end!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
    overflow:visible!important;
  }
  #v28ConsultationsHost #v28cSettings,
  #v28ConsultationsHost #v28cRefresh{
    flex:0 0 auto!important;
  }
  #v28ConsultationsHost .v28c-controls label:has(#v28cService){
    flex:1 1 260px!important;
    min-width:220px!important;
  }
  #v28ConsultationsHost .v28c-controls label:has(#v28cDate){
    flex:0 0 180px!important;
    min-width:180px!important;
  }
}

/* Le sélecteur de date reste toujours visible. */
#v28ConsultationsHost .v28c-controls label:has(#v28cDate){
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  gap:2px!important;
}
#v28ConsultationsHost #v28cDate{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
}

/* Action d'arrivée directement dans le planning, sans augmenter la hauteur des créneaux. */
#v28ConsultationsHost .v28c-planner-appt{
  position:relative!important;
}
#v28ConsultationsHost .v28c-planner-appt.v28c-planner-appt-has-checkin{
  padding-right:128px!important;
}
#v28ConsultationsHost .v28c-planner-checkin-action{
  position:absolute;
  right:6px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:3px 7px;
  border:1px solid #a8d1bf;
  border-radius:7px;
  background:#eef8f3;
  color:#17634d;
  font-size:.68rem;
  font-weight:850;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(20,70,55,.06);
}
#v28ConsultationsHost .v28c-planner-checkin-action:hover{
  background:#e1f3ea;
  border-color:#72b397;
}
#v28ConsultationsHost .v28c-planner-checkin-action.is-loading{
  opacity:.68;
  pointer-events:none;
}
#v28ConsultationsHost .v28c-planner-appt.status-arrived{
  border-color:#9bcbb6!important;
  background:#f5fbf8!important;
}

/* Largeurs intermédiaires : deux lignes si nécessaire, jamais de champ supprimé. */
@media (max-width:1180px) and (min-width:851px){
  #consultationsView.active{
    padding-top:calc(var(--urg-topbar,76px) + 6px)!important;
  }
  #v28ConsultationsHost .v28c-main-head{
    grid-template-columns:1fr!important;
  }
  #v28ConsultationsHost .v28c-controls{
    display:grid!important;
    grid-template-columns:auto minmax(220px,1fr) 180px auto!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
}

@media (max-width:850px){
  #consultationsView.active{
    padding-top:calc(var(--urg-topbar,64px) + 6px)!important;
  }
  #v28ConsultationsHost .v28c-planner-appt.v28c-planner-appt-has-checkin{
    padding-right:104px!important;
  }
  #v28ConsultationsHost .v28c-planner-checkin-action{
    font-size:.62rem;
    padding:3px 5px;
  }
}
