.abacus-al{--navy:#112a45;--green:#27966e;--mint:#e8f7ef;--text:#172e42;--muted:#718396;position:relative;isolation:isolate;min-height:88vh;background:#f5f8fb;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:28px 18px 20px;box-sizing:border-box}.abacus-al *{box-sizing:border-box}.abacus-al .al-backdrop{position:absolute;inset:0 0 auto;height:310px;background:radial-gradient(circle at 85% 5%,#326c75 0,transparent 35%),linear-gradient(115deg,#10263f,#1c455a);z-index:-1}.abacus-al .al-app{max-width:1140px;margin:auto}.abacus-al .al-top{display:flex;justify-content:space-between;align-items:center;color:#fff;margin-bottom:65px}.abacus-al .al-brand{display:flex;align-items:center;gap:13px}.abacus-al .al-mark{width:46px;height:46px;border-radius:14px;background:#fff;color:#1a7e63;display:grid;place-items:center;font-weight:900;font-size:27px;box-shadow:0 9px 30px #07172b55}.abacus-al .al-brand strong{display:block;letter-spacing:.2em;font-size:17px}.abacus-al .al-brand small{display:block;font-size:9px;letter-spacing:.18em;opacity:.8;margin-top:3px}.abacus-al .al-pill{border:1px solid #ffffff50;border-radius:50px;padding:9px 14px;font-size:12px;color:#e5f5f3}.abacus-al .al-auth{background:white;max-width:475px;margin:0 auto 45px;padding:42px 45px;border-radius:24px;box-shadow:0 28px 75px #17345122}.abacus-al .al-eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--green)}.abacus-al h1{font-size:clamp(28px,4vw,40px);letter-spacing:-.045em;line-height:1.12;margin:14px 0}.abacus-al p{color:var(--muted);font-size:14px;line-height:1.7}.abacus-al label{display:block;font-size:12px;font-weight:700;margin-top:20px;color:#33475b}.abacus-al input{display:block;width:100%;margin-top:8px;border:1px solid #dce5ed!important;background:#fbfdfe!important;border-radius:11px!important;padding:14px!important;min-height:48px;box-shadow:none!important;font-size:14px!important}.abacus-al input:focus{outline:2px solid #a9dfc9!important;border-color:var(--green)!important}.abacus-al .al-btn{margin-top:28px;width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--green);color:#fff;border:0;border-radius:12px;padding:16px 20px;font-weight:700;cursor:pointer;box-shadow:0 12px 24px #27966e33}.abacus-al .al-btn:hover{background:#1c7c5a}.abacus-al .al-footnote{margin-top:23px;border-top:1px solid #edf1f4;padding-top:20px;color:#83909d;text-align:center;font-size:11px}.abacus-al .al-notice{max-width:475px;margin:0 auto 14px;padding:12px 18px;border-radius:10px;background:#e8f7ef;color:#176f4f}.abacus-al .al-dash{padding:8px 0 50px}.abacus-al .al-heading{display:flex;justify-content:space-between;align-items:center;color:#fff;margin-bottom:35px}.abacus-al .al-heading h1{color:#fff}.abacus-al .al-heading p{color:#d2e0e9}.abacus-al .al-logout{background:#ffffff20;color:#fff;border:1px solid #ffffff55;padding:12px 17px;border-radius:12px;cursor:pointer}.abacus-al .al-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.abacus-al .al-card{background:#fff;border:1px solid #e7edf2;border-radius:20px;padding:26px;box-shadow:0 12px 30px #18334e0d}.abacus-al .al-card small{display:block;color:#718396;margin:18px 0 8px}.abacus-al .al-card strong{font-size:42px;color:var(--navy)}.abacus-al .al-card p{margin-bottom:0}.abacus-al .al-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--mint);color:var(--green);font-size:25px}.abacus-al .al-banner{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#fff,#eaf8f1);border:1px solid #e1eee9;border-radius:22px;padding:30px 35px;margin-top:24px}.abacus-al .al-banner h2{font-size:25px;letter-spacing:-.03em;margin:9px 0}.abacus-al .al-banner p{max-width:650px}.abacus-al .al-banner-art{font-size:100px;color:#69b69c}.abacus-al .al-footer{display:flex;justify-content:space-between;font-size:11px;color:#8c9ba9;margin-top:50px}.abacus-al .al-footer span{color:#8c9ba9}@media(max-width:650px){.abacus-al{padding:20px 12px}.abacus-al .al-top{margin-bottom:38px}.abacus-al .al-pill{display:none}.abacus-al .al-auth{padding:30px 24px;border-radius:20px}.abacus-al .al-heading{align-items:flex-start;gap:12px}.abacus-al .al-heading h1{font-size:27px}.abacus-al .al-grid{grid-template-columns:1fr}.abacus-al .al-banner-art{display:none}.abacus-al .al-banner{padding:24px}.abacus-al .al-footer{display:block}.abacus-al .al-footer span{display:block;margin-top:6px}}

/* Phase 2 portal layout and employee management */
body:has(.abacus-al){margin:0;padding:0}
body:has(.abacus-al) .wp-site-blocks,body:has(.abacus-al) .wp-block-post-content,body:has(.abacus-al) .wp-block-shortcode,body:has(.abacus-al) .entry-content,body:has(.abacus-al) .is-layout-constrained{width:100%!important;max-width:none!important}
body:has(.abacus-al) .wp-block-post-content,body:has(.abacus-al) .wp-block-shortcode,body:has(.abacus-al) .entry-content{margin:0!important;padding:0!important}
body:has(.abacus-al) .is-layout-constrained>.wp-block-shortcode{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.abacus-al{width:100vw;max-width:none;min-height:100vh;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:28px 24px 20px}
.abacus-al .al-app{width:100%;max-width:1600px;margin:0 auto}
.abacus-al .al-auth{width:100%;max-width:475px;margin-left:auto;margin-right:auto}
.abacus-al .al-employee-section{margin:30px 0 55px;color:var(--text)}
.abacus-al .al-employee-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.abacus-al .al-employee-heading h2{font-size:27px;margin:8px 0;color:var(--navy)}
.abacus-al .al-pill-light{background:#e8f7ef;border:1px solid #ccead8;color:#176f4f}
.abacus-al .al-employee-layout{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:22px;align-items:start}
.abacus-al .al-employee-panel{background:white;padding:26px;border-radius:20px;box-shadow:0 12px 30px #18334e0d;border:1px solid #e7edf2;min-width:0}
.abacus-al .al-employee-panel h3{margin:0 0 16px;font-size:20px;color:var(--navy)}
.abacus-al .al-employee-form .al-field{display:block;margin-top:14px}
.abacus-al .al-employee-form .al-field input,.abacus-al .al-employee-form select{width:100%;display:block;margin-top:6px;padding:11px 12px;min-height:44px;border:1px solid #dce5ed;border-radius:10px;background:#fbfdfe;color:var(--text);font-size:14px}
.abacus-al .al-employee-form .al-check{display:flex;align-items:center;gap:10px;margin-top:18px}
.abacus-al .al-employee-form .al-check input{width:18px;min-height:18px;margin:0}
.abacus-al .al-entitlement-note{background:#e8f7ef;border-radius:12px;padding:14px;margin-top:20px}
.abacus-al .al-entitlement-note p{margin:5px 0 0;font-size:12px}
.abacus-al .al-permission-note{padding:12px;background:#f5f8fb;border-radius:10px}
.abacus-al .al-table-wrap{overflow-x:auto}
.abacus-al .al-employee-list table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}
.abacus-al .al-employee-list th,.abacus-al .al-employee-list td{padding:14px 10px;border-bottom:1px solid #edf1f4;white-space:nowrap}
.abacus-al .al-employee-list th{color:#718396;font-weight:700}
.abacus-al .al-employee-list td small{display:block;color:#718396;margin-top:5px}
.abacus-al .al-employee-list a{color:#176f4f;font-weight:700}
@media(max-width:850px){.abacus-al .al-employee-layout{grid-template-columns:1fr}}
@media(max-width:650px){.abacus-al{padding:20px 12px}.abacus-al .al-employee-panel{padding:18px}.abacus-al .al-employee-heading{align-items:flex-start;flex-direction:column}}
/* v0.3 workflow panels */
.abacus-al .al-workflows .al-employee-panel {margin:22px 0;padding:24px;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(9,30,55,.06)}
.abacus-al .al-workflows form.al-employee-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:16px 0 28px;padding:18px;background:#f5f9fa;border-radius:14px}
.abacus-al .al-workflows form.al-employee-form h3,.abacus-al .al-workflows form.al-employee-form p{grid-column:1/-1;margin:0}
.abacus-al .al-workflows form.al-employee-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#183d4a}
.abacus-al .al-workflows form.al-employee-form input,.abacus-al .al-workflows form.al-employee-form select,.abacus-al .al-workflows form.al-employee-form textarea{padding:10px;border:1px solid #c8d9df;border-radius:9px;max-width:100%}
.abacus-al .al-workflows form.al-employee-form button{max-width:260px}
.abacus-al .al-workflows td form{display:inline-block;margin-right:8px}

/* v0.3.1 compact employee workspace */
.abacus-al{padding:14px 22px 22px}.abacus-al .al-app{max-width:1540px}.abacus-al .al-top{margin-bottom:24px}.abacus-al .al-dash{padding:0 0 12px}.abacus-al .al-heading{margin-bottom:16px}.abacus-al .al-heading h1{font-size:30px}.abacus-al .al-grid{gap:12px}.abacus-al .al-card{padding:15px;border-radius:13px}.abacus-al .al-card strong{font-size:28px}.abacus-al .al-card small{margin:7px 0 3px}.abacus-al .al-card p{font-size:12px;margin:0}.abacus-al .al-icon{height:30px;width:30px;font-size:17px}.abacus-al .al-employee-section{margin:16px 0}.abacus-al .al-employee-panel,.abacus-al .al-workflows .al-employee-panel{padding:18px;margin:10px 0;border-radius:13px}.abacus-al .al-employee-heading{margin-bottom:10px}.abacus-al .al-employee-heading h2{font-size:24px}.abacus-al .al-flex-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.abacus-al .al-flex-heading h2,.abacus-al .al-flex-heading h3{margin:0}.abacus-al .al-flex-heading input[type=search]{width:240px;min-height:36px;margin:0}.abacus-al .al-compact-btn,.abacus-al .al-btn.al-compact-btn{display:inline-flex;width:auto;max-width:none;margin:0;padding:10px 15px;justify-content:center;text-decoration:none;font-size:13px}.abacus-al .al-status{background:#def4e8;color:#176747;border-radius:16px;padding:4px 9px}.abacus-al .al-table-wrap table{width:100%;border-collapse:collapse;font-size:13px}.abacus-al .al-table-wrap th,.abacus-al .al-table-wrap td{padding:9px 12px;border-bottom:1px solid #e9eff2;text-align:left}.abacus-al .al-table-wrap th{background:#f5f8fa}.abacus-al .al-table-wrap td small{display:block;color:#8796a1}.abacus-al .al-balance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;background:#eff9f3;border:1px solid #d9eee3;border-radius:12px;padding:16px;margin:12px 0}.abacus-al .al-balance small{display:block;color:#4e6b63}.abacus-al .al-balance strong{display:block;color:#0f7051;font-size:22px;margin-top:4px}.abacus-al .al-year-select{display:inline-flex;margin:8px 0}.abacus-al .al-year-select label{margin:0}.abacus-al .al-year-select select,.abacus-al .al-inline select{padding:8px;border:1px solid #dce5ed;border-radius:8px;background:white}.abacus-al .al-workflows form.al-employee-form{display:block;padding:16px;margin:14px 0;background:#fff;border:1px solid #e6ecee}.abacus-al .al-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.abacus-al .al-form-grid h3{margin:0 0 8px}.abacus-al .al-form-grid label,.abacus-al .al-contract-row label{margin:7px 0;font-size:12px}.abacus-al .al-contract-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;background:#f4f8f9;padding:12px;margin:8px 0;border-radius:10px}.abacus-al .al-contract-row input,.abacus-al .al-contract-row select,.abacus-al .al-form-grid input,.abacus-al .al-form-grid select,.abacus-al .al-form-grid textarea{width:100%;min-height:39px;padding:8px!important;margin-top:4px!important}.abacus-al .al-remove-row{border:0;background:#fce9e9;color:#a41d1d;border-radius:8px;padding:10px;cursor:pointer}.abacus-al .al-save-all{max-width:250px;margin:14px 0 0!important}.abacus-al .al-fold{border:1px solid #e5ecef;border-radius:10px;padding:12px;margin:14px 0}.abacus-al .al-fold summary,.abacus-al .al-registration summary{cursor:pointer;font-weight:700;color:#176f4f}.abacus-al .al-registration{margin:14px 0}.abacus-al .al-registration details{background:white;border:1px solid #e7edf2;border-radius:12px;padding:15px}.abacus-al .al-registration .al-employee-layout{grid-template-columns:minmax(0,1fr)}.abacus-al .al-registration .al-employee-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px}.abacus-al .al-registration .al-employee-form .al-btn{max-width:250px}.abacus-al .al-registration .al-entitlement-note{grid-column:1/-1}.abacus-al .al-warning{padding:10px;background:#fff4db;border-radius:8px;color:#725213}.abacus-al .al-workflows .al-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.abacus-al .al-workflows .al-check input{width:18px!important;min-height:18px!important}.abacus-al .al-workflows td form.al-employee-form{display:inline-block;padding:0;margin:0;border:0}.abacus-al .al-workflows td form button{padding:5px 8px;border:1px solid #dce5ed;border-radius:5px;background:#fff}.abacus-al .al-table-wrap tr[hidden]{display:none}.abacus-al .al-footer{margin-top:18px}
@media(max-width:800px){.abacus-al .al-form-grid,.abacus-al .al-registration .al-employee-form{grid-template-columns:1fr 1fr}.abacus-al .al-balance{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.abacus-al{padding:12px}.abacus-al .al-form-grid,.abacus-al .al-registration .al-employee-form{grid-template-columns:1fr}.abacus-al .al-contract-row{grid-template-columns:1fr 1fr}.abacus-al .al-balance{gap:6px;padding:10px}.abacus-al .al-balance strong{font-size:17px}}

/* v0.3.2 staging: robust compact employee editor, including tablet landscape.
   Override WordPress theme form/button grid rules and older workflow styles. */
.abacus-al .al-workflows .al-detail > form.al-employee-form {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:auto !important;
  padding:18px !important;
  margin:12px 0 18px !important;
  background:#fff;
  border:1px solid #e5ecef;
  border-radius:13px;
}
.abacus-al .al-workflows .al-detail > form.al-employee-form > * {
  max-width:100%;
  min-width:0;
}
.abacus-al .al-workflows .al-detail .al-form-grid {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px 18px !important;
  align-items:start !important;
  width:100% !important;
  margin:14px 0 !important;
}
.abacus-al .al-workflows .al-detail .al-form-grid > div,
.abacus-al .al-workflows .al-detail .al-form-grid > label {
  min-width:0 !important;
  width:100% !important;
}
.abacus-al .al-workflows .al-detail .al-form-grid label,
.abacus-al .al-workflows .al-detail .al-contract-row label {
  display:block !important;
  margin:5px 0 9px !important;
  min-width:0;
}
.abacus-al .al-workflows .al-detail .al-form-grid input,
.abacus-al .al-workflows .al-detail .al-form-grid select,
.abacus-al .al-workflows .al-detail .al-form-grid textarea,
.abacus-al .al-workflows .al-detail .al-contract-row input,
.abacus-al .al-workflows .al-detail .al-contract-row select {
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:auto !important;
  min-height:40px !important;
  margin:5px 0 0 !important;
  padding:9px 11px !important;
  font-size:13px !important;
  line-height:1.4 !important;
}
.abacus-al .al-workflows .al-detail .al-flex-heading {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin:16px 0 8px !important;
}
.abacus-al .al-workflows .al-detail .al-contract-row {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) auto !important;
  align-items:end !important;
}
.abacus-al .al-workflows .al-detail button.al-save-all {
  display:inline-flex !important;
  width:auto !important;
  max-width:260px !important;
  min-width:175px !important;
  height:auto !important;
  min-height:44px !important;
  margin:18px 0 0 !important;
  padding:12px 18px !important;
  align-self:auto !important;
  justify-self:start !important;
  align-items:center !important;
  justify-content:center !important;
  flex:none !important;
  line-height:1.3 !important;
}
.abacus-al .al-workflows .al-detail .al-balance {display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px}
.abacus-al .al-workflows .al-detail .al-table-wrap {width:100%;overflow-x:auto}
.abacus-al .al-workflows .al-detail .al-table-wrap table {width:100%;min-width:470px;border-collapse:collapse}
.abacus-al .al-workflows .al-detail .al-fold {display:block;width:100%;margin:14px 0;padding:12px 15px}
.abacus-al .al-workflows .al-detail .al-fold:not([open]) {padding-bottom:12px}
.abacus-al .al-workflows .al-detail .al-fold summary {cursor:pointer}
@media(max-width:800px){
 .abacus-al .al-workflows .al-detail .al-balance {grid-template-columns:repeat(2,minmax(0,1fr)) !important}
 .abacus-al .al-workflows .al-detail .al-form-grid {grid-template-columns:1fr !important}
 .abacus-al .al-workflows .al-detail .al-contract-row {grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:520px){
 .abacus-al .al-workflows .al-detail > form.al-employee-form {padding:12px !important}
 .abacus-al .al-workflows .al-detail button.al-save-all {width:100% !important;max-width:100% !important}
}
/* v0.3.3: reference-inspired management workspace */
.abacus-al .al-premium-workspace{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:start;width:100%;max-width:none;margin:0 auto;padding:0 0 24px;background:#f7fafb;color:#17243a}
.abacus-al .al-premium-sidebar{position:sticky;top:12px;display:flex;flex-direction:column;gap:6px;min-height:580px;background:#fff;border:1px solid #e5eaee;border-radius:12px;padding:18px 12px;box-shadow:0 2px 10px #0c304408}
.abacus-al .al-premium-sidebar .al-brand-small{font-size:13px;font-weight:800;padding:10px 8px 22px;color:#103c35;line-height:1.5}
.abacus-al .al-premium-sidebar a{display:block;padding:12px 13px;color:#415369;text-decoration:none;border-radius:9px;font-size:13px;font-weight:550}
.abacus-al .al-premium-sidebar a:hover,.abacus-al .al-premium-sidebar a.al-side-active{background:#e7f6ef;color:#086b4c}
.abacus-al .al-premium-main{min-width:0}
.abacus-al .al-premium-main .al-employee-panel{border:1px solid #e2e9ed;box-shadow:0 3px 13px #153b4910;border-radius:12px;background:#fff;margin-bottom:14px}
.abacus-al .al-premium-main .al-employee-heading{padding:6px 2px 10px}
.abacus-al .al-premium-main .al-detail{padding:22px !important}
.abacus-al .al-premium-main .al-detail .al-flex-heading h2{font-family:inherit;font-size:27px;font-weight:750;letter-spacing:-.6px}
.abacus-al .al-close-profile{display:inline-flex;align-items:center;border:1px solid #dce4e8;background:#fff;border-radius:8px;padding:10px 13px;color:#314456;text-decoration:none;font-size:12px;font-weight:650}
.abacus-al .al-profile-tabs{display:flex;flex-wrap:wrap;gap:0;border:1px solid #e3e9ed;border-radius:9px;margin:16px 0;overflow:hidden}
.abacus-al .al-profile-tabs a{padding:13px 16px;color:#41546a;text-decoration:none;font-size:12px;font-weight:650;border-right:1px solid #e3e9ed}
.abacus-al .al-profile-tabs a:first-child{color:#087a54;border-bottom:2px solid #0b825d;background:#f3faf7}
.abacus-al .al-premium-main .al-detail .al-balance{background:#edf9f4 !important;border:1px solid #d9eee4 !important;border-radius:10px;padding:16px 12px;gap:4px !important;margin:12px 0}
.abacus-al .al-premium-main .al-detail .al-balance>div{border-right:1px solid #d9e9e1;padding:4px 10px}
.abacus-al .al-premium-main .al-detail .al-balance>div:last-child{border-right:0}
.abacus-al .al-premium-main .al-detail .al-balance strong{color:#086f50;font-size:21px;white-space:normal}
.abacus-al .al-premium-main .al-detail .al-table-wrap table th{background:#f1f6f8;color:#304153;font-size:12px}
.abacus-al .al-premium-main .al-detail .al-table-wrap table td{border-bottom:1px solid #e9eef1;font-size:12px}
.abacus-al .al-premium-main .al-detail .al-form-grid{gap:14px !important}
.abacus-al .al-premium-main .al-detail h3{font-family:inherit;font-size:16px;font-weight:750}
.abacus-al .al-premium-main .al-detail button.al-save-all{background:#087a54 !important;border-radius:8px !important;min-height:40px !important}
.abacus-al .al-premium-main .al-detail .al-contract-row{background:#f6faf9;border:1px solid #e3ecea;border-radius:9px;padding:10px}
.abacus-al .al-premium-main .al-detail input,.abacus-al .al-premium-main .al-detail select{border-radius:7px}
@media(max-width:900px){.abacus-al .al-premium-workspace{grid-template-columns:1fr;gap:10px}.abacus-al .al-premium-sidebar{position:static;min-height:0;display:flex;flex-direction:row;flex-wrap:wrap;padding:10px}.abacus-al .al-premium-sidebar .al-brand-small{width:100%;padding:4px 8px}.abacus-al .al-premium-sidebar a{padding:9px;font-size:12px}}
@media(max-width:600px){.abacus-al .al-premium-main .al-detail{padding:12px !important}.abacus-al .al-profile-tabs a{padding:10px;font-size:11px}.abacus-al .al-premium-main .al-detail .al-balance strong{font-size:16px}}

/* v0.3.4: visible save feedback and compact, readable employee record */
.abacus-al .al-action-notice{padding:13px 17px;margin:12px 0;border:1px solid #cde6da;background:#eaf8f0;color:#145d44;border-radius:10px;font-weight:650;font-size:13px}
.abacus-al .al-contract-hint{font-size:12px;color:#506476;background:#f3f8fa;padding:10px 12px;border-radius:8px;margin:8px 0 10px}
.abacus-al .al-workflows .al-detail .al-form-grid label{display:block;min-width:0}
.abacus-al .al-workflows .al-detail .al-contract-row label{min-width:0}
.abacus-al .al-premium-main .al-detail .al-flex-heading{margin-top:8px}
.abacus-al .al-workflows .al-detail .al-save-all{cursor:pointer}
@media(max-width:650px){.abacus-al .al-premium-sidebar{gap:2px}.abacus-al .al-premium-sidebar a{font-size:11px}.abacus-al .al-premium-main .al-detail .al-contract-row{grid-template-columns:1fr!important}.abacus-al .al-premium-main .al-detail .al-balance{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* v0.3.5: compact, full-width, independent editing sections */
.al-premium-workspace .al-edit-section{display:block;width:100%;max-width:100%;margin:12px 0;box-sizing:border-box;}
.al-premium-workspace .al-edit-section>summary{cursor:pointer;font-weight:650;padding:14px 16px;}
.al-premium-workspace .al-edit-section>.al-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:8px 16px;}
.al-premium-workspace .al-edit-section>label{display:block;margin:10px 16px;}
.al-premium-workspace .al-section-save{display:inline-flex!important;width:auto!important;min-width:130px;max-width:240px;height:auto!important;min-height:38px!important;margin:12px 16px 16px;align-items:center;justify-content:center;align-self:flex-start;}
.al-premium-workspace .al-fold{grid-column:1/-1;min-width:0;}
@media(max-width:650px){.al-premium-workspace .al-edit-section>.al-form-grid{grid-template-columns:1fr;}}

/* v0.3.6 visual refresh: Abacus navy / emerald / soft teal / warm gold */
.abacus-al .al-premium-workspace{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172b42}
.abacus-al .al-premium-main{background:linear-gradient(150deg,#f7fbff 0%,#f5faf8 60%,#fffaf4 100%)}
.abacus-al .al-premium-sidebar{background:linear-gradient(180deg,#f7fbff,#f0faf6);border-right:1px solid #e0eceb}
.abacus-al .al-premium-sidebar .al-side-active{background:#dff4eb!important;color:#076c4d!important;border-left:3px solid #15966e}
.abacus-al .al-detail{border:1px solid #e3ebf1;box-shadow:0 12px 32px rgba(13,51,76,.06)}
.abacus-al .al-detail h2{color:#102c4a;letter-spacing:-.03em}
.abacus-al .al-balance{background:linear-gradient(105deg,#e8f8f2,#eaf4ff 70%,#fff8e9);border-color:#cce8df}
.abacus-al .al-balance>div{border-right:1px solid #d3e7e5;padding:3px 12px}
.abacus-al .al-balance>div:last-child{border-right:0}
.abacus-al .al-balance strong{color:#087652;font-weight:800}
.abacus-al .al-fold{background:#fff;border:1px solid #e2eaf1;box-shadow:0 2px 9px rgba(12,52,76,.035);padding:15px 18px}
.abacus-al .al-fold[open]{border-color:#a9d9ca;background:linear-gradient(180deg,#f7fcfa,#fff 100%)}
.abacus-al .al-fold summary{font-size:15px;color:#075f50;padding:5px 0}
.abacus-al .al-fold summary::marker{color:#138d6a}
.abacus-al .al-section-save,.abacus-al .al-btn{background:linear-gradient(135deg,#159a72,#08734e)!important;border-radius:9px!important;box-shadow:0 4px 10px rgba(12,112,79,.12)}
.abacus-al .al-table-wrap th{background:#ecf4f8!important;color:#183c53}
.abacus-al .al-action-notice{border-left:4px solid #168e6c;background:#eaf8f0;color:#14533f;padding:14px 18px;border-radius:8px;margin:12px 0;font-weight:650}
.abacus-al .al-fold .al-form-grid{margin:12px 0}
.abacus-al .al-fold input,.abacus-al .al-fold select,.abacus-al .al-fold textarea{border:1px solid #d6e2e9!important;border-radius:8px!important}
@media(max-width:680px){.abacus-al .al-balance>div{border-right:0}.abacus-al .al-fold{padding:12px}.abacus-al .al-detail h2{font-size:22px}}

/* v0.6.1 consolidated staging layout */
#al-management-overview,#al-management-reports{box-sizing:border-box;width:min(100%,1100px);max-width:1100px;margin:16px auto;padding:20px;overflow-wrap:anywhere;}
#al-management-overview h2,#al-management-reports h2{font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.3;margin:0 0 16px;}
#al-management-reports .al-btn{display:inline-flex;width:auto;max-width:100%;min-width:0;padding:10px 18px;}
#al-management-overview .al-balance{min-width:0;}
@media(max-width:700px){#al-management-overview,#al-management-reports{padding:14px;margin:12px auto;}#al-management-overview .al-balance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}#al-management-reports .al-btn{white-space:normal;}}

/* v0.6.2: full-width overview, reporting within management sidebar workspace */
.abacus-al #al-management-overview{width:100%!important;max-width:none!important;margin:16px 0!important;box-sizing:border-box;}
.abacus-al #al-management-reports{width:100%!important;max-width:none!important;margin:24px 0 0!important;box-sizing:border-box;scroll-margin-top:24px;}
.abacus-al #al-management-reports h2{font-size:1.35rem!important;}
.abacus-al .al-role-history{margin:18px 0;padding:16px;border:1px solid #d9e8e4;border-radius:10px;background:#f8fcfa;}
.abacus-al .al-role-history h3{margin:0 0 12px;font-size:1.1rem;}
.abacus-al #al-account{scroll-margin-top:20px;}

/* v0.6.3: role history remains visible even when Account controls are collapsed */
.abacus-al #al-role-history{display:block!important;visibility:visible!important;width:100%;max-width:100%;margin:16px 0 20px;clear:both;}
.abacus-al #al-role-history .al-table-wrap{overflow-x:auto;}

.abacus-al .al-card-link{display:block;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}.abacus-al .al-card-link:hover,.abacus-al .al-card-link:focus{transform:translateY(-2px);box-shadow:0 14px 30px #17345122}.abacus-al .al-withdraw-btn{padding:7px 12px;border:1px solid #b75d5d;background:#fff;color:#9d2525;border-radius:7px;cursor:pointer}.abacus-al .al-leave-preview[hidden],.abacus-al .al-preview-submit[hidden]{display:none!important}.abacus-al .al-leave-preview input[type=checkbox]{display:inline-block!important;width:18px!important;min-height:18px!important;margin:0 8px 0 0!important;vertical-align:middle}.abacus-al .al-preview-error{color:#a52727!important;font-weight:600}

/* v0.8.4 unified teal/mint dashboard theme */
.abacus-al{--al-deep:#073c3b;--al-teal:#006c56;--al-mint:#e9f6f2;--al-text:#11243b;--al-line:#e0e8ec;color:var(--al-text)}
.abacus-al .al-top{background:linear-gradient(110deg,#093b3b,#075b56)!important;border-radius:16px 16px 0 0!important;padding:20px 30px!important;color:#fff!important}
.abacus-al .al-dash{background:linear-gradient(120deg,#073d3d,#0a6560)!important;border-radius:0 0 20px 20px!important;padding:26px 32px!important}
.abacus-al .al-dash h1,.abacus-al .al-dash p,.abacus-al .al-dash .al-eyebrow{color:#fff!important}
.abacus-al .al-grid{gap:14px!important}
.abacus-al .al-grid .al-card{background:#fff!important;color:#142b3a!important;border:1px solid #e3eded!important;border-radius:16px!important;box-shadow:0 8px 22px rgba(9,42,49,.09)!important;padding:22px!important;transition:transform .15s,box-shadow .15s}
.abacus-al .al-grid .al-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(9,42,49,.14)!important}
.abacus-al .al-grid .al-card strong{color:#006e58!important;font-size:32px!important}
.abacus-al .al-grid .al-card small{color:#253e4c!important;font-weight:650!important}
.abacus-al .al-premium-sidebar{background:#f5fbf9!important;border:1px solid #e0efea!important;border-radius:15px!important}
.abacus-al .al-premium-sidebar a{border-radius:10px!important}
.abacus-al .al-premium-sidebar a:hover,.abacus-al .al-premium-sidebar .al-side-active{background:#dff3ec!important;color:#005b49!important}
.abacus-al .al-employee-panel,.abacus-al .al-employee-section,.abacus-al .al-workflows .al-employee-panel{border-radius:17px!important}
.abacus-al .al-employee-panel h2,.abacus-al .al-employee-panel h3{color:#14273d!important}
.abacus-al .al-table-wrap{border:1px solid #e2ebef;border-radius:12px;overflow-x:auto}
.abacus-al .al-table-wrap table{width:100%;border-collapse:collapse}
.abacus-al .al-table-wrap thead{background:#eff5f7!important}
.abacus-al .al-table-wrap th{color:#28445a!important;font-weight:650!important}
.abacus-al .al-table-wrap td,.abacus-al .al-table-wrap th{padding:12px!important;border-bottom:1px solid #edf0f3!important}
.abacus-al .al-btn{background:#008263!important;border-radius:9px!important;color:#fff!important}
.abacus-al .al-btn:hover{background:#00664e!important}
.abacus-al .al-invitations-panel{max-width:920px!important;width:100%;margin:22px auto!important;padding:22px!important}
.abacus-al .al-invitations-panel h2{font-size:23px!important;margin:0 0 8px!important}
.abacus-al .al-invitations-panel td{vertical-align:middle!important}
.abacus-al .al-employee-modern{background:#f8fbfd!important;padding:22px!important}
.abacus-al .al-employee-welcome{background:linear-gradient(120deg,#eaf8f3,#f5fcfb)!important;padding:22px 26px!important;border-radius:15px!important;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px!important}
.abacus-al .al-employee-welcome h1{margin:3px 0 6px!important;color:#10263b!important;font-size:clamp(26px,3vw,38px)!important}
.abacus-al .al-employee-welcome p{margin:4px 0!important}
.abacus-al .al-leave-year{color:#476274!important;font-size:13px!important}
.abacus-al .al-employee-modern .al-balance{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin:16px 0 22px!important;background:transparent!important;border:0!important}
.abacus-al .al-employee-modern .al-balance>div{background:#f1f7ff!important;border:1px solid #deebfc!important;border-radius:13px!important;padding:22px 18px!important;min-width:0!important}
.abacus-al .al-employee-modern .al-balance>div:nth-child(2){background:#fff2f3!important;border-color:#ffdee2!important}
.abacus-al .al-employee-modern .al-balance>div:nth-child(3){background:#fff8ed!important;border-color:#ffecd0!important}
.abacus-al .al-employee-modern .al-balance>div:nth-child(4){background:#e9f8f1!important;border-color:#d0eee0!important}
.abacus-al .al-employee-modern .al-balance strong{display:block!important;font-size:clamp(19px,2vw,29px)!important;color:#075d49!important;white-space:nowrap!important;margin-top:8px!important}
.abacus-al .al-employee-bookings,.abacus-al .al-request-panel{background:#fff!important;border:1px solid #e0e9ee!important;border-radius:15px!important;padding:22px!important;margin:18px 0!important;box-shadow:0 5px 20px rgba(14,47,57,.04)}
.abacus-al .al-booking-title{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:15px}
.abacus-al .al-booking-title h3{margin:0!important}
.abacus-al .al-booking-filters{display:flex;gap:5px;flex-wrap:wrap}
.abacus-al .al-filter{padding:8px 11px!important;border-radius:9px!important;border:1px solid #e3ebef!important;background:#f5f7f9!important;color:#31485b!important;cursor:pointer}
.abacus-al .al-filter.is-active{background:#008263!important;color:white!important;border-color:#008263!important}
.abacus-al .al-status{display:inline-block;padding:5px 10px;border-radius:8px;font-weight:650;font-size:12px;white-space:nowrap}
.abacus-al .al-status-approved{background:#d9f2e7;color:#075e40}
.abacus-al .al-status-pending{background:#fff0c9;color:#815000}
.abacus-al .al-status-rejected{background:#ffe1e4;color:#a61f36}
.abacus-al .al-status-cancelled{background:#e9edf1;color:#4b5b68}
.abacus-al .al-show-bookings,.abacus-al .al-withdraw{border:0;background:transparent;color:#006f60;cursor:pointer;font-weight:650;padding:10px 0}
.abacus-al .al-request-panel .al-leave-preview{background:#f0faf6!important;border:1px solid #bde6d6!important;border-radius:12px!important}
.abacus-al .al-account-access{background:#f6fbf9!important}
@media(max-width:900px){.abacus-al .al-employee-modern .al-balance{grid-template-columns:repeat(2,minmax(0,1fr))!important}.abacus-al .al-invitations-panel{max-width:100%!important}}
@media(max-width:520px){.abacus-al .al-employee-modern .al-balance{grid-template-columns:1fr!important}.abacus-al .al-employee-modern{padding:12px!important}.abacus-al .al-employee-bookings,.abacus-al .al-request-panel{padding:14px!important}.abacus-al .al-employee-welcome{padding:16px!important}.abacus-al .al-top{padding:16px!important}}

/* v0.8.5: high-contrast emerald workspace, coloured action areas, responsive layout */
.abacus-al{--al-deep:#003e36;--al-emerald:#007c64;--al-mint:#dcf4ea;--al-ink:#13283c;--al-line:#e2eaf0}
.abacus-al .al-top{background:linear-gradient(115deg,#003c35,#006653)!important;border-radius:0!important;box-shadow:0 8px 22px rgba(0,45,39,.16)!important}
.abacus-al .al-top .al-brand strong{font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;font-weight:800!important;letter-spacing:.035em!important}
.abacus-al .al-dash{background:linear-gradient(115deg,#00463b,#00765d)!important;border-radius:0 0 22px 22px!important}
.abacus-al .al-heading h1,.abacus-al h2,.abacus-al h3,.abacus-al h4{font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;letter-spacing:-.025em!important}
.abacus-al .al-grid{gap:16px!important}
.abacus-al .al-grid .al-card{border:1px solid #e2ebf0!important;border-radius:17px!important;box-shadow:0 8px 22px rgba(13,48,58,.09)!important;transition:transform .2s,box-shadow .2s!important}
.abacus-al .al-grid .al-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(13,48,58,.16)!important}
.abacus-al .al-grid .al-card:nth-child(1){background:linear-gradient(135deg,#fff,#fff0f0)!important;border-left:5px solid #e85c69!important}
.abacus-al .al-grid .al-card:nth-child(2){background:linear-gradient(135deg,#fff,#edf6ff)!important;border-left:5px solid #2583df!important}
.abacus-al .al-grid .al-card:nth-child(3){background:linear-gradient(135deg,#fff,#e8f8ee)!important;border-left:5px solid #0e9a70!important}
.abacus-al .al-grid .al-card strong{font-size:clamp(28px,3vw,39px)!important}
.abacus-al .al-premium-sidebar{background:linear-gradient(180deg,#00473e,#002f2c)!important;color:#effff9!important;border:0!important;box-shadow:4px 0 20px rgba(0,45,39,.12)!important}
.abacus-al .al-premium-sidebar a{color:#e4f8f1!important;border-radius:11px!important}
.abacus-al .al-premium-sidebar a:hover,.abacus-al .al-premium-sidebar a.al-side-active{background:linear-gradient(90deg,#0b9d7a,#12725f)!important;color:white!important;border-left:3px solid #7be5c1!important}
.abacus-al .al-quick-nav{display:flex;gap:9px;flex-wrap:wrap;background:white;border:1px solid #e4ecf0;border-radius:14px;padding:12px;margin:15px 0;box-shadow:0 4px 15px rgba(17,49,60,.04)}
.abacus-al .al-quick-nav a{padding:10px 15px;border-radius:10px;background:#e9f7f1;color:#075d4b;font-weight:700;text-decoration:none;font-size:13px}
.abacus-al .al-quick-nav a:hover{background:#006b54;color:white}
.abacus-al .al-employee-panel,.abacus-al .al-detail{border-radius:16px!important;box-shadow:0 6px 20px rgba(15,55,66,.045)!important}
.abacus-al .al-fold{border:1px solid #dce9e7!important;border-radius:13px!important;overflow:hidden;margin:9px 0!important}
.abacus-al .al-fold>summary{padding:14px 16px!important;font-weight:700!important;background:#eaf8f2!important;color:#005b49!important;cursor:pointer}
.abacus-al .al-fold:nth-of-type(3n+1)>summary{background:#eaf2ff!important;color:#155bb1!important}
.abacus-al .al-fold:nth-of-type(3n+2)>summary{background:#fff3e3!important;color:#955500!important}
.abacus-al .al-fold:nth-of-type(3n)>summary{background:#f1ebff!important;color:#6533a2!important}
.abacus-al table{border-collapse:separate!important;border-spacing:0!important;overflow:hidden;border-radius:10px!important}
.abacus-al table thead{background:#eaf2f6!important}
.abacus-al table tbody tr:nth-child(even){background:#f8fbfc!important}
.abacus-al table tbody tr:hover{background:#edf8f4!important}
.abacus-al .al-account-state{font-weight:700;font-size:12px;border-radius:18px;padding:5px 9px;display:inline-block;white-space:nowrap}
.abacus-al .al-account-state.is-active{color:#066443;background:#def6e9}
.abacus-al .al-account-state.is-pending{color:#8a5d09;background:#fff3d6}
.abacus-al .al-account-activated{display:inline-block;color:#087452;font-weight:700;margin-right:10px}
.abacus-al .al-invitations-panel{max-width:1050px!important;margin:24px auto!important}
.abacus-al .al-invitations-panel form{display:inline-block!important}
@media(max-width:800px){.abacus-al .al-quick-nav{gap:6px}.abacus-al .al-quick-nav a{flex:1 1 42%;text-align:center}.abacus-al .al-premium-sidebar{background:#00473e!important}}


/* v0.8.6 actual multi-view management workspace */
.abacus-al{--al-deep:#073c38;--al-emerald:#07846c;--al-ink:#142d3e;--al-line:#e1e9ef;background:#f5f8fb!important;font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important}
.abacus-al .al-top{border-radius:14px 14px 0 0!important;padding:16px 22px!important;background:#053e37!important}
.abacus-al .al-dash{background:transparent!important;box-shadow:none!important;padding:0!important;border-radius:0!important;color:#142d3e!important}
.abacus-al .al-dash .al-heading{display:none!important}
.abacus-al .al-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;margin:0 0 20px!important}
.abacus-al .al-grid .al-card{min-height:115px!important;padding:17px 20px!important;background:#fff!important;border-radius:16px!important;box-shadow:0 4px 20px rgba(19,47,63,.05)!important;display:grid!important;grid-template-columns:44px 1fr;grid-template-rows:auto auto auto;align-content:center;column-gap:14px;transform:none!important}
.abacus-al .al-grid .al-card:nth-child(1),.abacus-al .al-grid .al-card:nth-child(2),.abacus-al .al-grid .al-card:nth-child(3){background:#fff!important;border:1px solid #e4eaf0!important;border-left:1px solid #e4eaf0!important}
.abacus-al .al-grid .al-card .al-icon{grid-row:1/4;width:44px!important;height:44px!important;border-radius:12px!important;background:#ffe7e8!important;color:#bc3449!important;display:grid;place-items:center}
.abacus-al .al-grid .al-card:nth-child(2) .al-icon{background:#e2f0ff!important;color:#176ac0!important}.abacus-al .al-grid .al-card:nth-child(3) .al-icon{background:#def5e9!important;color:#08724d!important}
.abacus-al .al-grid .al-card strong{font-size:29px!important;line-height:1.1;color:#152f42!important;grid-column:2}.abacus-al .al-grid .al-card small{grid-column:2;font-size:13px!important;font-weight:700!important;color:#33495a!important}.abacus-al .al-grid .al-card p{grid-column:2;color:#708193!important}
.abacus-al .al-premium-workspace{display:grid!important;grid-template-columns:224px minmax(0,1fr)!important;gap:22px!important;align-items:stretch!important;margin-top:0!important}
.abacus-al .al-premium-sidebar{position:sticky!important;top:14px!important;align-self:start!important;min-height:600px!important;padding:18px 12px!important;background:#073e38!important;border-radius:16px!important;display:flex!important;flex-direction:column;gap:5px}
.abacus-al .al-premium-sidebar .al-brand-small{padding:14px 12px 24px;font-size:16px!important;font-weight:800;color:white}.abacus-al .al-premium-sidebar .al-brand-small span{display:block;color:#a1d9ca;font-size:10px;letter-spacing:.16em;margin-top:6px}
.abacus-al .al-premium-sidebar .al-app-nav{width:100%;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#e6f8f3;padding:13px 14px;text-align:left;font-weight:650;border-radius:10px;cursor:pointer;font-size:13px}
.abacus-al .al-premium-sidebar .al-app-nav:hover,.abacus-al .al-premium-sidebar .al-app-nav.is-active{background:#0b826b;color:white}.abacus-al .al-nav-icon{font-size:19px;width:22px;text-align:center}
.abacus-al .al-app-content{min-width:0}.abacus-al .al-view-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px!important;padding:8px 2px}.abacus-al .al-view-header h2{font-size:28px!important;margin:4px 0!important;font-weight:800!important;color:#132e40!important}.abacus-al .al-view-header p{margin:0!important;color:#667c8d!important}.abacus-al .al-screen[hidden]{display:none!important}.abacus-al .al-screen{min-width:0;animation:alFade .18s ease-out}@keyframes alFade{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.abacus-al .al-screen .al-employee-panel,.abacus-al .al-screen .al-detail{background:white!important;border:1px solid #e6edf1!important;border-radius:16px!important;padding:22px!important;margin:0 0 16px!important}
.abacus-al .al-screen .al-employee-heading{background:#fff;border:1px solid #e6edf1;border-radius:16px;padding:16px 20px;margin-bottom:16px}.abacus-al .al-screen .al-employee-heading h2{font-size:22px!important}
.abacus-al .al-screen .al-table-wrap th{background:#edf3f7!important;color:#304759!important;font-size:12px!important;font-weight:750!important}.abacus-al .al-screen .al-table-wrap td{padding:12px!important}
.abacus-al .al-badge{display:inline-block;padding:5px 11px;border-radius:9px;font-size:12px;font-weight:800}.abacus-al .al-badge-approved{background:#d9f5e5;color:#076444}.abacus-al .al-badge-rejected{background:#ffe1e3;color:#a52837}.abacus-al .al-badge-pending{background:#fff0c8;color:#805600}.abacus-al .al-badge-cancelled,.abacus-al .al-badge-canceled{background:#e8edf1;color:#455568}
.abacus-al .al-profile-modern .al-profile-tabs{display:flex!important;flex-wrap:wrap;gap:6px;border-bottom:1px solid #e4ebef;padding-bottom:6px;margin:14px 0!important}.abacus-al .al-profile-modern .al-profile-tabs a{padding:12px 15px!important;text-decoration:none;border-radius:9px 9px 0 0;color:#3c5363;font-weight:650}.abacus-al .al-profile-modern .al-profile-tabs a:hover,.abacus-al .al-profile-modern .al-profile-tabs a.is-active{background:#e3f5ef;color:#075c4c;border-bottom:3px solid #00816a}
.abacus-al .al-inline-recovery{margin-top:16px;padding:16px;border:1px solid #e5d9ff;background:#f4efff;border-radius:12px}.abacus-al .al-inline-recovery strong{color:#5e2da1}.abacus-al .al-inline-recovery p{color:#5d5372;font-size:13px}
.abacus-al .al-route-help{padding:24px;background:#fff;border:1px solid #e6edf1;border-radius:14px}.abacus-al .al-link-button{border:0;background:transparent;color:#007a63;text-decoration:underline;font-weight:700;cursor:pointer}
.abacus-al .al-quick-nav{display:none!important}
@media(max-width:900px){.abacus-al .al-premium-workspace{grid-template-columns:175px minmax(0,1fr)!important;gap:10px!important}.abacus-al .al-premium-sidebar{padding:12px 8px!important}.abacus-al .al-grid{gap:8px!important}.abacus-al .al-grid .al-card{padding:12px!important;grid-template-columns:34px 1fr}.abacus-al .al-grid .al-card .al-icon{width:32px!important;height:32px!important}.abacus-al .al-grid .al-card strong{font-size:23px!important}}
@media(max-width:650px){.abacus-al .al-premium-workspace{display:block!important}.abacus-al .al-premium-sidebar{position:relative!important;top:0!important;min-height:0!important;display:flex!important;flex-direction:row!important;overflow-x:auto!important;gap:6px!important;margin-bottom:14px!important}.abacus-al .al-premium-sidebar .al-brand-small{display:none}.abacus-al .al-premium-sidebar .al-app-nav{flex:0 0 auto;width:auto;padding:10px!important;white-space:nowrap}.abacus-al .al-grid{grid-template-columns:1fr!important}.abacus-al .al-grid .al-card{min-height:82px!important}.abacus-al .al-screen .al-employee-panel{padding:13px!important}.abacus-al .al-view-header h2{font-size:22px!important}}
/* v0.8.7 — calm premium dashboard, readable on tablet */
.abacus-al .al-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:76px!important;background:#073e38!important;border-bottom:1px solid rgba(255,255,255,.14)!important}
.abacus-al .al-header-actions{display:flex;align-items:center;gap:18px;margin-left:auto}
.abacus-al .al-manager-identity{display:flex;align-items:center;gap:10px;color:#fff;text-align:left;line-height:1.2}
.abacus-al .al-manager-identity strong{display:block;font-size:13px;font-weight:750;color:white}
.abacus-al .al-manager-identity small{display:block;margin-top:4px;color:#bce8dc;font-size:11px}
.abacus-al .al-manager-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#d6f5e8;color:#085444;font-size:13px;font-weight:850;flex-shrink:0}
.abacus-al .al-company-logo{max-width:52px;max-height:50px;width:auto;height:auto;object-fit:contain;border-radius:8px}
.abacus-al .al-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.abacus-al .al-grid .al-card{min-height:108px!important;padding:15px!important;grid-template-columns:39px 1fr!important;transition:transform .15s ease,box-shadow .15s ease!important}
.abacus-al .al-grid .al-card:hover{transform:translateY(-2px)!important;box-shadow:0 12px 24px rgba(11,45,45,.10)!important}
.abacus-al .al-grid .al-card .al-icon{width:38px!important;height:38px!important}
.abacus-al .al-grid .al-card strong{font-size:27px!important}
.abacus-al .al-grid .al-card:nth-child(4){background:#fff!important;border:1px solid #e4eaf0!important}
.abacus-al .al-grid .al-card:nth-child(4) .al-icon{background:#eee9ff!important;color:#6444bb!important}
.abacus-al .al-dashboard-widgets{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;align-items:start}
.abacus-al .al-dashboard-widgets>.al-employee-panel{min-width:0!important;background:white!important;border:1px solid #e4ecf0!important;border-radius:16px!important;padding:20px!important;margin:0!important;box-shadow:0 6px 22px rgba(12,53,55,.05)!important}
.abacus-al .al-widget-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.abacus-al .al-widget-heading h3{font-size:18px!important;font-weight:800!important;margin:3px 0!important;color:#123b3a!important}
.abacus-al .al-widget-heading a{color:#08775f;font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap}
.abacus-al .al-widget-kicker{font-size:10px;letter-spacing:.12em;color:#758b92;font-weight:850}
.abacus-al .al-widget-count{color:#5a6e7c;background:#edf4f6;padding:6px 10px;border-radius:30px;font-size:11px;white-space:nowrap}
.abacus-al .al-request-list,.abacus-al .al-upcoming-list{display:flex;flex-direction:column;gap:2px}
.abacus-al .al-request-item,.abacus-al .al-upcoming-item{display:flex;align-items:center;gap:10px;padding:12px 4px;border-top:1px solid #edf1f3;text-decoration:none;color:#163b3c}
.abacus-al .al-request-item:hover{background:#f1faf6}
.abacus-al .al-request-avatar{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;border-radius:10px;background:#dff4ec;color:#006e55;font-weight:850}
.abacus-al .al-request-person{flex:1;min-width:0}.abacus-al .al-request-person strong,.abacus-al .al-upcoming-item strong{display:block;font-size:12px;color:#183d40}.abacus-al .al-request-person small,.abacus-al .al-upcoming-item small{display:block;color:#70858b;font-size:11px;margin-top:4px}
.abacus-al .al-request-hours{color:#6d4d00;background:#fff4d7;border-radius:7px;padding:5px 7px;font-size:11px;font-weight:800;white-space:nowrap}.abacus-al .al-request-arrow{font-size:18px;color:#16836b}
.abacus-al .al-upcoming-date{width:50px;flex-shrink:0;font-size:12px;font-weight:800;color:#086953;background:#e3f6ee;border-radius:9px;text-align:center;padding:9px 2px}
.abacus-al .al-upcoming-item>span:nth-child(2){flex:1;min-width:0}.abacus-al .al-upcoming-item .al-badge{font-size:10px}
.abacus-al .al-empty-state{padding:22px 12px!important;text-align:center;color:#5c767c!important;background:#f5faf8;border-radius:12px}
.abacus-al .al-screen[data-screen="dashboard"]{padding-bottom:16px}
@media(max-width:1100px){.abacus-al .al-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.abacus-al .al-dashboard-widgets{grid-template-columns:1fr}}
@media(max-width:650px){.abacus-al .al-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.abacus-al .al-grid .al-card{min-height:94px!important;padding:10px!important;grid-template-columns:1fr!important}.abacus-al .al-grid .al-card .al-icon{grid-row:auto!important}.abacus-al .al-grid .al-card strong,.abacus-al .al-grid .al-card small,.abacus-al .al-grid .al-card p{grid-column:1!important}.abacus-al .al-manager-identity strong{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.abacus-al .al-pill{display:none!important}.abacus-al .al-top{padding:12px!important}.abacus-al .al-brand strong{font-size:12px!important}.abacus-al .al-brand small{font-size:9px!important}}

/* v0.8.8: compact dashboard and accessible manager menu */
.abacus-al .al-dashboard-widgets{display:block!important;margin-top:12px!important}
.abacus-al .al-dashboard-widgets .al-dashboard-upcoming{width:100%!important}
.abacus-al .al-manager-menu{position:relative;z-index:150}
.abacus-al .al-manager-toggle{display:flex;align-items:center;gap:10px;border:1px solid transparent;background:transparent;color:#fff;border-radius:12px;padding:7px 9px;cursor:pointer;text-align:left;font:inherit}
.abacus-al .al-manager-toggle:hover,.abacus-al .al-manager-toggle[aria-expanded=true]{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.18)}
.abacus-al .al-manager-label strong{display:block;font-size:12px;color:#fff}
.abacus-al .al-manager-label small{display:block;font-size:11px;color:#c4e9df}
.abacus-al .al-manager-dropdown{position:absolute;right:0;top:calc(100% + 9px);width:min(310px,90vw);padding:8px;background:#fff;color:#183b37;border:1px solid #dfe9e6;border-radius:14px;box-shadow:0 20px 55px #062a2a35;z-index:200}
.abacus-al .al-manager-dropdown[hidden]{display:none!important}
.abacus-al .al-menu-caption{padding:12px 12px 13px;border-bottom:1px solid #e9efed;font-size:12px;color:#60726e}
.abacus-al .al-menu-caption strong,.abacus-al .al-menu-caption small{display:block;margin-top:3px;overflow-wrap:anywhere}
.abacus-al .al-manager-dropdown button,.abacus-al .al-manager-dropdown a{display:block;width:100%;padding:11px 12px;margin:2px 0;border:0;border-radius:8px;background:transparent;text-align:left;color:#193c36;font:600 13px system-ui,sans-serif;text-decoration:none;cursor:pointer}
.abacus-al .al-manager-dropdown button:hover,.abacus-al .al-manager-dropdown a:hover{background:#eaf7f2}
.abacus-al .al-manager-dropdown form{margin:0;border-top:1px solid #e9efed;padding-top:5px}
.abacus-al .al-manager-dropdown .al-manager-signout{color:#ad3333}
@media(max-width:650px){.abacus-al .al-manager-label strong{max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.abacus-al .al-manager-toggle{gap:5px;padding:4px}}

/* 0.9.2: white logo backing and compact account controls */
.abacus-al .al-company-logo{background:#fff!important;padding:6px!important;border-radius:9px!important;box-sizing:content-box!important;object-fit:contain!important}.abacus-al #al-individual-management-accounts{display:none!important}.abacus-al .al-inline-recovery{padding:12px!important;margin-top:12px!important}.abacus-al .al-inline-recovery .al-btn{width:auto!important;margin:8px 0!important;padding:9px 14px!important;min-height:36px!important}.abacus-al .al-manager-menu{position:relative;z-index:1000}

/* v0.9.4: account menu and accessible password dialog */
.abacus-al .al-logo-white{display:inline-flex;align-items:center;justify-content:center;background:#fff;padding:7px;border-radius:10px;flex-shrink:0}.abacus-al .al-logo-white img{display:block;max-height:56px;width:auto;object-fit:contain}.abacus-al .al-password-dialog[hidden]{display:none!important}.abacus-al .al-password-dialog{position:fixed;inset:0;z-index:99999;background:rgba(5,22,30,.65);display:flex;align-items:center;justify-content:center;padding:20px}.abacus-al .al-password-dialog-card{position:relative;background:#fff;border-radius:16px;padding:22px;width:min(430px,100%);max-height:90vh;overflow-y:auto;box-shadow:0 25px 70px #0004}.abacus-al .al-password-dialog-card h3{margin:0 35px 12px 0}.abacus-al .al-password-close{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:28px;cursor:pointer}.abacus-al .al-password-dialog .al-btn{margin-top:18px}.abacus-al .al-password-dialog label{margin-top:12px}

/* v0.9.6: full-viewport workspace, no centered desktop width cap. */
body:has(.abacus-al) .abacus-al{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding-left:clamp(12px,1.5vw,24px)!important;padding-right:clamp(12px,1.5vw,24px)!important;overflow-x:clip}
body:has(.abacus-al) .abacus-al .al-app{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
body:has(.abacus-al) .abacus-al .al-premium-workspace{width:100%!important;max-width:none!important;grid-template-columns:210px minmax(0,1fr);gap:clamp(12px,1.5vw,22px)}
body:has(.abacus-al) .abacus-al .al-premium-main,body:has(.abacus-al) .abacus-al .al-screen{min-width:0;max-width:none;width:100%}
body:has(.abacus-al) .abacus-al .al-top{width:100%;max-width:none}
@media(max-width:900px) and (min-width:651px){body:has(.abacus-al) .abacus-al .al-premium-workspace{grid-template-columns:175px minmax(0,1fr)}}
@media(max-width:650px){body:has(.abacus-al) .abacus-al .al-premium-workspace{display:block!important}body:has(.abacus-al) .abacus-al{padding-left:12px!important;padding-right:12px!important}}

/* v0.9.8 — compact employee self-service typography and spacing */
.abacus-al .al-employee-modern{padding:14px!important;font-size:13px!important}
.abacus-al .al-employee-welcome{padding:15px 18px!important;margin-bottom:12px!important}
.abacus-al .al-employee-welcome h1{font-size:24px!important;line-height:1.25!important}
.abacus-al .al-employee-welcome p,.abacus-al .al-employee-modern .al-leave-year{font-size:13px!important}
.abacus-al .al-employee-modern h3{font-size:17px!important;line-height:1.35!important}
.abacus-al .al-employee-modern .al-balance{gap:10px!important;margin:10px 0 14px!important}
.abacus-al .al-employee-modern .al-balance>div{padding:14px 15px!important}
.abacus-al .al-employee-modern .al-balance small{font-size:13px!important}
.abacus-al .al-employee-modern .al-balance strong{font-size:22px!important;margin-top:5px!important}
.abacus-al .al-employee-bookings,.abacus-al .al-request-panel{padding:15px!important;margin:12px 0!important}
.abacus-al .al-employee-modern .al-table-wrap table,.abacus-al .al-employee-modern .al-table-wrap th,.abacus-al .al-employee-modern .al-table-wrap td{font-size:13px!important}
.abacus-al .al-employee-modern .al-filter,.abacus-al .al-employee-modern .al-btn{font-size:13px!important}
.abacus-al .al-employee-modern .al-filter{padding:6px 9px!important}
@media(max-width:520px){.abacus-al .al-employee-modern .al-balance strong{font-size:20px!important}.abacus-al .al-employee-welcome h1{font-size:22px!important}}

/* v0.9.9 — compact employee self-service, preserving readable controls */
.abacus-al .al-employee-panel h1{font-size:20px!important;line-height:1.25!important}
.abacus-al .al-employee-panel h2{font-size:15px!important;line-height:1.35!important}
.abacus-al .al-employee-panel .al-balance-card strong,.abacus-al .al-employee-panel .al-stat strong{font-size:18px!important}
.abacus-al .al-employee-panel table th,.abacus-al .al-employee-panel table td{font-size:12px!important;padding:9px 12px!important}
.abacus-al .al-employee-panel .al-btn,.abacus-al .al-employee-panel button{font-size:12px}
.abacus-al .al-unified-login{max-width:520px;margin:22px auto}
.abacus-al .al-legacy-login{max-width:520px;margin:8px auto 24px;font-size:13px}
.abacus-al .al-legacy-login>.al-auth{margin:10px 0}

/* v0.9.11: responsive management leave calendar */
.al-calendar-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.al-calendar-nav a{font-size:13px}.al-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.al-calendar-weekday{text-align:center;font-size:12px;font-weight:700;padding:8px}.al-calendar-day,.al-calendar-blank{min-width:0;min-height:88px;border:1px solid #e2e8e6;border-radius:7px;padding:6px;background:#fff}.al-calendar-weekend{background:#f4f5f5}.al-calendar-event{overflow-wrap:anywhere;font-size:11px;line-height:1.3;padding:4px;margin-top:4px;border-radius:4px}.al-calendar-approved{background:#d9f2e4;color:#14532d}.al-calendar-pending{background:#fff0c2;color:#744900}@media(max-width:700px){.al-calendar-grid{gap:2px}.al-calendar-day,.al-calendar-blank{padding:2px;min-height:50px}.al-calendar-event{font-size:9px;padding:2px}.al-calendar-event small{display:none}.al-calendar-weekday{font-size:10px;padding:4px 0}}

/* v0.9.12: prominent role-aware calendar */
.al-main-calendar{width:100%;box-sizing:border-box;margin:12px 0 26px;padding:20px;background:#fff;border:1px solid #dce5df;border-radius:12px;scroll-margin-top:24px}
.al-main-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:18px}
.al-main-calendar-head h2{font-size:22px;margin:5px 0}.al-main-calendar-head p{font-size:13px;margin:4px 0}
.al-main-calendar .al-calendar-day{min-height:105px}.al-main-calendar .al-cal-free{background:#dff5e7;border-color:#9fd5b2;color:#175b30}.al-main-calendar .al-cal-booked{background:#fce2e2;border-color:#e7aaaa;color:#8a1f1f}.al-main-calendar .al-cal-neutral{background:#f1f3f4;color:#5b6268}.al-main-calendar .al-cal-status{display:block;font-size:11px;margin-top:10px}.al-main-calendar .al-calendar-approved{background:#c9e8d6}.al-main-calendar .al-calendar-pending{background:#fff0c2}
@media(max-width:700px){.al-main-calendar{padding:10px}.al-main-calendar .al-calendar-day{min-height:64px}.al-main-calendar .al-cal-status{font-size:8px;overflow-wrap:anywhere}.al-main-calendar-head h2{font-size:18px}}

/* v0.9.13: compact calendar; layout-only, no changes to booking calculations */
.abacus-al .al-main-calendar{max-width:1080px;margin:12px auto 22px;padding:14px;border-radius:12px;box-shadow:0 3px 14px rgba(16,50,40,.045)}
.abacus-al .al-main-calendar-head{margin-bottom:8px;gap:8px}
.abacus-al .al-main-calendar-head h2{font-size:17px;margin:2px 0}
.abacus-al .al-main-calendar-head p{font-size:11px;line-height:1.4;margin:2px 0}
.abacus-al .al-calendar-nav{gap:10px;font-size:12px}
.abacus-al .al-calendar-nav a{font-size:11px}
.abacus-al .al-calendar-grid{gap:3px}
.abacus-al .al-calendar-weekday{font-size:10px;padding:5px 0}
.abacus-al .al-main-calendar .al-calendar-day,.abacus-al .al-main-calendar .al-calendar-blank{min-height:55px;padding:4px;border-radius:5px;font-size:11px}
.abacus-al .al-main-calendar .al-calendar-day strong{font-size:11px}
.abacus-al .al-main-calendar .al-calendar-event{font-size:9px;line-height:1.2;padding:2px 3px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}
.abacus-al .al-main-calendar .al-calendar-event small{font-size:8px}
.abacus-al .al-main-calendar .al-cal-status{font-size:9px;margin-top:5px}
.abacus-al .al-cal-more{font-size:9px;color:#53635c;margin-top:2px}
@media(max-width:700px){.abacus-al .al-main-calendar{padding:8px;margin:8px auto 14px}.abacus-al .al-main-calendar .al-calendar-day,.abacus-al .al-main-calendar .al-calendar-blank{min-height:44px;padding:2px}.abacus-al .al-main-calendar .al-calendar-event{font-size:8px;padding:1px}.abacus-al .al-main-calendar .al-calendar-event small{display:none}.abacus-al .al-main-calendar .al-cal-status{font-size:8px;margin-top:4px}.abacus-al .al-main-calendar-head h2{font-size:15px}}

/* 0.9.14: management calendar belongs to workspace, not above dashboard */
.abacus-al .al-calendar-preview{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid #e2e9e7;border-radius:12px;padding:14px 18px;margin:16px 0}
.abacus-al .al-calendar-preview h3{font-size:16px;margin:3px 0}.abacus-al .al-calendar-preview p{font-size:12px;margin:0}
.abacus-al .al-calendar-open{display:inline-flex;white-space:nowrap;background:#087b5b;color:#fff;text-decoration:none;border-radius:8px;padding:10px 14px;font-size:12px;font-weight:700}
.abacus-al .al-premium-main .al-calendar-dedicated{max-width:none;width:100%;margin:0 0 18px;box-shadow:none;scroll-margin-top:18px}
.abacus-al .al-calendar-dedicated[hidden]{display:none!important}
.abacus-al .al-premium-workspace.al-calendar-view .al-premium-main> :not(.al-calendar-dedicated){display:none!important}
@media(max-width:650px){.abacus-al .al-calendar-preview{align-items:flex-start;flex-direction:column}.abacus-al .al-calendar-open{width:100%;justify-content:center}}

/* v0.9.15: calendar belongs inside the employee panel or a management screen */
.abacus-al .al-employee-modern>.al-main-calendar{width:100%;max-width:none;margin:8px 0 18px;box-shadow:none}
.abacus-al .al-calendar-screen>.al-main-calendar{width:100%;max-width:none;margin:0;box-shadow:none}
.abacus-al .al-calendar-preview button.al-calendar-open{border:0;cursor:pointer}
.abacus-al .al-calendar-screen[hidden],.abacus-al .al-employee-modern>.al-main-calendar[hidden]{display:none!important}

/* v0.9.16: balanced HR workspace; existing calculations and permissions untouched */
body:has(.abacus-al) .abacus-al{max-width:1250px!important;width:calc(100% - 32px)!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
body:has(.abacus-al) .abacus-al .al-premium-workspace{max-width:1200px!important;width:100%!important;margin:0 auto!important;grid-template-columns:185px minmax(0,1fr)!important;gap:16px!important}
body:has(.abacus-al) .abacus-al .al-premium-sidebar{min-height:0!important;padding:12px 9px!important}
body:has(.abacus-al) .abacus-al .al-premium-sidebar .al-app-nav{font-size:12px!important;padding:10px 9px!important}
body:has(.abacus-al) .abacus-al .al-premium-sidebar .al-nav-icon{font-size:15px!important;width:19px!important}
body:has(.abacus-al) .abacus-al .al-premium-main,body:has(.abacus-al) .abacus-al .al-app-content,body:has(.abacus-al) .abacus-al .al-screen{min-width:0!important;max-width:100%!important}
body:has(.abacus-al) .abacus-al .al-view-header h2{font-size:22px!important}
body:has(.abacus-al) .abacus-al .al-grid .al-card{min-height:78px!important;padding:12px!important}
body:has(.abacus-al) .abacus-al .al-grid .al-card strong{font-size:21px!important}
body:has(.abacus-al) .abacus-al .al-employee-modern{max-width:1080px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
body:has(.abacus-al) .abacus-al .al-employee-modern .al-balance strong{font-size:19px!important}
body:has(.abacus-al) .abacus-al .al-employee-modern .al-balance>div{padding:11px!important}
.abacus-al .al-dashboard-calendar-row{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:14px;align-items:stretch;margin:14px 0 18px}
.abacus-al .al-dashboard-mini-calendar,.abacus-al .al-dashboard-calendar-row .al-upcoming-side{background:#fff;border:1px solid #e4ece9;border-radius:13px;padding:14px;min-width:0;margin:0!important;box-shadow:0 3px 14px rgba(13,51,46,.04)}
.abacus-al .al-mini-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.abacus-al .al-mini-title h3{font-size:14px;margin:3px 0}
.abacus-al .al-mini-title .al-calendar-open{font-size:10px;padding:7px 9px;border:0;cursor:pointer}
.abacus-al .al-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
.abacus-al .al-mini-grid .al-calendar-day,.abacus-al .al-mini-grid .al-calendar-blank{min-height:39px!important;padding:3px!important;font-size:9px!important;border-radius:4px}
.abacus-al .al-mini-grid .al-calendar-weekday{font-size:9px;padding:3px 0}
.abacus-al .al-mini-grid .al-calendar-event{font-size:8px!important;padding:1px 2px!important;margin-top:1px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.abacus-al .al-mini-grid .al-calendar-event:nth-of-type(n+3){display:none}
.abacus-al .al-mini-grid .al-cal-status{display:none!important}
.abacus-al .al-dashboard-calendar-row .al-upcoming-side{max-height:430px;overflow:auto}
.abacus-al .al-calendar-screen .al-main-calendar{max-width:100%!important;padding:14px!important}
.abacus-al .al-calendar-screen .al-calendar-day{min-height:54px!important}
.abacus-al .al-employee-calendar-preview{max-width:100%;margin:12px 0!important}
@media(max-width:950px){.abacus-al .al-dashboard-calendar-row{grid-template-columns:1fr}.abacus-al .al-dashboard-calendar-row .al-upcoming-side{max-height:none}}
@media(max-width:650px){body:has(.abacus-al) .abacus-al{width:calc(100% - 16px)!important}body:has(.abacus-al) .abacus-al .al-premium-workspace{display:block!important}.abacus-al .al-dashboard-mini-calendar{padding:9px}.abacus-al .al-mini-grid .al-calendar-day{min-height:34px!important}.abacus-al .al-mini-grid .al-calendar-event{display:none}}

/* v0.9.17: responsive full-page width and compact employee management editor */
body:has(.abacus-al) .abacus-al{width:calc(100% - 24px)!important;max-width:none!important;margin:0 auto!important;padding:12px clamp(10px,1.2vw,22px)!important}
body:has(.abacus-al) .abacus-al .al-app,body:has(.abacus-al) .abacus-al .al-top{width:100%!important;max-width:none!important}
body:has(.abacus-al) .abacus-al .al-premium-workspace{max-width:none!important;width:100%!important;grid-template-columns:190px minmax(0,1fr)!important;gap:clamp(10px,1.3vw,20px)!important}
body:has(.abacus-al) .abacus-al .al-employee-modern{max-width:none!important;width:100%!important}
.abacus-al .al-workflows .al-detail{padding:16px!important}
.abacus-al .al-workflows .al-detail>form.al-employee-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:12px!important;margin:10px 0!important;align-items:start}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold{margin:0!important;min-width:0!important;padding:0!important;border:1px solid #e0e9eb!important;border-radius:10px!important;overflow:hidden;background:#fff!important}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold>summary{padding:13px 14px!important;background:#f0f7f6!important;color:#174d46!important;font-size:13px!important;line-height:1.4!important;list-style-position:inside;cursor:pointer}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold:nth-of-type(2n)>summary{background:#f0f4fb!important;color:#264d71!important}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold[open]{padding-bottom:12px!important}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold[open]>:not(summary){margin-left:12px!important;margin-right:12px!important}
.abacus-al .al-workflows .al-detail>form.al-employee-form>.al-fold .al-form-grid{gap:8px!important}
.abacus-al .al-workflows .al-detail>.al-fold{margin:10px 0!important;padding:0!important;border:1px solid #e2eaed!important;border-radius:10px!important;overflow:hidden}
.abacus-al .al-workflows .al-detail>.al-fold>summary{padding:12px 15px!important;background:#f0f7f6!important;font-size:13px!important;color:#195a4d!important}
.abacus-al .al-workflows .al-detail>.al-fold[open]{padding-bottom:12px!important}
.abacus-al .al-workflows .al-detail>.al-fold[open]>:not(summary){margin-left:12px!important;margin-right:12px!important}
.abacus-al .al-workflows .al-detail #al-overtime-records>.al-fold{margin:7px 12px!important;padding:0!important;border:1px solid #e4ebed!important}
.abacus-al .al-workflows .al-detail #al-overtime-records>.al-fold>summary{padding:10px 12px!important;font-size:12px!important;background:#f6f9fb!important}
.abacus-al .al-workflows .al-detail .al-balance{padding:10px!important;gap:9px!important;margin:10px 0!important}
.abacus-al .al-workflows .al-detail .al-balance strong{font-size:18px!important}
@media(max-width:850px){.abacus-al .al-workflows .al-detail>form.al-employee-form{grid-template-columns:1fr!important}body:has(.abacus-al) .abacus-al .al-premium-workspace{grid-template-columns:165px minmax(0,1fr)!important}}
@media(max-width:650px){body:has(.abacus-al) .abacus-al{width:100%!important;padding:8px!important}body:has(.abacus-al) .abacus-al .al-premium-workspace{display:block!important}.abacus-al .al-workflows .al-detail{padding:10px!important}}
/* v0.9.18 – streamlined management records and responsive employee view */
.abacus-al .al-screen[hidden],.abacus-al .al-employee-panel[hidden],.abacus-al .al-employee-heading[hidden],.abacus-al .al-registration[hidden]{display:none!important}
.abacus-al .al-profile-focus{max-width:100%;margin:0!important;padding:clamp(12px,1.8vw,24px)!important}
.abacus-al .al-profile-focus>.al-flex-heading{margin-bottom:12px!important}
.abacus-al .al-profile-focus .al-profile-tabs{gap:5px!important;margin:8px 0 12px!important}
.abacus-al .al-profile-focus .al-profile-tabs a{padding:9px 11px!important;font-size:12px!important}
.abacus-al .al-profile-focus .al-fold{margin:0!important;min-width:0}
.abacus-al .al-profile-focus .al-fold summary{padding:11px 13px!important;font-size:12px!important;line-height:1.35!important}
.abacus-al .al-profile-focus form.al-employee-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;align-items:start}
.abacus-al .al-profile-focus form.al-employee-form>.al-fold{width:100%!important;box-sizing:border-box}
.abacus-al .al-profile-focus form.al-employee-form>input[type=hidden],.abacus-al .al-profile-focus form.al-employee-form>.al-contract-rows{grid-column:1/-1}
.abacus-al .al-profile-focus .al-balance{margin:12px 0!important}
.abacus-al .al-profile-focus .al-balance>div{padding:12px!important}
.abacus-al .al-profile-focus .al-employee-panel{padding:14px!important}
.abacus-al .al-profile-focus .al-table-wrap{overflow-x:auto}
.abacus-al .al-employee-v0918{min-height:0!important;padding-bottom:12px!important}
.abacus-al .al-employee-v0918 .al-employee-bookings,.abacus-al .al-employee-v0918 .al-request-panel{margin-bottom:10px!important}
@media(max-width:760px){.abacus-al .al-profile-focus form.al-employee-form{grid-template-columns:1fr}.abacus-al .al-profile-focus .al-profile-tabs{overflow-x:auto;flex-wrap:nowrap!important}.abacus-al .al-profile-focus .al-profile-tabs a{white-space:nowrap}}
/* v0.9.19: one dashboard calendar, balanced two-column layout */
.abacus-al .al-screen[data-screen="dashboard"]>.al-main-calendar{display:none!important}
.abacus-al .al-screen[data-screen="dashboard"] .al-dashboard-calendar-row{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(270px,2fr)!important;gap:16px!important;align-items:stretch!important}
.abacus-al .al-screen[data-screen="dashboard"] .al-dashboard-mini-calendar{overflow:hidden!important;min-width:0!important}
.abacus-al .al-screen[data-screen="dashboard"] .al-mini-grid .al-calendar-day{min-height:40px!important}
.abacus-al .al-profile-focus .al-v0919-record-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;grid-column:1/-1;align-items:start}
.abacus-al .al-profile-focus .al-v0919-record-grid>details{min-width:0!important;margin:0!important}
.abacus-al .al-profile-focus form.al-employee-form{display:block!important}
.abacus-al .al-profile-focus .al-v0919-approved{margin:12px 0!important}
.abacus-al .al-profile-focus .al-v0919-approved>summary{background:#eaf5f0!important;color:#145c4b!important;font-weight:700}
@media(max-width:850px){.abacus-al .al-screen[data-screen="dashboard"] .al-dashboard-calendar-row{grid-template-columns:1fr!important}.abacus-al .al-profile-focus .al-v0919-record-grid{grid-template-columns:1fr!important}}

/* v0.9.20: real two-column employee record layout, independent of workspace tabs */
.abacus-al #al-workflow-detail form.al-v0920-primary-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start!important}
.abacus-al #al-workflow-detail form.al-v0920-primary-grid > details.al-fold{width:auto!important;min-width:0!important;margin:0!important;grid-column:auto!important}
.abacus-al #al-workflow-detail .al-v0920-secondary-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:start!important;margin-top:12px}
.abacus-al #al-workflow-detail .al-v0920-secondary-grid > details.al-fold{width:auto!important;min-width:0!important;margin:0!important;grid-column:auto!important}
.abacus-al #al-workflow-detail .al-v0920-secondary-grid > details.al-fold[open]{align-self:start}
@media(max-width:700px){.abacus-al #al-workflow-detail form.al-v0920-primary-grid,.abacus-al #al-workflow-detail .al-v0920-secondary-grid{grid-template-columns:minmax(0,1fr)!important}}

/* v0.9.21: unified neutral styling and actual two-column record containers */
.abacus-al #al-workflow-detail form.al-employee-form{display:block!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid,
.abacus-al #al-workflow-detail .al-v0921-secondary-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 12px!important;align-items:start!important;width:100%!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details,
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details{grid-column:auto!important;min-width:0!important;width:100%!important;margin:0!important;border:1px solid #e2e9e7!important;border-radius:9px!important;background:#fff!important;padding:7px!important;box-sizing:border-box!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details>summary,
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details>summary{background:#f4f8f6!important;color:#174c40!important;border:0!important;border-left:3px solid #16846b!important;border-radius:5px!important;padding:11px 13px!important;font-weight:650!important;min-height:0!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details[open],
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details[open]{box-shadow:0 4px 14px rgba(12,52,43,.07)!important}
.abacus-al .al-v0921-employee-columns{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:14px!important;align-items:start!important;margin:12px 0!important}
.abacus-al .al-v0921-employee-columns>.al-employee-bookings,
.abacus-al .al-v0921-employee-columns>.al-request-panel{min-width:0!important;width:100%!important;margin:0!important;box-sizing:border-box!important}
.abacus-al .al-v0921-employee-columns .al-table-wrap{overflow-x:auto!important}
.abacus-al .al-v0921-employee-columns .al-booking-filters{flex-wrap:wrap!important}
@media(max-width:900px){.abacus-al .al-v0921-employee-columns{grid-template-columns:1fr!important}}
@media(max-width:700px){.abacus-al #al-workflow-detail .al-v0921-primary-grid,.abacus-al #al-workflow-detail .al-v0921-secondary-grid{grid-template-columns:1fr!important}}


/* v0.9.25 — approved presentation and employee record layout only */
.abacus-al .al-top{position:relative!important;isolation:isolate;overflow:hidden!important;background:linear-gradient(115deg,#073f35 0%,#09644e 51%,#0c7768 100%)!important;border:1px solid rgba(225,249,239,.19)!important;border-radius:17px!important;min-height:76px!important;padding:15px 22px!important;box-shadow:0 10px 28px rgba(7,59,49,.17)!important}
.abacus-al .al-top:before{content:"";position:absolute;z-index:-1;inset:0;background:repeating-radial-gradient(circle at 84% 8%,transparent 0 24px,rgba(255,255,255,.08) 25px 26px,transparent 27px 49px),linear-gradient(145deg,transparent 55%,rgba(232,201,130,.12));pointer-events:none}
.abacus-al .al-top:after{content:"";position:absolute;z-index:-1;width:330px;height:220px;right:14%;top:-135px;border-radius:50%;border:34px solid rgba(198,242,220,.075);transform:rotate(-22deg);pointer-events:none}
.abacus-al .al-brand strong{letter-spacing:.045em!important;font-weight:800!important}.abacus-al .al-brand small{letter-spacing:.095em!important;opacity:.83!important}
.abacus-al .al-manager-toggle{border:1px solid rgba(255,255,255,.25)!important;background:rgba(255,255,255,.11)!important;border-radius:12px!important;backdrop-filter:blur(8px);padding:8px 11px!important}
.abacus-al .al-manager-dropdown{border-radius:14px!important;border:1px solid #dbe8e3!important;box-shadow:0 18px 46px rgba(13,49,42,.19)!important}
.abacus-al .al-premium-sidebar{background:linear-gradient(180deg,#103f36,#0d5344)!important;border-radius:15px!important}
.abacus-al .al-app-nav.is-active{background:rgba(223,250,236,.17)!important;border-left:3px solid #d5c28d!important}
.abacus-al .al-screen .al-card,.abacus-al .al-employee-panel{border-radius:14px!important;box-shadow:0 3px 18px rgba(17,53,47,.055)!important}
/* The original v0.9.21 rule forces all details to grid-column:auto; override it on open. */
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details.al-fold[open],
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details.al-fold[open],
.abacus-al #al-workflow-detail .al-v0920-primary-grid>details.al-fold[open],
.abacus-al #al-workflow-detail .al-v0920-secondary-grid>details.al-fold[open],
.abacus-al .al-profile-focus .al-v0919-record-grid>details.al-fold[open]{grid-column:1/-1!important;width:100%!important;align-self:start!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details.al-fold,
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details.al-fold{border:1px solid #dce8e2!important;border-radius:12px!important;padding:6px!important;background:#fff!important;overflow:hidden!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details.al-fold>summary,
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details.al-fold>summary{background:linear-gradient(100deg,#eaf5ee,#f5f8f4)!important;color:#174a3d!important;border-left:3px solid #278e72!important;padding:13px 15px!important;border-radius:8px!important}
.abacus-al #al-workflow-detail .al-v0921-primary-grid>details.al-fold[open],
.abacus-al #al-workflow-detail .al-v0921-secondary-grid>details.al-fold[open]{box-shadow:0 9px 24px rgba(13,60,45,.09)!important}
.abacus-al #al-workflow-detail details.al-fold[open] .al-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.abacus-al #al-workflow-detail details.al-fold[open] input,.abacus-al #al-workflow-detail details.al-fold[open] select,.abacus-al #al-workflow-detail details.al-fold[open] textarea{max-width:100%!important;box-sizing:border-box!important}
.abacus-al .al-self-profile{background:#fff!important;border:1px solid #dce9e2!important;border-radius:15px!important;padding:20px!important;margin:15px 0!important;box-shadow:0 5px 20px rgba(16,63,48,.06)!important}
.abacus-al .al-self-profile[hidden]{display:none!important}.abacus-al .al-self-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.abacus-al .al-self-close{border:0;border-radius:9px;padding:6px 11px;cursor:pointer;background:#eef5f1}
@media(max-width:700px){.abacus-al #al-workflow-detail details.al-fold[open] .al-form-grid{grid-template-columns:1fr!important}.abacus-al .al-top{padding:12px!important;border-radius:12px!important}}

/* v0.9.73: compact irregular-hours ledger */
.al-irregular-ledger{margin-top:18px;max-width:100%;}
.al-irregular-records{display:grid;gap:9px;max-width:100%;padding:8px 0;}
.al-irregular-record{border:1px solid #dce6ec;border-radius:10px;background:#fff;padding:11px 13px;min-width:0;max-width:100%;box-sizing:border-box;}
.al-irregular-record-main{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:13px;}
.al-irregular-record-main strong{font-size:14px;min-width:105px;}
.al-irregular-status{border-radius:20px;padding:3px 9px;background:#e8f5ed;color:#176b42;font-weight:600;}
.al-irregular-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:flex-start;}
.al-irregular-action{margin:0!important;min-width:0!important;max-width:100%;border:1px solid #d8e3eb!important;border-radius:7px!important;padding:0!important;background:#f8fafc;}
.al-irregular-action>summary{font-size:12px!important;padding:7px 11px!important;cursor:pointer;}
.al-irregular-action[open]{flex-basis:100%;padding:8px!important;}
.al-irregular-action form{max-width:650px;padding:8px;}
.al-irregular-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.al-irregular-action textarea{min-height:54px;}
@media(max-width:700px){.al-irregular-record-main{gap:6px 12px}.al-irregular-edit-fields{grid-template-columns:1fr}.al-irregular-record-main strong{min-width:100%}}
