@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_5901b7c6-module__ec5Qua__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_5901b7c6-module__ec5Qua__variable{--font-inter:"Inter", "Inter Fallback"}
.jy-overlay{z-index:30;background:var(--jy-sb-overlay,#14161a80);position:fixed;inset:0}@media (min-width:768px){.jy-overlay{display:none}}.jy-sidebar{z-index:40;background:var(--jy-sb-bg,var(--jy-surface,#fff));width:16rem;color:var(--jy-sb-fg,var(--jy-ink,#191c21));border-right:1px solid var(--jy-sb-border,var(--jy-line,#dddfd9));font-family:var(--jy-font,inherit);flex-direction:column;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.jy-sidebar[data-open=true]{transform:translate(0)}.jy-sb-head{background:var(--jy-sb-brand-bg,var(--jy-dom,var(--jy-sb-bg,transparent)));color:var(--jy-sb-brand-fg,var(--jy-on-dom,inherit));border-bottom:1px solid var(--jy-sb-border,var(--jy-line,#dddfd9));justify-content:space-between;align-items:center;gap:8px;padding:20px 12px 20px 20px;display:flex}.jy-sb-role{color:inherit;opacity:.78;font-size:12px}.jy-sb-head .jy-iconbtn{color:inherit}.jy-sb-head .jy-iconbtn:hover{background:var(--jy-sb-brand-hover,var(--jy-sb-hover-bg,#ffffff29));color:inherit}.jy-sb-nav{flex:1;padding:14px;overflow-y:auto}.jy-sb-section+.jy-sb-section{margin-top:16px}.jy-sb-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));margin:0 0 4px;padding:0 12px;font-size:11px;font-weight:600}.jy-sb-section-toggle{border-radius:var(--jy-radius,4px);width:100%;font:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;margin:0 0 4px;padding:0 12px;font-size:11px;font-weight:600;display:flex}.jy-sb-section-toggle:hover{color:var(--jy-sb-fg,var(--jy-ink,#191c21))}.jy-sb-chevron{flex-shrink:0;transition:transform .15s}.jy-sb-chevron[data-collapsed=true]{transform:rotate(-90deg)}.jy-sb-section-subtitle{color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));opacity:.8;margin:-2px 0 6px;padding:0 12px;font-size:11px}.jy-item{border-radius:var(--jy-radius,4px);width:100%;font:inherit;text-align:left;color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:9px 11px;font-size:14px;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:flex}.jy-item:hover{background:var(--jy-sb-hover-bg,var(--jy-line-soft,#eaece6));color:var(--jy-sb-fg,var(--jy-ink,#191c21))}.jy-item[data-active=true],.jy-item-active{background:var(--jy-sb-active-bg,var(--jy-surface,transparent));border-color:var(--jy-sb-active-border,var(--jy-accent,transparent));color:var(--jy-sb-active-fg,var(--jy-accent-text,var(--jy-ink,#191c21)));font-weight:600}.jy-item>svg{flex-shrink:0}.jy-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.jy-sb-foot{border-top:1px solid var(--jy-sb-border,var(--jy-line,#dddfd9));padding:14px}.jy-sb-sep{border:0;border-top:1px solid var(--jy-sb-border,var(--jy-line-soft,#eaece6));margin:10px 0}.jy-sb-email{text-overflow:ellipsis;white-space:nowrap;color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));padding:0 12px 4px;font-size:12px;overflow:hidden}.jy-iconbtn{border-radius:var(--jy-radius,4px);width:32px;height:32px;color:var(--jy-sb-muted,var(--jy-ink-2,#4a4f57));cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.jy-iconbtn:hover{background:var(--jy-sb-hover-bg,var(--jy-line-soft,#eaece6));color:var(--jy-sb-fg,var(--jy-ink,#191c21))}.jy-item:focus-visible,.jy-iconbtn:focus-visible,.jy-sb-section-toggle:focus-visible{outline:2px solid var(--jy-focus,var(--jy-accent,currentColor));outline-offset:2px}.jy-sb-head .jy-iconbtn:focus-visible{outline-color:currentColor}.jy-content{transition:padding-left .2s}.jy-topbar{z-index:20;border-bottom:1px solid var(--jy-topbar-border,var(--jy-line,#80808040));background:var(--jy-topbar-bg,var(--jy-surface,inherit));height:56px;color:var(--jy-topbar-fg,var(--jy-ink,inherit));align-items:center;gap:12px;padding:0 16px;display:flex;position:sticky;top:0}.jy-topbar .jy-iconbtn{border:1px solid var(--jy-topbar-border,var(--jy-line,#80808040));color:inherit}@media (min-width:768px){.jy-content[data-open=true]{padding-left:16rem}}@media (prefers-reduced-motion:reduce){.jy-sidebar,.jy-content,.jy-item,.jy-iconbtn,.jy-sb-chevron{transition:none}}@media print{.jy-sidebar,.jy-overlay,.jy-topbar{display:none}.jy-content[data-open=true]{padding-left:0}}
.jy-ci-overlay{z-index:60;background:var(--jy-ci-overlay,#14161a8c);justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.jy-ci-modal{border:1px solid var(--jy-ci-border,var(--jy-line,#dddfd9));border-top-color:var(--jy-ci-accent,var(--jy-accent,#3e2965));border-radius:var(--jy-radius,4px);background:var(--jy-ci-bg,var(--jy-surface,#fff));width:100%;max-width:34rem;max-height:calc(100vh - 32px);color:var(--jy-ci-fg,var(--jy-ink,#191c21));font-family:var(--jy-font,inherit);padding:24px;font-size:14px;line-height:1.5;overflow-y:auto}.jy-ci-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.jy-ci-title{margin:0;font-size:17px;font-weight:600}.jy-ci-close{color:var(--jy-ci-muted,var(--jy-ink-2,#4a4f57));cursor:pointer;border-radius:var(--jy-radius,4px);background:0 0;border:none;padding:2px 6px;font-size:22px;line-height:1}.jy-ci-close:hover,.jy-ci-close:focus-visible{color:var(--jy-ci-fg,var(--jy-ink,#191c21))}.jy-ci-close:disabled{opacity:.5;cursor:not-allowed}.jy-ci-body{flex-direction:column;gap:14px;margin-top:12px;display:flex}.jy-ci-text{color:var(--jy-ci-fg,var(--jy-ink,#191c21));margin:0}.jy-ci-table-wrap{border:1px solid var(--jy-ci-border,var(--jy-line,#dddfd9));border-radius:var(--jy-radius,4px);overflow-x:auto}.jy-ci-table{border-collapse:collapse;width:100%;font-size:13px}.jy-ci-table th,.jy-ci-table td{text-align:left;border-bottom:1px solid var(--jy-ci-border,var(--jy-line,#dddfd9));white-space:nowrap;padding:8px 12px}.jy-ci-table thead th{background:var(--jy-ci-surface,var(--jy-paper,#f7f7f4));font-weight:600}.jy-ci-table tbody tr:last-child td{border-bottom:none}.jy-ci-optional{color:var(--jy-ci-muted,var(--jy-ink-2,#4a4f57));font-weight:400}.jy-ci-empty-cell{color:var(--jy-ci-muted,var(--jy-ink-2,#4a4f57));font-style:italic}.jy-ci-notes{color:var(--jy-ci-muted,var(--jy-ink-2,#4a4f57));flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:12px;display:flex}.jy-ci-notes code{background:var(--jy-ci-surface,var(--jy-paper,#f7f7f4));border-radius:var(--jy-radius,4px);padding:1px 5px;font-size:11px}.jy-ci-errors{background:var(--jy-ci-danger-bg,var(--jy-danger-bg,#fef2f2));border:1px solid var(--jy-ci-danger,var(--jy-danger,#b91c1c));border-radius:var(--jy-radius,4px);color:var(--jy-ci-danger,var(--jy-danger,#b91c1c));padding:12px;font-size:13px}.jy-ci-errors-title{margin:0 0 6px;font-weight:600}.jy-ci-errors ul{flex-direction:column;gap:2px;max-height:180px;margin:0;padding-left:18px;display:flex;overflow-y:auto}.jy-ci-file-error{color:var(--jy-ci-danger,var(--jy-danger,#b91c1c));margin:0;font-size:13px}.jy-ci-success{color:var(--jy-ci-success,var(--jy-success,#15803d));margin:0;font-weight:600}.jy-ci-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}.jy-ci-footer-end{justify-content:flex-end}.jy-ci-template-link{color:var(--jy-ci-accent,var(--jy-accent-text,#3e2965));font-size:14px;text-decoration:none}.jy-ci-template-link:hover,.jy-ci-template-link:focus-visible{text-decoration:underline}.jy-ci-actions{gap:8px;display:flex}.jy-ci-btn{border-radius:var(--jy-radius,4px);cursor:pointer;border:1px solid var(--jy-ci-border,var(--jy-line,#dddfd9));background:var(--jy-ci-surface,var(--jy-paper,#f7f7f4));color:var(--jy-ci-fg,var(--jy-ink,#191c21));padding:9px 16px;font-size:14px;font-weight:600}.jy-ci-btn:hover:not(:disabled){filter:brightness(.96)}.jy-ci-btn:disabled{opacity:.5;cursor:not-allowed}.jy-ci-btn-primary{border-color:var(--jy-ci-accent,var(--jy-primary-bg,#3e2965));background:var(--jy-ci-accent,var(--jy-primary-bg,#3e2965));color:var(--jy-ci-accent-fg,var(--jy-primary-fg,#fff))}.jy-ci-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.jy-ci-btn:focus-visible,.jy-ci-btn-primary:focus-visible,.jy-ci-close:focus-visible,.jy-ci-template-link:focus-visible{outline:2px solid var(--jy-ci-accent,var(--jy-focus,#3e2965));outline-offset:2px}.jy-ci-hidden-input{display:none}
:root{--jy-paper:#f7f7f4;--jy-surface:#fff;--jy-ink:#191c21;--jy-ink-2:#4a4f57;--jy-ink-3:#7a8087;--jy-line:#dddfd9;--jy-line-soft:#eaece6;--jy-dom:#3e2965;--jy-dom-text:#3e2965;--jy-dom-dark:#b79fe0;--jy-on-dom:#fff;--jy-mint:#2cd595;--jy-mint-text:#177a55;--jy-accent:var(--jy-dom);--jy-accent-text:var(--jy-dom-text);--jy-primary-bg:var(--jy-dom);--jy-primary-fg:var(--jy-on-dom);--jy-focus:var(--jy-accent);--jy-danger:#b91c1c;--jy-danger-bg:#fef2f2;--jy-success:#15803d;--jy-radius:4px;--jy-font:Inter, system-ui, -apple-system, "Segoe UI", sans-serif}:root.dark{--jy-paper:#14161a;--jy-surface:#1c1f25;--jy-ink:#ecedea;--jy-ink-2:#b4b8bc;--jy-ink-3:#83888e;--jy-line:#33373d;--jy-line-soft:#262a30;--jy-accent:var(--jy-dom-dark);--jy-accent-text:var(--jy-dom-dark);--jy-primary-bg:var(--jy-dom-dark);--jy-primary-fg:#14161a;--jy-danger:#f1958d;--jy-danger-bg:#35211f;--jy-success:#7cc89a}.jy-num{font-variant-numeric:tabular-nums}.jy-focus-ring:focus-visible{outline:2px solid var(--jy-focus);outline-offset:2px}.jy-page-head{z-index:20;background:var(--jy-surface);border-bottom:1px solid var(--jy-line);align-items:center;gap:1rem;min-height:4rem;padding:.625rem 1.5rem;display:flex;position:sticky;top:0}.jy-page-title{color:var(--jy-ink);font-size:1rem;font-weight:600;line-height:1.4}.jy-page-subtitle{color:var(--jy-ink-2);font-size:.875rem;font-weight:400;line-height:1.4}.jy-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--jy-ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;font-weight:400}.jy-panel-title{color:var(--jy-ink);font-size:1rem;font-weight:600}.jy-panel-title-sm{color:var(--jy-ink);font-size:.875rem;font-weight:600}:root{--jy-tool-examia:#1f4e8c;--jy-tool-examia-dark:#7fa8e0;--jy-tool-evalia:#c85323;--jy-tool-evalia-dark:#e8926b;--jy-tool-dossia:#1e6b54;--jy-tool-dossia-dark:#6fc2a2;--jy-tool-admissia:#0e6a78;--jy-tool-admissia-dark:#66bfcb;--jy-tool-recrutia:#9e2f5d;--jy-tool-recrutia-dark:#d983ac;--jy-tool-place-aux-votes:#a87e12;--jy-tool-place-aux-votes-dark:#d9b45c;--jy-tool-portail-alternances:#3d5a73;--jy-tool-portail-alternances-dark:#93afc6;--jy-tool-ecole:#3e2965;--jy-tool-ecole-dark:#b79fe0;--jy-tool-promptia:#7a2e8c;--jy-tool-promptia-dark:#c77fd6;--jy-tool-prog-pilot:#6e5200;--jy-tool-prog-pilot-dark:#f9d948;--jy-warn:#92610c;--jy-warn-bg:#fbf3e4}:root.dark{--jy-warn:#e4b45e;--jy-warn-bg:#2e2415}:root{--jy-success-bg:#e9f6ee}:root.dark{--jy-success-bg:#1e2f25}
:root{--jy-dom:#f9d948;--jy-dom-text:#6e5200;--jy-dom-dark:#f9d948;--jy-primary-bg:var(--jy-dom);--jy-primary-fg:#191c21;--jy-on-dom:#191c21;--jy-sb-brand-bg:var(--jy-dom);--jy-sb-brand-fg:#191c21;--jy-font:var(--font-inter), Inter, system-ui, sans-serif;--bg:var(--jy-paper);--bg-tint:none;--surface:var(--jy-surface);--surface-muted:var(--jy-line-soft);--foreground:var(--jy-ink);--muted:var(--jy-ink-2);--line:var(--jy-line);--line-strong:var(--jy-line);--brand:var(--jy-primary-bg);--brand-strong:var(--jy-dom-text);--brand-contrast:var(--jy-primary-fg);--brand-soft:#fdf6dc;--accent:var(--jy-accent);--accent-soft:#fdf6dc;--danger:var(--jy-danger);--danger-soft:var(--jy-danger-bg);--warning:var(--jy-warn);--warning-soft:var(--jy-warn-bg);--success:var(--jy-success);--success-soft:var(--jy-success-bg,#eaf5ee);--radius:var(--jy-radius);--radius-sm:var(--jy-radius);--shadow-sm:none;--shadow-md:none;--shadow-lg:none}:root.dark{--brand-soft:#33301f;--accent-soft:#33301f}.jy-sb-section+.jy-sb-section{border-top:1px solid var(--jy-line);padding-top:12px}*{box-sizing:border-box}html,body{margin:0}html{scrollbar-gutter:stable}body{background:var(--bg);background-image:var(--bg-tint);color:var(--foreground);-webkit-font-smoothing:antialiased;background-attachment:fixed;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--brand-strong);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em}:is(.jy-sidebar,.jy-sb-head,.jy-page-head) :is(h1,h2,h3,h4,p,ul,ol){margin:0}:is(.jy-sidebar,.jy-sb-head,.jy-page-head) button{padding:0}.jy-sb-head :is(h1,h2,h3){font-size:1.125rem;font-weight:600;line-height:1.5}.driver-popover.prog-pilot-tour-popover{border-radius:var(--jy-radius);border:1px solid var(--jy-line);background-color:var(--jy-surface);color:var(--jy-ink);font-family:var(--jy-font)}.driver-popover.prog-pilot-tour-popover .driver-popover-title{color:var(--jy-ink);font-size:15px;font-weight:600}.driver-popover.prog-pilot-tour-popover .driver-popover-description{color:var(--jy-ink-2);font-size:13px}.driver-popover.prog-pilot-tour-popover .driver-popover-progress-text{color:var(--jy-ink-2);font-size:12px}.driver-popover.prog-pilot-tour-popover .driver-popover-close-btn{color:var(--jy-ink-2)}.driver-popover.prog-pilot-tour-popover .driver-popover-close-btn:hover,.driver-popover.prog-pilot-tour-popover .driver-popover-close-btn:focus{color:var(--jy-ink)}.driver-popover.prog-pilot-tour-popover .driver-popover-footer-btn{border-radius:var(--jy-radius);border:1px solid var(--jy-line);background-color:var(--jy-surface);color:var(--jy-ink);text-shadow:none;padding:4px 10px}.driver-popover.prog-pilot-tour-popover .driver-popover-footer-btn:hover,.driver-popover.prog-pilot-tour-popover .driver-popover-footer-btn:focus{background-color:var(--jy-line-soft)}.driver-popover.prog-pilot-tour-popover .driver-popover-next-btn{border-color:var(--jy-primary-bg);background-color:var(--jy-primary-bg);color:var(--jy-primary-fg)}.driver-popover.prog-pilot-tour-popover .driver-popover-next-btn:hover,.driver-popover.prog-pilot-tour-popover .driver-popover-next-btn:focus{background-color:var(--jy-primary-bg);filter:brightness(.92)}.driver-popover.prog-pilot-tour-popover .driver-popover-arrow-side-left{border-left-color:var(--jy-surface)}.driver-popover.prog-pilot-tour-popover .driver-popover-arrow-side-right{border-right-color:var(--jy-surface)}.driver-popover.prog-pilot-tour-popover .driver-popover-arrow-side-top{border-top-color:var(--jy-surface)}.driver-popover.prog-pilot-tour-popover .driver-popover-arrow-side-bottom{border-bottom-color:var(--jy-surface)}.brand{align-items:center;gap:12px;padding:4px 6px;display:flex}.nav{gap:4px;display:grid}.nav a{color:#c7c9ef;border-radius:var(--radius-sm);align-items:center;gap:10px;padding:11px 13px;font-size:14.5px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav a:hover{color:#fff;background:#ffffff12;text-decoration:none}.nav a.active{background:var(--brand);color:var(--brand-contrast);box-shadow:none}.nav-footer{margin-bottom:4px}.nav-footer a{padding:8px 13px;font-size:14px}.content{width:100%;min-width:0;max-width:none;padding:36px 40px 56px}.content-wide{max-width:none}.email-copy{font:inherit;color:var(--brand-strong);cursor:pointer;text-align:left;background:0 0;border:0;margin:0;padding:0}.email-copy:hover{text-decoration:underline}.login-page{isolation:isolate;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.login-scene{z-index:-1;background-image:repeating-linear-gradient(90deg,#191c210d 0 1px,#0000 1px 84px),repeating-linear-gradient(#191c210a 0 1px,#0000 1px 60px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 50% 45%,#000 30%,#0000 78%);mask-image:radial-gradient(120% 90% at 50% 45%,#000 30%,#0000 78%)}.login-slot{height:46px;box-shadow:var(--shadow-sm);border-left:3px solid;border-radius:10px;animation:14s ease-in-out infinite alternate login-drift;position:absolute}.slot-brand{background:var(--brand-soft);border-left-color:var(--brand)}.slot-accent{background:var(--accent-soft);border-left-color:var(--accent)}.slot-success{background:var(--success-soft);border-left-color:var(--success)}.slot-a{width:168px;top:16%;left:9%}.slot-b{width:132px;animation-duration:17s;animation-delay:-4s;top:68%;left:14%}.slot-c{width:148px;animation-duration:16s;animation-delay:-8s;top:24%;right:10%}.slot-d{width:116px;animation-duration:19s;animation-delay:-11s;top:72%;right:15%}@keyframes login-drift{0%{transform:translateY(-9px)}to{transform:translateY(9px)}}.login-panel{flex-direction:column;gap:24px;width:100%;max-width:400px;display:flex}.login-hero{text-align:center;flex-direction:column;align-items:center;gap:4px;animation:.5s ease-out both login-rise;display:flex}.login-logo{width:60px;height:60px;box-shadow:none;border-radius:16px;margin-bottom:12px}.login-wordmark{letter-spacing:-.03em;margin:0;font-size:32px;font-weight:800;line-height:1.15}.login-tagline{color:var(--muted);margin:0;font-size:14px}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);flex-direction:column;gap:16px;padding:32px;animation:.5s ease-out .1s both login-rise;display:flex}.login-card-head{gap:2px;display:grid}.login-card-head h2{margin:0;font-size:20px;font-weight:800}.login-card-head p{color:var(--muted);margin:0;font-size:14px}.login-help{text-align:center;color:var(--muted);margin:0;font-size:13px;animation:.5s ease-out .2s both login-rise}@keyframes login-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.login-slot,.login-hero,.login-card,.login-help{animation:none}}@media (max-width:640px){.login-slot{display:none}}.login-card label{gap:6px;font-size:14px;font-weight:600;display:grid}.login-card input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}.login-card input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.login-card .button.primary{justify-content:center}.login-error{color:var(--danger);margin:0;font-size:14px;font-weight:600}.account-grid{gap:20px;max-width:560px;display:grid}.account-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);gap:16px;padding:24px;display:grid}.account-card h2{margin:0;font-size:17px}.card-hint{color:var(--muted);margin:0;font-size:13px}.avatar-circle{background:var(--brand-soft);color:var(--brand-strong);border:1px solid var(--line);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar-circle img{object-fit:cover;width:100%;height:100%}.avatar-circle-lg{width:64px;height:64px;font-size:22px}.avatar-circle-sm{color:#c7c9ef;background:#ffffff1f;border-color:#ffffff40;width:26px;height:26px;font-size:11px}.account-avatar-row{align-items:center;gap:16px;display:flex}.account-avatar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.account-avatar-actions .card-hint{flex-basis:100%}.account-inline-form{align-items:end;gap:10px;display:flex}.account-inline-form label{flex:1;gap:6px;font-size:14px;font-weight:600;display:grid}.account-inline-form .card-hint{flex-basis:100%;margin:0}.account-email-form{flex-wrap:wrap}.account-email-form label{min-width:180px}.account-facts{gap:8px;margin:0;font-size:14px;display:grid}.account-facts>div{justify-content:space-between;gap:16px;display:flex}.account-facts dt{color:var(--muted);font-weight:600}.account-facts dd{text-align:right;margin:0}.session-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.session-item{border:1px solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:14px;display:flex}.session-badge-current{color:var(--success);background:var(--success-soft);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.account-form{flex-direction:column;gap:16px;display:flex}.account-form label{gap:6px;font-size:14px;font-weight:600;display:grid}.account-form input,.account-inline-form input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}.account-form input:focus,.account-inline-form input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.account-feedback-ok{color:var(--success);margin:0;font-size:14px;font-weight:600}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-header h1{margin:0 0 6px;font-size:30px;font-weight:800}.page-header p{color:var(--muted);max-width:70ch;margin:0}.year-select{color:var(--muted);flex-direction:column;flex-shrink:0;gap:4px;font-size:13px;font-weight:600;display:flex}.year-select select{font:inherit;color:var(--foreground);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer;padding:8px 12px;font-size:14px}.toolbar{gap:10px;display:flex}.button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--foreground);cursor:pointer;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;transition:transform 50ms,box-shadow .15s,background .15s,border-color .15s;display:inline-flex}.button:hover{border-color:var(--brand);color:var(--brand-strong);box-shadow:var(--shadow-sm);text-decoration:none}.button:active{transform:translateY(1px)}.button.primary{background:var(--brand);color:var(--brand-contrast);box-shadow:none;border-color:#0000}.button.primary:hover{color:#fff;filter:brightness(1.05)}.button.danger{border-color:var(--danger);color:var(--danger);background:var(--surface)}.button.danger:hover{background:var(--danger-soft);color:var(--danger)}.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:18px 18px 18px 22px;position:relative;overflow:hidden}.stat:before{content:"";background:var(--brand);width:5px;position:absolute;top:0;bottom:0;left:0}.stat span{color:var(--muted);font-size:13px;font-weight:600}.stat strong{color:var(--foreground);margin-top:8px;font-size:30px;font-weight:800;display:block}.acceptance{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:24px;padding:20px 24px}.acceptance-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 16px;font-size:12px;font-weight:700}.acceptance-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.acceptance-item{grid-template-columns:minmax(120px,200px) 1fr 60px;align-items:center;gap:14px;display:grid}.acceptance-promo{font-weight:600}.acceptance-bar{background:var(--surface-muted);border-radius:999px;height:10px;overflow:hidden}.acceptance-fill{border-radius:999px;height:100%;transition:width .3s;display:block}.acceptance-pct{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.download-cards{grid-template-columns:1fr;gap:24px;margin-bottom:24px;display:grid}.download-cards .acceptance{margin-bottom:0}@media (min-width:901px){.download-cards{grid-template-columns:1fr 1fr;align-items:start}}.missioned-hint{color:var(--muted);margin:0 0 12px;font-size:13px}.course-tools{flex-wrap:wrap;align-items:flex-start;gap:12px;margin-bottom:24px;display:flex}.course-tools .add-toggle{margin-bottom:0}.course-tools .form-grid{flex:100%;margin-bottom:0}.duplicate-note{color:var(--muted);grid-column:1/-1;margin:0;font-size:13px}.duplicate-list{border:1px solid var(--line);border-radius:var(--radius-sm);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px 18px;margin:0;padding:12px 14px;display:grid}.duplicate-list legend{color:var(--muted);padding:0 4px;font-size:13px;font-weight:700}.form-grid label.duplicate-item{cursor:pointer;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:400;display:flex}.duplicate-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand-strong);cursor:pointer;flex:none}.duplicate-item-title{overflow-wrap:anywhere;min-width:0}.form-grid label.duplicate-item.exists{color:var(--muted);cursor:default}.duplicate-exists{color:var(--warning);white-space:nowrap;margin-left:auto;font-size:12px}.course-template{grid-column:1/-1}.course-template-hint{color:var(--muted);margin-top:4px;font-size:12px;font-weight:400;display:block}.copy-all-emails{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 12px;font-size:13px;display:flex}.copy-all-emails-link{font:inherit;color:var(--brand-strong);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.copy-all-emails-link:hover,.copy-all-emails-link:focus-visible{color:var(--brand)}.copy-all-emails-note{color:var(--muted)}.copy-all-emails-error{color:var(--danger)}.missioned-list{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.missioned-chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--foreground);font:inherit;cursor:pointer;border-radius:999px;align-items:center;padding:8px 14px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.missioned-chip:hover{background:var(--brand-soft);border-color:var(--brand)}.missioned-chip:active{transform:translateY(1px)}.missioned-chip.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.missioned-chip.is-sent{border-color:var(--success);background:var(--success-soft);color:var(--success)}.missioned-chip.is-sent.is-active{background:var(--brand);border-color:var(--brand);color:#fff}.missioned-chip.is-pending{border:2px solid #d97706;padding:7px 13px}.missioned-chip.is-pending.is-active{border-color:var(--brand)}.missioned-chip-icon{margin-left:8px;font-size:13px;line-height:1}.email-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted);margin-top:16px;padding:16px;animation:.18s email-slide;overflow:hidden}@keyframes email-slide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.email-panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.email-panel-title{margin:0;font-size:15px;font-weight:700}.email-panel-identity{flex-direction:column;gap:4px;min-width:0;display:flex}.email-panel-name{font:inherit;color:var(--brand-strong);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.email-panel-name:hover{text-decoration-style:solid}.email-panel-noemail{color:var(--muted);font-size:13px}.trainer-fiche{gap:14px;margin:0 0 4px;display:grid}.trainer-fiche-row{min-width:0}.trainer-fiche dt{color:var(--muted);margin:0;font-size:13px;font-weight:700}.trainer-fiche dd{word-break:break-word;margin:4px 0 0}.email-panel-head-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.mission-sent-toggle.is-sent{border-color:var(--success);background:var(--success-soft);color:var(--success)}.mission-sent-toggle:disabled{opacity:.6;cursor:progress}.email-panel-status{color:var(--muted);margin:0;font-size:14px}.email-toolbar{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.email-toolbar button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-width:34px;color:var(--foreground);cursor:pointer;padding:6px 10px;font-size:13px;transition:background .15s,border-color .15s}.email-toolbar button:hover{background:var(--brand-soft);border-color:var(--brand)}.email-editor{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);outline:none;min-height:280px;padding:16px 18px;font-size:14px;line-height:1.6}.email-editor:focus{border-color:var(--brand)}.email-editor p{margin:0 0 12px}.email-editor ul{margin:0 0 12px;padding-left:22px}.email-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.trainer-comment{white-space:pre-wrap;word-break:break-word;max-width:220px;color:var(--muted);font-size:13px}.planning{border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;box-shadow:var(--shadow-sm);overflow:hidden}.planning th,.planning td{text-align:left;border-bottom:1px solid var(--line);padding:14px 16px}.planning th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:var(--surface-muted);font-size:12px;font-weight:700}.planning tbody tr:last-child td{border-bottom:none}.planning tbody tr:hover td{background:var(--brand-soft)}.cell-link{font:inherit;color:var(--brand-strong);text-align:left;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .15s}.cell-link:hover,.cell-link:focus-visible{text-decoration-color:currentColor}.trainer-modules{gap:8px;margin:0;padding-left:20px;display:grid}.trainer-modules-promo{color:var(--muted);font-size:13px}.conflict-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);grid-template-columns:1fr 280px;align-items:center;gap:16px;margin-bottom:24px;padding:20px;display:grid}.conflict-panel h2{margin:0 0 6px;font-size:18px}.conflict-panel p{color:var(--muted);margin:0}.conflict-panel select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}.conflict-alert,.conflict-ok{border-radius:var(--radius-sm);grid-column:1/-1;padding:12px 14px;font-weight:700}.conflict-alert{background:var(--danger-soft);color:var(--danger)}.conflict-ok{background:var(--success-soft);color:var(--success)}.status{border-radius:999px;justify-content:center;align-items:center;gap:6px;min-width:110px;padding:5px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.status.red{background:var(--danger-soft);color:var(--danger)}.status.orange{background:var(--warning-soft);color:var(--warning)}.status.green{background:var(--success-soft);color:var(--success)}.status.info{background:var(--brand-soft);color:var(--brand-strong)}.trainer-tip{display:inline-flex;position:relative}.trainer-info{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:inline-flex}.trainer-tip-bubble{z-index:30;background:var(--foreground);width:max-content;max-width:240px;color:var(--surface);text-align:center;white-space:normal;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;padding:7px 11px;font-size:12px;font-weight:600;line-height:1.35;transition:opacity .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.trainer-tip-bubble:after{content:"";border:5px solid #0000;border-top-color:var(--foreground);position:absolute;top:100%;left:50%;transform:translate(-50%)}.trainer-tip:hover .trainer-tip-bubble,.trainer-info:focus-visible+.trainer-tip-bubble,.trainer-tip-bubble.open{opacity:1;visibility:visible}.form-grid{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:980px;box-shadow:var(--shadow-sm);grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;margin-bottom:24px;padding:22px;display:grid}.form-grid.wide{grid-template-columns:repeat(3,minmax(220px,1fr));max-width:none}.form-grid label{gap:6px;font-size:14px;font-weight:600;display:grid}.form-grid label .optional{color:var(--muted,#6b7280);font-weight:400}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;padding:10px 12px;transition:border-color .15s,box-shadow .15s}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.filters input:focus,.filters select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.form-field{align-content:start;gap:6px;font-size:14px;font-weight:600;display:grid}.specialty-picker{font-weight:400;position:relative}.specialty-picker-box{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:text;flex-wrap:wrap;align-items:center;gap:6px;padding:5px 8px;transition:border-color .15s,box-shadow .15s;display:flex}.specialty-picker:focus-within .specialty-picker-box{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.specialty-picker-box input,.form-grid .specialty-picker-box input,.trainer-edit .specialty-picker-box input{background:0 0;border:none;flex:120px;width:auto;min-width:0;padding:5px 4px}.specialty-picker-box input:focus,.form-grid .specialty-picker-box input:focus,.trainer-edit .specialty-picker-box input:focus{box-shadow:none;border:none;outline:none}.specialty-tag{align-items:center;gap:5px;display:inline-flex}.specialty-tag button{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.specialty-tag button:hover{opacity:1}.specialty-panel{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);max-height:320px;box-shadow:var(--shadow-md);padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.specialty-option{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:8px 10px;font-size:14px;display:flex}.specialty-option.active,.specialty-option:hover{background:var(--brand-soft)}.specialty-option-category{color:var(--muted);white-space:nowrap;font-size:12px}.specialty-create{color:var(--brand-strong);border-top:1px solid var(--line);border-radius:0 0 8px 8px;font-weight:600}.specialty-create-panel{border-top:1px solid var(--line);gap:10px;padding:10px;display:grid}.specialty-create-panel p{color:var(--muted);margin:0;font-size:13px}.specialty-create-panel label{gap:4px;font-size:13px;font-weight:600;display:grid}.specialty-create-panel select,.specialty-create-panel input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;padding:8px 10px;font-weight:400}.specialty-create-error{color:var(--danger);margin:0;font-size:13px;font-weight:600}.specialty-create-actions{gap:8px;display:flex}.form-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;margin-top:12px;display:flex}.form-feedback{color:var(--brand-strong);margin:-8px 0 24px;font-weight:600}.empty-row{text-align:center;color:var(--muted);padding:22px}.row-actions{gap:8px;display:flex}.row-actions .button{padding:6px 12px;font-size:13px}.data-table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);margin-top:8px;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;padding:12px 16px}.data-table thead th{background:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px;font-weight:600}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--surface-muted)}.data-table td:last-child,.data-table th:last-child{text-align:right}.data-table .row-actions{justify-content:flex-end}.data-table td code{background:var(--surface-muted);border-radius:var(--radius-sm);color:var(--muted);padding:2px 7px;font-size:12px}.data-table select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:6px 10px;font-size:13px}.data-table .empty-row,.data-table td.empty-row{text-align:center}.cv-cell{align-items:center;gap:6px;display:inline-flex}.cv-link,.cv-add,.cv-mini{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;place-items:center;line-height:1;text-decoration:none;display:inline-grid}.cv-link,.cv-add{width:32px;height:30px;font-size:16px}.cv-add{opacity:.55}.cv-link:hover,.cv-add:hover{border-color:var(--brand);background:var(--brand-soft);opacity:1;text-decoration:none}.cv-mini{width:26px;height:26px;color:var(--muted);font-size:13px}.cv-mini:hover{border-color:var(--brand);color:var(--foreground)}.cv-mini.danger:hover{border-color:var(--danger);color:var(--danger)}.cv-link:disabled,.cv-add:disabled,.cv-mini:disabled{opacity:.4;cursor:not-allowed}.export-actions{flex-wrap:wrap;gap:12px;display:flex}.filters{grid-template-columns:260px 1fr;gap:16px;max-width:720px;margin-bottom:24px;display:grid}.filters label{gap:6px;min-width:0;font-size:14px;font-weight:600;display:grid}.filters select,.filters input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;padding:10px 12px}.filters-trainers{grid-template-columns:1fr 200px 180px 170px;max-width:1040px}.filters-courses{grid-template-columns:repeat(5,minmax(150px,1fr));max-width:1200px}.filters-planning{grid-template-columns:repeat(4,minmax(150px,1fr));max-width:1040px}.filters-livrets{grid-template-columns:minmax(140px,180px) minmax(200px,1fr) minmax(150px,210px) minmax(170px,230px);max-width:960px}.trainer-edit{grid-template-columns:repeat(3,minmax(160px,1fr));align-items:end;gap:14px;padding:6px 0;display:grid}.trainer-edit label{gap:6px;font-size:13px;font-weight:600;display:grid}.trainer-edit input,.trainer-edit select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);font:inherit;padding:9px 11px}.trainer-edit-actions{grid-column:1/-1;gap:10px;display:flex}.row-editing td{background:var(--brand-soft)}.filters-programming{flex-direction:column;gap:12px;max-width:none;display:flex}.programming-selectors{flex-wrap:wrap;gap:16px;display:flex}.programming-selectors>label{flex:1;min-width:240px;max-width:320px}.filters-action{gap:12px;display:flex}.filters-action>.button{flex:1;justify-content:center}.planning td select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:160px;padding:8px 10px}.planning td select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.schedule-input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);font:inherit;padding:7px 9px}.schedule-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.schedule-times{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.saved-flag{color:var(--success);white-space:nowrap;align-items:center;font-size:12.5px;font-weight:700;display:inline-flex}.status-toggle{background:var(--surface-muted);border:1px solid var(--line);border-radius:999px;gap:4px;padding:3px;display:inline-flex}.status-emoji{cursor:pointer;filter:grayscale()opacity(.45);background:0 0;border:none;border-radius:999px;padding:4px 7px;font-size:17px;line-height:1;transition:filter .12s,background .12s,transform 50ms}.status-emoji:hover{filter:grayscale(0)opacity(.85);background:var(--jy-line-soft)}.status-emoji.active{filter:none;background:var(--surface);box-shadow:var(--shadow-sm)}.status-emoji:active{transform:scale(.92)}.conflict-banner{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);border:1px solid #f6c9d1;margin:0 0 18px;padding:12px 16px;font-weight:700}.planning select.needs-value{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger) inset}.planning tr.has-conflict>td{border-bottom:none}.planning tr.conflict-row>td{padding-top:0}.conflict-note{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);border:1px solid #f6c9d1;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.conflict-note .button.forcing{background:var(--danger);color:#fff;border-color:var(--danger);white-space:nowrap;margin-left:auto;padding:6px 14px;font-size:12px}.conflict-note .button.forcing:hover{filter:brightness(.94)}.conflict-note.module-conflict{margin:12px 0;display:block;position:relative}.conflict-note.module-conflict p{margin:0 24px 8px 0}.conflict-note.module-conflict ul{margin:0;padding-left:18px;font-weight:500}.conflict-note.module-conflict .modal-close{position:absolute;top:8px;right:10px}.blacklist-toggle{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.blacklist-toggle input{width:16px;height:16px;accent-color:var(--danger);cursor:pointer}.row-blacklisted td{background:var(--danger-soft)}.row-blacklisted td:first-child{color:var(--danger);font-weight:700}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{background:var(--brand-soft);color:var(--brand-strong);white-space:nowrap;border:1px solid #dfe1fb;border-radius:999px;align-items:center;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.course-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.course-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow .15s,border-color .15s;overflow:visible}.course-card:hover{box-shadow:var(--shadow-md);border-color:var(--line-strong)}.course-row{justify-content:space-between;align-items:center;gap:16px;padding-right:20px;display:flex}.course-head{border-top-left-radius:var(--radius);text-align:left;cursor:pointer;background:0 0;border:none;flex:auto;align-items:center;gap:16px;min-width:0;padding:16px 20px;display:flex}.course-head:hover{background:var(--surface-muted)}.course-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.course-title strong{font-size:16px}.course-group{background:var(--brand-soft);color:var(--brand-strong);letter-spacing:.02em;border-radius:8px;align-items:center;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.course-year{background:var(--accent-soft);color:#b4502b;border-radius:8px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.course-spec{color:var(--muted);font-size:13px}.edit-row{grid-template-columns:1fr 200px;gap:14px;display:grid}@media (max-width:720px){.edit-row{grid-template-columns:1fr}}.course-badges{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.course-hours{color:var(--foreground);background:var(--surface-muted);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}.course-detail{border-top:1px solid var(--line);border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius);background:var(--surface-muted);gap:16px;padding:20px;display:grid}.objective-block{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:16px}.objective-hours{background:var(--brand);color:var(--brand-contrast);border-radius:999px;margin-bottom:14px;padding:4px 14px;font-size:13px;font-weight:700;display:inline-flex}.objective-fields{grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;margin:0;display:grid}.objective-field dt{text-transform:uppercase;letter-spacing:.03em;color:var(--brand-strong);margin-bottom:4px;font-size:12px;font-weight:700}.objective-field dd{white-space:pre-wrap;color:var(--foreground);margin:0}.objective-field dd.missing{color:var(--danger);font-style:italic;font-weight:600}.course-detail-actions{justify-content:flex-end;gap:10px;display:flex}.courses-summary{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.courses-summary .course-hours{background:var(--brand);color:var(--brand-contrast);border-color:#0000;font-size:14px}.courses-summary-count{color:var(--muted,var(--foreground));font-size:13px}.bulk-actions{justify-content:flex-end;margin-bottom:16px;display:flex}.add-toggle{margin-bottom:20px}.course-add{border-color:var(--brand)}.edit-title{gap:6px;font-size:14px;font-weight:700;display:grid}.edit-title input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:10px 12px}.edit-checkbox{cursor:pointer;align-items:flex-start;gap:10px;margin:14px 0;font-size:14px;font-weight:600;line-height:1.4;display:flex}.edit-checkbox input{flex:none;margin-top:2px}.objective-field-edit{text-transform:uppercase;letter-spacing:.03em;color:var(--brand-strong);gap:6px;font-size:12px;font-weight:700;display:grid}.objective-field-edit textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);font:inherit;text-transform:none;letter-spacing:normal;color:var(--foreground);padding:10px 12px;font-weight:400}.edit-title input:focus,.objective-field-edit textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft);outline:none}.modal-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;background:#18173480;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--surface);width:min(560px,100%);max-height:90vh;box-shadow:var(--shadow-lg);border-radius:18px;padding:26px;overflow-y:auto}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;display:flex}.modal-head h2{margin:0;font-size:20px;font-weight:800}.modal-close{cursor:pointer;color:var(--muted);background:0 0;border:none;font-size:26px;line-height:1}.modal-close:hover{color:var(--foreground)}.modal-desc{color:var(--muted);margin:0 0 12px}.modal-columns{color:var(--muted);background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 16px;padding:10px 12px;font-size:13px}.modal-steps{gap:12px;margin:0 0 16px;padding-left:20px;display:grid}.modal-file{gap:6px;font-size:14px;display:grid}.modal-file span{color:var(--muted);font-size:13px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.module-info{gap:18px;display:grid}.module-info-block{border-top:1px solid var(--line);padding-top:14px}.module-info-block:first-child{border-top:none;padding-top:0}.module-info-hours{color:var(--muted);margin:0 0 10px;font-weight:700}.module-info dl{gap:12px;margin:0;display:grid}.module-info dt{color:var(--muted);font-size:13px;font-weight:700}.module-info dd{white-space:pre-wrap;margin:4px 0 0}.module-dates-promo{font-weight:700}.module-dates{margin:0;padding:0;list-style:none}.module-date{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(150px,1fr) auto 1fr;align-items:baseline;gap:12px;padding:8px 10px;font-size:14px;display:grid}.module-date-index{opacity:.75;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.module-date:last-child{border-bottom:none}.module-date-time{font-variant-numeric:tabular-nums}.module-date-trainer{text-align:right}.module-date.past{color:var(--muted)}.module-date.current{color:var(--success);background:var(--success-soft);border-radius:6px;font-weight:700}.module-date.upcoming{color:var(--success)}@media (max-width:900px){.nav{grid-template-columns:1fr}.content{padding:20px 16px 40px;overflow-x:auto}.page-header{flex-direction:column;align-items:flex-start}.stats{grid-template-columns:repeat(2,minmax(140px,1fr))}.conflict-panel{grid-template-columns:1fr}.form-grid,.form-grid.wide,.filters,.filters-trainers,.filters-courses,.filters-planning,.filters-livrets,.trainer-edit,.objective-fields{grid-template-columns:1fr;max-width:none}.programming-selectors>label{max-width:none}.filters-action{flex-wrap:wrap}.course-row{flex-direction:column;align-items:flex-start;gap:0;padding-right:0}.course-badges{padding:0 20px 16px}}.emails-config{gap:28px;display:grid}.emails-section{border:1px solid var(--line);border-radius:var(--radius-md,12px);background:var(--surface);padding:20px 22px}.emails-section h2{margin:0 0 14px;font-size:16px}.emails-hint{color:var(--text-muted,#666);margin:6px 0 12px;font-size:13px}.emails-hint code{background:var(--surface-muted,#f1f1f4);border-radius:4px;padding:1px 6px;font-size:12px}.emails-preview{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-muted,#fafafb);margin-top:16px;padding:14px 16px}.emails-preview-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#888);margin-bottom:8px;font-size:11px;display:block}.emails-preview-subject{margin:0 0 10px;font-weight:700}.emails-preview-body{font-size:14px;line-height:1.5}.emails-editor-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 0 8px;font-size:11px;display:block}.emails-preview-frame{border-radius:var(--radius-sm);background:#f5f6fb;border:0;width:100%;height:620px;display:block}.emails-msg{color:var(--text-muted,#555);font-size:13px}.emails-msg.is-error-text{color:var(--danger)}.emails-key-row{max-width:480px}.emails-test{border-top:1px solid var(--line);flex-direction:column;gap:14px;margin-top:18px;padding-top:16px;display:flex}.emails-test .edit-title{max-width:360px}.emails-test-cc{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:12px 14px}.emails-test-cc legend{padding:0 6px;font-size:13px;font-weight:700}.emails-radio{cursor:pointer;align-items:center;gap:6px;margin:4px 16px 4px 0;font-size:14px;display:inline-flex}.emails-radio small{color:var(--text-muted,#888)}.emails-radio-empty{color:var(--text-muted,#aaa);font-size:12px;font-style:italic}.emails-test-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.emails-cc-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.emails-cc-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.emails-cc-promo{flex:0 0 140px;font-size:14px;font-weight:700}.emails-cc-promo small{color:var(--text-muted,#888);font-weight:400;display:block}.emails-cc-row input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);flex:320px;padding:9px 12px}.emails-log-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.emails-log-head h2{margin:0}.emails-log-table-wrap{overflow-x:auto}.emails-log-table{border-collapse:collapse;width:100%;font-size:13px}.emails-log-table th,.emails-log-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}.emails-log-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted,#888);font-size:11px}.emails-status{border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.emails-status.is-ok{color:#1c7a3f;background:#e3f7ea}.emails-status.is-pending{color:#1f5fbf;background:#e6effb}.emails-status.is-error{color:#b42323;background:#fce6e6}.emails-status.is-neutral{color:#555;background:#eee}.button.button-sm{padding:4px 10px;font-size:12px}.livrets-list{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.livret-row{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.livret-grade-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:flex}.livret-grade-toggle input{width:16px;height:16px;accent-color:var(--accent,#2563eb);cursor:pointer}.livret-grade-label{color:var(--text-muted,#666);font-size:12px;font-weight:600}.livret-main{flex-direction:column;flex:1;gap:2px;min-width:240px;display:flex}.livret-module{font-weight:700}.livret-status{width:fit-content;font-size:12px;font-weight:600}.livret-status.is-filled{color:#1c7a3f}.livret-status.is-empty{color:var(--text-muted,#999)}.livret-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.livret-public{background:var(--bg);background-image:var(--bg-tint);background-attachment:fixed;justify-content:center;min-height:100vh;padding:40px 16px;display:flex}.livret-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:680px;height:fit-content;box-shadow:var(--shadow-md);overflow:hidden}.livret-banner{background:var(--brand);color:var(--brand-contrast);letter-spacing:.14em;text-transform:uppercase;padding:20px 32px;font-size:12px;font-weight:700}.livret-module-card{background:var(--brand-soft);border-bottom:1px solid var(--line);padding:24px 32px}.livret-overline{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-strong);margin:0 0 6px;font-size:11px;font-weight:700}.livret-module-card h1{color:var(--foreground);margin:0 0 12px;font-size:21px;font-weight:700;line-height:1.3}.livret-module-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.livret-pill{background:var(--brand-strong);color:var(--brand-contrast);border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.livret-trainers{color:var(--muted);font-size:13px}.livret-trainers strong{color:var(--foreground)}.livret-body{padding:6px 32px 24px}.livret-invalid{text-align:center;padding:28px 32px 32px}.livret-invalid h1{margin:0 0 10px;font-size:21px}.livret-foot{background:var(--surface-muted);border-top:1px solid var(--line);color:var(--muted);padding:14px 32px;font-size:12px;line-height:1.5}.livret-section{border-bottom:1px solid var(--line);padding:18px 0}.livret-section h2{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-strong);margin:0 0 12px;font-size:12px;font-weight:700}.livret-list-row{gap:8px;margin-bottom:8px;display:flex}.livret-list-row input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);flex:1;padding:9px 12px}.livret-split{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.livret-split input[type=range]{flex:240px}.livret-split-values{gap:18px;font-size:14px;display:flex}.livret-toggle{cursor:pointer;align-items:center;gap:10px;font-weight:600;display:flex}.livret-hint{color:var(--text-muted,#777);margin:-6px 0 10px;font-size:13px}.livret-textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;font:inherit;resize:vertical;padding:10px 12px}.livret-actions-bar{flex-wrap:wrap;align-items:center;gap:14px;padding-top:18px;display:flex}.livret-msg{color:var(--muted);font-size:13px}@media (max-width:640px){.livret-public{padding:16px 10px}.livret-banner,.livret-module-card,.livret-foot{padding-left:20px;padding-right:20px}.livret-body{padding:4px 20px 20px}}.suivi-card{max-width:880px}.suivi-body{padding:20px 32px 24px}.view-toggle.suivi-promos{flex-wrap:wrap;justify-content:center;width:fit-content;margin-left:auto;margin-right:auto;display:flex}.suivi-promos button small{color:inherit;opacity:.75;margin-left:4px;font-weight:500}.suivi-count{color:var(--muted);margin:0 0 12px;font-size:13px}.suivi-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.suivi-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.suivi-item summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:12px;padding:13px 16px;list-style:none;display:flex}.suivi-item summary:before{content:"▸";color:var(--brand-strong);font-size:12px}.suivi-item[open] summary:before{content:"▾"}.suivi-item-title{font-weight:700}.suivi-item-date{color:var(--muted);font-size:12.5px}.suivi-item summary .livret-status{margin-left:auto}.suivi-item-body{border-top:1px solid var(--line);padding:14px 16px 18px}.suivi-item-body .livret-overline{margin-top:14px}.suivi-line{margin:0;font-size:14px}.suivi-text{white-space:pre-wrap}.suivi-chapters{gap:3px;margin:0;padding-left:20px;font-size:14px;display:grid}@media (max-width:640px){.suivi-body{padding:16px 20px 20px}}.review-link-card{background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:18px;margin-bottom:18px;padding:14px 18px;display:flex}.review-link-main{flex:340px;gap:4px;display:grid}.review-link-title{font-weight:700}.review-link-hint{color:var(--muted);font-size:13px}.review-link-card .livret-status{justify-self:start}.review-link-year{align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.review-link-year select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:8px 10px}.star-rating{gap:2px;display:inline-flex}.star-rating .star{cursor:pointer;color:var(--line-strong,#cbd5e1);background:0 0;border:none;padding:0 1px;font-size:18px;line-height:1;transition:color .1s}.star-rating .star.filled{color:#f5a623}.star-rating .star:disabled{cursor:default}.share-msg{color:var(--text-muted,#555);white-space:nowrap;font-size:12px}.fiche-head{color:#fff;background:#1f2937;padding:26px 32px 30px}.fiche-overline{letter-spacing:.18em;text-transform:uppercase;color:#ffffffb8;margin:0 0 6px;font-size:11px;font-weight:600}.fiche-head h1{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:800}.fiche-rows{gap:22px;margin:0;padding:26px 32px 6px;display:grid}.fiche-row{align-items:flex-start;gap:12px;display:flex}.fiche-icon{color:#1f2937;flex:none;width:18px;height:18px;margin-top:1px}.fiche-row dt{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:11.5px;font-weight:700}.fiche-row dd{color:var(--foreground);margin:0;font-size:15px}.fiche-actions{flex-wrap:wrap;gap:12px;padding:20px 32px 28px;display:flex}.nav a:hover .nav-icon,.nav a.active .nav-icon{opacity:1}.help-search{align-items:center;margin-bottom:14px;display:flex;position:relative}.help-search-icon{pointer-events:none;opacity:.7;font-size:16px;position:absolute;left:16px}.help-search-input{width:100%;color:var(--foreground);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 44px;font-size:15.5px;transition:border-color .15s,box-shadow .15s}.help-search-input:focus{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);outline:none}.help-search-clear{width:26px;height:26px;color:var(--muted);background:var(--surface-muted);cursor:pointer;border:none;border-radius:50%;place-items:center;font-size:13px;line-height:1;display:grid;position:absolute;right:12px}.help-search-clear:hover{background:var(--line);color:var(--foreground)}.help-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.help-chip{color:var(--muted);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.help-chip:hover{border-color:var(--line-strong);color:var(--foreground)}.help-chip.is-active{color:var(--brand-contrast);background:var(--brand);border-color:var(--brand);box-shadow:none}.help-count{color:var(--muted);margin:0 0 16px;font-size:13px}.help-groups{flex-direction:column;gap:28px;display:flex}.help-group-title{color:var(--foreground);align-items:center;gap:8px;margin:0 0 4px;font-size:18px;font-weight:700;display:flex}.help-group-blurb{color:var(--muted);margin:0 0 12px;font-size:13.5px}.help-articles{flex-direction:column;gap:10px;display:flex}.help-article{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);overflow:hidden}.help-article[open]{border-color:var(--brand-soft)}.help-article-question{color:var(--foreground);cursor:pointer;align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:600;list-style:none;display:flex}.help-article-question::-webkit-details-marker{display:none}.help-article-question:before{content:"＋";width:22px;height:22px;color:var(--brand);background:var(--brand-soft);border-radius:6px;flex:none;place-items:center;font-size:15px;font-weight:700;transition:transform .15s;display:grid}.help-article[open] .help-article-question:before{content:"−"}.help-article-question:hover{background:var(--surface-muted)}.help-article-answer{color:var(--foreground);padding:0 16px 16px 48px}.help-article-answer p{color:#3a4256;margin:0 0 8px;font-size:14px;line-height:1.6}.help-article-answer p:last-child{margin-bottom:0}.help-empty{text-align:center;background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--radius);padding:40px 20px}.help-empty p{color:var(--foreground);margin:0 0 6px;font-weight:600}.help-empty-hint{font-size:14px;color:var(--muted)!important;font-weight:400!important}.help-link-button{color:var(--brand-strong);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}@media (max-width:600px){.help-article-answer{padding-left:16px}}.table-scroll{border-radius:var(--radius);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;width:100%;overflow:auto hidden}.table-scroll .planning{border-radius:0}.planning-trainers{min-width:820px}.trainer-modal{width:min(680px,100%)}.trainer-details{gap:12px;margin:6px 0 20px;display:grid}.trainer-details>div{grid-template-columns:140px 1fr;align-items:center;gap:12px;display:grid}.trainer-details-comment{align-items:start!important}.trainer-details dt{color:var(--muted);font-size:13px;font-weight:600}.trainer-details dd{color:var(--foreground);margin:0}.trainer-modal-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;margin-top:4px}.trainer-edit-modal{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:560px){.trainer-details>div{grid-template-columns:1fr;gap:4px}.trainer-edit-modal{grid-template-columns:1fr}}.planning-trainers th,.planning-trainers td{vertical-align:middle;padding:10px 12px}.planning-trainers th{white-space:nowrap}.planning-trainers tbody tr:nth-child(2n):not(.row-editing):not(.row-blacklisted) td{background:#fbfcff}.planning-trainers tbody tr:hover td{background:var(--brand-soft)}.planning-trainers td .email-copy,.planning-trainers td .status{white-space:nowrap}.planning-trainers .row-actions{flex-wrap:wrap;gap:6px}.view-toggle{border:1px solid var(--line-strong);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:999px;gap:0;margin-bottom:16px;display:inline-flex;overflow:hidden}.view-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:9px 22px;font-size:14px;font-weight:600}.view-toggle button+button{border-left:1px solid var(--line)}.view-toggle button:hover{color:var(--brand-strong)}.view-toggle button.active{background:var(--brand-soft);color:var(--brand-strong)}.planning tbody.is-loading,.calendar-grid.is-loading{opacity:.45;transition:opacity .15s}.pagination{flex-wrap:wrap;align-items:center;gap:20px;margin-top:14px;font-size:14px;display:flex}.pagination-count{color:var(--muted)}.pagination-size{align-items:center;gap:8px;font-weight:600;display:inline-flex}.pagination-size select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);padding:6px 10px}.pagination-nav{align-items:center;gap:12px;margin-left:auto;display:inline-flex}.pagination-nav button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;padding:7px 14px;font-size:13.5px;font-weight:600}.pagination-nav button:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-strong)}.pagination-nav button:disabled{opacity:.45;cursor:default}.calendar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:16px}.calendar-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.calendar-title{text-transform:capitalize;margin:0;font-size:18px;font-weight:700}.calendar-nav{gap:8px;display:inline-flex}.calendar-nav button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;padding:6px 12px;font-size:14px;font-weight:600}.calendar-nav button:hover{background:var(--brand-soft);color:var(--brand-strong)}.calendar-grid{background:var(--line);border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calendar-weekday{background:var(--surface-muted);text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:center;padding:8px 10px;font-size:12px;font-weight:700}.calendar-day{background:var(--surface);flex-direction:column;gap:4px;min-width:0;min-height:108px;padding:6px;display:flex}.calendar-day.out{background:var(--surface-muted)}.calendar-day.out .calendar-day-number{opacity:.4}.calendar-day-number{color:var(--muted);border-radius:999px;align-self:flex-end;padding:1px 6px;font-size:12.5px;font-weight:700}.calendar-day.today .calendar-day-number{background:var(--brand-strong);color:#fff}.calendar-event{white-space:nowrap;text-overflow:ellipsis;cursor:default;border-radius:6px;padding:3px 7px;font-size:11.5px;line-height:1.3;display:block;overflow:hidden}.calendar-event strong{font-variant-numeric:tabular-nums}button.calendar-event{text-align:left;cursor:pointer;border:none;width:100%;font-family:inherit;transition:filter .15s}button.calendar-event:hover,button.calendar-event:focus-visible{filter:brightness(.93)}.calendar-event.green{background:var(--success-soft);color:var(--success)}.calendar-event.orange{background:var(--warning-soft);color:var(--warning)}.calendar-event.red{background:var(--danger-soft);color:var(--danger)}.calendar-more{color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:none;padding:0 7px;font-family:inherit;font-size:11px;font-weight:600}.calendar-more:hover,.calendar-more:focus-visible{color:var(--brand-strong)}@media (max-width:900px){.calendar-day{min-height:76px}.calendar-event{font-size:10.5px}}
