/* V3.64 : dimensions et typographie communes à l’application. */
:root{--ui-title:2rem;--ui-group:1.05rem;--ui-label:.9rem;--ui-body:1rem;--ui-small:.82rem;--ui-control:48px;--ui-radius:12px;--ui-gap:12px;--ui-panel:16px}
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
h1,.page header h1,.admin .top h1{font-size:var(--ui-title)!important;font-weight:750!important;line-height:1.2!important;margin:0 0 12px!important}
.page header h2{font-size:1.05rem!important;line-height:1.4!important;font-weight:400!important}
#page-settings header p{font-size:var(--ui-small)!important;line-height:1.4}
:is(#hist-month-year,#cal-month-year,#stats-period-display,#stats-year-display){font-size:1.2rem!important;font-weight:700!important;line-height:1.3!important}
.history-controls{display:grid!important;grid-template-columns:44px minmax(0,1fr) 36px 44px;align-items:center!important;gap:6px!important}
.history-controls>h3{text-align:center;min-width:0}
.history-controls>.btn-icon{color:var(--primary)!important;background:transparent!important;border:0!important;font-size:1rem!important;min-width:36px;min-height:44px}
:is(.history-nav-btn,.calendar-nav-btn){min-width:44px;min-height:44px;font-size:1.6rem!important}
/* Les sections comparables partagent hauteur, titre, marges et chevron. */
#page-settings .v311-settings-group,.admin .admin-create-group{padding:0!important;border-radius:var(--ui-radius)!important;margin:16px 0!important;overflow:hidden}
#page-settings .v311-settings-group>summary,.admin .admin-create-group>summary,
:is(#v330-leave-counters,#v356-absence-counters)>summary,
.v264-excluded-toggle,.users-group-head,.collapse-head{
 box-sizing:border-box;min-height:56px!important;padding:14px 16px!important;gap:12px!important;
 font-family:inherit!important;font-size:var(--ui-group)!important;font-weight:700!important;line-height:1.35!important;
}
#page-settings .v311-settings-content,.admin .admin-create-body{padding:16px!important}
:is(#v330-leave-counters,#v356-absence-counters){border-radius:var(--ui-radius)!important;margin:16px 0!important}
:is(#v330-leave-counters,#v356-absence-counters)>summary{border-radius:var(--ui-radius)!important}
.v264-excluded-toggle{border-radius:var(--ui-radius)!important}
#settings-profiles-list :is([data-profile-group],[data-absence-group]){border-radius:var(--ui-radius)!important;margin:12px 0!important}
#settings-profiles-list :is([data-profile-group],[data-absence-group])>div:first-child{min-height:52px;box-sizing:border-box;padding:12px!important;font-size:var(--ui-group)!important;line-height:1.35}
.admin h2,.admin .users-group-head h3,.collapse-head h2{font-size:var(--ui-group)!important;line-height:1.35!important;margin:0}
:is(.v311-settings-chevron,.admin-create-chevron,.group-chev,.chev){font-size:.85rem!important;flex-shrink:0;color:var(--primary)!important}
/* Champs ordinaires, y compris les formulaires ajoutés dynamiquement. */
:is(input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="date"],input[type="time"],select,textarea){
 box-sizing:border-box!important;max-width:100%;min-width:0;font-family:inherit!important;font-size:16px!important;line-height:1.35!important;border-radius:var(--ui-radius)!important;
}
:is(input[type="text"],input[type="number"],input[type="email"],input[type="password"],input[type="date"],input[type="time"],select){min-height:var(--ui-control)!important;padding-top:12px!important;padding-bottom:12px!important}
textarea{min-height:112px;padding:12px!important}
:is(.v274-time-open){min-height:var(--ui-control)!important;font-size:16px!important;line-height:1.35!important;padding:12px!important;border-radius:var(--ui-radius)!important}
:is(.v358-absence-dates,.row-inputs,.v249-date-profile-row){gap:var(--ui-gap)!important}
.v358-absence-dates input[type="date"]{padding-left:8px!important;padding-right:8px!important}
:is(.modal-content,.v311-settings-content,.admin-create-body,.field,.card) label{font-size:var(--ui-label)!important;line-height:1.4!important}
:is(.modal-content,.v311-settings-content,.admin-create-body) p{font-size:var(--ui-label)!important;line-height:1.45!important}
:is(.small-note,.trial-warn,.last-login){font-size:var(--ui-small)!important;line-height:1.45!important}
/* Les actions ont une taille commune ; les petites icônes restent compactes. */
:is(button.btn-primary,button.btn-secondary,.admin .btn,.box .btn,.stats-mode-btn,.full-backup-actions button){
 box-sizing:border-box;min-height:var(--ui-control)!important;border-radius:var(--ui-radius)!important;font-family:inherit!important;font-size:.95rem!important;line-height:1.3!important;padding:12px 14px!important;white-space:normal;overflow-wrap:break-word;
}
:is(.btn-icon-action,.btn-icon){font-family:inherit}
.history-actions .btn-icon-action{min-height:36px;min-width:32px;padding:6px!important}
.profile-actions .btn-icon{min-height:36px;min-width:30px;padding:5px!important}
.v281-week-detail-btn{min-height:36px!important;min-width:36px!important;padding:7px!important;font-size:.9rem!important}
.full-backup-actions,.admin .actions{gap:10px!important}
/* Fenêtres : même titre et même respiration, en conservant les horloges spécifiques. */
.modal-content{padding:20px!important;box-sizing:border-box;border-radius:18px!important}
.modal-content h3,#pointeuse-dialog-overlay h3,.admin .modal h3{font-size:1.2rem!important;line-height:1.3!important;font-weight:700!important;margin:0 0 16px!important}
#pointeuse-dialog-overlay{box-sizing:border-box}
#pointeuse-dialog-overlay>div{box-sizing:border-box;max-height:90dvh;overflow-y:auto;padding:20px!important;border-radius:18px!important}
#pointeuse-dialog-overlay>div>div:first-of-type{font-size:var(--ui-label)!important;line-height:1.5!important}
/* Les chiffres des cartes gardent une échelle commune et quatre colonnes mobiles. */
.stat-val{font-size:clamp(1.05rem,4vw,1.35rem)!important;line-height:1.2!important;font-variant-numeric:tabular-nums}
.stat-label{font-size:.72rem!important;line-height:1.2!important}
@media(max-width:380px){:root{--ui-title:1.75rem;--ui-group:1rem;--ui-gap:8px;--ui-panel:12px}.modal-content{padding:16px!important}.history-actions{flex-wrap:wrap;max-width:150px}.v358-absence-dates input[type="date"]{font-size:14px!important}.profile-actions{flex-wrap:wrap;max-width:70px}.stat-val{font-size:1.03rem!important}}
@media(min-width:800px){:root{--ui-title:2.15rem}.modal-content{padding:24px!important}.stat-val{font-size:1.4rem!important}}
#page-planning .calendar-header{display:grid!important;grid-template-columns:44px minmax(0,1fr) 36px 44px;align-items:center;gap:6px}
#cal-month-year{text-align:center;min-width:0}
#v353-planning-help{margin:0!important;padding:0!important;min-height:44px;min-width:36px;line-height:1!important;font-size:1rem!important;color:var(--primary)!important;display:inline-flex!important;align-items:center;justify-content:center}
#page-stats .calendar-header{display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:center}
#stats-period-display{margin:0!important;text-align:center}
#form-title.v266-profile-toggle{font-size:var(--ui-group)!important;line-height:1.35!important}
/* V3.103 : en-têtes communs et défilement limité à la liste de l’Historique. */
#page-planning{padding:0 0 80px!important}
#page-planning>header{padding:10px 10px 0!important;background:var(--cardlate);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);box-sizing:border-box;margin-bottom:15px}
#page-planning>header .calendar-header{margin:0;padding:0 0 10px!important}
#page-planning .calendar-container-card{margin-left:10px;margin-right:10px}
:is(.history-controls,#page-planning>header .calendar-header)>:is(.history-nav-btn,.calendar-nav-btn):first-child{grid-column:1;grid-row:1}
:is(.history-controls,#page-planning>header .calendar-header)>:is(.history-nav-btn,.calendar-nav-btn):last-of-type{grid-column:4;grid-row:1}
:is(.history-controls,#page-planning>header .calendar-header)>h3{grid-column:2;grid-row:1}
:is(.history-controls,#page-planning>header .calendar-header)>:is(.btn-icon,#v353-planning-help){grid-column:3;grid-row:1}
:is(.history-controls,#page-planning>header .calendar-header)>.v333-current-month{grid-column:1 / -1;grid-row:2;justify-self:center;margin:0 0 4px!important;min-height:30px;padding:4px 12px;font-size:.75rem;white-space:nowrap}
#page-history.active{display:flex!important;flex-direction:column;overflow:hidden!important;height:100dvh!important;max-height:100dvh;box-sizing:border-box;padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}
#page-history>header{position:relative!important;flex:none;margin-bottom:0!important;padding-bottom:10px!important}
#page-history .history-fixed-section{position:relative!important;top:auto!important;flex:none;padding:12px 10px 10px;background:transparent!important}
#page-history .month-stats-row{padding:0!important;margin:0!important;gap:6px}
#page-history .month-stats-row .stat-card{padding:10px 5px!important;min-height:62px;box-sizing:border-box}
#page-history #v365-add-pointage{width:100%!important;margin:12px 0 0!important;min-height:44px!important;padding:10px!important}
#page-history #history-list{flex:1;min-height:0;overflow-y:auto!important;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:0 10px 16px!important;scrollbar-gutter:stable}
#page-history .week-header.v281-week-header{min-height:46px!important;height:auto!important;margin:6px 0!important;padding:6px 8px!important;grid-template-columns:22px auto minmax(0,1fr) 34px!important;gap:5px!important;box-sizing:border-box!important}
#page-history .v281-week-header .v281-week-detail-btn{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;margin:0!important;padding:4px!important;line-height:1!important;font-size:.85rem!important;border-radius:8px!important}
#page-history .v282-week-number{font-size:.95rem!important;white-space:nowrap}
#page-history .v281-week-summary{font-size:.68rem!important;gap:5px!important}
#page-history .v304-leave-summary{font-size:.72rem!important}
@media(max-height:620px){#page-history>header h1{font-size:1.6rem!important;margin-bottom:6px!important}#page-history .history-fixed-section{padding-top:6px!important}#page-history .month-stats-row .stat-card{min-height:54px;padding:6px 4px!important}}
#page-planning.active{height:100dvh!important;box-sizing:border-box;min-height:0}
:is(.history-controls,#page-planning>header .calendar-header)>:is(.history-nav-btn,.calendar-nav-btn):nth-of-type(3){grid-column:4;grid-row:1}

/* V3.103 — une ligne de navigation, repères hors du mois. */
:is(.history-controls,#page-planning>header .calendar-header){
 display:grid!important;grid-template-columns:36px minmax(0,1fr) 36px!important;
 gap:6px!important;align-items:center!important;flex-wrap:nowrap!important;
}
:is(.history-controls,#page-planning>header .calendar-header)>button:first-child{grid-column:1!important;grid-row:1!important}
:is(.history-controls,#page-planning>header .calendar-header)>button:last-child{grid-column:3!important;grid-row:1!important}
.v366-month-center{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}
.v366-month-center>h3{margin:0!important;font-size:clamp(14px,4.4vw,20px)!important;white-space:nowrap;min-width:0}
.v366-month-center.has-return>h3{font-size:clamp(13px,3.7vw,19px)!important}
.v366-month-center>.v333-current-month{
 flex:0 0 auto!important;grid-column:auto!important;grid-row:auto!important;
 min-height:32px!important;min-width:0!important;margin:0!important;padding:4px 6px!important;
 font-size:10px!important;line-height:1.2!important;white-space:nowrap!important;
}
#v366-history-actions{display:flex;align-items:center;gap:8px;margin-top:10px}
#page-history #v366-history-actions>#v365-add-pointage{flex:1;min-width:0;width:auto!important;margin:0!important}
#v366-history-actions>.btn-icon{flex:0 0 36px;min-width:36px!important;width:36px!important;height:44px;min-height:44px!important;padding:0!important}
#v366-planning-hint{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted,#9ca3af)!important;margin:5px 10px!important}
#v366-planning-hint>#v353-planning-help{flex:0 0 28px;min-width:28px!important;width:28px!important;min-height:28px!important;height:28px!important;margin:0!important;padding:0!important}
#calendar-body .cal-day{padding-top:22px!important;box-sizing:border-box;justify-content:flex-start!important}
#calendar-body .v366-day-content{margin-top:0!important;flex:0 0 auto;box-sizing:border-box}
#calendar-body .v366-week-day{padding-bottom:22px!important;min-height:110px!important}
#calendar-body .week-badge{font-size:12px!important;line-height:16px!important;padding:1px 3px!important;bottom:1px!important}
#calendar-body .cal-time-label{line-height:1.2!important}
#page-history #history-list{touch-action:pan-y!important;scrollbar-gutter:auto!important}

/* V3.103 — les conteneurs du glissement horizontal doivent aussi contraindre
   la hauteur, pour que la liste interne puisse défiler verticalement. */
#page-history>.v310-month-viewport{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden!important}
#page-history .v310-month-pane:not(.v310-neighbor){display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow:hidden}
#page-history .history-fixed-section{flex:0 0 auto;position:relative!important;top:auto!important}
#page-history #history-list{overflow-y:auto!important;overflow-x:hidden!important;min-height:0;touch-action:pan-y}
#page-history #v365-add-pointage{width:100%!important;margin:10px 0 0!important}
:is(.history-controls,#page-planning>header .calendar-header){grid-template-columns:32px minmax(0,1fr) 28px 32px!important;gap:4px!important}
:is(.history-controls,#page-planning>header .calendar-header)>button:last-child{grid-column:4!important}
:is(.history-controls,#page-planning>header .calendar-header)>button[onclick="v363HistoryLegend()"],#page-planning>header .calendar-header>#v353-planning-help{
 grid-column:3!important;grid-row:1!important;width:28px!important;min-width:28px!important;min-height:32px!important;height:32px!important;margin:0!important;padding:0!important;
 border:0!important;background:transparent!important;color:var(--primary)!important;font-size:16px!important;
}
#calendar-body{grid-auto-rows:minmax(90px,max-content)!important;align-content:start!important}
#calendar-body .cal-day{min-height:90px!important}
#calendar-body .v366-week-day{min-height:90px!important}
.admin .user-disclosure{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;padding:0;cursor:pointer;text-align:left}
.admin .user-disclosure:focus-visible{outline:2px solid var(--primary,#3498db);outline-offset:4px}
.admin .user-action-chevron{font-size:.8em;color:#3498db}
.admin .actions[hidden]{display:none!important}

/* V3.103 — heures coupées détaillées. */
.v368-cut-badge{font:inherit;cursor:pointer}
.v368-cut-total{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #e74c3c;background:rgba(231,76,60,.1);color:#e98b82;border-radius:8px;padding:4px 7px;font:inherit;cursor:pointer;min-height:28px}
.v368-cut-total .fa-chevron-down{font-size:.65em}
#v368-month-cut{margin-top:6px;text-align:center;font-size:.8rem}
#v368-month-cut .v368-cut-total{width:100%;box-sizing:border-box}
.v368-week-cut{grid-column:3;grid-row:3;text-align:right;font-size:.7rem}
.v368-cut-detail{display:none;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:6px;font-size:.65rem}
.v368-cut-open .v368-cut-detail{display:flex!important}
.v368-cut-detail span{padding:3px 4px;border:1px solid #555;border-radius:6px}
.v368-cut-detail .before{color:#f39c12}.v368-cut-detail .after{color:#e98b82}
.v368-cut-chevron{color:#e74c3c;font-size:.7em}
.v368-cut-tooltip{white-space:pre-line;border:1px solid #e74c3c;background:#17212e;color:#fff;border-radius:10px;padding:10px;font-size:.8rem;line-height:1.45;margin:8px 0 0}
.v368-cut-tooltip[hidden]{display:none!important}
.v368-cut-badge:focus-visible,.v368-cut-total:focus-visible{outline:2px solid #f39c12;outline-offset:3px}

/* V3.103 — totaux compacts et détails harmonisés. */
#page-history .fa-moon,#page-stats .fa-moon{display:none!important}
.v237-hs-detail>span:first-child,.v244-hs-tooltip .normal{color:#2ecc71!important}
.v237-hs-detail>span:nth-child(2),.v244-hs-tooltip .night{color:#7dc7ff!important}
.v368-cut-detail .before,.v374-cut-tip .before{color:#f39c12!important}
.v368-cut-detail .after,.v374-cut-tip .after{color:#e74c3c!important}
.v374-cut-tip .unknown{color:#aeb8c2}
.chart-wrapper .v374-cut-tip{position:absolute;display:flex;flex-direction:column;gap:2px;white-space:normal;max-width:calc(100% - 24px);min-width:170px;box-sizing:border-box;padding:9px 11px;border:1px solid #65717d;border-radius:9px;background:rgba(25,29,33,.97);font-size:.82rem;line-height:1.35;z-index:40;pointer-events:none}
.chart-wrapper .v374-cut-tip[hidden]{display:none!important}
#page-history .v281-week-summary.v374-with-cut{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;align-content:center;row-gap:1px!important}
#page-history .v368-week-cut{flex:0 0 100%;font-size:inherit!important;line-height:1.15;text-align:right}
#page-history .v368-week-cut .v368-cut-total,#page-history .v307-totals .v368-cut-total{border:0;background:transparent;padding:0;min-height:0;font:inherit;gap:3px}
#page-history .v281-week-summary>span{white-space:nowrap}
#page-history .v281-week-header .v281-week-detail-btn{grid-row:1 / -1!important;align-self:center}

.chart-wrapper .v374-cut-tip{margin:0}
#page-history .v307-totals{flex-wrap:wrap}

/* Durée coupée et ciseaux : même corps que les heures de nuit de la journée. */
#page-history .v368-cut-badge{font-size:.8rem!important;font-weight:normal!important;line-height:normal}
#page-history .v368-cut-badge .fa-cut{font-size:inherit!important}

#v397-formation-form{padding:12px;margin:12px 0;border:1px solid var(--primary,#3498db);border-radius:10px;background:#17212e}
#v397-formation-form .v358-absence-dates>div[hidden]{display:none!important}
#v397-ot-form{padding:12px;margin:12px 0;border:1px solid var(--primary,#3498db);border-radius:10px;background:#17212e}
#v397-ot-form .btn-secondary{padding:5px 10px;font-size:.8rem;margin-top:5px}
#color-modal .v397-color-dialog{display:flex;flex-direction:column;max-height:88dvh;overflow:hidden}
#color-picker-container{display:block!important;overflow:auto;min-height:0;max-height:48dvh;padding:4px 6px}
.v397-color-family{font-weight:700;margin:10px 0 6px;font-size:.85rem}
.v397-color-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:10px}
#color-picker-container .color-dot{width:100%!important;height:auto!important;min-height:32px;aspect-ratio:1;border-radius:9px;transform:none!important}
#v397-color-preview{align-self:flex-start;border-radius:8px;padding:9px 18px;color:white;font-weight:700;text-shadow:0 1px 3px #000}
#v397-custom{margin-top:10px;font-size:.85rem}#v397-custom summary{cursor:pointer;padding:10px;border:1px solid #456;border-radius:8px}#v397-custom label{display:flex;align-items:center;gap:8px;margin:6px 0}#v397-custom input{min-width:0;width:50%}
#v397-color-actions{padding-top:10px}#v397-apply-color{width:100%;font-size:.8rem;margin-bottom:8px}#v397-color-actions .row-inputs button{flex:1}
.v397-color-swatch{display:inline-block;width:22px;height:22px;border-radius:6px;border:1px solid #aaa;vertical-align:middle;margin-right:5px}
#v237-allot-edit>div{flex:1;min-width:120px}#v237-allot-edit .v397-clear{padding:5px 10px;font-size:.8rem;margin-top:5px}

/* V3.103 : notes lisibles et heures coupées journalières sans encadré. */
#page-history .v368-cut-badge{border:0!important;background:transparent!important;box-shadow:none!important;padding:2px 0!important}
.v397-note-button{display:block;background:transparent;border:0;padding:0;font:inherit;color:#f5b942;cursor:pointer;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v397-note-button:focus-visible{outline:2px solid #3498db;outline-offset:2px}

/* V3.103 : heures et minutes défilantes, saisie numérique, actions fixes. */
.v397-wheel-overlay{position:fixed!important;inset:0!important;z-index:95000!important;background:rgba(0,0,0,.68)!important;display:none!important;align-items:center;justify-content:center;padding:14px;box-sizing:border-box}
.v397-wheel-overlay.open{display:flex!important}
.v397-wheel-dialog{width:min(430px,100%);max-height:calc(100dvh - 28px);overflow-y:auto;background:#192332;color:#fff;border:1px solid #354455;border-radius:20px;padding:22px;box-sizing:border-box;box-shadow:0 20px 70px #0008}
.v397-wheel-dialog h3{font-size:1.3rem;margin:0 0 24px;text-align:center}
.v397-wheel-columns{display:flex;align-items:center;justify-content:center;gap:12px}
.v397-wheel-columns[hidden],.v397-wheel-keyboard[hidden]{display:none!important}
.v397-wheel-column{min-width:0;flex:1;max-width:150px;text-align:center}
.v397-wheel-label{color:#9caec2;margin-bottom:12px;font-size:.95rem}
.v397-wheel{height:186px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;padding:62px 0;box-sizing:border-box;touch-action:pan-y;background:linear-gradient(to bottom,transparent 62px,#243549 62px,#243549 124px,transparent 124px);border-radius:10px}
.v397-wheel::-webkit-scrollbar{display:none}
.v397-wheel button{display:block!important;width:100%!important;height:62px!important;min-height:62px!important;box-sizing:border-box;margin:0!important;padding:0!important;line-height:62px!important;scroll-snap-align:center;border:0!important;border-radius:0!important;background:transparent!important;color:#647185!important;font-size:2rem!important;box-shadow:none!important;user-select:none;font-variant-numeric:tabular-nums}
.v397-wheel button.selected{color:#fff!important;font-weight:700;font-size:2.8rem!important}
.v397-wheel:focus-visible{outline:2px solid #3498db}
.v397-wheel-colon{font-size:2.5rem;padding-top:30px}
.v397-wheel-keyboard{display:flex;gap:18px;justify-content:center}
.v397-wheel-keyboard label{flex:1;color:#9caec2}
.v397-wheel-keyboard input{display:block;width:100%;box-sizing:border-box;font-size:2rem;text-align:center;padding:12px;margin-top:10px;background:#101827;color:#fff;border:1px solid #3498db;border-radius:10px}
.v397-wheel-error{font-size:.85rem;color:#ffaaa1;margin:10px 0;min-height:1em}
.v397-wheel-keyboard-button{display:block;width:100%;margin:10px 0 18px}
.v397-wheel-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #354455;padding-top:18px}
.v397-wheel-actions button{flex:1;min-width:90px}
.v397-wheel-clear{flex-basis:100%!important}
@media(max-height:580px){.v397-wheel-dialog{padding:14px}.v397-wheel-dialog h3{margin-bottom:12px}.v397-wheel-keyboard-button{margin:5px 0 10px}.v397-wheel-actions{padding-top:10px}}

.v397-picker-choice{display:flex;gap:10px}.v397-picker-choice button{flex:1}.v397-picker-choice button[aria-pressed="true"]{border:2px solid #3498db;background:#1b3650;color:#fff}

/* V3.103 — Marges symétriques et chrono sans cercle. */
#page-settings>.v311-settings-group{width:calc(100% - 20px)!important;max-width:100%!important;box-sizing:border-box!important;margin:16px auto!important}
#page-chrono #btn-change-profile{display:none!important}
#page-chrono .timer-container{flex:none!important;justify-content:flex-start!important;width:100%;margin-top:24px}
#page-chrono .chrono-date{font-size:clamp(1.7rem,6.8vw,2.3rem)!important;font-weight:750!important;margin:8px 0 24px!important;text-align:center}
#page-chrono #timer-ui{width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;margin:10px auto 22px!important;padding:12px 0!important}
#page-chrono #timer-display{font-size:clamp(2.2rem,10.6vw,4rem)!important;font-family:system-ui,sans-serif!important;font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:.015em}
#page-chrono #timer-status{display:none!important}
#page-chrono .chrono-footer{margin:14px 0 24px!important;padding:0!important;text-align:center}
#page-chrono #btn-main-action{width:82%!important;min-height:58px!important;height:auto!important;padding:16px 12px!important;font-size:1.12rem!important;border-radius:14px!important;color:white!important}
#page-chrono #btn-main-action i{margin-right:8px}
#v397-leave-countdown{display:flex;align-items:center;gap:20px;width:100%;box-sizing:border-box;margin:8px auto 24px;padding:20px!important}
#v397-leave-countdown>i{font-size:2rem;color:var(--primary)}
#v397-leave-countdown small{display:block;color:#9caec2;line-height:1.5}
.v397-leave-title{font-size:1.35rem;font-weight:650;margin:6px 0}
.v397-leave-title strong{color:var(--primary);font-size:1.7rem}

/* V3.103 — Date et compteur plus grands, bilan annuel compact. */
#page-chrono .chrono-date{font-size:clamp(1.9rem,8vw,2.7rem)!important}
#page-chrono #timer-display{font-size:clamp(2.5rem,13vw,5rem)!important;letter-spacing:0}
.v397-action-icon{display:inline-block;width:1.45em;height:1.45em;vertical-align:middle;margin-right:8px;flex-shrink:0}
#v397-year-countdown{width:100%;box-sizing:border-box;padding:16px!important;margin:0 auto 24px;text-align:center}
#v397-year-countdown h3{margin:0 0 12px;font-size:1.15rem}
.v397-year-metrics{display:grid;grid-template-columns:1fr 1fr;margin-bottom:12px}
.v397-year-metrics>div+div{border-left:1px solid #334155}
.v397-year-metrics strong{display:block;font-size:2rem;line-height:1.2}
.v397-year-metrics>div:first-child strong{color:var(--primary)}
.v397-year-metrics span{display:block;font-size:.9rem;margin-top:6px}
#v397-year-countdown small{display:block;color:#9caec2;font-size:.75rem}

/* V3.103 — Espaces réduits, deux décomptes dans un cadre unique. */
#page-chrono .timer-container{margin-top:12px!important}
#page-chrono .chrono-date{margin:4px 0 8px!important}
#page-chrono #timer-ui{margin:0 auto 8px!important;padding:6px 0!important}
#page-chrono .timer-extras{margin:0!important}
#page-chrono .chrono-footer{margin:8px 0 16px!important}
#v397-chrono-summary{width:calc(100% - 20px)!important;box-sizing:border-box;padding:14px 16px!important;margin:0 auto 16px!important}
#v397-leave-countdown{width:100%!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0 0 12px!important;margin:0!important;gap:14px}
#v397-leave-countdown small{font-size:.8rem}
#v397-leave-countdown .v397-leave-title{margin:4px 0;font-size:1.2rem}
#v397-leave-countdown .v397-leave-title strong{font-size:1.5rem}
#v397-year-countdown{width:100%!important;background:transparent!important;border:0!important;border-top:1px solid #334155!important;box-shadow:none!important;padding:12px 0 0!important;margin:0!important}
#v397-year-countdown h3{margin:0 0 8px;font-size:1rem}
#v397-year-countdown .v397-year-metrics{margin-bottom:6px}
#v397-year-countdown .v397-year-metrics strong{font-size:1.65rem}
#v397-year-countdown .v397-year-metrics span{font-size:.8rem;margin-top:3px}
#page-chrono{padding-bottom:calc(90px + env(safe-area-inset-bottom))!important}
@media(max-height:700px){#page-chrono .timer-container{margin-top:8px!important}#page-chrono .chrono-footer{margin:6px 0 12px!important}#v397-chrono-summary{padding:10px 14px!important}}

/* V3.103 — Répartir l’espace disponible et rapprocher le bilan de la navigation. */
#page-chrono>*{flex-shrink:0}
#page-chrono .timer-container{flex:1 0 auto!important;min-height:150px;justify-content:space-evenly!important;margin-top:10px!important}
#page-chrono .chrono-date{margin:10px 0 14px!important}
#page-chrono #timer-ui{margin:6px auto 14px!important;padding:4px 0!important}
#page-chrono .timer-extras:not(:has(>div:not([style*="display:none"]):not([style*="display: none"]))){display:none}
#page-chrono .chrono-footer{margin:10px 0 24px!important}
#v397-chrono-summary{margin:0 auto 4px!important;padding:10px 14px!important}
#v397-leave-countdown{padding-bottom:8px!important;gap:12px}
#v397-leave-countdown>i{font-size:1.7rem}
#v397-leave-countdown small{font-size:.75rem;line-height:1.35}
#v397-leave-countdown .v397-leave-title{margin:2px 0;font-size:1.1rem}
#v397-leave-countdown .v397-leave-title strong{font-size:1.35rem}
#v397-year-countdown{padding-top:8px!important}
#v397-year-countdown h3{font-size:.95rem;margin-bottom:5px}
#v397-year-countdown .v397-year-metrics strong{font-size:1.4rem}
#v397-year-countdown .v397-year-metrics span{font-size:.75rem;margin-top:2px}
#v397-year-countdown small{font-size:.68rem}
@media(max-height:650px){#page-chrono .timer-container{min-height:120px}#page-chrono .chrono-footer{margin:8px 0 12px!important}}
/* V3.103 — Même champ et même hauteur pour les journées importées. */
.v397-profile-day-button{display:flex;justify-content:space-between;align-items:center;width:100%;box-sizing:border-box;margin-bottom:15px;text-align:left;background:#192534;border:1px solid #38485c;color:#f4f6fa;border-radius:12px;padding:15px;font:inherit;min-height:48px}
.v397-profile-day-button span{color:#56aceb;font-size:1.5em;line-height:1}
.v397-day-profile-box{max-height:88dvh;overflow-y:auto;text-align:left}
.v397-profile-date,.v397-profile-help{color:#9baec3}
.v397-profile-facts{border:1px solid #30475c;border-radius:14px;padding:15px;margin:15px 0 22px}
.v397-profile-facts h4{display:flex;align-items:center;gap:12px;font-size:1.25rem;margin:0 0 18px}
.v397-profile-swatch{width:32px;height:32px;border:1px solid #8096ab;border-radius:8px;display:inline-block}
.v397-profile-times{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.v397-profile-times small,.v397-profile-times strong{display:block}.v397-profile-times small{color:#9baec3;margin-bottom:5px}
#v397-profile-day-note{width:100%;box-sizing:border-box;margin:12px 0 6px}
.v397-profile-help{display:block;font-size:.8rem;margin-bottom:20px}
.v397-profile-delete{width:100%;color:#ff5967!important;border-color:#ff5967!important;margin-bottom:16px}
.v397-profile-actions{display:flex;gap:12px}.v397-profile-actions button{flex:1}
.v397-profile-change{margin-top:18px;color:#71b6eb;font-size:.85rem}.v397-profile-change select{width:100%;margin-top:12px}

/* V3.103 : action distincte sous le sélecteur existant. */
#v397-profile-day-button{margin:0 0 15px;color:#71b6eb;border-color:#439cdb;background:transparent}

/* V3.103 — Texte des congés centré dans l’ensemble du cadre. */
#v397-leave-countdown{position:relative;display:block!important;text-align:center}
#v397-leave-countdown>div{width:100%;box-sizing:border-box;padding:0 36px;text-align:center}
#v397-leave-countdown>i{position:absolute;left:4px;top:calc(50% - 4px);transform:translateY(-50%)}

/* V3.103 — Aperçus et libellés explicites. */
#v397-leave-countdown>.v3103-leave-body{position:relative;width:max-content;max-width:calc(100% - 72px);padding:0;margin:0 auto;text-align:center}
.v3103-leave-body>i{position:absolute;left:-35px;top:50%;transform:translateY(-50%);font-size:1.6rem;color:var(--primary)}
#v397-year-countdown .v3103-year-detail{display:block;font-size:.65rem;color:#9baec3;line-height:1.3;margin-top:2px}
.v397-picker-choice button{min-width:0;display:flex;flex-direction:column;align-items:center;gap:12px;padding:14px 8px}
.v3103-picker-preview{width:110px;height:110px;max-width:100%;display:block}
.v3103-wheel-preview{display:flex;flex-direction:column;justify-content:center;gap:5px;height:110px;width:100%;font-variant-numeric:tabular-nums}
.v3103-wheel-labels{font-size:.6rem;color:#9baec3}.v3103-wheel-muted{font-size:1.1rem;color:#718198;opacity:.65}.v3103-wheel-selected{font-size:1.4rem;color:#fff;border-top:1px solid #426781;border-bottom:1px solid #426781;padding:3px 0}

.review-days {margin:12px 20px;padding:14px 16px;border:1px solid var(--border-color,#384455);border-radius:16px;background:var(--card-bg,#15202d);}
.review-days summary {cursor:pointer;font-weight:700;color:var(--accent-color,#3498db);}
.review-days p {font-size:.9rem;line-height:1.5;color:#b8c2ce;}
.review-day {display:block;width:100%;margin:10px 0;text-align:left;white-space:normal;line-height:1.5;overflow-wrap:anywhere;}
