.history-row.is-holiday{background:#edf3eb}
.history-row.is-leave{background:#fff2e1}
.history-row.is-planned span:nth-child(2){font-style:italic;color:#626864}
.plan-label{color:#626864!important;background:#e2e4e2;border-radius:5px;padding:2px 5px;font-style:italic;font-weight:400;text-transform:none!important;letter-spacing:.03em}
.day-card.is-planned .range input{font-style:italic;font-weight:400;color:#626864;background:#e8eae8;border-bottom:2px dashed #8d9490;border-radius:4px 4px 0 0}
.day-card.is-planned{background:#f1f2f1;border-color:#d7dad8;box-shadow:0 18px 45px rgba(63,70,66,.06)}
.day-card.is-planned .kind,.day-card.is-planned details input,.day-card.is-planned textarea{background:#f8f8f7}
.day-card.is-planned .save-day{font-style:italic}
.week-tools{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch;margin-bottom:14px}
.week-tools .bulk-bar{margin-bottom:0}
.tool-actions{display:flex;gap:8px}
.tool-actions button,.save-actions button{border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);padding:9px 12px;font-weight:700;cursor:pointer}
.tool-actions button:disabled{opacity:.38;cursor:default}
.save-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:13px}
.save-actions .save-day{margin:0;background:var(--dark);color:white;border-color:var(--dark);font-style:normal}
.save-actions .save-forecast{color:#565d59;border-color:#bfc4c1;background:#e4e6e4;box-shadow:inset 0 0 0 1px #d2d5d3}
.save-actions .clear-day{grid-column:1/-1;color:#8b5952;background:transparent;border-color:#ddc8c2;padding:7px}
@media(max-width:650px){.week-tools{grid-template-columns:1fr}.tool-actions{justify-content:flex-end}.tool-actions button{font-size:11px;padding:8px 10px}.save-actions{grid-template-columns:1fr 1fr}.plan-label{font-size:10px!important}}
.page-tabs{display:flex;gap:5px;background:#ebe8e0;border-radius:12px;padding:4px;width:max-content;margin-bottom:34px}.page-tabs button{border:0;background:transparent;border-radius:9px;padding:10px 17px;color:var(--muted);font-weight:700}.page-tabs button.active{background:var(--card);color:var(--dark);box-shadow:0 2px 8px #26322d12}.leave-page-head{position:relative}.leave-page-head h1{font:500 clamp(34px,4vw,50px) Georgia,serif;margin:0}.leave-page-head>button{position:absolute;right:0;bottom:0;border:0;border-radius:10px;background:var(--dark);color:white;padding:11px 16px;font-weight:700}.leave-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.leave-stats article{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px}.leave-stats span{font-size:12px;color:var(--muted)}.leave-stats strong,.leave-stats label{font:500 29px Georgia,serif}.leave-stats input{width:75px;border:0;border-bottom:1px solid var(--line);font:inherit;background:transparent;color:var(--ink)}.leave-list-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;margin-top:22px}.leave-row{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center;padding:14px 10px;border-bottom:1px solid var(--line)}.leave-row div{display:flex;flex-direction:column;gap:3px}.leave-row strong{text-transform:capitalize}.leave-row span{font-size:12px;color:#8a6238}.leave-row button{border:1px solid var(--line);border-radius:8px;background:white;padding:8px 10px;font-weight:650;color:var(--ink)}.leave-row .delete-leave{color:#925e56}
@media(max-width:650px){.page-tabs{margin-bottom:25px;width:100%}.page-tabs button{flex:1}.leave-page-head>button{position:static;margin-top:18px}.leave-stats{grid-template-columns:1fr 1fr}.leave-stats article:first-child{grid-column:1/-1}.leave-stats article{padding:15px}.leave-list-card{padding:18px 10px}.leave-row{grid-template-columns:1fr auto}.leave-row .delete-leave{grid-column:2}.leave-row .edit-leave{grid-column:2;grid-row:1}.leave-row div{grid-row:1/3}}
.leave-stats{grid-template-columns:repeat(3,1fr)}.leave-stats .total-allowance{background:var(--dark);color:white}.leave-stats .total-allowance span{color:#dbe6df}.leave-stats select{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:3px 0;font:inherit;background:transparent}.leave-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 4px}.leave-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.leave-table{width:100%;border-collapse:collapse;min-width:850px}.leave-table th{text-align:left;padding:10px 9px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line)}.leave-table td{padding:13px 9px;border-bottom:1px solid var(--line);vertical-align:top;font-size:13px}.leave-table td:first-child strong,.leave-table td:first-child span,.leave-table td small{display:block}.leave-table td span{color:#976332;font-size:11px;margin-top:3px}.leave-table td small{color:var(--muted);font-size:10px;margin-top:3px}.leave-table td:last-child{white-space:nowrap}.leave-table button{border:1px solid var(--line);border-radius:7px;background:white;padding:6px 8px;margin:0 2px;font-size:11px}.leave-table .delete-leave{color:#925e56}.leave-list-card{padding-left:18px;padding-right:18px}.export-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.export-options>div{grid-column:1/-1}.export-options>div:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:12px}.export-options #exportMonthFields:not([hidden]),.export-options #exportYearFields:not([hidden]){grid-template-columns:1fr}
.previous-leave-balance{margin:10px 4px 0;color:var(--muted);font-size:12px}.previous-leave-balance strong{color:var(--ink)}
@media(max-width:650px){.leave-stats{grid-template-columns:1fr 1fr}.leave-stats article:first-child{grid-column:auto}.leave-meta{grid-template-columns:1fr}.leave-table-wrap{margin:0 -10px;padding:0 10px}.leave-table{min-width:760px}.export-options{grid-template-columns:1fr}.export-options>div{grid-column:auto}.export-options>div:not([hidden]){grid-template-columns:1fr}}
.monthly-date{font-weight:700;white-space:nowrap;text-transform:capitalize}.history-row{grid-template-columns:105px 1fr 80px 80px 25px}.leave-meta label:last-child{display:none}.leave-table td:first-child span,.leave-table td:nth-child(4) small{display:none}
.history-month-balance{display:flex;flex-direction:column;align-items:flex-end;margin-top:9px;color:var(--muted);font-size:9px;line-height:1.2}.history-month-balance strong{margin-top:3px;color:var(--sage);font:600 20px Georgia,serif;text-transform:none}.history-month-balance strong.negative{color:var(--red)}
.month-picker select{display:block;min-width:150px;margin-top:4px;border:1px solid var(--line);border-radius:8px;padding:7px 28px 7px 9px;background:white;color:var(--ink);font-size:12px}.leave-stats .remaining-balance{background:var(--soft);border-color:#d4dfd4}.leave-stats .remaining-balance span{color:#496b50}.leave-stats .remaining-balance strong{color:#294f34}
@media(max-width:650px){.leave-list-card .leave-table tr{background:var(--soft);border-color:#d4dfd4;box-shadow:0 5px 14px rgba(56,87,72,.05)}}
.day-card.is-holiday{background:#fff6d8;border-color:#e8d795}.holiday-badge{background:#f7e8ad;color:#66531d}.history-row.is-holiday{background:#fff7dc}
.week-heading{grid-template-columns:auto 1fr auto auto auto}.week-date-jump{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:5px 8px}.week-date-jump span{font-size:14px}.week-date-jump input{width:125px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:11px;padding:3px 0}
.day-card.is-leave{background:var(--soft);border-color:#d4dfd4}.leave-badge{background:#d6e1d6;color:#3f6048}.history-row.is-leave{background:var(--soft)}
@media(max-width:650px){.week-heading{grid-template-columns:auto 1fr auto;grid-template-rows:auto auto}.week-heading>#prevWeek{grid-column:1;grid-row:1/3}.week-heading>div{grid-column:2;grid-row:1}.week-heading>#todayBtn{display:block;grid-column:2;grid-row:2;justify-self:start;margin-top:4px;padding:5px 9px;font-size:10px}.week-date-jump{grid-column:2;grid-row:2;justify-self:end;margin-top:4px;padding:3px 6px}.week-date-jump input{width:108px;font-size:10px}.week-heading>#nextWeek{grid-column:3;grid-row:1/3}}
@media(max-width:650px){.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:6px}.summary-card{min-width:0;min-height:82px;padding:10px 8px;border-radius:12px}.summary-card span{font-size:10px;line-height:1.15}.summary-card strong{font-size:20px;margin:8px 0 2px}.summary-card small{font-size:8px;line-height:1.15}.leave-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:20px}.leave-stats article,.leave-stats article:first-child{grid-column:auto;min-width:0;padding:10px 8px;border-radius:11px;gap:6px}.leave-stats span{font-size:9px;line-height:1.15}.leave-stats strong,.leave-stats label{font-size:19px}.leave-stats input{width:48px}.leave-stats select{font-size:17px;padding:0}.tool-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.tool-actions button{white-space:nowrap;padding:8px 5px}.week-tools{gap:7px}.bulk-bar{margin-bottom:0}.day-card{padding:11px}.day-card.expanded .day-head{padding-bottom:9px;margin-bottom:10px}.ranges{margin:10px 0}.range{margin:7px 0}.save-actions{margin-top:10px}.leave-page-head h1{font-size:31px}}
@media(max-width:650px){.history-row{grid-template-columns:92px 1fr 58px 18px}.leave-table{min-width:0}.leave-table thead{display:none}.leave-table,.leave-table tbody,.leave-table tr,.leave-table td{display:block;width:100%}.leave-table tr{background:#fff8ef;border:1px solid #ead8bf;border-radius:13px;padding:12px;margin:0 0 10px}.leave-table td{display:grid;grid-template-columns:105px 1fr;border:0;padding:5px 2px}.leave-table td:before{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.leave-table td:nth-child(1):before{content:'Description'}.leave-table td:nth-child(2):before{content:'Début'}.leave-table td:nth-child(3):before{content:'Fin'}.leave-table td:nth-child(4):before{content:'Consommation'}.leave-table td:nth-child(5):before{content:'Solde restant'}.leave-table td:nth-child(6){display:flex;justify-content:flex-end;margin-top:7px}.leave-list-card{background:transparent;border:0;padding-left:0;padding-right:0}.leave-table-wrap{margin:0;padding:0}}
.auth-gate{position:fixed;inset:0;z-index:100;background:var(--paper);display:grid;place-items:center;padding:20px;overflow:auto}.auth-gate[hidden]{display:none}.auth-card{width:min(420px,100%);background:var(--card);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow);text-align:center}.auth-card .brand-mark{margin:0 auto 18px}.auth-card h1{font:500 36px Georgia,serif;margin:0 0 12px}.auth-card>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.5}.auth-card label{display:block;text-align:left;margin-top:16px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted)}.auth-card input{display:block;width:100%;margin-top:7px;border:1px solid var(--line);border-radius:10px;padding:12px;font:inherit}.auth-card button{width:100%;margin-top:12px;border:0;border-radius:10px;background:var(--dark);color:white;padding:12px;font-weight:700}.auth-secondary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-secondary button{background:transparent;color:var(--ink);border:1px solid var(--line);font-size:12px}.auth-message{min-height:21px}#exportBtn{margin-left:auto}.account-button{width:40px;height:40px;margin-left:8px;padding:0;border-radius:50%;font-size:21px;line-height:1;color:#8b5952}@media(max-width:650px){.auth-card{padding:22px 18px}.auth-card h1{font-size:31px}.auth-secondary{grid-template-columns:1fr}.account-button{width:36px;height:36px;font-size:20px}}
