[data-tool="calendrier-annuel-imprimable"]{--printable-year-calendar-border: var(--outil-bord);--printable-year-calendar-surface: var(--outil-surface);--printable-year-calendar-surface-hover: var(--outil-surface-hover,#eef7ee);--printable-year-calendar-action: #166534;--printable-year-calendar-action-hover: #14532d;--printable-year-calendar-action-text: #fff;--printable-year-calendar-warning-bg: #fff7ed;--printable-year-calendar-warning-border: #fed7aa;--printable-year-calendar-text: #1f2937;--printable-year-calendar-soft-text: #374151;--printable-year-calendar-title: #111827;display: grid;gap: 1rem;color: var(--printable-year-calendar-text)}[data-tool="calendrier-annuel-imprimable"] *,[data-tool="calendrier-annuel-imprimable"] *::before,[data-tool="calendrier-annuel-imprimable"] *::after{box-sizing: border-box}[data-tool="calendrier-annuel-imprimable"] button:not(:disabled){cursor: pointer}[data-tool="calendrier-annuel-imprimable"] button:disabled{cursor: not-allowed}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-intro{margin: 0;color: var(--printable-year-calendar-soft-text);line-height: 1.55}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-card{border: 1px solid var(--printable-year-calendar-border);border-radius: 16px;background: #fff;padding: clamp(1rem,2.4vw,1.35rem)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-card-head{margin-bottom: 1rem}[data-tool="calendrier-annuel-imprimable"] h2{width: 100%;margin: 0;color: var(--printable-year-calendar-title);font-size: 1.08rem;font-weight: 900;line-height: 1.2;text-align: center}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-period-controls{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 1rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-period-block{display: grid;gap: 0.8rem;min-width: 0;margin: 0;border: 1px solid var(--printable-year-calendar-border);border-radius: 14px;background: var(--printable-year-calendar-surface);padding: 0.95rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-period-block legend{padding: 0 0.35rem;color: var(--printable-year-calendar-title);font-weight: 900}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-field{display: grid;gap: 0.45rem;min-width: 0}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-field>span,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-field>label,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-option>span{color: var(--printable-year-calendar-title);font-weight: 900;line-height: 1.2}[data-tool="calendrier-annuel-imprimable"] select,[data-tool="calendrier-annuel-imprimable"] input{width: 100%;min-width: 0;min-height: 48px;border: 1px solid var(--printable-year-calendar-border);border-radius: 12px;background: #fff;color: var(--printable-year-calendar-title);font: inherit;font-size: 1.08rem;font-weight: 900;line-height: 1.15;padding: 0.65rem 0.8rem;transition: border-color 0.14s ease,box-shadow 0.14s ease,background-color 0.14s ease}[data-tool="calendrier-annuel-imprimable"] input{text-align: center}[data-tool="calendrier-annuel-imprimable"] select:focus-visible,[data-tool="calendrier-annuel-imprimable"] input:focus-visible{border-color: var(--printable-year-calendar-action-hover);outline: 3px solid rgb(var(--outil-ombre-rgb) / 0.22);outline-offset: 2px}[data-tool="calendrier-annuel-imprimable"] input[type="number"]{appearance: textfield;-moz-appearance: textfield}[data-tool="calendrier-annuel-imprimable"] input[type="number"]::-webkit-outer-spin-button,[data-tool="calendrier-annuel-imprimable"] input[type="number"]::-webkit-inner-spin-button{margin: 0;appearance: none;-webkit-appearance: none}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-stepper{display: grid;grid-template-columns: 3rem minmax(0,1fr) 3rem;gap: 0.35rem;width: 100%}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-step-button{min-height: 48px;border: 1px solid var(--printable-year-calendar-border);border-radius: 12px;background: #fff;color: var(--printable-year-calendar-action);font: inherit;font-size: 1.2rem;font-weight: 900;line-height: 1;touch-action: none;transition: background-color 0.14s ease,border-color 0.14s ease,color 0.14s ease,box-shadow 0.14s ease,transform 0.1s ease}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-step-button:hover,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-step-button:focus-visible{border-color: var(--printable-year-calendar-action);background: var(--printable-year-calendar-surface-hover);color: var(--printable-year-calendar-action-hover)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-step-button:focus-visible{outline: 3px solid rgb(var(--outil-ombre-rgb) / 0.22);outline-offset: 2px}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-step-button:not(:disabled):active{transform: translateY(2px) scale(0.96);box-shadow: inset 0 2px 4px rgb(0 0 0 / 0.16)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-options-row{display: grid;justify-items: center;gap: 1rem;margin-top: 1rem;text-align: center}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-option{display: grid;justify-items: center;gap: 0.45rem;width: min(100%,20rem);text-align: center}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-selector{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));width: 100%;border: 1px solid var(--printable-year-calendar-border);border-radius: 14px;background: #fff;padding: 0.25rem;gap: 0.25rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button{min-height: 42px;border: 1px solid transparent;border-radius: 10px;background: transparent;color: var(--printable-year-calendar-action);font: inherit;font-weight: 900;line-height: 1.1;transition: background-color 0.14s ease,border-color 0.14s ease,color 0.14s ease,transform 0.1s ease}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button.is-active{border-color: var(--printable-year-calendar-action);background: var(--printable-year-calendar-action);color: var(--printable-year-calendar-action-text)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button:not(.is-active):hover,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button:not(.is-active):focus-visible{border-color: var(--printable-year-calendar-action);background: var(--printable-year-calendar-surface-hover);color: var(--printable-year-calendar-action-hover)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button:focus-visible{outline: 3px solid rgb(var(--outil-ombre-rgb) / 0.22);outline-offset: 2px}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-button:not(:disabled):active{transform: translateY(2px) scale(0.99)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-button{min-height: 48px;border: 1px solid var(--printable-year-calendar-action);border-radius: 12px;background: var(--printable-year-calendar-action);color: var(--printable-year-calendar-action-text);padding: 0.65rem 0.95rem;font: inherit;font-weight: 900;line-height: 1.1;box-shadow: 0 6px 14px rgb(var(--outil-ombre-rgb) / 0.12);touch-action: manipulation;transition: background-color 0.14s ease,border-color 0.14s ease,box-shadow 0.14s ease,transform 0.1s ease}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-button:hover,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-button:focus-visible{border-color: var(--printable-year-calendar-action-hover);background: var(--printable-year-calendar-action-hover)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-button:focus-visible{outline: 3px solid rgb(var(--outil-ombre-rgb) / 0.22);outline-offset: 2px}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-button:not(:disabled):active{transform: translateY(2px) scale(0.98);box-shadow: inset 0 2px 4px rgb(0 0 0 / 0.16)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result{display: grid;gap: 0.8rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-head{position: relative;display: grid;grid-template-columns: 1fr;justify-items: center;margin-bottom: -0.45rem;text-align: center}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-message{position: absolute;top: 50%;right: 0;max-width: 12rem;margin: 0;color: var(--printable-year-calendar-action);font-size: 0.82rem;font-weight: 800;line-height: 1.2;text-align: right;white-space: nowrap;opacity: 0;transform: translateY(-50%);pointer-events: none;transition: opacity 0.18s ease}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-message.is-visible{opacity: 1}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-main-result{display: grid;place-items: center;min-height: 7rem;border: 1px solid var(--printable-year-calendar-border);border-radius: 16px;background: var(--printable-year-calendar-surface);padding: 1rem;text-align: center}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-main-result.is-warning{border-color: var(--printable-year-calendar-warning-border);background: var(--printable-year-calendar-warning-bg)}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-value{max-width: 100%;margin: 0;color: var(--printable-year-calendar-action);font-size: clamp(1.1rem,2.6vw,1.8rem);font-weight: 900;line-height: 1.15;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-main-result.is-warning .printable-year-calendar-result-value{color: #9a3412;white-space: normal}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-summary{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0.65rem;margin: 0}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-summary div{display: grid;align-content: center;min-height: 5rem;border: 1px solid var(--printable-year-calendar-border);border-radius: 12px;background: var(--printable-year-calendar-surface);padding: 0.75rem;text-align: center;gap: 0.3rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-actions{display: flex;justify-content: center}[data-tool="calendrier-annuel-imprimable"] dt{color: var(--printable-year-calendar-soft-text);font-size: 0.88rem;font-weight: 800}[data-tool="calendrier-annuel-imprimable"] dd{margin: 0;color: var(--printable-year-calendar-title);font-weight: 900;overflow-wrap: anywhere}.appergo-pyc-print-root{display: none}@media (max-width: 980px){[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-period-controls,[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-summary{grid-template-columns: 1fr}}@media (max-width: 760px){[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-value{font-size: clamp(0.98rem,3.8vw,1.35rem)}}@media (max-width: 640px){[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-week-option,[data-tool="calendrier-annuel-imprimable"] #tool-printable-year-calendar-print{width: 100%}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-actions{justify-content: stretch}}@media (max-width: 560px){[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-message{position: static;max-width: none;min-height: 1.1rem;text-align: center;white-space: normal;transform: none}}@media (max-width: 440px){[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-card{padding: 0.9rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-stepper{grid-template-columns: 2.75rem minmax(0,1fr) 2.75rem}[data-tool="calendrier-annuel-imprimable"] .printable-year-calendar-result-value{font-size: clamp(0.92rem,4.2vw,1.2rem)}}@page{size: A4 landscape;margin: 0}@media print{html.appergo-pyc-printing,html.appergo-pyc-printing body{width: 297mm;min-height: 210mm;margin: 0;padding: 0;background: #fff}html.appergo-pyc-printing body>:not(.appergo-pyc-print-root){display: none !important}html.appergo-pyc-printing body *{visibility: hidden !important}html.appergo-pyc-printing .appergo-pyc-print-root,html.appergo-pyc-printing .appergo-pyc-print-root *{visibility: visible !important}html.appergo-pyc-printing .appergo-pyc-print-root{display: block !important;position: static;width: 297mm;margin: 0;padding: 0;background: #fff;color: #111827;font-family: Arial,Helvetica,sans-serif;print-color-adjust: exact;-webkit-print-color-adjust: exact}html.appergo-pyc-printing .appergo-pyc-print-root *,html.appergo-pyc-printing .appergo-pyc-print-root *::before,html.appergo-pyc-printing .appergo-pyc-print-root *::after{box-sizing: border-box}html.appergo-pyc-printing .appergo-pyc-page{display: grid;grid-template-rows: auto minmax(0,1fr) auto;gap: 4mm;width: 297mm;height: 210mm;margin: 0;padding: 8mm;overflow: hidden;background: #fff;break-after: page;page-break-after: always}html.appergo-pyc-printing .appergo-pyc-page:last-child{break-after: auto;page-break-after: auto}html.appergo-pyc-printing .appergo-pyc-title{margin: 0;color: #111827;font-size: 18pt;font-weight: 900;line-height: 1.1;text-align: center;text-transform: capitalize}html.appergo-pyc-printing .appergo-pyc-grid{display: grid;grid-auto-rows: minmax(0,1fr);gap: 0;min-height: 0;height: 100%;border-top: 1pt solid #111827;border-left: 1pt solid #111827;background: #fff;overflow: hidden}html.appergo-pyc-printing .appergo-pyc-grid.has-week-numbers{grid-template-columns: 12mm repeat(7,minmax(0,1fr))}html.appergo-pyc-printing .appergo-pyc-grid:not(.has-week-numbers){grid-template-columns: repeat(7,minmax(0,1fr))}html.appergo-pyc-printing .appergo-pyc-cell{position: relative;display: grid;align-items: start;justify-items: start;min-width: 0;min-height: 0;border-right: 1pt solid #111827;border-bottom: 1pt solid #111827;background: #fff;color: #111827;padding: 2mm;font-size: 10pt;font-weight: 900;font-variant-numeric: tabular-nums;line-height: 1;text-align: left;opacity: 1}html.appergo-pyc-printing .appergo-pyc-cell.header{align-items: center;justify-items: center;background: #f3f4f6;color: #111827;font-size: 9pt;padding: 1.5mm;text-align: center;text-transform: uppercase}html.appergo-pyc-printing .appergo-pyc-cell.week{align-items: center;justify-items: center;background: #f9fafb;color: #111827;font-size: 8.5pt;padding: 1.5mm;text-align: center}html.appergo-pyc-printing .appergo-pyc-cell.weekend{background: #f8fafc}html.appergo-pyc-printing .appergo-pyc-cell.outside{color: #6b7280;background: #fff}html.appergo-pyc-printing .appergo-pyc-cell.outside.weekend{background: #f8fafc}html.appergo-pyc-printing .appergo-pyc-cell.outside::after{content: "";position: absolute;left: 2mm;right: 2mm;top: 50%;border-top: 1px solid #6b7280;transform: rotate(-24deg);transform-origin: center}html.appergo-pyc-printing .appergo-pyc-credit{margin: 0;color: #374151;font-size: 8pt;font-weight: 800;line-height: 1;text-align: right}}