/*
 * Les 7 Royaumes — Portail
 * Shortcode [7r_agenda] — Styles
 *
 * Fichier source  : wp-content/7r/events/public/agenda.css
 * URL publique    : /wp-content/7r/events/public/agenda.css
 * Charge depuis   : wp-content/mu-plugins/7r-events.php (hook wp_enqueue_scripts r7_agenda_enqueue_assets)
 * Cache-busting   : automatique via filemtime() dans wp_enqueue_style
 *
 * Migration 2026-05-13 : extrait du bloc <style> inline de r7_render_agenda_shortcode().
 * Le PHP n'a plus que la logique. Modifier ce fichier = push d'un .css seul = pas d'OPcache.
 *
 * Convention 7R : tout asset statique sous wp-content/7r/<feature>/public/.
 *                 Voir mu-plugins/7r-loader.php pour l'archi globale.
 */


    /* Masquer le bandeau page-hero Kadence (le H1 reste dans le DOM pour le SEO).
       Pattern identique a r7h-hub.css lignes 13-14. Scope: ce <style> n'est rendu
       que sur la page contenant [7r_agenda], donc les selecteurs globaux sont safe. */
    .entry-header.page-title{display:none !important}
    .entry-header.page-title,.entry-title{display:none !important;visibility:hidden !important;height:0 !important;overflow:hidden !important;position:absolute !important;clip:rect(0,0,0,0) !important}

    /* Emojis natifs - forcer l'affichage des emojis de l'OS */
    /* Breadcrumb */
    .r7-breadcrumb{font-size:.85em;color:#666;margin-bottom:15px;padding:8px 0;display:none}
    .r7-breadcrumb a{color:#AE2A20;text-decoration:none}
    .r7-breadcrumb a:hover{text-decoration:underline}
    .r7-breadcrumb .separator{margin:0 8px;color:#999}
    .r7-breadcrumb .current{color:#333;font-weight:500}
    
    /* Header Agenda */
    .r7-agenda-header{margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}
    .r7-agenda-header h2{margin:0 0 8px;font-size:1.8em;font-weight:700;color:#333}
    .r7-agenda-header .r7-agenda-subtitle{margin:0;color:#666;font-size:1em}
    
    /* Container principal */
    .r7-agenda-container{font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;max-width:1200px;margin:0 auto;padding:20px;display:grid;grid-template-columns:1fr 350px;gap:40px;letter-spacing:normal;word-spacing:normal}
    .r7-agenda-main{order:1}
    .r7-agenda-sidebar{order:2}
    .r7-agenda-main h2{margin:0 0 15px;font-size:1.4em;font-weight:600;color:#333}
    .r7-agenda-intro{color:#555;line-height:1.6;margin-bottom:25px}
    .r7-event-list{margin:0;transition:opacity .2s ease;position:relative}
    .r7-event-list.loading{pointer-events:none;min-height:200px}
    .r7-event-list.loading>*{opacity:.3}
    .r7-event-list.loading::before{content:'';position:fixed;top:25%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#AE2A20;border-radius:50%;animation:r7-spin .7s linear infinite;z-index:100}
    .r7-event-card{background:#fff;border-radius:8px;border:1px solid #ddd;margin-bottom:15px;transition:box-shadow .2s,transform .2s;position:relative}
    .r7-event-card.r7-event-special{box-shadow:0 4px 12px rgba(0,0,0,.08)}
    .r7-event-card.r7-event-special:hover{box-shadow:0 6px 20px rgba(0,0,0,.15);transform:translateY(-2px)}
    .r7-event-card.r7-event-regular{border:1px solid #eee}
    .r7-event-card.r7-event-regular:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}
    .r7-event-card.complet{pointer-events:none;cursor:default}
    .r7-event-card.complet a{pointer-events:none}
    .r7-event-card a{text-decoration:none;color:inherit;display:flex;gap:20px;padding:20px}
    .r7-event-date-box{background:#AE2A20;color:#fff;padding:12px 15px;border-radius:6px;text-align:center;min-width:65px;flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between;position:relative}
    .r7-event-date-box .day{font-size:1.6em;font-weight:700;display:block;line-height:1}
    .r7-event-date-box .month{font-size:.75em;text-transform:uppercase;letter-spacing:.5px}
    .r7-event-date-box .weekday{position:absolute;bottom:10px;right:5px;font-size:.85em;font-weight:700;text-transform:uppercase;letter-spacing:1px;writing-mode:vertical-rl;transform:rotate(180deg);opacity:1}
    .r7-event-info{flex:1;min-width:0}
    .r7-event-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
    .r7-event-title-row h4{margin:0;font-weight:600;color:#333;font-size:1.05em;flex:1;min-width:0}
    .r7-event-star{font-size:1.1em;flex-shrink:0}
    .r7-event-fire{font-size:.85em;flex-shrink:0;color:#e25822;font-weight:500;white-space:nowrap}
    .r7-event-meta{margin:0 0 5px;color:#666;font-size:.9em;letter-spacing:normal;word-spacing:normal}
    .r7-agenda-container p.r7-event-meta{margin-bottom:16px}
    .r7-event-price-inline{color:#666;white-space:nowrap;letter-spacing:normal;word-spacing:normal}
    .r7-event-price-inline.free{color:#a1c600}
    .r7-event-desc{margin:0 0 8px;color:#888;font-size:.85em;line-height:1.4}
    .r7-event-tags{display:flex;flex-wrap:wrap;gap:6px}
    .r7-event-tag{display:inline-block;color:#fff;padding:3px 10px;border-radius:4px;font-size:.8em;font-weight:500}
    .r7-grouped-card{background:#fff;border-radius:8px;border:1px solid #eee;margin-bottom:15px;padding:20px;display:flex;gap:20px}
    .r7-grouped-card .r7-event-date-box{align-self:stretch;padding-top:15px;min-height:120px}
    .r7-grouped-content{flex:1}
    .r7-grouped-title{font-weight:600;color:#333;margin:0 0 10px;font-size:1.05em}
    .r7-grouped-desc{color:#888;font-size:.85em;font-style:italic;margin:0 0 12px;line-height:1.4}
    .r7-grouped-desc-bottom{color:#333;font-size:.85em;margin:12px 0 0;line-height:1.4}
    .r7-grouped-desc-bottom strong{color:#333}
    .r7-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:16px}
    .r7-mini-grid.r7-grid-few{grid-template-columns:repeat(2,minmax(120px,222px))}
    .r7-mini-card{background:#f9f9f9;border:1px solid #ddd;border-radius:6px;padding:10px 14px;text-decoration:none;color:inherit;transition:all .2s;text-align:center;max-width:222px}
    .r7-mini-card:hover{border-color:#AE2A20;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)}
    .r7-mini-card-title{font-weight:600;font-size:.9em;color:#333;margin-bottom:3px}
    .r7-mini-card-time{font-size:.75em;color:#666;margin-bottom:2px;white-space:nowrap}
    .r7-mini-card-places{font-size:.75em;color:#888;margin-bottom:2px}
    .r7-mini-card-places.complet{color:#AE2A20;font-weight:600}
    .r7-mini-card.complet{pointer-events:none;cursor:default}
    .r7-mini-card-times .complet{color:#AE2A20;font-weight:600}
    .r7-mini-card-meta{font-size:.75em;color:#666}
    .r7-mini-card-meta.complet{color:#AE2A20;font-weight:600}
    .r7-event-complet-badge{background:#AE2A20;color:#fff;font-size:.7em;padding:3px 8px;border-radius:4px;margin-left:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
    .r7-event-meta .complet{color:#AE2A20;font-weight:600}
    .r7-grouped-tags{display:flex;flex-wrap:wrap;gap:6px}
    .r7-init-by-game{padding:20px}
    .r7-grouped-content-full{width:100%}
    .r7-date-tiles-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
    .r7-date-tile{background:#AE2A20;border-radius:6px;padding:10px 14px;min-width:70px;text-decoration:none;color:#fff;transition:all .2s;text-align:center;display:flex;flex-direction:column;gap:4px}
    .r7-date-tile:hover{background:#8a211a;box-shadow:0 2px 8px rgba(0,0,0,.15);transform:translateY(-1px)}
    .r7-date-tile-date{display:flex;flex-direction:column;align-items:center}
    .r7-date-tile-day{font-size:1.3em;font-weight:700;line-height:1}
    .r7-date-tile-month{font-size:.7em;text-transform:uppercase;letter-spacing:.5px}
    .r7-date-tile-times{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:4px;border-top:1px solid rgba(255,255,255,.3);padding-top:4px}
    .r7-date-tile-time{font-size:.75em;opacity:.9}
    .r7-date-tile-price{font-size:.7em;opacity:.85;border-top:1px solid rgba(255,255,255,.3);padding-top:4px;margin-top:4px}
    .r7-grouped-by-title{padding:20px}
    .r7-agenda-sidebar .filter-box{background:#f5f5f5;border-radius:8px;padding:20px;margin-bottom:20px}
    @media(min-width:769px){.r7-agenda-sidebar{display:flex;flex-direction:column}.r7-agenda-sidebar .info-box{order:-1}.r7-agenda-sidebar .r7-search-wizard-box{order:1}}
    .r7-agenda-sidebar h4{margin:0 0 15px;font-size:1em;font-weight:600;color:#333}
    .r7-agenda-sidebar ul{list-style:none;padding:0;margin:0}
    .r7-agenda-sidebar li{padding:8px 0;border-bottom:1px solid #ddd}
    .r7-agenda-sidebar li:last-child{border:none}
    .r7-agenda-sidebar a{color:#333;text-decoration:none;display:flex;justify-content:space-between;align-items:center}
    .r7-agenda-sidebar a:hover{color:#AE2A20}
    .r7-agenda-sidebar a.active{font-weight:600}
    .r7-agenda-sidebar .count{color:#999;font-size:.85em;background:#e8e8e8;padding:2px 8px;border-radius:10px}
    .r7-agenda-sidebar .info-box p{margin:0 0 10px;font-size:.85em;color:#666;line-height:1.5}
    .r7-agenda-sidebar .info-box a{color:#AE2A20;text-decoration:none;word-break:break-all}
    .r7-agenda-sidebar .info-box a:hover{text-decoration:underline}
    .r7-discord-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;background:#e8e8e8!important;color:#555!important;padding:12px 24px!important;border-radius:8px!important;font-weight:600!important;font-size:.95em!important;text-decoration:none!important;transition:background .2s}
    .r7-discord-btn svg{position:static!important;margin:0!important;flex-shrink:0;color:#5865F2!important;fill:#5865F2!important}
    .r7-discord-btn span{position:static!important;margin:0!important}
    .r7-discord-btn:hover{background:#ddd!important;text-decoration:none!important}
    .r7-gift-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#f5f5f5;border:none;border-radius:8px;color:#333;font-weight:600;font-size:.9em;text-decoration:none;transition:all .2s;margin-bottom:20px}
    .r7-gift-btn:hover{background:#e8e8e8;text-decoration:none}
    .r7-clear-filters{display:inline-block;margin-top:10px;color:#AE2A20;font-size:.85em}
    .r7-no-events{padding:50px 30px;text-align:center;color:#666;background:#f9f9f9;border-radius:8px}
    .r7-end-of-list{padding:30px 25px;text-align:center;background:linear-gradient(180deg,transparent 0%,#f9f9f9 30%);border-radius:0 0 8px 8px;margin-top:10px}
    .r7-end-of-list-msg{font-size:.9em;color:#888;line-height:1.6;margin:0}
    .r7-loadmore-hidden{display:none!important}
    .r7-loadmore-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px;margin:10px 0;background:#fff;border:1px dashed #ccc;border-radius:8px;color:#666;font-weight:600;font-size:.95em;cursor:pointer;transition:all .2s;font-family:inherit;-webkit-tap-highlight-color:transparent}
    @media(hover:hover){.r7-loadmore-btn:hover{border-color:#999;color:#333;background:#fafafa}}
    .r7-loadmore-btn:active{background:#f0f0f0;border-color:#999}
    .r7-loadmore-btn:focus{outline:none}
    .r7-loadmore-btn .r7-loadmore-count{font-weight:400;color:#999;font-size:.85em}
    .r7-hidden{display:none!important}
    .r7-ajax-spinner{display:flex;align-items:center;justify-content:center;padding:40px 0;gap:10px;color:#888;font-size:.95em}
    .r7-ajax-spinner::before{content:'';width:22px;height:22px;border:3px solid #ddd;border-top-color:#AE2A20;border-radius:50%;animation:r7spin .6s linear infinite}
    @keyframes r7spin{to{transform:rotate(360deg)}}
    .r7-filter-dot{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:8px}
    .r7-month-box{background:#AE2A20;border-radius:6px;padding:12px 15px;display:flex;align-items:center;justify-content:center;min-width:65px;flex-shrink:0}
    .r7-month-name{color:#fff;font-weight:700;font-size:1.1em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:1px}
    .r7-mini-card-tcg{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 14px}
    .r7-mini-card-tcg .r7-mini-card-day{font-weight:600;font-size:.9em;color:#333;margin-bottom:3px;white-space:nowrap}
    .r7-mini-card-tcg .r7-mini-card-times{display:flex;flex-direction:column;align-items:center;gap:0;font-size:.75em;color:#666;flex:1;justify-content:center}
    .r7-mini-card-tcg .r7-mini-card-price{font-size:.75em;color:#666;margin-top:auto;padding-top:4px}
    .r7-mini-card-tcg .r7-mini-card-title{font-weight:600;font-size:.9em;color:#333;min-height:2.4em;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}
    .r7-mini-card-init .r7-mini-card-times span{border-top:1px solid #ddd;padding-top:2px;margin-top:2px}
    .r7-mini-card-init .r7-mini-card-times span:first-child{border-top:none;padding-top:0;margin-top:0}
    .r7-mini-card-inits .r7-mini-card-times span{border-top:1px solid #ddd;padding-top:2px;margin-top:2px}
    .r7-mini-card-inits .r7-mini-card-times span:first-child{border-top:none;padding-top:0;margin-top:0}
    .r7-grouped-by-title .r7-mini-grid{max-height:200px;overflow:hidden;transition:max-height .3s ease}
    .r7-grouped-by-title .r7-mini-grid.r7-expanded{max-height:none}
    .r7-show-more-tiles{background:none!important;border:none!important;color:#AE2A20!important;font-size:.85em;cursor:pointer;padding:8px 0 0;margin:0;display:block;text-align:right;width:100%;text-decoration:underline;box-shadow:none!important;transition:none!important}
    .r7-show-more-tiles:hover,.r7-show-more-tiles:focus,.r7-show-more-tiles:active{color:#AE2A20!important;background:none!important;outline:none!important;box-shadow:none!important;transform:none!important}
    .r7-grouped-by-title{padding:20px;overflow:hidden;display:flex;gap:20px}
    .r7-grouped-by-title .r7-grouped-content{padding:0}
    .r7-grouped-by-title .r7-event-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}
    .r7-grouped-by-title .r7-grouped-title{margin:0}
    .r7-grouped-special{box-shadow:0 4px 12px rgba(0,0,0,.08)}
    .r7-grouped-special:hover{box-shadow:0 6px 20px rgba(0,0,0,.15)}
    .r7-date-filter{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9em;color:#333;background:#fff;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
    .r7-date-filter:hover{border-color:#AE2A20}
    .r7-date-filter:focus{outline:none;border-color:#AE2A20;box-shadow:0 0 0 2px rgba(174,42,32,.1)}
    .r7-calendar-wrap{margin-top:12px;overflow:hidden}
    .r7-calendar-wrap .flatpickr-calendar{width:100%!important;box-shadow:none!important;border:1px solid #ddd;border-radius:6px;font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif!important;overflow:hidden}
    .r7-calendar-wrap .flatpickr-calendar *{scrollbar-width:none;-ms-overflow-style:none}
    .r7-calendar-wrap .flatpickr-calendar *::-webkit-scrollbar{display:none;width:0;height:0}
    .r7-calendar-wrap .flatpickr-day.selected{background:#AE2A20!important;border-color:#AE2A20!important}
    .r7-calendar-wrap .flatpickr-day:hover{background:#f0f0f0}
    .r7-calendar-wrap .flatpickr-months .flatpickr-month{height:36px}
    .r7-calendar-wrap .flatpickr-current-month .numInputWrapper{display:none}
    .r7-calendar-wrap .flatpickr-current-month{font-size:1em;padding-top:8px}
    .r7-calendar-wrap .flatpickr-innerContainer{overflow:hidden}
    .r7-calendar-wrap .flatpickr-rContainer{overflow:hidden}
    .r7-calendar-wrap .flatpickr-days{overflow:hidden!important;width:100%!important}
    .r7-calendar-wrap .dayContainer{width:100%!important;max-width:none!important;min-width:auto!important}
    @media(max-width:768px){
        .r7-agenda-container{grid-template-columns:1fr;padding:15px;gap:25px}
        .r7-event-card a{flex-direction:column;gap:15px;padding:15px}
        .r7-event-date-box{flex-direction:row;gap:8px;justify-content:center;align-items:baseline;padding:10px 15px;min-height:auto}
        .r7-event-date-box .day{display:inline;font-size:1em;margin-right:5px}
        .r7-event-date-box .month{display:inline;font-size:1em;text-transform:uppercase}
        .r7-event-date-box .weekday{position:static;writing-mode:horizontal-tb;transform:none;margin-left:auto;font-size:.85em;font-weight:700}
        .r7-grouped-card{flex-direction:column;gap:15px}
        .r7-grouped-card .r7-event-date-box{min-height:auto}
        .r7-grouped-by-title{flex-direction:column;gap:15px;padding:15px}
        .r7-month-box{padding:10px 15px;min-width:auto;width:100%}
        .r7-month-name{writing-mode:horizontal-tb;transform:none;font-size:1em}
        .r7-mini-grid{flex-direction:column}
        .r7-mini-card{min-width:100%}
        .r7-event-meta{font-size:.85em;line-height:1.5}
    }
    /* Wizard de recherche */
    .r7-search-wizard-box{padding:0!important;background:#f5f5f5}
    .r7-search-wizard{margin-bottom:0}
    .r7-search-bar{display:flex;align-items:center;background:#f5f5f5;border-radius:8px;padding:12px 15px;cursor:pointer;transition:all .2s;box-shadow:0 2px 6px rgba(0,0,0,.08)}
    .r7-search-bar:hover{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px)}
    .r7-search-bar.open{background:#f5f5f5!important}
    .r7-search-bar-text{flex:1;font-size:.95em;color:#333;font-weight:600;letter-spacing:normal;word-spacing:normal}
    .r7-search-bar-text.has-filters{color:#333;font-weight:500}
    .r7-search-bar-icon{font-size:1.1em;color:#666}
    .r7-search-bar-icon.reset{cursor:pointer;color:#AE2A20;text-decoration:none}
    .r7-wizard-panel{display:none;background:#f5f5f5;overflow:hidden;margin-top:15px;border-radius:0 0 8px 8px;transition:opacity .2s ease,transform .2s ease}
    .r7-wizard-panel.open{display:block;animation:wizardSlide .3s ease}
    .r7-wizard-panel.closing{opacity:0;transform:translateY(-10px)}
    @keyframes wizardSlide{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
    @keyframes r7PulseGlow{0%,100%{background:#f5f5f5;box-shadow:0 2px 6px rgba(0,0,0,.08);transform:translateY(0)}25%,75%{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px)}50%{background:#f5f5f5;box-shadow:0 2px 6px rgba(0,0,0,.08);transform:translateY(0)}}
    .r7-search-bar.r7-pulse{animation:r7PulseGlow 1.5s ease}
    .r7-wizard-header{display:flex;justify-content:space-between;align-items:center;padding:8px 15px 12px}
    .r7-wizard-title{font-weight:600;color:#333;font-size:.95em}
    .r7-wizard-close{background:none;border:none;font-size:1.3em;cursor:pointer;color:#888;padding:0;line-height:1}
    .r7-wizard-content{padding:0;display:flex;flex-direction:column}
    .r7-wizard-step{display:none}
    .r7-wizard-step.active{display:block}
    .r7-wizard-options{display:flex;flex-direction:column}
    .r7-wizard-option{display:flex;align-items:center;justify-content:space-between;padding:10px 15px;border-bottom:1px solid #e8e8e8;background:#f5f5f5;cursor:pointer;transition:all .2s;text-decoration:none;color:#333;font-size:.9em}
    .r7-wizard-option:hover{background:#fff}
    .r7-wizard-option.selected{background:#fff;border-left:3px solid #AE2A20}
    .r7-wizard-option:last-child{border-bottom:none}
    .r7-wizard-option-left{display:flex;align-items:center;gap:8px}
    .r7-wizard-option-left>span:first-child{font-size:1.2em}
    .r7-wizard-option .dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
    .r7-wizard-option .count{color:#888;font-size:.85em;background:#e8e8e8;padding:2px 8px;border-radius:10px}
    .r7-wizard-actions{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-top:1px solid #e5e5e5;gap:8px;flex-wrap:wrap}
    .r7-wizard-actions>span{flex:1}
    .r7-wizard-prev,.r7-wizard-skip{background:#e8e8e8;border:none;color:#555;cursor:pointer;font-size:.8em;padding:5px 10px;border-radius:4px;white-space:nowrap;transition:background .2s,color .2s;flex:1 1 auto;text-align:center}
    .r7-wizard-prev:hover,.r7-wizard-skip:hover{background:#e8e8e8;color:#555;box-shadow:0 2px 4px rgba(0,0,0,.15)}
    .r7-wizard-prev:focus,.r7-wizard-skip:focus{background:#e8e8e8;color:#555;outline:none}
    .r7-wizard-ok{background:#6B6B6B;border:none;color:#fff;cursor:pointer;font-size:.8em;padding:5px 10px;border-radius:4px;white-space:nowrap;transition:background .2s,color .2s;flex:1 1 auto;text-align:center}
    .r7-wizard-ok:hover{background:#6B6B6B;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.15)}
    .r7-wizard-ok:focus{background:#6B6B6B;color:#fff;outline:none}
    .r7-wizard-calendar{padding:10px 0 0;border-top:1px solid #e5e5e5}
    .r7-wizard-calendar .flatpickr-calendar{width:100%!important;max-width:100%!important;box-shadow:none!important;background:#f5f5f5!important}
    .r7-wizard-calendar .flatpickr-innerContainer{padding:0!important}
    .r7-wizard-calendar .flatpickr-rContainer{width:100%!important}
    .r7-wizard-calendar .flatpickr-days{width:100%!important;overflow:hidden!important}
    .r7-wizard-calendar .dayContainer{width:100%!important;min-width:100%!important;max-width:100%!important;display:flex!important;flex-wrap:wrap!important}
    .r7-wizard-calendar .flatpickr-day{flex:0 0 calc(100%/7)!important;max-width:calc(100%/7)!important}
    /* Jours sans events = gris clair */
    .r7-wizard-calendar .flatpickr-day.no-event{color:#ccc!important}
    .r7-wizard-calendar .flatpickr-day.no-event:hover{background:#eee!important}
    /* Date sélectionnée = rouge 7R */
    .r7-wizard-calendar .flatpickr-day.selected{background:#AE2A20!important;border-color:#AE2A20!important}
    /* Mobile search bar - hidden by default */
    .r7-mobile-search{display:none}
    .r7-mobile-info-panel{display:none}
    .r7-mobile-info-overlay{display:none}
    /* Mobile wizard panel overlay */
    .r7-mobile-wizard-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:1001}
    .r7-mobile-wizard-overlay.open{display:block}
    .r7-mobile-wizard-overlay.loading::before{content:'';position:fixed;top:25%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#AE2A20;border-radius:50%;animation:r7-spin .7s linear infinite;z-index:1003}
    .r7-mobile-wizard-panel{position:fixed;top:60px;left:10px;right:10px;max-height:80vh;overflow-y:auto;background:#f5f5f5;border-radius:8px;z-index:1002;box-shadow:0 4px 20px rgba(0,0,0,.2)}
    /* Loading state for mobile wizard */
    .r7-mobile-wizard-panel.loading{pointer-events:none;min-height:200px}
    .r7-mobile-wizard-panel.loading>*{opacity:.3}
    .r7-mobile-wizard-panel.loading::before{content:'';position:fixed;top:25%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#AE2A20;border-radius:50%;animation:r7-spin .7s linear infinite;z-index:1003}
    /* Desktop: navigation en haut, sidebar sticky avec scroll */
    @media(min-width:769px){
        .r7-agenda-sidebar{position:sticky;top:20px;align-self:flex-start;max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
        .r7-agenda-sidebar::-webkit-scrollbar{display:none}
        .r7-mobile-wizard-overlay,.r7-mobile-wizard-panel{display:none!important}
        /* Navigation en haut sur desktop */
        .r7-wizard-actions{order:-1;border-top:none;border-bottom:1px solid #e5e5e5}
        .r7-wizard-options{order:1}
        .r7-wizard-calendar{order:2}
    }
    /* Mobile: barre de recherche sticky en haut */
    @media(max-width:768px){
        .r7-mobile-search{display:flex;align-items:stretch;gap:10px;background:#fff;padding:10px 15px;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .3s ease}
        .r7-mobile-search.is-sticky{position:fixed;top:0;left:0;right:0;z-index:1000}
        .r7-mobile-search.hidden{transform:translateY(-100%)}
        .r7-mobile-search .r7-search-bar{flex:1;margin:0;background:#f5f5f5}
        .r7-mobile-search .r7-search-bar-text{font-weight:400}
        .r7-mobile-info-btn{display:flex;align-items:center;justify-content:center;padding:0 16px;background:#f5f5f5;border:none;border-radius:8px;cursor:pointer;flex-shrink:0;box-shadow:0 2px 6px rgba(0,0,0,.08)}
        .r7-mobile-info-btn span{font-size:1.25em;line-height:1}
        .r7-mobile-info-btn:active{background:#e8e8e8}
        .r7-mobile-info-panel{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px rgba(0,0,0,.15);z-index:1001;max-height:80vh;overflow-y:auto;transform:translateY(100%);transition:transform .3s ease}
        .r7-mobile-info-panel.open{display:block;transform:translateY(0)}
        .r7-mobile-info-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff}
        .r7-mobile-info-header h4{margin:0;font-size:1.1em}
        .r7-mobile-info-close{background:none;border:none;font-size:1.2em;cursor:pointer;padding:5px;color:#666}
        .r7-mobile-info-content{padding:20px 20px 30px}
        .r7-mobile-info-content p{font-size:.9em;color:#555;line-height:1.5}
        .r7-mobile-info-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);z-index:1000}
        .r7-mobile-info-overlay.open{display:block}
        .r7-agenda-sidebar .info-box{display:none!important}
        .r7-agenda-sidebar .r7-gift-btn{display:none!important}
        .r7-agenda-sidebar .r7-search-wizard-box{display:none}
        .r7-agenda-main{padding-top:10px}
        .r7-agenda-container{grid-template-columns:1fr;padding:10px}
    }
    
    /* Loading state for wizard - DESKTOP */
    #r7WizardPanel.loading {
        position: relative;
        pointer-events: none;
    }
    #r7WizardPanel.loading::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(255,255,255,0.85);
        z-index: 100;
        border-radius: 8px;
    }
    #r7WizardPanel.loading::before {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 30px;
        height: 30px;
        border: 3px solid #f0f0f0;
        border-top-color: #AE2A20;
        border-radius: 50%;
        animation: r7-spin 0.8s linear infinite;
        z-index: 101;
    }
    @keyframes r7-spin {
        to { transform: translate(-50%, -50%) rotate(360deg); }
    }
    @keyframes r7-spin {
        to { transform: translate(-50%, -50%) rotate(360deg); }
    }
