/* V38: readable monthly staff expenses and leave requests. */
.v38-workforce{min-width:0;color:#203c4c;font-size:16px;line-height:1.5}
.v38-wf-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:6px 0 22px}.v38-wf-heading h2{font-size:27px;margin:0 0 5px}.v38-wf-heading p{margin:0;color:#516a77}.v38-wf-heading>.button{flex:none}
.v38-wf-filters{display:flex;align-items:flex-end;gap:22px;flex-wrap:wrap;padding:20px;border:1px solid #b9cdd4;border-radius:18px;background:#f8fbfc;margin-bottom:20px}.v38-wf-month-controls{display:flex;gap:10px;align-items:flex-end}.v38-wf-field{display:flex;flex-direction:column;gap:7px;font-weight:700;min-width:0;margin:0;color:#304d5b}.v38-wf-field input,.v38-wf-field select,.v38-wf-field textarea,.v38-wf-receipt-input input{box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #9fb8c5;border-radius:10px;background:#fff;color:#213d4c;font:400 17px/1.45 Helvetica,Arial,sans-serif}.v38-wf-field textarea{resize:vertical}.v38-wf-field input:disabled{background:#e7edf0;color:#6a7c88}.v38-wf-field input:focus-visible,.v38-wf-field select:focus-visible,.v38-wf-field textarea:focus-visible,.v38-wf-receipt-input input:focus-visible{outline:3px solid #79b9d2;outline-offset:2px}.v38-wf-month{width:190px}.v38-wf-person{flex:1;min-width:240px;max-width:480px}.v38-wf-person-label{display:grid;gap:6px;padding-bottom:7px}.v38-wf-person-label>span{font-size:14px;color:#627984}.v38-wf-person-label>strong{font-size:18px}
.v38-wf-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.v38-wf-total{display:flex;flex-direction:column;gap:5px;padding:22px 24px;border:1px solid #b4ccc4;border-radius:18px;background:#e5f2ec}.v38-wf-total>span{font-size:16px;font-weight:750}.v38-wf-total>strong{font-size:30px;line-height:1.25;letter-spacing:-.5px}.v38-wf-total>small{font-size:14px;color:#49675b}.v38-wf-total-submitted{background:#eeebfa;border-color:#c5bbdf;color:#574179}.v38-wf-total-submitted>small{color:#665879}.v38-wf-total-draft{background:#edf2f7;border-color:#bdcbd8;color:#465f78}.v38-wf-total-draft>small{color:#5b7185}
.v38-wf-workdays{padding:18px 22px;background:#f7fafb;border:1px solid #bdcfd7;border-radius:18px;margin:0 0 28px}.v38-wf-workdays>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;font-weight:750;font-size:18px;list-style:none}.v38-wf-workdays>summary:before{content:'▸';margin-right:2px;color:#467b78}.v38-wf-workdays[open]>summary:before{content:'▾'}.v38-wf-workdays>summary>span{flex:1}.v38-wf-workdays>summary>strong{font-size:15px;color:#316d5b}.v38-wf-workdays>p{margin:15px 0;color:#526c79;font-size:15px}.v38-wf-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;max-width:800px;margin:20px auto 10px}.v38-wf-weekday{font-size:14px;font-weight:700;text-align:center;color:#5c7581;padding:4px}.v38-wf-day{display:flex;position:relative;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;min-height:65px;padding:9px 7px;border:1px solid #c7d7dd;border-radius:12px;background:#fff;cursor:pointer;font-weight:700;font-size:18px}.v38-wf-day input{width:20px;height:20px;margin:0;accent-color:#197757;cursor:inherit}.v38-wf-day.is-worked{background:#e0f2e9;border-color:#6da98f}.v38-wf-day small{width:100%;font-size:11px;text-align:center;color:#24684f;line-height:1}.v38-wf-day:has(input:disabled){cursor:default}.v38-wf-calendar-hint{font-size:14px!important;text-align:center}
.v38-wf-month-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:12px 0}.v38-wf-month-title h3{font-size:22px;margin:0;text-transform:capitalize}.v38-wf-month-title>span{font-size:15px;color:#5c7480}.v38-wf-expense-days{display:grid;gap:22px}.v38-wf-expense-day{display:grid;gap:12px}.v38-wf-expense-day>header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #9fb6c1;padding:0 3px 10px;gap:16px}.v38-wf-expense-day h4{font-size:17px;margin:0}.v38-wf-expense-day>header>span{color:#486371;font-weight:700}.v38-wf-expense,.v38-wf-leave{padding:22px;border:1px solid #b9ccd5;border-radius:18px;background:#fbfdfe;box-shadow:0 5px 15px #26445009;min-width:0}.v38-wf-expense-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.v38-wf-expense-top>div{min-width:0}.v38-wf-expense h3,.v38-wf-leave h3{margin:8px 0 2px;font-size:21px;line-height:1.35;overflow-wrap:anywhere}.v38-wf-expense p,.v38-wf-leave p{margin:5px 0;color:#506976;overflow-wrap:anywhere}.v38-wf-expense-amount{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.v38-wf-expense-amount>strong{font-size:25px;white-space:nowrap;color:#264653}.v38-wf-category{display:inline-flex;align-items:center;border:1px solid #b6c5df;border-radius:999px;padding:4px 11px;font-size:13px;font-weight:750;color:#365f89;background:#eaf1fb}.v38-wf-category-repas{background:#f8e7f1;border-color:#ddb5cf;color:#903864}.v38-wf-category-hotel{background:#efe8fb;border-color:#c8b7e6;color:#6d439b}.v38-wf-category-fournitures{background:#e5f3ec;border-color:#aacdbb;color:#346e52}.v38-wf-category-transport{background:#e4f4f5;border-color:#a9cccf;color:#226c73}.v38-wf-status{display:inline-flex;align-items:center;justify-content:center;border:1px solid #bbc8d1;background:#edf2f5;color:#526b79;border-radius:999px;padding:5px 11px;font-size:14px;font-weight:750;white-space:nowrap}.v38-wf-status-submitted,.v38-wf-status-pending{background:#eee7f9;color:#6a4587;border-color:#c8b4df}.v38-wf-status-approved{background:#def2e6;color:#216849;border-color:#9dc4ae}.v38-wf-status-rejected{background:#f8e1e8;color:#993651;border-color:#d9a9b6}.v38-wf-status-cancelled{background:#e7ecef;color:#5b6c74}.v38-wf-expense-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:13px;margin-top:18px;padding-top:16px;border-top:1px solid #d9e3e7}.v38-wf-expense-bottom>span{font-size:13px;color:#607681;flex:1 1 260px}.v38-wf-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.v38-wf-decision{padding:11px 13px;background:#f1ebf8;border-left:3px solid #866099;border-radius:7px;margin-top:14px!important}.v38-wf-no-receipt{font-size:14px;color:#90364f;font-weight:700}.v38-wf-empty{padding:45px 20px;border:1px dashed #aabfc9;border-radius:18px;text-align:center;background:#f8fbfc;color:#5a7582;font-size:18px}.v38-wf-leaves{display:grid;gap:16px}.v38-wf-leave-note{padding:16px 20px;background:#e9f2f7;border:1px solid #b6cad6;border-radius:14px;margin-bottom:22px;color:#426579}.v38-wf-leave .v38-wf-actions{margin-top:16px}.v38-wf-leave-reason{white-space:pre-wrap}
.v38-wf-form{display:grid;gap:20px}.v38-wf-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.v38-wf-form input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:#197757}.v38-wf-receipt-input{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px dashed #86b0bc;border-radius:14px;background:#edf7f8}.v38-wf-receipt-input>span,.v38-wf-receipt-input>small{font-size:14px;line-height:1.5;color:#486977}.v38-wf-receipt-input input{font-size:15px;background:#fff}.v38-wf-vat{padding:15px 18px;border:1px solid #c5c9df;border-radius:12px;background:#f2f2fa}.v38-wf-vat summary{font-weight:700;cursor:pointer}.v38-wf-vat .v38-wf-field{max-width:280px;margin-top:15px}.v38-wf-vat p{font-size:14px;color:#5d6d7c}.v38-wf-inline-check{display:flex;align-items:center;gap:10px;margin-top:16px}.v38-wf-meal-hint{padding:12px 15px;border-radius:10px;background:#f6e9f2;color:#7d3e66;margin:0}.v38-wf-meal-hint[hidden]{display:none}
.v38-workforce-modal>.v38-wf-modal-footer{flex:none;background:#f0f6f9;border-top:1px solid #b6cbd5;padding:18px 24px;display:flex;justify-content:center;gap:12px;margin:0;border-radius:0 0 22px 22px}.v38-workforce-modal .modal-body{min-height:0;overflow-y:auto}.v38-wf-details{font-size:17px;line-height:1.5}.v38-wf-details-top{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.v38-wf-details-top h3{font-size:24px;flex:1;margin:0;min-width:200px}.v38-wf-details-top>strong{font-size:26px}.v38-wf-details dl{display:grid;gap:0;margin:15px 0}.v38-wf-details dl>div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid #d4e1e8}.v38-wf-details dt{font-weight:700}.v38-wf-details dd{margin:0;overflow-wrap:anywhere}.v38-wf-details>p{font-size:14px;color:#607783;margin:18px 0}
/* Capsule finish stays local and keeps native handlers, sizing and disabled states. */
#v35-team .v38-wf-button,#modal .v38-wf-button{--v38-wf-color:#476582;--v38-wf-hover:#60809d;display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:42px;max-width:100%;box-sizing:border-box;border:1px solid #a8c0d8;border-radius:999px;padding:10px 15px;font:700 16px/1.25 Helvetica,Arial,sans-serif;letter-spacing:normal;text-align:center;text-decoration:none;white-space:normal;color:#f0f6ff;background-color:var(--v38-wf-color);background-image:linear-gradient(180deg,#ffffff40 0%,#ffffff10 25%,#ffffff00 40%,#00000000 65%,#00000024 100%);box-shadow:inset 0 1px 0 #ffffff57,inset 0 -2px 2px #00000020,0 3px 6px #1833451f;text-shadow:0 1px 1px #0000002e;transition:background-color .15s,box-shadow .15s;cursor:pointer;transform:none}
#v35-team .v38-wf-button:hover:not(:disabled),#modal .v38-wf-button:hover:not(:disabled){background-color:var(--v38-wf-hover);transform:none;color:#f0f6ff}#v35-team .v38-wf-button:active:not(:disabled),#modal .v38-wf-button:active:not(:disabled){box-shadow:inset 0 3px 5px #00000040,inset 0 -1px 0 #ffffff20;transform:none}#v35-team .v38-wf-button:disabled,#modal .v38-wf-button:disabled{opacity:.52;cursor:not-allowed;filter:saturate(.5)}#v35-team .v38-wf-button:focus-visible,#modal .v38-wf-button:focus-visible{outline:3px solid #67b6d9;outline-offset:3px}
#v35-team .v38-wf-confirm,#modal .v38-wf-confirm{--v38-wf-color:#197757;--v38-wf-hover:#309570}#v35-team .v38-wf-cancel,#modal .v38-wf-cancel{--v38-wf-color:#a12643;--v38-wf-hover:#c33d5a}#v35-team .v38-wf-add,#modal .v38-wf-add{--v38-wf-color:#6945a0;--v38-wf-hover:#865fbf}#v35-team .v38-wf-detail,#modal .v38-wf-detail{--v38-wf-color:#2b75c0;--v38-wf-hover:#498ed6}#v35-team .v38-wf-edit,#modal .v38-wf-edit{--v38-wf-color:#8d6b25;--v38-wf-hover:#a98841}#v35-team .v38-wf-receipt,#modal .v38-wf-receipt{--v38-wf-color:#187765;--v38-wf-hover:#319780}#v35-team .v38-wf-reject,#modal .v38-wf-reject{--v38-wf-color:#945777;--v38-wf-hover:#b17496}#v35-team .v38-wf-remove,#modal .v38-wf-remove{--v38-wf-color:#45535e;--v38-wf-hover:#63737e}#v35-team .v38-wf-previous{--v38-wf-color:#476582;--v38-wf-hover:#60809d}#v35-team .v38-wf-next{--v38-wf-color:#714d88;--v38-wf-hover:#8f67a6}
@media(max-width:850px){.v38-wf-totals{gap:10px}.v38-wf-total{padding:18px 16px}.v38-wf-total>strong{font-size:26px}.v38-wf-expense-bottom{align-items:flex-start}.v38-wf-actions{justify-content:flex-start}.v38-wf-expense-top{gap:12px}.v38-wf-expense-amount>strong{font-size:22px}}
@media(max-width:600px){.v38-wf-heading{align-items:flex-start;flex-direction:column;gap:14px}.v38-wf-heading>.button{align-self:stretch}.v38-wf-heading h2{font-size:25px}.v38-wf-filters{padding:15px;gap:16px}.v38-wf-month-controls{width:100%;justify-content:space-between}.v38-wf-month{flex:1;width:auto;min-width:0}.v38-wf-person{min-width:0;width:100%;flex-basis:100%}.v38-wf-totals{grid-template-columns:1fr}.v38-wf-total{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px}.v38-wf-total>strong{grid-column:2;grid-row:1/3;align-self:center;font-size:25px}.v38-wf-total>small{grid-column:1}.v38-wf-workdays{padding:15px 12px}.v38-wf-workdays>summary{flex-wrap:wrap;font-size:17px}.v38-wf-workdays>summary>strong{width:100%;margin-left:20px}.v38-wf-calendar{gap:5px}.v38-wf-weekday{font-size:12px;padding:3px 0}.v38-wf-day{min-height:60px;gap:4px;padding:8px 3px;font-size:15px;flex-direction:column;border-radius:9px}.v38-wf-day input{width:18px;height:18px}.v38-wf-day small{font-size:9px}.v38-wf-expense,.v38-wf-leave{padding:17px}.v38-wf-expense h3,.v38-wf-leave h3{font-size:19px}.v38-wf-expense-amount>strong{font-size:20px}.v38-wf-status{font-size:12px;padding:5px 8px}.v38-wf-expense-top{flex-wrap:wrap}.v38-wf-expense-top>div:first-child{flex:1 1 150px}.v38-wf-expense-amount{flex:0 0 auto}.v38-wf-expense-bottom .v38-wf-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v38-wf-form-grid{grid-template-columns:1fr;gap:17px}.v38-wf-field input,.v38-wf-field select,.v38-wf-field textarea{font-size:16px}.v38-workforce-modal>.v38-wf-modal-footer{padding:15px;flex-wrap:wrap}.v38-workforce-modal>.v38-wf-modal-footer>.button{flex:1}.v38-wf-details dl>div{grid-template-columns:1fr;gap:4px}.v38-wf-leave-note{padding:14px;font-size:15px}}

.v38-wf-meal-hint .v38-wf-inline-check{margin-top:0}.v38-wf-meal-hint small{display:block;margin-top:8px;line-height:1.5}

.v38-wf-field>label,.v38-wf-receipt-input>label{margin:0;font:inherit;color:inherit}

/* V43: save workdays in place without folding the calendar or moving focus. */
.v38-wf-calendar-hint{min-height:1.5em;margin-bottom:0!important}
.v38-wf-calendar-hint[data-state="saved"]{color:#216849!important;font-weight:700}
.v38-wf-calendar-hint[data-state="saving"]{color:#476582!important}
.v38-wf-calendar-hint[data-state="error"]{color:#94334c!important;font-weight:700}
.v38-wf-workdays>summary:focus-visible{outline:3px solid #79b9d2;outline-offset:5px;border-radius:5px}
.v38-wf-day input:focus-visible{outline:3px solid #79b9d2;outline-offset:4px}

/* V56: concise submitted notes; originals stay locked. */
.v38-wf-expense.v56-wf-compact{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;padding:12px 16px;margin-top:7px;border-radius:10px}.v56-wf-compact>div:first-child{flex:1 1 150px;min-width:0;overflow-wrap:anywhere}.v56-wf-compact small{display:block;color:#57717a;font-size:12px;margin-top:4px;overflow-wrap:anywhere}.v56-wf-compact .v38-wf-actions{gap:6px;max-width:100%;justify-content:flex-end}.v56-wf-compact .v38-wf-actions .button{padding:7px 11px!important;font-size:12px;min-height:34px}.v56-wf-state{display:flex;align-items:center;gap:10px;max-width:100%}.v56-wf-state>strong{font-size:18px;color:#2d5146;white-space:nowrap;font-variant-numeric:tabular-nums}.v56-wf-state .v38-wf-status{font-size:12px;line-height:1.3;white-space:normal;text-align:center}.v56-note-locked{font-size:13px;color:#63716d;background:#edf2ed;padding:10px;border-radius:8px}.v56-duplicate-confirmation{border:2px solid #d39e22;background:#fff5d5;color:#673d08;border-radius:10px;padding:16px;margin:15px 0;line-height:1.5}.v56-duplicate-confirmation label{display:flex;gap:10px;font-weight:700}.v56-duplicate-confirmation input{width:22px;height:22px;flex:none;margin-top:3px;accent-color:#986411}.v56-information-form{margin-top:18px}.v38-wf-status-needs_info{background:#f3e7ff;color:#603b82;border-color:#b49ac7}
@media(max-width:650px){.v56-wf-compact>div:first-child{flex-basis:100%}.v56-wf-compact .v38-wf-actions{justify-content:flex-start}.v56-wf-state{flex:0 1 auto}}
.v56-expense-period{font-size:13px;color:#49645b;padding:11px 14px;border-left:3px solid #769f89;background:#edf4ed;line-height:1.6;border-radius:7px}.v56-expense-period>span{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.v56-expense-period .button{font-size:12px;min-height:32px;padding:6px 10px!important}

/* V57: full-width archive navigation and a separate camera choice. */
.v57-expense-history{padding:20px;border:1px solid #b9cdd4;border-radius:16px;background:#f8fbfc;margin-bottom:16px}
.v57-history-heading{display:flex;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:18px}.v57-history-heading>.v38-wf-field:first-child{min-width:140px}.v57-history-total{display:grid;gap:5px;margin-left:auto;text-align:right;font-size:14px;color:#49645b}.v57-history-total>span{font-size:18px;font-weight:750}.v57-expense-history>p{margin:14px 0 0;font-size:13px;color:#526e76}
.v57-expense-months{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:100%}
#v35-team .v57-expense-months .v38-wf-button{min-height:52px!important;padding:11px 9px!important;font-size:15px!important;width:100%;white-space:normal;overflow-wrap:normal}
#v35-team .v57-expense-months .v38-wf-button[aria-pressed=true]{outline:2px solid #276a51;outline-offset:3px}
#v35-team .v38-wf-button,#modal .v38-wf-button{--action-color:var(--v38-wf-color);--button-color:var(--v38-wf-color)}
.v57-camera-picker{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding-top:12px;border-top:1px solid #bdd5db}.v57-camera-picker strong{font-size:14px}.v57-camera-picker input{flex:1;min-width:200px}
@media(min-width:1700px){.v57-expense-months{grid-template-columns:repeat(12,minmax(0,1fr))}}
@media(max-width:1000px){.v57-expense-months{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.v57-expense-history{padding:15px}.v57-history-heading{gap:13px;align-items:center}.v57-history-heading>.v38-wf-field:first-child{min-width:100px}.v57-history-total{width:100%;display:flex;justify-content:space-between;text-align:left;margin:0}.v57-expense-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#v35-team .v57-expense-months .v38-wf-button{font-size:14px!important;min-height:48px!important}.v57-camera-picker input{min-width:0;width:100%;flex-basis:100%}}

.v60-expense-period{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px 24px;padding:18px 20px;margin:0 0 18px;border:1px solid #afc9bc;border-left:4px solid #44866a;border-radius:12px;background:#f1f8f5;color:#254b40}
.v60-expense-period[data-state="locked"],.v60-expense-period[data-state="closed"]{background:#f4f6f8;border-color:#bccbd2;border-left-color:#647e8b;color:#344f5b}
.v60-expense-period[data-blocked="true"]{background:#fff8ec;border-color:#e0c89c;border-left-color:#af7a27;color:#674619}
.v60-expense-period>div:first-child{flex:1 1 340px}.v60-expense-period h3{font-size:18px;line-height:1.35;margin:0 0 5px;color:inherit}.v60-expense-period p{margin:4px 0 0;line-height:1.5;color:inherit;font-size:14px}.v60-period-actions{display:flex;flex-wrap:wrap;gap:8px}
