/* SocGol V6.6.0 · Calendario de campos */
.field-calendar-club-grid,.field-map-grid,.facility-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.field-calendar-club-card{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;padding:18px}.field-calendar-club-card>div{display:grid;gap:3px;flex:1}.field-calendar-club-card small{color:var(--muted,#667)}.field-calendar-club-icon{font-size:1.6rem}
.field-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.field-calendar-warning{border-left:4px solid #d89c16}.field-calendar-toolbar{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;margin-bottom:16px}.field-calendar-toolbar>div{text-align:center;display:grid}.field-calendar-toolbar small{color:var(--muted,#667)}.field-calendar-toolbar select{min-width:170px}
.field-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:24px}.field-day-column{background:#fff;border:1px solid #D6E5F6;border-radius:14px;min-width:0;overflow:hidden}.field-day-column.today{box-shadow:inset 0 0 0 2px #0458C9}.field-day-column>header{padding:10px 9px;border-bottom:1px solid #EAF5FF;display:grid;gap:2px}.field-day-column>header strong{font-size:.94rem}.field-day-column>header span,.field-day-column>header small{font-size:.74rem;color:#5C6F92}.field-day-events{padding:7px;display:grid;gap:7px;min-height:130px}.field-day-empty{font-size:.78rem;color:#5C6F92;padding:8px 2px}
.field-booking{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:start;border-radius:10px;padding:8px;background:#eff8f3;border-left:4px solid #20a864;min-width:0}.field-booking.reservation{background:#f5f7ff;border-left-color:#5c72d7}.field-booking.type-match{background:#fff5ea;border-left-color:#e99b35}.field-booking.type-rental{background:#eef8ff;border-left-color:#4c8fbd}.field-booking.type-maintenance{background:#f6f2f2;border-left-color:#9b7373}.field-booking.is-concession{background:#f3effc;border-left-color:#7c5cc4}.field-booking-time{display:grid;font-size:.72rem}.field-booking-body{display:grid;min-width:0}.field-booking-body strong,.field-booking-body span,.field-booking-body small{overflow:hidden;text-overflow:ellipsis}.field-booking-body strong{font-size:.78rem}.field-booking-body span,.field-booking-body small{font-size:.69rem;color:#5C6F92}.field-booking-delete{border:0;background:transparent;font-size:1rem;cursor:pointer;color:#8a3434;padding:0 2px}
.field-calendar-forms{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.field-form-grid{display:grid;gap:12px}.field-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field-form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field-form-grid label{display:grid;gap:5px;font-weight:600;font-size:.86rem}.field-form-grid input,.field-form-grid select,.field-form-grid textarea,.opening-hour-row input,.field-calendar-toolbar select{width:100%;box-sizing:border-box}.field-span-2{grid-column:span 2}.field-span-3{grid-column:span 3}.field-checkbox{align-self:end;padding-bottom:9px}
.opening-hours-grid{display:grid;gap:8px;margin-bottom:14px}.opening-hour-row{display:grid;grid-template-columns:120px 1fr 1fr 130px;gap:10px;align-items:end;padding:8px 0;border-bottom:1px solid #EAF5FF}.opening-hour-row label{display:grid;gap:4px;font-size:.8rem}.checkbox-line{display:flex!important;align-items:center;gap:7px!important}.checkbox-line input{width:auto!important}.field-calendar-settings-card{margin-bottom:16px}
.facility-settings{display:grid;gap:14px}.facility-settings-head,.field-map-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.facility-settings-head>div,.field-map-card-head>div{display:grid;gap:3px}.facility-settings-head h3{margin:0}.field-map-card small{display:block;color:#5C6F92}.facility-editor summary{cursor:pointer;font-weight:700;padding:8px 0}.facility-zones-tools{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.facility-zones-tools form{display:flex;gap:8px;flex-wrap:wrap}.zone-list{display:grid;gap:5px}.zone-list-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;border-radius:9px;background:#F7FBFF}.zone-list-row small{color:#5C6F92}
.facility-diagram{position:relative;aspect-ratio:16/10;border:3px solid rgba(255,255,255,.9);outline:1px solid #D0E6FB;border-radius:8px;overflow:hidden;background:#4d9b64;isolation:isolate}.facility-diagram.style-court{background:#c6844e}.facility-diagram.style-plain{background:#D6E5F6}.facility-diagram:before{content:"";position:absolute;inset:4%;border:2px solid rgba(255,255,255,.85);z-index:1;pointer-events:none}.facility-diagram.style-plain:before{border-style:dashed;border-color:#5C6F92}.pitch-half,.court-half{position:absolute;left:50%;top:4%;bottom:4%;border-left:2px solid rgba(255,255,255,.85);z-index:1}.pitch-circle,.court-circle{position:absolute;width:18%;aspect-ratio:1;border:2px solid rgba(255,255,255,.85);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1}.pitch-box{position:absolute;top:29%;width:15%;height:42%;border:2px solid rgba(255,255,255,.85);z-index:1}.pitch-box.left{left:4%;border-left:0}.pitch-box.right{right:4%;border-right:0}.facility-zone{position:absolute;z-index:3;border:2px solid rgba(7,49,31,.7);background:rgba(255,255,255,.26);display:grid;place-items:center;text-align:center;min-width:1px;min-height:1px}.facility-zone span{background:rgba(255,255,255,.9);border-radius:999px;padding:4px 7px;font-size:.72rem;font-weight:800;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.facility-diagram-empty{position:absolute;z-index:3;inset:0;display:grid;place-items:center;font-weight:700;color:#234d38}.field-map-card{display:grid;gap:10px}.field-map-card .facility-diagram{aspect-ratio:16/9}
.field-access-form{margin-bottom:18px}.field-calendar-page .right-column .card{max-width:100%}
@media(max-width:1180px){.field-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.field-calendar-forms{grid-template-columns:1fr}.field-form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.field-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-calendar-toolbar{grid-template-columns:1fr 1fr}.field-calendar-toolbar>div{grid-column:1/-1;grid-row:1}.field-calendar-toolbar form{grid-column:1/-1}.field-form-grid.two,.field-form-grid.three,.field-form-grid.four{grid-template-columns:1fr}.field-span-2,.field-span-3{grid-column:auto}.opening-hour-row{grid-template-columns:1fr 1fr}.opening-hour-row>strong{grid-column:1/-1}.opening-hour-row .checkbox-line{align-self:center}.facility-zones-tools{align-items:flex-start}.facility-zones-tools form{width:100%}.facility-zones-tools select{flex:1}.field-calendar-heading{align-items:flex-start}}
@media(max-width:520px){.field-week-grid{grid-template-columns:1fr}.field-calendar-toolbar{grid-template-columns:1fr}.field-calendar-toolbar>a,.field-calendar-toolbar form{grid-column:1}.opening-hour-row{grid-template-columns:1fr}.opening-hour-row>strong{grid-column:auto}.field-actions{width:100%}.field-actions .button{flex:1;text-align:center}}

/* SocGol V6.6.1 · planificación visual */
.field-view-switch{display:flex;gap:8px;justify-content:flex-end;margin:0 0 12px}.field-view-switch .mini-button.active{background:#0B3F78;color:#fff;border-color:#0B3F78}
.field-visual-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.field-visual-summary>div{display:grid;gap:2px;padding:12px 14px;border:1px solid #D6E5F6;border-radius:12px;background:#fff}.field-visual-summary strong{font-size:1.2rem}.field-visual-summary span{font-size:.76rem;color:#5C6F92}
.field-move-panel{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;align-items:end;margin-bottom:12px;border-left:4px solid #0B3F78}.field-move-panel[hidden]{display:none}.field-move-copy{display:grid;gap:2px;grid-column:1/-1}.field-move-copy span{font-weight:700}.field-move-copy small{color:#5C6F92}.field-move-form{display:contents}.field-move-panel label{display:grid;gap:4px;font-size:.78rem;font-weight:700;min-width:0}.field-move-panel select,.field-move-panel input{width:100%;box-sizing:border-box}.field-move-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;grid-column:1/-1}.field-move-availability{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 10px;border:1px solid #D6E5F6;border-radius:10px;background:#F7FBFF;font-size:.78rem}
.field-timeline-scroll{overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid #D6E5F6;border-radius:14px;background:#fff;margin-bottom:6px}.field-timeline-grid{display:grid;grid-template-columns:68px repeat(var(--day-count,7),minmax(150px,1fr));min-width:var(--timeline-min,1120px);position:relative}.field-time-head,.field-timeline-day-head{position:sticky;top:0;z-index:6;background:#F7FBFF;border-bottom:1px solid #D6E5F6;padding:9px 8px}.field-time-head{left:0;z-index:8;font-size:.76rem;color:#5C6F92}.field-timeline-day-head{display:grid;gap:1px;text-align:center}.field-timeline-day-head strong{font-size:.84rem}.field-timeline-day-head span{font-size:.72rem;color:#5C6F92}.field-timeline-day-head.today{box-shadow:inset 0 -3px 0 #0458C9}
.field-time-axis{position:relative;grid-column:1;grid-row:2;background:#F7FBFF;border-right:1px solid #D6E5F6;z-index:3}.field-time-axis span{position:absolute;left:0;right:0;transform:translateY(-.55em);padding-right:8px;text-align:right;font-size:.67rem;color:#5C6F92;pointer-events:none}.field-timeline-day{position:relative;grid-row:2;background:repeating-linear-gradient(to bottom,#fff 0,#fff calc(var(--slot-height) - 1px),#EAF5FF calc(var(--slot-height) - 1px),#EAF5FF var(--slot-height));border-right:1px solid #EAF5FF;min-width:0}.field-timeline-day.closed{background:repeating-linear-gradient(135deg,#F7FBFF 0,#F7FBFF 8px,#EAF5FF 8px,#EAF5FF 16px)}.field-day-closed-label{position:sticky;top:52px;margin:14px auto;width:max-content;padding:5px 9px;border-radius:999px;background:#fff;border:1px solid #D6E5F6;font-size:.72rem;color:#5C6F92;z-index:2}
.field-time-hit{position:absolute;left:0;right:0;width:100%;border:0;background:transparent;cursor:pointer;z-index:1;padding:0}.field-time-hit:hover,.field-move-active .field-time-hit{background:rgba(7,57,117,.07)}.field-move-active .field-time-hit:hover{background:rgba(7,57,117,.16);outline:1px solid rgba(7,57,117,.35);outline-offset:-1px}
.field-visual-event{position:absolute;z-index:4;border-radius:8px;padding:4px 40px 4px 6px;overflow:hidden;background:#eff8f3;border-left:4px solid #20a864;box-shadow:0 1px 3px rgba(3,26,61,.08);display:grid;align-content:start;gap:1px;min-height:28px}.field-visual-event.reservation{background:#f5f7ff;border-left-color:#5c72d7}.field-visual-event.type-match{background:#fff5ea;border-left-color:#e99b35}.field-visual-event.type-rental{background:#eef8ff;border-left-color:#4c8fbd}.field-visual-event.type-maintenance{background:#f6f2f2;border-left-color:#9b7373}.field-visual-event.type-event{background:#f7f1fb;border-left-color:#8a66a6}.field-visual-event.is-concession{background:#f3effc;border-left-color:#7c5cc4}.field-visual-event strong,.field-visual-event span,.field-visual-event-time{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-visual-event strong{font-size:.69rem}.field-visual-event span{font-size:.61rem;color:#5C6F92}.field-visual-event-time{font-size:.6rem;font-weight:800;color:#071B43}.field-visual-move{position:absolute;right:22px;top:3px;border:0;background:rgba(255,255,255,.86);border-radius:6px;width:17px;height:17px;line-height:15px;padding:0;cursor:pointer;font-size:.68rem}.field-visual-move:hover{background:#fff}
.field-timeline-help{margin:4px 2px 18px}.field-booking-actions{display:grid;gap:3px;align-items:start}.field-booking-actions form{margin:0}.field-booking-move{border:0;background:transparent;color:#0B3F78;cursor:pointer;padding:0 2px;font-size:.85rem}
@media(max-width:980px){.field-visual-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.field-move-panel{grid-template-columns:1fr 1fr}.field-move-copy{grid-column:1/-1}.field-timeline-grid{grid-template-columns:62px repeat(var(--day-count,7),minmax(165px,1fr));min-width:var(--timeline-min,1217px)}}
@media(max-width:600px){.field-view-switch{justify-content:stretch}.field-view-switch .mini-button{flex:1}.field-visual-summary{grid-template-columns:1fr 1fr}.field-visual-summary>div{padding:9px 10px}.field-move-panel{grid-template-columns:1fr}.field-move-copy{grid-column:1/-1}.field-timeline-grid{grid-template-columns:58px repeat(var(--day-count,7),minmax(155px,1fr));min-width:var(--timeline-min,1143px)}}
.field-calendar-legend{display:flex;flex-wrap:wrap;gap:7px 14px;align-items:center;margin:0 2px 12px;font-size:.72rem;color:#5C6F92}.field-calendar-legend span{display:inline-flex;align-items:center;gap:6px}.field-calendar-legend span:before{content:"";width:10px;height:10px;border-radius:3px;background:#20a864}.field-calendar-legend .available:before{background:#e8f7ee;border:1px solid #45a873;box-sizing:border-box}.field-calendar-legend .reservation:before{background:#5c72d7}.field-calendar-legend .match:before{background:#e99b35}.field-calendar-legend .rental:before{background:#4c8fbd}.field-calendar-legend .maintenance:before{background:#9b7373}.field-calendar-legend .concession:before{background:#7c5cc4}


/* SocGol V6.6.1.2 · usabilidad avanzada */
.field-calendar-workspace .main-grid{grid-template-columns:minmax(0,1fr)!important}
.field-calendar-workspace .main-content{min-width:0;width:100%}
.field-calendar-workspace .sidebar{display:none!important}
.field-calendar-range-switch{display:flex;gap:8px;justify-content:flex-end;margin:-2px 0 12px}
.field-calendar-range-switch .mini-button.active{background:#0B3F78;color:#fff;border-color:#0B3F78}
.field-visual-delete-form{position:absolute;right:3px;top:3px;margin:0;z-index:8}
.field-visual-delete{border:0;background:rgba(255,255,255,.9);color:#8a3434;border-radius:6px;width:17px;height:17px;line-height:15px;padding:0;cursor:pointer;font-size:.78rem}
.field-visual-delete:hover,.field-visual-move:hover{background:#fff}
.field-settings-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px}
.field-settings-summary::-webkit-details-marker{display:none}.field-settings-summary h2{margin:0}.field-settings-summary>div{display:grid;gap:3px}.field-settings-summary>span{font-size:1.2rem;transition:transform .16s ease}.field-hours-panel[open]>.field-settings-summary>span{transform:rotate(180deg)}
.field-hours-body{padding-top:14px}
.facility-manager-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);gap:12px;margin-bottom:14px;position:sticky;top:74px;z-index:9;box-shadow:0 4px 15px rgba(3,26,61,.06)}
.facility-manager-toolbar label{display:grid;gap:5px;font-size:.8rem;font-weight:700}.facility-manager-toolbar input,.facility-manager-toolbar select{width:100%}
.facility-settings-grid{grid-template-columns:1fr}
.facility-card{padding:0;overflow:clip}.facility-card[hidden]{display:none!important}
.facility-card-summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:14px 16px}.facility-card-summary::-webkit-details-marker{display:none}.facility-card-summary h3{margin:0}.facility-card-summary>div{display:grid;gap:3px}.facility-open-hint{font-size:.72rem;color:#0B3F78;white-space:nowrap}
.facility-card[open]>.facility-card-summary{border-bottom:1px solid #EAF5FF}.facility-card-body{display:grid;gap:14px;padding:14px 16px 16px}.facility-card-body>.facility-diagram{max-width:760px;width:100%}
@media(max-width:820px){.field-calendar-range-switch{justify-content:stretch}.field-calendar-range-switch .mini-button{flex:1}.facility-manager-toolbar{grid-template-columns:1fr;position:static}.facility-card-summary{grid-template-columns:minmax(0,1fr) auto}.facility-open-hint{grid-column:1/-1}}

/* SocGol V6.6.2 · vista mensual e impresión */
.field-calendar-visual-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:-2px 0 12px}.field-calendar-visual-tools .field-calendar-range-switch{margin:0}.field-calendar-print-group{display:flex;align-items:center;gap:8px;margin-left:auto}.field-print-button{white-space:nowrap}.field-month-toolbar{display:grid;grid-template-columns:auto minmax(180px,1fr) auto minmax(170px,220px) auto;gap:10px;align-items:center;margin-bottom:12px}.field-month-toolbar>div{text-align:center;display:grid;gap:2px}.field-month-toolbar small{color:#5C6F92}.field-month-toolbar form,.field-month-toolbar select{width:100%}.field-month-scroll{overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid #D6E5F6;border-radius:14px;background:#fff}.field-month-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1030px}.field-month-weekday{padding:9px 8px;background:#EAF5FF;border-right:1px solid #D6E5F6;border-bottom:1px solid #D6E5F6;text-align:center;font-size:.78rem;font-weight:800}.field-month-day{min-height:150px;padding:6px;border-right:1px solid #EAF5FF;border-bottom:1px solid #EAF5FF;background:#fff;display:grid;grid-template-rows:auto 1fr;gap:5px}.field-month-day.outside-month{background:#F7FBFF;color:#5C6F92}.field-month-day.today{box-shadow:inset 0 0 0 2px #0878F5}.field-month-day>header{display:flex;justify-content:space-between;align-items:center;gap:5px}.field-month-day>header strong{font-size:.84rem}.field-month-day>header span{font-size:.66rem;color:#5C6F92}.field-month-events{display:grid;align-content:start;gap:4px}.field-month-event{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1px 5px;padding:5px 6px;border-radius:7px;background:#eff8f3;border-left:3px solid #20a864;min-width:0}.field-month-event.reservation{background:#f5f7ff;border-left-color:#5c72d7}.field-month-event.type-match{background:#fff5ea;border-left-color:#e99b35}.field-month-event.type-rental{background:#eef8ff;border-left-color:#4c8fbd}.field-month-event.type-maintenance{background:#f6f2f2;border-left-color:#9b7373}.field-month-event.is-concession{background:#f3effc;border-left-color:#7c5cc4}.field-month-event>div{display:flex;gap:2px;align-items:baseline;font-size:.66rem}.field-month-event b{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-month-event small{grid-column:1/-1;font-size:.61rem;color:#5C6F92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-month-event em{grid-column:1/-1;font-style:normal;font-size:.58rem;color:#5C6F92}.field-month-empty{color:#5C6F92;font-size:.68rem}.field-view-switch{flex-wrap:wrap}
@media(max-width:820px){.field-calendar-visual-tools{align-items:stretch}.field-calendar-visual-tools .field-calendar-range-switch{flex:1 1 100%}.field-calendar-print-group{width:100%;justify-content:flex-end}.field-calendar-print-group .field-print-button{flex:0 1 auto;text-align:center}.field-month-toolbar{grid-template-columns:1fr 1fr}.field-month-toolbar>div{grid-column:1/-1;grid-row:1}.field-month-toolbar form{grid-column:1/-1}.field-month-toolbar .field-print-button{grid-column:1/-1;text-align:center}}
@media(max-width:520px){.field-view-switch .mini-button{flex:1 1 30%}.field-month-grid{grid-template-columns:repeat(7,minmax(132px,1fr));min-width:940px}}


.field-availability-panel{border:1px solid #D6E5F6;border-radius:12px;padding:12px;background:#F7FBFF;display:grid;gap:9px}
.field-availability-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.field-availability-state{font-size:.78rem;font-weight:800;padding:4px 8px;border-radius:999px;background:#EAF5FF;color:#5C6F92}
.field-availability-state[data-state="free"]{background:#e8f7ee;color:#14723f}
.field-availability-state[data-state="busy"],.field-availability-state[data-state="error"]{background:#fff0f0;color:#9a3434}
.field-availability-state[data-state="checking"]{background:#eef4ff;color:#4c5f9f}
.field-availability-busy,.field-availability-suggestions{display:grid;gap:6px}
.field-availability-busy-list{display:flex;gap:6px;flex-wrap:wrap}
.field-availability-busy-list span{font-size:.72rem;padding:5px 7px;border-radius:8px;background:#fff;border:1px solid #EAF5FF}
.field-availability-slot-list{display:flex;gap:6px;flex-wrap:wrap}
.field-availability-slot-list .mini-button{font-size:.72rem}


/* V6.10.8.25 · reservas semanales multidía */
.field-weekday-picker{margin:0;padding:12px 14px;border:1px solid #D6E5F6;border-radius:12px;background:#F7FBFF;min-width:0}
.field-weekday-picker legend{padding:0 6px;font-size:.82rem;font-weight:800;color:#071B43}
.field-weekday-options{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:7px}
.field-weekday-option{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #D0E6FB;border-radius:999px;background:#fff;color:#0B3F78;font-size:.78rem;font-weight:800;cursor:pointer}
.field-weekday-option:has(input:checked){background:#EAF5FF;border-color:#0878F5;color:#0458C9;box-shadow:0 0 0 1px rgba(8,120,245,.08)}
.field-weekday-option input{width:auto;margin:0;accent-color:#0878F5}
@media(max-width:600px){.field-weekday-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.field-weekday-option{justify-content:flex-start}}


/* V6.10.8.28 · festivos y cierres del centro */
.field-holiday-create{margin-top:4px}.field-holiday-list{display:grid;gap:9px;margin-top:18px}.field-holiday-row{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.field-holiday-row>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;list-style:none}.field-holiday-row>summary::-webkit-details-marker{display:none}.field-holiday-row>summary>div{display:grid;gap:3px;min-width:0}.field-holiday-row>summary strong{color:var(--text)}.field-holiday-row>summary span[translate="no"]{font-weight:800;color:#0b3f78}.field-holiday-row>summary small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-holiday-row.is-past{opacity:.72}.field-holiday-edit{display:grid;gap:10px;padding:14px 15px;border-top:1px solid var(--line);background:#f7fbff}.field-holiday-edit>form:last-child{justify-self:end}.field-holiday-empty{padding-top:12px}.field-timeline-day-head.holiday{background:#fff4dc}.field-timeline-day-head.holiday small{display:block;max-width:100%;font-size:9px;color:#7a5b09;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-month-day.holiday{background:linear-gradient(180deg,#fffaf0,#fff)}.field-month-day.holiday header small{display:block;font-size:9px;line-height:1.2;color:#7a5b09;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-month-day.holiday .field-month-empty{color:#7a5b09;font-weight:800}
@media(max-width:700px){.field-holiday-row>summary{grid-template-columns:minmax(0,1fr) auto}.field-holiday-row>summary .facility-open-hint{display:none}}

.field-day-column.holiday{background:linear-gradient(180deg,#fffaf0,#fff)}.field-day-column.holiday>header{background:#fff4dc}.field-day-column.holiday>header small,.field-day-column.holiday .field-day-empty{color:#7a5b09;font-weight:800}

/* V6.10.8.29 · catálogo maestro de festivos oficiales */
.field-official-holidays-card{border-left:4px solid #0878F5}.field-official-holiday-list{display:grid;gap:8px;margin-top:10px}.field-official-holiday-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #D6E5F6;border-radius:11px;background:#F7FBFF}.field-official-holiday-row>div{display:grid;gap:3px;min-width:0}.field-official-holiday-row strong{font-size:.84rem;color:#071B43}.field-official-holiday-row small{font-size:.72rem;color:#5C6F92}.official-holiday-admin-card,.official-holiday-import-card{border-top:3px solid #0878F5}.official-holiday-import-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.official-holiday-import-form label{display:grid;gap:6px;min-width:min(100%,360px);flex:1}.official-holiday-filters{display:grid;grid-template-columns:130px 220px minmax(220px,1fr) auto;gap:10px;align-items:end;margin-bottom:14px}.official-holiday-filters label{display:grid;gap:5px;font-size:.8rem;font-weight:700}.official-holiday-list{display:grid;gap:8px}.official-holiday-row{border:1px solid #D6E5F6;border-radius:14px;background:#fff;overflow:hidden}.official-holiday-row>summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px 14px;cursor:pointer;list-style:none}.official-holiday-row>summary::-webkit-details-marker{display:none}.official-holiday-row>summary>div{display:grid;gap:3px;min-width:0}.official-holiday-row>summary strong{color:#071B43}.official-holiday-row>summary small{color:#5C6F92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.official-holiday-edit{display:grid;gap:10px;padding:14px;border-top:1px solid #D6E5F6;background:#F7FBFF}.official-holiday-edit>form:last-child{justify-self:end}.official-holiday-form [hidden]{display:none!important}.official-holiday-form code,.official-holiday-import-card code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#EAF5FF;padding:2px 5px;border-radius:6px;color:#0B3F78}
@media(max-width:820px){.official-holiday-filters{grid-template-columns:1fr 1fr}.official-holiday-filters label:nth-child(3),.official-holiday-filters .button{grid-column:1/-1}.official-holiday-row>summary{grid-template-columns:minmax(0,1fr) auto}.official-holiday-row>summary .facility-open-hint{display:none}.field-official-holiday-row{align-items:flex-start}}
@media(max-width:520px){.official-holiday-filters{grid-template-columns:1fr}.official-holiday-filters label,.official-holiday-filters label:nth-child(3),.official-holiday-filters .button{grid-column:auto}.official-holiday-import-form{display:grid}.official-holiday-import-form .button{width:100%}}


/* V6.10.8.30 · paginación festivos, edición visible y excepción puntual */
.field-official-holiday-pagination,.official-holiday-pagination{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #D6E5F6;font-size:.78rem;font-weight:750;color:#5C6F92}
.field-holiday-exception{align-items:flex-start!important;padding:11px 12px;border:1px solid #F0D58A;border-radius:11px;background:#FFF9EA}.field-holiday-exception>span{display:grid;gap:2px}.field-holiday-exception small{display:block;color:#7A5B09;font-weight:500;line-height:1.35}
.field-availability-state[data-state="warning"]{background:#FFF4DC;color:#7A5B09}
.facility-editor[open]{border-top:1px solid #EAF5FF;padding-top:4px}.facility-editor[open]>summary{color:#0878F5}

/* V6.10.8.31 · excepción festivo visible + fecha única */
.field-holiday-exception-wrap[hidden]{display:none!important}
.field-holiday-exception-wrap{display:block;margin-top:2px}
.field-holiday-exception-wrap .field-holiday-exception{margin:0;width:100%;box-sizing:border-box}
.field-month-day>header{gap:7px;flex-wrap:wrap}
.field-month-day>header>strong{white-space:nowrap}
.field-month-day.holiday>header small{flex:1 1 100%}


/* SocGol V6.13.47.2 · vista diaria operativa */
.field-daily-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,350px);gap:14px;align-items:start;margin-bottom:12px}
.field-daily-workspace[hidden]{display:none!important}.field-daily-planner{min-width:0}.field-daily-day-nav{display:grid;gap:9px;margin-bottom:10px;padding:11px 12px;border:1px solid #D6E5F6;border-radius:13px;background:#F7FBFF}.field-daily-day-nav-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.field-daily-day-nav-copy small{color:#5C6F92}.field-daily-day-switch{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.field-daily-day-switch .mini-button{display:grid;gap:1px;justify-items:center;min-width:0;padding:7px 5px}.field-daily-day-switch .mini-button span{font-size:.73rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;max-width:100%}.field-daily-day-switch .mini-button small{font-size:.63rem;color:inherit;opacity:.78}.field-daily-day-switch .mini-button.active{background:#0B3F78;color:#fff;border-color:#0B3F78}
.field-daily-status{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 2px 8px}.field-daily-status>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.field-daily-status>div>span{font-size:.72rem;color:#5C6F92}.field-daily-status small{color:#5C6F92}.field-daily-status-closed{padding:3px 7px;border-radius:999px;background:#fff0f0;color:#9a3434!important;font-weight:800}
.field-daily-timeline-scroll{overflow:auto;overscroll-behavior:contain;border:1px solid #D6E5F6;border-radius:14px;background:#fff;max-height:calc(100vh - 245px);min-height:420px}.field-daily-timeline-grid{display:grid;grid-template-columns:68px repeat(var(--facility-count,1),minmax(150px,1fr));min-width:var(--daily-min,520px);position:relative}.field-daily-facility-head{position:sticky;top:0;z-index:6;background:#F7FBFF;border-bottom:1px solid #D6E5F6;padding:8px 7px;text-align:center;display:grid;gap:1px}.field-daily-facility-head strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-daily-facility-head small{font-size:.62rem;color:#5C6F92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-daily-timeline-grid>.field-time-head{position:sticky;top:0;left:0;z-index:9}.field-daily-timeline-grid>.field-time-axis{position:sticky;left:0;z-index:5}
.field-daily-facility-column{position:relative;grid-row:2;background:repeating-linear-gradient(to bottom,#fff 0,#fff calc(var(--slot-height) - 1px),#EAF5FF calc(var(--slot-height) - 1px),#EAF5FF var(--slot-height));border-right:1px solid #EAF5FF;min-width:0}.field-daily-facility-column.closed{background:repeating-linear-gradient(135deg,#F7FBFF 0,#F7FBFF 8px,#EAF5FF 8px,#EAF5FF 16px)}.field-daily-free-slot{display:flex;align-items:center;justify-content:center;background:rgba(232,247,238,.68)!important;border-top:1px solid rgba(69,168,115,.18)!important;color:#14723f;font-size:.61rem;font-weight:800;letter-spacing:.01em}.field-daily-free-slot:hover{background:rgba(215,242,226,.95)!important;outline:1px solid rgba(69,168,115,.42);outline-offset:-1px}.field-daily-free-slot.is-readonly{position:absolute;left:0;right:0;z-index:1;pointer-events:none}.field-daily-unavailable-slot{position:absolute;left:0;right:0;z-index:0;background:rgba(214,229,246,.48);border-top:1px solid rgba(92,111,146,.08)}.field-daily-event{z-index:5;padding-left:6px}.field-daily-event strong{font-size:.67rem}.field-daily-event span{font-size:.59rem}
.field-daily-map-panel{position:sticky;top:76px;max-height:calc(100vh - 96px);overflow:auto;display:grid;gap:10px}.field-daily-map-heading{display:grid;gap:4px}.field-daily-map-heading h3{margin:0;font-size:1rem}.field-daily-map-heading small{color:#5C6F92}.field-daily-map-grid{display:grid;gap:10px}.field-daily-map-card{display:grid;gap:7px;padding:9px;border:1px solid #D6E5F6;border-radius:11px;background:#fff}.field-daily-map-card .field-map-card-head{align-items:center}.field-daily-map-card .field-map-card-head strong{font-size:.76rem}.field-daily-map-card .field-map-card-head small{font-size:.64rem}.field-daily-map-card .facility-diagram{aspect-ratio:16/8;border-width:2px}.field-daily-map-card .facility-zone span{font-size:.58rem;padding:2px 5px}
@media(max-width:1120px){.field-daily-workspace{grid-template-columns:minmax(0,1fr) 285px}.field-daily-map-panel{top:70px}.field-daily-timeline-scroll{max-height:620px}}
@media(max-width:900px){.field-daily-workspace{grid-template-columns:1fr}.field-daily-map-panel{position:static;max-height:none}.field-daily-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field-daily-timeline-scroll{max-height:620px}}
@media(max-width:620px){.field-daily-day-switch{display:flex;overflow-x:auto;padding-bottom:2px}.field-daily-day-switch .mini-button{min-width:74px}.field-daily-map-grid{grid-template-columns:1fr}.field-calendar-print-group{justify-content:stretch}.field-calendar-print-group .field-print-button{flex:1 1 0;font-size:.72rem;padding-inline:7px}.field-daily-timeline-scroll{min-height:360px;max-height:560px}}

/* SocGol V6.13.47.3 · reservas legibles en vista diaria */
.field-daily-timeline-grid{grid-template-columns:68px repeat(var(--facility-count,1),minmax(210px,1fr))}
.field-daily-event{overflow:visible;padding:5px 29px 5px 7px;align-content:stretch}
.field-daily-event:hover,.field-daily-event:focus-within{z-index:25}
.field-daily-event-content{display:grid;align-content:start;gap:2px;min-width:0;overflow:hidden}
.field-daily-event-meta{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap;overflow:hidden}
.field-daily-event-meta .field-visual-event-time{flex:0 0 auto;font-size:.62rem}
.field-daily-event-type{display:inline-flex;align-items:center;min-width:0;max-width:100%;padding:1px 5px;border-radius:999px;background:rgba(255,255,255,.72);color:#31527d!important;font-size:.53rem!important;font-weight:800;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.field-daily-event strong{display:block;min-width:0;font-size:.69rem;line-height:1.22;color:#071B43}
.field-daily-event-zone{display:block;min-width:0;font-size:.59rem!important;line-height:1.18;color:#5C6F92!important}
.field-daily-event.is-tight .field-daily-event-zone{display:none}
.field-daily-event.is-compact{padding-top:3px;padding-bottom:3px}
.field-daily-event.is-compact .field-daily-event-content{display:flex;align-items:center;gap:5px;height:100%}
.field-daily-event.is-compact .field-daily-event-meta{display:block;flex:0 0 auto}
.field-daily-event.is-compact .field-daily-event-type,.field-daily-event.is-compact .field-daily-event-zone{display:none}
.field-daily-event.is-compact strong{font-size:.62rem;line-height:1.15}
.field-daily-actions{position:absolute;top:4px;right:4px;z-index:12}
.field-daily-actions>summary{display:flex;align-items:center;justify-content:center;width:21px;height:21px;padding:0;border:1px solid rgba(7,27,67,.12);border-radius:7px;background:rgba(255,255,255,.94);color:#071B43;font-size:.92rem;font-weight:900;line-height:1;cursor:pointer;list-style:none;box-shadow:0 1px 2px rgba(3,26,61,.08)}
.field-daily-actions>summary::-webkit-details-marker{display:none}
.field-daily-actions>summary:hover,.field-daily-actions[open]>summary{background:#fff;border-color:#AFCBE9;color:#0878F5}
.field-daily-actions-menu{position:absolute;top:25px;right:0;z-index:30;display:grid;gap:3px;min-width:132px;padding:5px;border:1px solid #D6E5F6;border-radius:10px;background:#fff;box-shadow:0 10px 24px rgba(3,26,61,.18)}
.field-daily-action{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;width:100%;min-height:30px;padding:5px 8px;border:0;border-radius:7px;background:transparent;color:#071B43;font:inherit;font-size:.68rem;font-weight:750;text-align:left;white-space:nowrap;cursor:pointer}
.field-daily-action:hover{background:#EAF5FF;color:#075FC6}
.field-daily-action.danger{color:#9A3434}
.field-daily-action.danger:hover{background:#FFF0F0;color:#8A2525}
.field-daily-action-form{margin:0}
.field-daily-action-form .field-daily-action{margin:0}
@media(max-width:900px){.field-daily-timeline-grid{grid-template-columns:68px repeat(var(--facility-count,1),minmax(200px,1fr))}}
.field-daily-action span{font-size:.68rem!important}.field-daily-action>span:first-child{font-size:.78rem!important;text-align:center}
