/* FraisWork 2.42.516 - Design system, single active override.
   Canonical rules: docs/CHARTE_DESIGN.md. CP green / RTT blue everywhere. */
body.fw-app{--fw-primary:#1769d2;--fw-primary-soft:#eef6ff;--fw-success:#078369;--fw-cp:#078369;--fw-cp-soft:#eefaf2;--fw-rtt:#1769d2;--fw-rtt-soft:#eef6ff;--fw-sick-soft:#f2eaff;--fw-unpaid-soft:#fff7e8;--fw-danger:#bd2929;--fw-secondary:#f7fbff;--fw-border:#cbd8e8;--fw-ink:#163f68}
/* CP / RTT: tables, requests, calendar cells, half-days, legends, counters */
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-cp>td,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-cp>td{background:var(--fw-cp-soft)!important;color:#16583c}
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-rtt>td,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-rtt>td{background:var(--fw-rtt-soft)!important;color:#194b7e}
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-cp>td:first-child,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-cp>td:first-child{border-left:4px solid var(--fw-cp)}
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-rtt>td:first-child,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-rtt>td:first-child{border-left:4px solid var(--fw-rtt)}
body.fw-app .hr-calendar td.hr-day-type-cp{--hr-cell-fill:#bcead0!important;background-color:#bcead0!important;color:#16583c!important}
body.fw-app .hr-calendar td.hr-day-type-rtt{--hr-cell-fill:#bfdcff!important;background-color:#bfdcff!important;color:#194b7e!important}
body.fw-app .hr-legend-cp{background:#bcead0!important;border-color:#078369!important}
body.fw-app .hr-legend-rtt{background:#bfdcff!important;border-color:#1769d2!important}
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-sick>td,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-sick>td{background:var(--fw-sick-soft)!important}
body.fw-app .hr-leave-requests tbody tr.hr-leave-row-unpaid>td,body.fw-app .hr-leave-balance-table tbody tr.hr-leave-row-unpaid>td{background:var(--fw-unpaid-soft)!important}
/* Consistent action buttons across modules: no local GTA-only visual contract. */
body.fw-app main :is(button,.btn,a.button,input[type=submit]){min-height:33px;box-sizing:border-box;border-radius:6px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.25;padding:7px 11px;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none}
body.fw-app main :is(button,.btn,a.button,input[type=submit]).secondary{background:var(--fw-secondary)!important;color:#23547f!important;border:1px solid #bfd5ed!important;box-shadow:none!important}
body.fw-app main :is(button,.btn,a.button,input[type=submit]).danger,body.fw-app main .gta-delete-button{background:var(--fw-danger)!important;color:white!important;border:1px solid #a92323!important}
body.fw-app main :is(button,.btn,a.button,input[type=submit]):disabled{opacity:.55;cursor:not-allowed}
body.fw-app main :is(button,.btn,a.button,input[type=submit]):focus-visible{outline:3px solid #88b9f4;outline-offset:2px}
/* Dense, readable tables; action buttons align even when inside forms. */
body.fw-app main table :is(th,td){vertical-align:middle}
body.fw-app main table td form{margin-block:0}
body.fw-app main table td :is(button,.btn,a.button){vertical-align:middle}
@media(max-width:950px){body.fw-app main .gta-row-actions{flex-wrap:wrap}}
