.cal-e{--cal-r:30px;position:fixed;inset:0;z-index:1050;display:flex;align-items:center;justify-content:center;padding:24px}.cal-e-voile{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:rgba(0,0,0,.45);cursor:default}.cal-e-voile:focus{outline:0}.cal-e-fen{position:relative;z-index:1;display:flex;flex-direction:column;width:min(1180px,100%);height:min(90vh,900px);background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-xl,16px);box-shadow:0 18px 50px rgba(0,0,0,.3);overflow:hidden}.cal-e-h{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--border);flex:none}.cal-e-tit{min-width:0}.cal-e-h h1{margin:0;font-size:17px;font-weight:700;color:var(--text)}.cal-e-qui{color:var(--text-muted);font-size:13px;overflow-wrap:anywhere}.cal-e-x{margin-left:auto;flex:none;width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text);cursor:pointer}.cal-e-x:hover{border-color:var(--border-hover)}.cal-e-corps{flex:1;min-height:0;display:grid;grid-template-columns:270px 1fr}.cal-e-reg{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border-right:1px solid var(--border);background:var(--bg-card-hover);overflow-y:auto}.cal-e-sem{padding:12px 16px 16px;overflow:auto;min-width:0}.cal-e-reg .hh-form2{grid-template-columns:minmax(0,1fr)}.cal-ch{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.cal-ch-t{margin:0 0 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.cal-ch-l{list-style:none;margin:0;padding:0}.cal-ch-d{display:flex;align-items:center;gap:8px;min-height:36px;padding:5px 6px 5px 9px;margin-bottom:6px;font-size:13px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);color:var(--text)}.cal-ch-d.is-vide{border-style:dashed;border-color:var(--border);background:0 0;color:var(--text-muted);padding:7px 9px}.cal-ch-n{flex:none;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--on-accent,#010409);font-weight:700;font-size:12px}.cal-ch-q{flex:1;min-width:0}.cal-ch-x{flex:none;width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:0 0;color:var(--text-muted);font-size:18px;line-height:1;cursor:pointer}.cal-ch-x:hover{color:var(--text);background:var(--bg-card)}.cal-e-btns{display:flex;flex-direction:column;gap:8px;margin-top:8px}.cal-e-btns>a,.cal-e-btns>button{width:100%;min-height:42px;justify-content:center;text-align:center}.cal-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.cal-jb,.cal-nb{width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);color:var(--text);font-size:18px;cursor:pointer}.cal-jb:disabled,.cal-nb:disabled{opacity:.4;cursor:default}.cal-nt{font-size:15px;color:var(--text)}.cal-leg{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;color:var(--text-muted)}.cal-leg span{display:inline-flex;align-items:center;gap:5px}.cal-sw{display:inline-block;width:14px;height:10px;border-radius:3px;box-sizing:border-box}.cal-sw.is-lib{border:1px solid var(--accent);background:var(--bg-card)}.cal-sw.is-on{background:var(--accent)}.cal-sw.is-occ{background:var(--border-light);border:1px solid var(--border-hover)}.cal-sw.is-pyt{background:linear-gradient(var(--indigo-soft),var(--indigo-soft)),var(--bg-card);border:1px solid var(--border-info)}.cal-sw.is-hors{background:repeating-linear-gradient(135deg,var(--bg-card-hover) 0 3px,var(--bg) 3px 6px);border:1px solid var(--border-light)}.cal-g{display:flex;border:1px solid var(--border);border-radius:10px;overflow:hidden;min-width:0}.cal-hs{flex:none;width:52px}.cal-j{flex:1 1 0;min-width:0;display:flex;flex-direction:column;border-left:1px solid var(--border)}.cal-jt{height:46px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;border-bottom:1px solid var(--border);background:var(--bg-card-hover);font-size:13px;color:var(--text);text-align:center}.cal-jn small{display:block;margin-top:2px;font-size:11px;color:var(--text-muted)}.cal-jb{display:none}.cal-h{height:var(--cal-r);box-sizing:border-box;padding:2px 6px 0 0;border-top:1px solid var(--border-light);font-size:11px;color:var(--text-muted);text-align:right}.cal-cs{position:relative}.cal-c{position:relative;height:var(--cal-r);box-sizing:border-box;display:flex;gap:2px;padding:2px 4px;border-top:1px solid var(--border-light)}.cal-c.is-off{background:var(--bg-card-hover)}.cal-c.is-hors{background:repeating-linear-gradient(135deg,var(--bg-card-hover) 0 6px,var(--bg) 6px 12px)}.cal-lib{flex:1;min-width:0;height:100%;padding:0 6px;border:1px solid var(--accent);border-radius:6px;background:var(--bg-card);color:var(--text);font:inherit;font-size:11px;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-lib:hover{background:var(--accent-soft)}.cal-lib.is-on{background:var(--accent);color:var(--on-accent,#010409);font-weight:700}.cal-lib:disabled{opacity:.45;cursor:default}.cal-ch-x:focus-visible,.cal-e-x:focus-visible,.cal-jb:focus-visible,.cal-lib:focus-visible,.cal-nb:focus-visible{outline:2px solid var(--accent-text);outline-offset:1px}.cal-occ{position:absolute;z-index:1;left:4px;right:4px;top:2px;box-sizing:border-box;padding:3px 6px;overflow:hidden;border-radius:6px;background:var(--border-light);border:1px solid var(--border-hover);color:var(--text-secondary);font-size:11px;pointer-events:none}.cal-occ.is-pyt{background:linear-gradient(var(--indigo-soft),var(--indigo-soft)),var(--bg-card);border-color:var(--border-info);color:var(--indigo-ico,var(--indigo))}.cal-occ.h1{height:calc(var(--cal-r) * 1 - 4px)}.cal-occ.h2{height:calc(var(--cal-r) * 2 - 4px)}.cal-occ.h3{height:calc(var(--cal-r) * 3 - 4px)}.cal-occ.h4{height:calc(var(--cal-r) * 4 - 4px)}.cal-occ.h5{height:calc(var(--cal-r) * 5 - 4px)}.cal-occ.h6{height:calc(var(--cal-r) * 6 - 4px)}.cal-occ.h7{height:calc(var(--cal-r) * 7 - 4px)}.cal-occ.h8{height:calc(var(--cal-r) * 8 - 4px)}.cal-occ.h9{height:calc(var(--cal-r) * 9 - 4px)}.cal-occ.h10{height:calc(var(--cal-r) * 10 - 4px)}.cal-occ.h11{height:calc(var(--cal-r) * 11 - 4px)}.cal-occ.h12{height:calc(var(--cal-r) * 12 - 4px)}.cal-occ.h13{height:calc(var(--cal-r) * 13 - 4px)}.cal-occ.h14{height:calc(var(--cal-r) * 14 - 4px)}.cal-occ.h15{height:calc(var(--cal-r) * 15 - 4px)}.cal-occ.h16{height:calc(var(--cal-r) * 16 - 4px)}.cal-bande{position:absolute;inset:0;z-index:2;display:grid;place-items:center;padding:6px;pointer-events:none;text-align:center}.cal-bande span{padding:3px 10px;border:1px solid var(--border);border-radius:20px;background:var(--bg-card);color:var(--text-muted);font-size:12px}.cal-pied,.cal-rien{margin:8px 0 0;font-size:12px;color:var(--text-muted)}.cal-rien{color:var(--text)}.cal-neg{color:#ef4444}[data-theme=light] .cal-neg{color:#b91c1c}@media (max-width:820px){.cal-e{padding:0}.cal-e-fen{width:100%;height:100%;height:100dvh;border:0;border-radius:0}.cal-e-h{padding-top:calc(env(safe-area-inset-top,0px) + 10px)}.cal-e-corps{display:block;overflow-y:auto}.cal-e-reg{border-right:0;border-bottom:1px solid var(--border);overflow:visible}.cal-e-sem{overflow:visible}.cal-ch{margin-top:0}}@media (max-width:640px){.cal-e{--cal-r:44px}.cal-leg{margin-left:0}.cal-jb,.cal-nb{width:44px;height:44px}.cal-j{display:none}.cal-j.is-vu{display:flex}.cal-jt{height:56px;justify-content:space-between}.cal-jb{display:grid}.cal-lib{font-size:13px}.cal-ch-x{width:40px;height:40px}.cal-e-btns>a,.cal-e-btns>button{min-height:44px}}