@font-face{font-family:"ical-plugin-font";font-weight:normal;font-style:normal;font-display:swap;src:url(../fonts/ical-plugin-font.eot),url(../fonts/ical-plugin-font.woff) format("woff"),url(../fonts/ical-plugin-font.ttf) format("truetype"),url(../fonts/ical-plugin-font.eot?#iefix) format("embedded-opentype"),url(../images/ical-plugin-font.svg#ical-plugin-font) format("svg")}.fi:before{font-family:"ical-plugin-font";font-style:initial}.fi-chevron-left:before{content:""}.fi-chevron-right:before{content:""}/*!
 * IRIS Interactive
 *
 * NOTICE OF LICENSE
 *
 * This source file is no subject to a specific license
 * but it belongs to the company IRIS Interactive.
 * You can contact IRIS Interactive at the following
 * address: contact@iris-interactive.fr
 *
 * @author      Vincent RIBANO
 * @date        28/07/2025
 * @copyright   Copyright (c) 2002-2025 IRIS Interactive, Inc. (http://www.iris-interactive.fr)
 */:root{--ical-primary-color: #000;--ical-primary-hover: #fff;--ical-background-color: transparent;--ical-white: #fff;--ical-text-color: #333;--ical-border-color: transparent;--ical-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);--ical-border-radius: 5px}/*!
 * IRIS Interactive
 *
 * NOTICE OF LICENSE
 *
 * This source file is no subject to a specific license
 * but it belongs to the company IRIS Interactive.
 * You can contact IRIS Interactive at the following
 * address: contact@iris-interactive.fr
 *
 * @author      Vincent RIBANO
 * @date        28/07/2025
 * @copyright   Copyright (c) 2002-2025 IRIS Interactive, Inc. (http://www.iris-interactive.fr)
 */.ical-calendar-container{margin:auto;max-width:600px}.calendar-header .calendar-controls{display:flex;align-items:center;justify-content:space-between;padding:0 20px;gap:20px}.calendar-header .calendar-controls .nav-button{display:flex;align-items:center;justify-content:center;background:var(--ical-background-color);border:2px solid var(--ical-primary-color);width:60px;min-width:60px;height:60px;border-radius:60px;cursor:pointer;font-size:18px;font-weight:bold;transition:background-color .25s ease-in-out}.calendar-header .calendar-controls .nav-button:before{font-size:1rem}@media screen and (max-width: 650px){.calendar-header .calendar-controls .nav-button:before{font-size:0.75rem}}.calendar-header .calendar-controls .nav-button.prev-month:before{content:"";font-family:"ical-plugin-font"}.calendar-header .calendar-controls .nav-button.next-month:before{content:"";font-family:"ical-plugin-font"}.calendar-header .calendar-controls .nav-button:hover{background:var(--ical-primary-color) !important;color:var(--ical-primary-hover) !important;border:2px solid var(--ical-primary-color)}.calendar-header .calendar-controls .nav-button:disabled{background:#ccc;cursor:not-allowed}.calendar-header .calendar-controls .current-month{font-size:24px;font-weight:700;color:var(--ical-primary-color);text-align:center}.calendar-header .ical-input{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.calendar-header .ical-input label{font-weight:500;color:var(--ical-text-color)}.calendar-header .ical-input input{flex:1;min-width:300px;padding:8px 12px;border:1px solid var(--ical-border-color);border-radius:4px;font-size:14px}.calendar-header .ical-input input:focus{outline:none;border-color:var(--ical-primary-color);box-shadow:0 0 0 2px rgba(44,90,160,.2)}.calendar-header .ical-input button{background:var(--ical-primary-color);color:var(--ical-white);border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .25s ease-in-out}.calendar-header .ical-input button:hover{background:var(--ical-primary-color);color:var(--ical-primary-hover)}.calendar-header .ical-input button:disabled{background:#ccc;cursor:not-allowed}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}.calendar-legend .legend-item{display:flex;align-items:center;gap:8px;font-size:14px}.calendar-legend .legend-item .legend-color{width:20px;height:20px;border:1px solid var(--ical-border-color);border-radius:3px}.legend-color.nous-consulter,.calendar-day.nous-consulter{background-color:skyblue}.legend-color.libre,.calendar-day.libre{background-color:#90ee90}.legend-color.ferme,.calendar-day.ferme{background-color:#787878}.legend-color.complet,.calendar-day.complet{background-color:#ffb6c1}.legend-color.peu-de-place,.calendar-day.peu-de-place{background-color:#ffba3b}.calendar-container{box-shadow:var(--ical-shadow);border-radius:var(--ical-border-radius);margin-bottom:20px}.calendar-grid{display:grid;background-color:var(--ical-background-color);grid-template-columns:repeat(7, 1fr);gap:10px;padding:20px;border:1px solid var(--ical-border-color);border-radius:var(--ical-border-radius);overflow:hidden;transition:0.2s all}.calendar-grid.is-loading{opacity:.25}.calendar-header-row{display:contents}.calendar-header-row .day-header{padding:12px;text-align:center;font-weight:600;font-size:14px}.calendar-days{display:contents}.calendar-days .spinner{grid-column:span 7;width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid var(--ical-primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:40px auto}.calendar-day{background:var(--ical-white);color:var(--ical-text-color);min-height:45px;border-radius:var(--ical-border-radius);padding:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative;font-weight:500}.calendar-day.other-month{color:#ccc;background:#f8f9fa}.calendar-day.today{border:2px solid var(--ical-primary-color);font-weight:bold}.calendar-info{margin-top:20px;text-align:center}.calendar-info #lastUpdate{font-weight:500;margin-bottom:10px;color:var(--ical-text-color)}.calendar-info .disclaimer{font-size:12px;font-style:italic;line-height:1.25}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);animation:fadeIn .25s ease-in-out}.modal.show{display:flex;align-items:center;justify-content:center}.modal-content{background:var(--ical-white);padding:20px;border-radius:var(--ical-border-radius);max-width:500px;width:90%;max-height:80vh;overflow-y:auto;position:relative;animation:slideIn .25s ease-in-out}.modal-content .close{position:absolute;top:10px;right:15px;font-size:24px;cursor:pointer;color:#666}.modal-content .close:hover{color:var(--ical-text-color)}.modal-content h3{margin-bottom:15px;color:var(--ical-primary-color)}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideIn{from{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@media(max-width: 768px){.container{padding:10px}.calendar-header .calendar-controls{gap:10px}.calendar-header .calendar-controls .current-month{font-size:20px}.calendar-header .calendar-controls .nav-button{width:40px;min-width:40px;height:40px}.calendar-header .ical-input{flex-direction:column;align-items:stretch}.calendar-header .ical-input input{min-width:auto}.calendar-legend{gap:10px}.calendar-legend .legend-item{font-size:12px}.calendar-day{min-height:50px;font-size:14px}.day-header{padding:8px !important;font-size:12px !important}}@media(max-width: 480px){.calendar-grid{gap:5px}.calendar-day{min-height:30px;padding:4px;font-size:12px}.day-header{padding:6px !important;font-size:11px !important}}
