/* design tokens live in theme.css */*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Tahoma,Arial,sans-serif;font-size:0.875rem}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #42598d55;outline-offset:1px}.hidden{display:none!important}.app-shell{min-height:100vh;min-height:100dvh}.sidebar{position:fixed;inset:0 0 0 auto;width:248px;background:#111b33;color:#f0eeeb;padding:24px 17px;display:flex;flex-direction:column;z-index:5}.brand,.auth-brand{display:flex;align-items:center;gap:11px}.brand{padding:4px 8px 26px;border-bottom:1px solid #ffffff17}.brand .mark,.auth-brand .mark{width:41px;height:41px;border-radius:13px;background:linear-gradient(145deg,#edc570,#c28b32);color:#0e162a;font-weight:900;font-size:1.1875rem;display:grid;place-items:center;box-shadow:0 5px 16px #c28b3244}.brand strong,.auth-brand strong{letter-spacing:2px;font-size:1.1875rem}.brand small,.auth-brand small{display:block;color:#b2ab9d;font-size:0.6875rem;margin-top:3px}.side-label{font-size:0.6875rem;color:#7684a4;padding:24px 11px 11px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#c7c2b7;text-align:right;border-radius:10px;padding:12px 13px;display:flex;align-items:center;gap:11px;font-size:0.8125rem;position:relative}.nav-item>span{width:17px;text-align:center;font-size:1rem}.nav-item.active{background:#ffffff13;color:#fff}@media(hover:hover){.nav-item:hover{background:#ffffff13;color:#fff}}.nav-item.active:before{content:"";position:absolute;right:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:#d8ae5b}.nav-badge{margin-inline-start:auto;border-radius:20px;background:#d5a74a;color:#111b32;padding:2px 7px;font-size:max(.6875rem,0.625rem)}.side-bottom{margin-top:auto}.secure-note{display:flex;gap:10px;align-items:center;padding:14px 11px;border-top:1px solid #ffffff18;color:#d0ccc3}.secure-note>span{color:#7d8db2}.secure-note b,.secure-note small{display:block}.secure-note b{font-size:0.6875rem}.secure-note small{font-size:max(.6875rem,0.625rem);color:#7b88a7;margin-top:3px}.logout{width:100%}.main{margin-inline-start:248px;min-height:100vh;min-height:100dvh;padding:23px 34px 48px;max-width:1700px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.crumb{font-size:0.6875rem;color:var(--tx-87968f);margin-bottom:6px}.crumb span{padding:0 5px;color:var(--tx-b6c0bb)}.crumb b{color:var(--tx-4f645a);font-weight:600}.topbar h1{margin:0;font-size:1.5rem;letter-spacing:-.35px}.top-actions{display:flex;align-items:center;gap:10px}.icon-btn{border:1px solid var(--line);background:var(--surface);color:var(--tx-62766c);border-radius:10px;width:38px;height:38px;display:grid;place-items:center;font-size:1rem;position:relative}@media(hover:hover){.icon-btn:hover{background:var(--bg-f3f8f5);color:var(--green-ink)}}.notification-btn{font-size:1.1875rem}.notif-dot{position:absolute;top:7px;left:7px;width:7px;height:7px;border-radius:50%;background:#d4554d;border:1px solid var(--bd-ffffff)}.user-chip{display:flex;align-items:center;gap:9px;padding-inline-start:8px}.user-chip b,.user-chip small{display:block}.user-chip b{font-size:0.75rem}.user-chip small{font-size:max(.6875rem,0.625rem);color:var(--muted);margin-top:3px}.avatar{width:34px;height:34px;border-radius:11px;background:var(--bg-e5f0e9);color:var(--green-ink);font-weight:700;display:grid;place-items:center}.soft-btn,.btn{border:1px solid var(--line);background:var(--surface);color:var(--tx-41584d);border-radius:10px;padding:10px 13px;font-size:0.75rem;display:inline-flex;align-items:center;justify-content:center;gap:8px}@media(hover:hover){.soft-btn:hover{border-color:var(--bd-b7d4c4);color:var(--green-ink)}}.soft-btn em{font-style:normal}.btn.primary{background:var(--green);border-color:var(--green);color:var(--on-green);font-weight:650}@media(hover:hover){.btn.primary:hover{background:var(--green-dark)}}.btn.danger{background:var(--red-bg);border-color:var(--bd-f2cbc8);color:var(--red-ink)}.btn.small{padding:7px 10px;font-size:0.6875rem}.btn:disabled{opacity:.5;cursor:not-allowed}.menu-btn{display:none}.view{max-width:1450px}.welcome{border-radius:18px;background:linear-gradient(115deg,#111b33,#323e5a);color:#fff;padding:23px 27px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;margin-bottom:18px;min-height:126px}.welcome:after{content:"";position:absolute;left:11%;top:-170px;width:260px;height:260px;border:1px solid #ffffff18;border-radius:50%;box-shadow:0 0 0 28px #ffffff07,0 0 0 60px #ffffff04}.welcome h2{font-size:1.1875rem;margin:0 0 7px}.welcome p{font-size:0.75rem;color:#d3cfc6;margin:0;line-height:1.8}.welcome-icon{font-size:2.4375rem;opacity:.8;z-index:1;margin-inline-end:15px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:23px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:15px 16px;box-shadow:var(--shadow)}.metric-head{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:0.6875rem}.metric-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:var(--mint);color:var(--green-ink);font-size:0.9375rem}.metric-number{font-size:1.5625rem;font-weight:750;margin-top:11px;letter-spacing:-.5px}.metric-note{font-size:max(.6875rem,0.625rem);color:var(--tx-9aa7a0);margin-top:3px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:22px 0 12px}.section-title h2{margin:0 0 4px;font-size:1rem}.section-title p{margin:0;color:var(--muted);font-size:0.6875rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:14px 17px;border-bottom:1px solid var(--line)}.panel-head strong{font-size:0.8125rem}.panel-head small{color:var(--muted);font-size:max(.6875rem,0.625rem)}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.searchbox{position:relative;min-width:230px}.searchbox input{width:100%;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:9px 34px 9px 10px;font-size:0.6875rem}.searchbox span{position:absolute;right:11px;top:7px;color:var(--tx-87968f)}.select,.input{border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:9px 10px;color:var(--ink);font-size:0.6875rem;min-height:36px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:820px}.table th{background:var(--bg-f9fbf9);color:var(--tx-7e8e86);font-size:max(.6875rem,0.625rem);font-weight:650;text-align:right;padding:11px 14px;white-space:nowrap}.table td{border-top:1px solid var(--bd-f0f3f1);padding:11px 14px;font-size:0.6875rem;white-space:nowrap;vertical-align:middle}@media(hover:hover){.table tr:hover td{background:var(--bg-fcfdfc)}}.person-name{font-size:0.75rem;font-weight:700}.person-sub{color:var(--tx-8a9891);font-size:max(.6875rem,0.625rem);margin-top:3px}.tag{display:inline-flex;align-items:center;border-radius:20px;padding:5px 8px;background:var(--bg-edf2ef);color:var(--tx-5c7166);font-size:max(.6875rem,0.625rem);white-space:nowrap}.tag.green{background:var(--ok-bg);color:var(--ok-ink)}.tag.red{background:var(--red-bg);color:var(--red-ink)}.tag.amber{background:var(--amber-bg);color:var(--amber-ink)}.tag.blue{background:var(--bg-eaf2fa);color:var(--tx-507398)}.tag:before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%;margin-inline-end:6px}.row-actions{display:flex;gap:5px}.row-actions .icon-btn{width:29px;height:29px;font-size:0.8125rem}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;color:var(--muted);font-size:0.6875rem;border-top:1px solid var(--line)}.pagination div{display:flex;gap:6px}.empty-state{padding:36px 16px;text-align:center;color:var(--tx-8c9b93);font-size:0.75rem}.empty-state strong{display:block;color:var(--tx-465f52);font-size:0.875rem;margin-bottom:6px}.task-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.task-card{border:1px solid var(--line);border-radius:13px;padding:14px 15px;background:var(--surface)}.task-card.overdue{border-right:3px solid var(--red)}.task-card.soon{border-right:3px solid var(--gold)}.task-top{display:flex;align-items:start;justify-content:space-between;gap:10px}.task-name{font-weight:700;font-size:0.75rem}.task-company{font-size:max(.6875rem,0.625rem);color:var(--muted);margin-top:4px}.task-meta{display:flex;align-items:center;gap:7px;margin-top:12px;flex-wrap:wrap}.task-date{font-size:0.6875rem;color:var(--tx-546a5f)}.task-hold{margin-top:9px;padding:8px 10px;border-radius:8px;background:var(--amber-bg);color:var(--amber-ink);font-size:max(.6875rem,0.625rem);line-height:1.7}.status-select{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:6px 8px;font-size:max(.6875rem,0.625rem);color:var(--tx-52685d)}.notice-row{display:flex;gap:10px;padding:12px 15px;border-top:1px solid var(--bd-f0f3f1);align-items:start}.notice-row:first-child{border-top:0}.notice-icon{width:28px;height:28px;flex:0 0 auto;border-radius:9px;background:var(--bg-eef4f0);color:var(--green-ink);display:grid;place-items:center}.notice-text{font-size:0.6875rem;line-height:1.6}.notice-date{font-size:max(.6875rem,0.5625rem);color:var(--tx-9aa69f);margin-top:3px}.approval-card{display:grid;grid-template-columns:1.2fr .8fr .8fr auto;gap:12px;align-items:center;padding:13px 15px;border-top:1px solid var(--bd-eff2f0);font-size:0.6875rem}.approval-card:first-child{border-top:0}.approval-actions{display:flex;gap:6px}.member-card{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-top:1px solid var(--bd-eff2f0);font-size:0.6875rem}.member-card:first-child{border-top:0}.member-data b,.member-data small{display:block}.member-data small{color:var(--muted);margin-top:4px}.member-actions{display:flex;align-items:center;gap:8px}.switch{position:relative;width:35px;height:20px;border-radius:15px;background:var(--bg-d5ddd8);border:0}.switch:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;background:var(--surface);top:3px;right:3px;transition:.16s}.switch.on{background:var(--green)}.switch.on:after{right:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px;color:var(--tx-50645a);font-size:0.6875rem;font-weight:650}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:10px;background:var(--surface);color:var(--ink);font-weight:400;font-size:0.75rem}.field textarea{min-height:70px;resize:vertical}.form-help{font-size:max(.6875rem,0.625rem);color:var(--tx-87968f);font-weight:400;line-height:1.6}.form-actions{display:flex;justify-content:start;gap:8px;margin-top:17px}.form-error{font-size:0.6875rem;color:var(--red-ink);min-height:16px;margin-top:5px}.hint{border-radius:9px;padding:10px 12px;background:var(--bg-f1f5f2);color:var(--tx-5e7467);font-size:0.6875rem;line-height:1.7;margin-bottom:12px}.auth-root{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:25px;background:radial-gradient(ellipse at 15% 15%,var(--bg-dfede4) 0,transparent 38%),var(--paper)}.auth-card{width:min(430px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:29px;box-shadow:0 24px 60px #0d152812}.auth-brand{position:absolute;top:29px;right:34px}.auth-kicker,.modal-kicker{font-size:max(.6875rem,0.625rem);color:var(--green-ink);font-weight:700;letter-spacing:.3px}.auth-card h1{font-size:1.375rem;margin:8px 0}.auth-card p{color:var(--muted);font-size:0.75rem;margin:0 0 20px;line-height:1.7}.auth-card form{display:grid;gap:13px}.auth-foot{position:absolute;bottom:20px;font-size:max(.6875rem,0.625rem);color:var(--tx-89978f);text-align:center}.wide{width:100%;min-height:42px}.modal-back{position:fixed;inset:0;background:#0c1223cc;z-index:12;display:grid;place-items:center;padding:16px}.modal{width:min(690px,100%);max-height:min(90vh,900px);max-height:min(90dvh,900px);overflow:auto;background:var(--surface);border-radius:17px;padding:20px;box-shadow:0 25px 80px #0003}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.modal-head h2{font-size:1.0625rem;margin:4px 0}.notification-panel{position:fixed;z-index:10;top:76px;left:30px;width:min(370px,calc(100vw - 28px));max-height:70vh;max-height:70dvh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px #0e162920}.notification-panel h3{font-size:0.8125rem;margin:0;padding:14px 15px;border-bottom:1px solid var(--line)}.toast{position:fixed;bottom:22px;inset-inline-end:22px;z-index:20;background:#0e162a;color:#fff;border-radius:10px;padding:11px 15px;font-size:0.6875rem;box-shadow:0 10px 30px #0c132333;opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s}.toast.show{opacity:1;transform:none}.upload-box{padding:16px;display:grid;gap:12px}.upload-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.flow-step{border:1px solid var(--line);border-radius:10px;padding:11px;color:var(--tx-66796e);font-size:max(.6875rem,0.625rem);line-height:1.6}.flow-step b{display:block;font-size:0.6875rem;color:var(--tx-304a3c);margin-bottom:4px}.download-link{color:var(--green-ink);font-size:0.6875rem}.mobile-nav{display:none}.salary-lock{font-size:max(.6875rem,0.625rem);color:var(--tx-82938a);margin-top:3px}.section-note{font-size:max(.6875rem,0.625rem);color:var(--muted);line-height:1.7}.medical-field{border:1px solid var(--bd-f0dfbd);background:var(--bg-fffaf0);border-radius:10px;padding:11px}.medical-field .field{color:var(--tx-84601f)}.employee-label{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
@media(max-width:1080px){.main{padding:22px 24px}.metrics{grid-template-columns:repeat(2,1fr)}.sidebar{width:220px}.main{margin-right:220px}.task-grid{grid-template-columns:1fr}}
@media(max-width:700px){.sidebar{transform:translateX(105%);transition:.2s;width:265px}.sidebar.open{transform:none}.main{margin:0;padding:14px 14px calc(80px + env(safe-area-inset-bottom))}.topbar{gap:9px;margin-bottom:18px}.menu-btn{display:grid;flex:0 0 auto}.topbar h1{font-size:1.1875rem}.crumb{font-size:max(.6875rem,0.5625rem)}.top-actions{gap:6px}.soft-btn{padding:8px 9px;width:36px;height:36px;overflow:hidden}.soft-btn em{display:none}.user-chip{padding:0}.user-chip>div{display:none}.notification-panel{top:65px;left:12px}.welcome{padding:18px;border-radius:14px;min-height:120px}.welcome h2{font-size:1rem}.welcome p{font-size:max(.6875rem,0.625rem)}.welcome-icon{font-size:2rem}.metrics{gap:8px}.metric{padding:12px}.metric-number{font-size:1.3125rem}.metric-note{font-size:max(.6875rem,0.5625rem)}.section-title{align-items:start;flex-direction:column}.toolbar{width:100%}.searchbox{min-width:0;flex:1}.searchbox input{font-size:max(.6875rem,0.625rem)}.table{min-width:760px}.approval-card{grid-template-columns:1fr 1fr}.approval-card>*:last-child{grid-column:1/-1}.upload-flow{grid-template-columns:1fr}.mobile-nav{position:fixed;display:flex;z-index:4;bottom:0;right:0;left:0;padding:8px 7px calc(8px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);justify-content:space-around;box-shadow:0 -5px 20px #0d152808}.mobile-nav button{border:0;background:none;color:var(--tx-728278);font-size:max(.6875rem,0.5625rem);display:grid;justify-items:center;gap:4px;padding:4px}.mobile-nav button span{font-size:1.0625rem}.mobile-nav button.active{color:var(--green-ink);font-weight:700}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal{padding:16px;max-height:92vh;max-height:92dvh}.auth-brand{top:20px;right:20px}.auth-foot{position:static;align-self:end;margin-top:15px}.auth-root{padding:80px 17px 18px;grid-template-rows:1fr auto}.auth-card{padding:23px}.task-card{padding:12px}.task-meta{gap:5px}}

.salary-review{grid-column:1/-1;border:1px solid var(--line);background:var(--bg-f9fbfa);border-radius:14px;padding:14px}.salary-review h3{margin:0 0 12px;font-size:0.9375rem}.salary-review .form-grid{padding:0}.member-actions .btn{white-space:nowrap}

.transaction-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:17px;overflow:visible}.transaction-form>.hint{margin:0}.transaction-form>.btn{justify-self:start}.transaction-list{display:grid;gap:9px}.transaction-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 15px;box-shadow:var(--shadow)}.transaction-main{display:flex;justify-content:space-between;align-items:center;gap:10px}.transaction-card p{margin:10px 0 0;color:var(--tx-5d7166);font-size:0.6875rem;line-height:1.7}.transaction-status{margin-top:12px;max-width:260px}.member-mode{border:1px solid var(--line);padding:12px;border-radius:10px}.member-mode>span{display:flex;align-items:center;gap:8px}.member-mode input{accent-color:var(--green)}@media(max-width:700px){.transaction-form{grid-template-columns:1fr}.transaction-form .field.full{grid-column:auto}.member-actions{flex-wrap:wrap;justify-content:flex-end}.member-card{align-items:flex-start;gap:8px}.member-data{min-width:0}.member-actions .btn{font-size:max(.6875rem,0.625rem);padding:6px 8px}}

.card-stage-form,.card-final-form{display:grid;gap:10px;margin-top:13px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--bg-f9fbf9)}.card-stage-form .btn,.card-final-form .btn{justify-self:start}.card-countdown{margin:11px 0 0;border:1px solid var(--bd-f0dfbd);background:var(--bg-fff8eb);color:var(--tx-805d22);font-weight:650}.card-stage-form input[type=date],.card-final-form input[type=date],.card-final-form input[type=file]{font-size:0.75rem}.transaction-card .hint{margin-bottom:0}

.linked-insurance{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:12px;border:1px solid var(--bd-dce9e1);border-radius:10px;background:var(--bg-f3f8f4)}.linked-insurance b,.linked-insurance small{display:block}.linked-insurance b{font-size:0.6875rem;color:var(--green-ink)}.linked-insurance small{font-size:max(.6875rem,0.625rem);color:var(--muted);margin-top:5px}.linked-insurance .field{min-width:180px}@media(max-width:700px){.linked-insurance{align-items:stretch;flex-direction:column}.linked-insurance .field{min-width:0}}

.card-checklist{display:grid;gap:9px;margin-top:13px;padding:13px;border:1px solid var(--bd-dce9e1);border-radius:11px;background:var(--bg-f3f8f4)}.card-checklist>b{font-size:0.6875rem;color:var(--green-ink);margin-bottom:2px}.card-checklist .field{max-width:310px}.card-step{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;background:var(--surface);color:var(--tx-40574b);font-size:0.6875rem}.card-step input{accent-color:var(--green)}.card-step .form-help{margin-inline-start:auto}.card-final-form .form-help{line-height:1.7}.transaction-card.overdue{border-color:var(--bd-e5b3ae);background:var(--bg-fff7f6)}.transaction-card.completed{border-color:var(--bd-b9d7c7);background:var(--bg-f3faf6)}.transaction-card.current-month{border-color:var(--bd-efce92);background:var(--bg-fffaf0)}

/* Expandable request progress, in the page's RTL reading order. */
.transaction-main:has(.transaction-progress){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
.transaction-progress{display:contents}
.transaction-progress>summary{grid-column:2;grid-row:1;cursor:pointer;list-style:none;gap:8px;font:inherit;font-size:0.6875rem;user-select:none;min-height:36px}
.transaction-progress>summary::-webkit-details-marker{display:none}
.transaction-progress>summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.progress-chevron{font-size:1rem;transition:transform .18s}
.transaction-progress[open] .progress-chevron{transform:rotate(180deg)}
.progress-panel{grid-column:1/-1;margin-top:14px;padding:16px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-width:0}
.progress-panel>b{font-size:0.75rem;color:var(--ink)}
.request-timeline{display:flex;list-style:none;padding:0;margin:18px 0 0;overflow-x:auto;padding-bottom:8px;direction:rtl}
.request-step{position:relative;flex:1 0 100px;min-width:0;text-align:center;color:var(--tx-79828c)}
.request-step:not(:last-child)::after{content:"";position:absolute;top:15px;right:50%;width:100%;height:3px;background:var(--bg-d8dde3);z-index:0}
.request-step-circle{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;margin:0 auto 9px;border:3px solid var(--bd-ffffff);border-radius:50%;background:var(--bg-d8dde3);color:#fff;font-size:1.0625rem;font-weight:800;box-shadow:0 0 0 1px #e2dfd9}
.request-step.is-done .request-step-circle{background:var(--tl-green);box-shadow:0 0 0 1px var(--tl-green)}
.request-step.is-done .request-step-label{color:var(--tl-green-d)}
.request-step-label{display:block;padding:0 5px;font-size:0.6875rem;line-height:1.6}
.request-step-label small{display:block;font-size:max(.6875rem,0.625rem);font-weight:400;color:var(--tx-87918c);margin-top:3px}
@media(max-width:480px){.transaction-progress>summary{max-width:190px;white-space:normal}.progress-panel{padding-inline:6px}}

.dashboard-requests{margin-bottom:24px}.dashboard-open-request{margin-top:12px}
/* Language switching and left-to-right layout. */
.auth-language{margin:0 0 16px}.language-setting{display:grid;gap:6px;padding:10px 12px;font-size:0.6875rem;color:#c7c2b7}.language-setting select{padding:7px 9px;border-radius:8px;border:1px solid #ffffff30;background:#15213e;color:#fff}.auth-language select{min-height:36px}
html[dir="ltr"] .sidebar{inset:0 auto 0 0}
html[dir="ltr"] .main{margin-right:0;margin-left:248px}
html[dir="ltr"] .nav-item,html[dir="ltr"] .table th{text-align:left}
html[dir="ltr"] .nav-item.active:before{right:auto;left:0}
html[dir="ltr"] .nav-badge{margin-right:0;margin-left:auto}
html[dir="ltr"] .tag:before{margin-left:0;margin-right:6px}
html[dir="ltr"] .searchbox input{padding-left:34px;padding-right:10px}
html[dir="ltr"] .searchbox span{right:auto;left:11px}
html[dir="ltr"] .auth-brand{right:auto;left:34px}
html[dir="ltr"] .task-card.overdue,html[dir="ltr"] .task-card.soon{border-right-width:1px;border-left-width:3px}
html[dir="ltr"] .card-step .form-help{margin-right:0;margin-left:auto}
html[dir="ltr"] .request-timeline{direction:ltr}
html[dir="ltr"] .request-step:not(:last-child)::after{right:auto;left:50%}
html[dir="ltr"] .welcome-icon{margin-left:0;margin-right:15px}
@media(max-width:1080px){html[dir="ltr"] .main{margin-left:220px}}
@media(max-width:700px){html[dir="ltr"] .main{margin:0}html[dir="ltr"] .sidebar{transform:translateX(-105%)}html[dir="ltr"] .sidebar.open{transform:none}html[dir="ltr"] .auth-brand{left:20px}}

.request-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.request-metric{text-align:start;color:var(--ink);font:inherit;cursor:pointer}.request-metric>.metric-head{display:flex}.request-metric>.metric-number,.request-metric>.metric-note{display:block}@media(hover:hover){.request-metric:hover{border-color:var(--green);background:var(--bg-f5fbf7)}}.request-metric:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.modal:has(.request-drilldown){width:min(1100px,96vw)}.request-name-list{display:grid;gap:8px}.request-list-item{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:start;color:var(--ink)}@media(hover:hover){.request-list-item:hover{background:var(--mint)}}.request-list-item b,.request-list-item small{display:block}.request-list-item small{font-size:0.75rem;color:var(--muted);margin-top:7px}.request-dialog-heading>b{font-size:1.125rem}.request-dialog-heading p{font-size:0.75rem;color:var(--muted);margin:8px 0}.request-dialog-progress .progress-panel{margin-top:12px}.request-drilldown .pagination{margin-top:14px}.request-drilldown .btn:disabled{opacity:.45;cursor:default}@media(max-width:700px){.request-metrics{grid-template-columns:1fr 1fr}.request-metric:first-child{grid-column:1/-1}.request-list-item{padding:12px}}

.statistic-metric{text-align:start;color:var(--ink);font:inherit;cursor:pointer}.statistic-metric>.metric-head{display:flex}.statistic-metric>.metric-number,.statistic-metric>.metric-note{display:block}@media(hover:hover){.statistic-metric:hover{border-color:var(--green);background:var(--bg-f5fbf7)}}

.brand .mark,.auth-brand .mark{width:56px;height:56px;flex:0 0 56px;display:block;object-fit:contain;border-radius:13px;background:none;box-shadow:0 5px 16px #090e1b30}.auth-brand .mark{width:64px;height:64px;flex-basis:64px}

.transaction-attachments{border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:14px;font-size:0.75rem;background:var(--surface)}.archive-upload{display:grid;grid-template-columns:1fr 2fr auto;gap:10px;align-items:end;margin-top:12px}.archive-file-list{display:grid;gap:8px;margin-top:10px}.archive-file-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:9px;background:var(--bg-f5f8f6);border-radius:8px}.archive-file-row>span:first-child{overflow-wrap:anywhere}.archive-file-row small{color:var(--muted)}.archive-settings{padding:20px}.archive-settings p{line-height:1.8;font-size:0.75rem}.archive-path{direction:ltr;overflow-wrap:anywhere;text-align:start;font-family:monospace}@media(max-width:700px){.archive-upload{grid-template-columns:1fr}.archive-upload>.btn{justify-self:start}}

.creator-credit{display:block;margin-top:10px;font-size:max(.6875rem,0.625rem);line-height:1.8;text-align:center;font-weight:500}.sidebar-credit{color:#c8c3b9;padding:5px 8px 0;border-top:1px solid #ffffff14}.auth-foot .creator-credit{color:var(--tx-395b4c)}@media(max-height:800px) and (min-width:701px){.sidebar{padding-block:15px;overflow-y:auto}.sidebar nav{gap:2px}.nav-item{padding-block:9px}.side-label{padding-top:14px}.brand{padding-bottom:16px}.secure-note{padding-block:9px}}

.intake-documents{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;padding:17px;margin:2px 0 0;min-width:0;background:var(--bg-fafcfb)}.intake-documents legend{font-size:0.75rem;font-weight:700;padding-inline:7px;color:var(--green-ink)}.intake-documents>.form-help{display:block;margin-top:12px}.intake-documents input[type=file]{max-width:100%;font-size:0.6875rem}

.brand strong,.auth-brand strong{letter-spacing:1.7px;font-size:1.25rem}.brand .mark,.auth-brand .mark{box-shadow:0 6px 20px #060a1429}

.top-logout{border-color:var(--bd-b9a06f);color:var(--tx-263d48);background:var(--bg-fffdf9)}@media(hover:hover){.top-logout:hover{background:var(--bg-f7f2e8);border-color:#b58d4f;color:var(--tx-15272f)}}.logout{width:100%}
.missing-review{display:grid;gap:9px;padding:13px;margin-top:12px;border:1px solid var(--bd-e8d8b6);border-radius:12px;background:var(--bg-fffaf0)}.missing-review .field{margin:0}.missing-review textarea{min-height:70px}.missing-note{margin:10px 0;background:var(--bg-fff8e9)}.mobile-splash{display:none}
@media(max-width:700px){.mobile-splash{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(circle at 50% 43%,#303a51 0,#111b33 52%,#090e1a 100%);color:#f5ead1;text-align:center;overflow:hidden;animation:splashFade 3.4s ease forwards}.mobile-splash:before,.mobile-splash:after{content:"";position:absolute;width:230px;height:230px;border:1px solid #d8bb8050;border-radius:50%;animation:splashOrbit 3s ease-in-out infinite}.mobile-splash:after{width:300px;height:300px;animation-direction:reverse;opacity:.5}.splash-orbit{position:relative;width:80px;height:80px;border:1px solid #e2c893;border-radius:50%;display:grid;place-items:center;animation:splashPulse 1.8s ease-in-out infinite}.splash-orbit span{width:27px;height:27px;background:linear-gradient(145deg,#fff1cf,#b58d4f);border-radius:9px;transform:rotate(45deg);box-shadow:0 0 30px #d8bb8077}.splash-orbit i{position:absolute;width:9px;height:9px;border-radius:50%;background:#fff1cf;top:2px;left:12px;box-shadow:0 0 18px #fff1cf}.splash-brand{font-size:1.8125rem;letter-spacing:6px;font-weight:750;animation:splashRise .7s ease both}.splash-brand b{color:#d8bb80}.mobile-splash p{margin:12px 0 0;color:#d0ccc3;font-size:0.8125rem;animation:splashRise .8s .15s ease both}.mobile-splash strong{font-size:1.125rem;color:#f5e5bf;animation:splashRise .8s .25s ease both}.mobile-splash small{color:#b2ab9d;font-size:0.6875rem;animation:splashRise .8s .35s ease both}.top-logout{padding:8px 10px}.top-logout em{display:none}.top-actions{gap:6px}.missing-review .btn{justify-self:start}.sidebar-credit{font-size:max(.6875rem,0.5625rem)}.feedback-channels{display:flex;flex-wrap:wrap;gap:9px}}
@keyframes splashRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes splashPulse{50%{transform:scale(1.08);box-shadow:0 0 30px #d8bb8030}}@keyframes splashOrbit{50%{transform:scale(1.13) rotate(18deg);opacity:.3}}@keyframes splashFade{0%,74%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}@media(prefers-reduced-motion:reduce){.mobile-splash,.mobile-splash:before,.mobile-splash:after,.splash-orbit,.splash-brand,.mobile-splash p,.mobile-splash strong,.mobile-splash small{animation:none}}
.notice-action{cursor:pointer}@media(hover:hover){.notice-action:hover{background:var(--bg-f6faf7)}}.notice-row.unread{background:var(--bg-fff9f8)}.notice-row.unread .notice-icon{background:var(--bg-ffebe9);color:var(--tx-bc4f49)}.notice-delete{width:28px;height:28px;flex:0 0 auto}.notification-panel h3{display:flex;justify-content:space-between;align-items:center;gap:8px}
.missing-submit{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.missing-submit .form-help{margin:0}
.system-announcement-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#080d19ed;backdrop-filter:blur(5px)}.system-announcement-card{position:relative;width:min(540px,100%);min-height:270px;padding:38px 30px 30px;background:var(--surface);border:1px solid var(--bd-dce8e2);border-radius:22px;box-shadow:0 28px 90px #0006;text-align:center;animation:announcement-pop .24s ease-out}.system-announcement-mark{width:48px;height:48px;margin:0 auto 16px;border-radius:16px;background:var(--bg-e8f1ed);color:var(--green-ink);display:grid;place-items:center;font-size:1.625rem;font-weight:800}.system-announcement-card h2{margin:7px 25px 14px;font-size:1.375rem}.system-announcement-message{white-space:pre-wrap;line-height:1.9;color:var(--tx-52665b);text-align:start;font-size:0.875rem;margin:0 0 20px}.system-announcement-close{position:absolute;top:12px;left:12px;width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--tx-20372e);font-size:1.6875rem;line-height:1;cursor:pointer}@media(hover:hover){.system-announcement-close:hover{background:var(--bg-eef4f0)}}.notice-text{white-space:pre-line}@keyframes announcement-pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}

.maintenance-screen{position:fixed;inset:0;z-index:1000;overflow:auto;display:flex;flex-direction:column;background:radial-gradient(ellipse at 12% 10%,var(--bg-e7eee8) 0,transparent 37%),var(--bg-f7f7f2);color:var(--tx-17372f);padding:0 clamp(20px,5vw,76px)}.maintenance-top{height:82px;flex:0 0 82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--bd-e1e7e0)}.maintenance-brand{display:flex;align-items:center;gap:12px;letter-spacing:.12em;font-size:1.125rem}.maintenance-brand>span{height:42px;width:42px;border-radius:14px;display:grid;place-items:center;color:#e6c474;background:var(--bg-173d32);box-shadow:inset 0 0 0 1px #d5b56a;font-family:Georgia,serif}.maintenance-status{display:flex;align-items:center;gap:10px;color:var(--tx-718278);font-size:0.75rem}.maintenance-status i{width:8px;height:8px;border-radius:50%;background:#c39a4e;box-shadow:0 0 0 5px #c39a4e22;animation:maintenance-pulse 1.7s infinite}.maintenance-content{width:min(1220px,100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(10px,4vw,55px);direction:ltr;padding:28px 0}.maintenance-art{width:100%;max-height:min(64vh,590px);max-height:min(64dvh,590px);object-fit:contain;filter:drop-shadow(0 22px 26px #14203b14);animation:maintenance-float 6s ease-in-out infinite}.maintenance-copy{direction:inherit;text-align:start;max-width:610px;padding:20px}.maintenance-kicker{color:var(--tx-a77c34);font-size:0.8125rem;font-weight:700;margin-bottom:17px}.maintenance-copy h1{color:var(--tx-17382f);font-size:clamp(32px,4.5vw,54px);line-height:1.25;margin:0 0 18px;letter-spacing:-.025em}.maintenance-copy p{color:var(--tx-5e7168);font-size:clamp(15px,1.6vw,18px);line-height:2;margin:0;max-width:580px}.maintenance-footer{padding:18px 0 25px;text-align:center;color:var(--tx-86938b);font-size:0.75rem;letter-spacing:.06em}.maintenance-footer span{margin:0 7px;color:var(--tx-c3a365)}.maintenance-preview-note{padding:16px;margin-top:16px}.maintenance-preview-note p{font-size:0.75rem;color:var(--muted);line-height:1.8;margin-bottom:0}.maintenance-toggle-status{display:inline-flex;padding:6px 10px;border-radius:20px;font-size:0.6875rem;background:var(--bg-eef3ee);color:var(--tx-4a6859)}.maintenance-toggle-status.active{background:var(--bg-fff1e3);color:var(--tx-a46a20)}@keyframes maintenance-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes maintenance-pulse{0%,100%{box-shadow:0 0 0 4px #c39a4e20}50%{box-shadow:0 0 0 8px #c39a4e08}}
html[dir="ltr"] .maintenance-copy{text-align:left}html[dir="ltr"] .maintenance-content{direction:ltr}
/* School branch headcount and the full, searchable employee roster */
.employee-branch-summary{position:relative;overflow:hidden;margin:0 0 18px;padding:22px 24px 18px;border:1px solid #e2e0db;border-radius:18px;background:linear-gradient(125deg,#111b33,#2c364c 67%,#3c465e);color:#fff;box-shadow:0 16px 36px #131e3914}
.employee-branch-summary:after{content:"";position:absolute;inset:auto auto -120px -55px;width:260px;height:260px;border:1px solid #fff2;border-radius:50%;box-shadow:0 0 0 26px #fff1,0 0 0 56px #fff1;pointer-events:none}
.branch-summary-heading{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:18px}
.branch-summary-heading h2{margin:4px 0;font-size:1.125rem}.branch-summary-heading p{margin:0;color:#dfdcd6;font-size:0.6875rem}.branch-summary-kicker{color:#e4c983;font-size:max(.6875rem,0.625rem);letter-spacing:.1em}
.branch-summary-mark{width:43px;height:43px;border:1px solid #d7bd805c;border-radius:14px;display:grid;place-items:center;color:#e2c880;font:bold 16px Georgia,serif;background:#ffffff0b}
.branch-summary-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 12px}
.branch-summary-tile{position:relative;z-index:1;display:grid;justify-items:center;gap:5px;padding:12px;border:1px solid #ffffff1c;border-radius:12px;background:#ffffff0b;color:inherit;font:inherit;cursor:pointer;backdrop-filter:blur(5px);transition:transform .18s ease,background .18s ease,border-color .18s ease}.branch-summary-tile:focus-visible{transform:translateY(-2px);background:#ffffff18;border-color:#e4c98388;outline:3px solid var(--focus);outline-offset:2px}@media(hover:hover){.branch-summary-tile:hover{transform:translateY(-2px);background:#ffffff18;border-color:#e4c98388;outline:none}}.branch-summary-tile small{font-size:max(.6875rem,0.5625rem);color:#d7d3cb}.branch-summary-grid article{display:grid;justify-items:center;gap:5px;padding:12px;border:1px solid #ffffff1c;border-radius:12px;background:#ffffff0b;backdrop-filter:blur(5px)}
.branch-summary-grid strong{font-size:1.625rem;line-height:1.15;color:#fff;font-weight:700}.branch-summary-grid span{color:#d8c996;font-size:0.6875rem}
.branch-summary-total{position:relative;z-index:1;width:100%;display:flex;justify-content:center;align-items:baseline;gap:10px;padding:13px 10px 4px;border:0;border-top:1px solid #ffffff26;background:transparent;color:#e6e1d2;font:inherit;cursor:pointer;transition:background .18s ease}.branch-summary-total:focus-visible{background:#ffffff0a;outline:3px solid var(--focus);outline-offset:2px}@media(hover:hover){.branch-summary-total:hover{background:#ffffff0a;outline:none}}.branch-summary-total small{font-size:max(.6875rem,0.625rem);color:#d7d3cb}
.branch-summary-total>span{font-size:0.75rem}.branch-summary-total strong{font-size:2.1875rem;line-height:1;color:#f2d58e;font-weight:700}.branch-summary-total small{font-size:max(.6875rem,0.625rem);color:#d7d3cb}
.employee-list-tools{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:9px 12px;border:1px solid var(--line);border-radius:13px;background:var(--bg-f8faf8ed);box-shadow:0 7px 20px #131e3909;backdrop-filter:blur(12px)}
.employee-list-tools .searchbox{flex:1;min-width:180px}.employee-list-tools .searchbox input{min-height:40px;font-size:0.75rem}.employee-list-tools>strong{color:var(--muted);font-size:0.6875rem;white-space:nowrap}
.employee-card-filter{display:flex;align-items:center;gap:7px;white-space:nowrap;color:var(--tx-687b71);font-size:0.6875rem}.employee-card-filter input{accent-color:var(--green)}
.employee-branch-label{margin-top:4px;color:var(--red-ink);font-size:0.6875rem;font-weight:700}
.home-dock{position:fixed;z-index:8;left:50%;bottom:18px;transform:translateX(-50%);display:grid;place-items:center;width:62px;height:62px;padding:0;border:1px solid #d8bd7a;border-radius:21px;background:linear-gradient(145deg,#15213e,#111b33 72%);color:#e4c77f;box-shadow:0 10px 28px #0f182e55,inset 0 1px #ffffff18;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.home-dock:before{content:"";position:absolute;inset:5px;border:1px solid #d8bd7a30;border-radius:16px;pointer-events:none}.home-dock svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 5px #d8bd7a33)}@media(hover:hover){.home-dock:hover{transform:translateX(-50%) translateY(-3px);border-color:#ecd58f;box-shadow:0 14px 32px #0f182e66,0 0 0 4px #d8bd7a16,inset 0 1px #ffffff20}}
.live-clock{display:flex;align-items:center;gap:9px;min-width:145px;padding:7px 11px;border:1px solid var(--bd-d9cba5);border-radius:12px;background:linear-gradient(125deg,var(--bg-fffdf7),var(--bg-f7f1e2));color:var(--tx-243f43);box-shadow:0 6px 18px #131e3910}.live-clock-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,var(--bg-203e46),#394560);color:#f0d58f;font-size:1.3125rem}.live-clock>div{display:grid;gap:2px}.live-clock strong{font-size:1.0625rem;font-weight:800;letter-spacing:.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.live-clock small{font-size:max(.6875rem,0.625rem);color:var(--tx-687a70);white-space:nowrap}
.fine-countdown{display:flex;align-items:center;gap:12px;margin:10px 0;padding:13px 15px;border:1px solid var(--bd-e9b7b4);border-radius:13px;background:linear-gradient(110deg,var(--bg-fff3f1),var(--bg-fffaf8));color:var(--tx-813833);box-shadow:0 8px 22px #a6423c14;animation:finePulse 2.8s ease-in-out infinite}.fine-countdown-mark{display:grid;place-items:center;flex:0 0 35px;height:35px;border-radius:11px;background:linear-gradient(145deg,#c65750,#963d3a);color:#fff;font-size:1.25rem;font-weight:900;box-shadow:0 4px 12px #973d3a35}.fine-countdown>span:nth-child(2){display:grid;gap:3px;flex:1}.fine-countdown b{font-size:0.75rem}.fine-countdown small{font-size:max(.6875rem,0.625rem);color:var(--tx-966965)}.fine-countdown>strong{display:grid;justify-items:center;min-width:44px;color:var(--tx-a33e38);font-size:1.4375rem;line-height:1}.fine-countdown>strong i{font-style:normal;font-size:max(.6875rem,0.5625rem);margin-top:3px}.fine-countdown.is-started{border-color:var(--bd-cb716c);background:linear-gradient(110deg,var(--bg-fae5e3),var(--bg-fff2f0));color:var(--tx-712a26)}.fine-countdown.is-started .fine-countdown-mark{background:#772b28}.fine-countdown.is-started>strong{font-size:1.6875rem}@keyframes finePulse{0%,100%{box-shadow:0 8px 22px #a6423c14}50%{box-shadow:0 10px 28px #a6423c27}}
@media(max-width:900px){.home-dock{left:50%;bottom:calc(78px + env(safe-area-inset-bottom));padding:9px 16px}}
@media(max-width:700px){.employee-branch-summary{padding:17px 15px 14px;border-radius:15px}.branch-summary-heading h2{font-size:1rem}.branch-summary-grid{gap:6px;margin:13px 0 10px}.branch-summary-tile{padding:10px 5px}.branch-summary-grid article{padding:10px 5px}.branch-summary-grid strong{font-size:1.375rem}.branch-summary-grid span{font-size:max(.6875rem,0.625rem)}.branch-summary-total{gap:8px;flex-wrap:wrap}.branch-summary-total strong{font-size:1.9375rem}.employee-list-tools{top:0;gap:7px;padding:8px;border-radius:11px}.employee-list-tools .searchbox{min-width:0}.employee-list-tools .searchbox input{min-height:38px;font-size:0.6875rem}.employee-card-filter{gap:4px;font-size:max(.6875rem,0.625rem)}.employee-list-tools>strong{font-size:max(.6875rem,0.5625rem)}}
@media(max-width:760px){.maintenance-screen{padding:0 20px}.maintenance-top{height:64px;flex-basis:64px}.maintenance-brand{font-size:0.9375rem}.maintenance-brand>span{width:36px;height:36px}.maintenance-status{font-size:max(.6875rem,0.625rem)}.maintenance-content{grid-template-columns:1fr;gap:0;padding:0 0 15px;text-align:center}.maintenance-art{width:min(100%,400px);max-height:34vh;max-height:34dvh;justify-self:center}.maintenance-copy{max-width:100%;padding:0 2px 12px;text-align:center!important}.maintenance-kicker{font-size:0.6875rem;margin-bottom:10px}.maintenance-copy h1{font-size:1.875rem;margin-bottom:12px}.maintenance-copy p{font-size:0.875rem;line-height:1.85}.maintenance-footer{padding:9px 0 18px;font-size:max(.6875rem,0.625rem)}.maintenance-preview-note{padding:13px}.maintenance-top{gap:10px}.maintenance-status span{max-width:140px;text-align:end}}

/* Refined daily count and company-grouped employee register */
.today-stat-wrap{position:relative;overflow:hidden;display:flex;align-items:center;gap:28px;min-height:188px;margin:0 0 22px;padding:22px 30px;border:1px solid #d8c8a1;border-radius:20px;background:radial-gradient(circle at 18% 50%,#f8f3e8 0,#f8f3e8 20%,transparent 21%),linear-gradient(115deg,#10192e,#19294c 62%,#2b3347);color:#fff;box-shadow:0 14px 34px #10192f18}
.today-stat-orbit{position:relative;width:142px;height:142px;flex:0 0 142px;display:grid;place-items:center}
.today-stat-orbit svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg);filter:drop-shadow(0 2px 6px #d8b66d35)}
.today-stat-track,.today-stat-ring{fill:none;stroke-width:2.2}.today-stat-track{stroke:#ffffff36}.today-stat-ring{stroke:#dfc17e;stroke-dasharray:478;stroke-dashoffset:0;stroke-linecap:round}
.today-stat-core{width:110px;height:110px;border:1px solid #ffffff28;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(150deg,#2b3345,#141f3b);box-shadow:inset 0 0 20px #ffffff0a,0 8px 20px #0c122355}
.today-stat-core span,.today-stat-core small{font-size:max(.6875rem,0.625rem);color:#d8c99f}.today-stat-core strong{font-size:2.125rem;line-height:1.1;color:#fff;font-weight:650;margin:4px 0}.today-stat-copy{position:relative;z-index:1}.today-stat-kicker{font-size:max(.6875rem,0.625rem);letter-spacing:1.6px;color:#dec887}.today-stat-copy h3{font-size:1.1875rem;margin:8px 0}.today-stat-copy p{margin:0;color:#dcd9d3;font-size:0.75rem;line-height:1.8}.today-stat-foot{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:#d0ccc3;font-size:max(.6875rem,0.625rem)}.today-stat-foot i{width:6px;height:6px;border-radius:50%;background:#c7b99c;box-shadow:0 0 0 4px #c7b99c1c}.today-stat-star{position:absolute;left:24px;top:20px;color:#dfc17e;font-size:1.5rem;opacity:.8}.employee-company-group{margin:16px 0 22px;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden;box-shadow:var(--shadow)}.employee-company-group>header{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;background:linear-gradient(90deg,var(--bg-f5f2e9),var(--bg-f7faf8));border-bottom:1px solid var(--line)}.employee-company-group>header h3{margin:0;font-size:0.9375rem;color:var(--ink)}.employee-company-group>header>span{font-size:0.6875rem;color:var(--muted)}.employee-company-group .table-wrap{border:0;border-radius:0;box-shadow:none}.employee-company-group .table{min-width:840px}
@media(max-width:700px){.today-stat-wrap{min-height:152px;gap:15px;padding:18px 16px;border-radius:16px}.today-stat-orbit{width:112px;height:112px;flex-basis:112px}.today-stat-core{width:86px;height:86px}.today-stat-core strong{font-size:1.6875rem}.today-stat-copy h3{font-size:0.9375rem}.today-stat-copy p{font-size:max(.6875rem,0.625rem)}.today-stat-star{left:12px;top:8px;font-size:1.125rem}.employee-company-group>header{padding:12px}.employee-company-group .table{min-width:760px}}
.home-feedback-slot{display:flex;justify-content:flex-end;margin-top:9px}.home-feedback-btn{background:var(--surface);border-color:var(--bd-d7c79e);color:var(--tx-735d36)}@media(hover:hover){.home-feedback-btn:hover{background:var(--bg-fbf8f0);border-color:var(--bd-c4a66a)}}.feedback-intro{padding:12px 14px;margin:0 0 14px;border:1px solid var(--bd-e8e0cf);border-radius:11px;background:linear-gradient(120deg,var(--bg-fbfaf5),var(--surface));color:var(--tx-66796e);font-size:0.75rem;line-height:1.8}.feedback-success{text-align:center;padding:22px 12px 12px;overflow:hidden}.feedback-success-icon{width:82px;height:82px;border-radius:28px;display:grid;place-items:center;margin:0 auto 18px;font-size:2.375rem;color:var(--tx-8f7042);background:linear-gradient(145deg,var(--bg-fff9e9),var(--bg-f0e4c9));animation:feedbackPop .65s cubic-bezier(.2,.8,.25,1.2) both;box-shadow:0 12px 35px #92743a1c}.is-complaint .feedback-success-icon{color:var(--tx-527d82);background:linear-gradient(145deg,var(--bg-edf8f7),var(--bg-d9ecec))}.feedback-success h2{margin:9px 0;color:var(--tx-193c38);font-size:1.5rem}.feedback-success p{max-width:440px;margin:0 auto 21px;color:var(--tx-6e7e77);font-size:0.8125rem;line-height:2}.feedback-success .btn{min-width:110px}.feedback-success .modal-kicker{letter-spacing:1.4px}.feedback-success.is-suggestion:before,.feedback-success.is-complaint:before{content:"";position:absolute;pointer-events:none;inset:0;background:radial-gradient(circle at 50% 18%,#d9c18720,transparent 47%);animation:feedbackGlow 2.8s ease-in-out infinite}.feedback-inbox{margin-top:18px}.feedback-inbox-card{padding:14px;border:1px solid var(--line);border-radius:12px;margin-top:10px;background:var(--surface)}.feedback-inbox-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.feedback-inbox-head time{margin-inline-start:auto;color:var(--muted);font-size:max(.6875rem,0.625rem)}.feedback-inbox-card h3{margin:11px 0 5px;font-size:0.875rem}.feedback-inbox-card p{margin:0 0 10px;white-space:pre-wrap;line-height:1.8;color:var(--tx-596b62)}.feedback-inbox-card small{display:block;color:var(--muted);font-size:max(.6875rem,0.625rem);line-height:1.8}@keyframes feedbackPop{0%{opacity:0;transform:scale(.55) rotate(-18deg)}70%{transform:scale(1.08) rotate(4deg)}100%{opacity:1;transform:scale(1) rotate(0)}}@keyframes feedbackGlow{0%,100%{opacity:.35}50%{opacity:.85}}@media(max-width:700px){.home-feedback-slot{margin-top:8px}.feedback-success{padding-top:16px}.feedback-success-icon{width:72px;height:72px}}
.metrics .metric,.request-metric{min-height:146px;padding:22px;border-radius:17px;box-shadow:0 12px 30px #131e3810}.metric-head{font-size:0.875rem;font-weight:650;color:var(--tx-435a52)}.metric-icon{width:40px;height:40px;border-radius:13px;font-size:1.125rem}.metric-number{font-size:2.125rem;font-weight:850;color:var(--tx-102c36)}.metric-note{font-size:0.75rem;color:var(--tx-697c73)}.task-card{padding:21px 23px;border-radius:17px}.task-name{font-size:1.0625rem;font-weight:750}.task-company,.task-meta,.task-date{font-size:0.8125rem}.fine-countdown{min-height:78px;padding:16px 19px;border-width:2px}.fine-countdown b{font-size:0.9375rem}.fine-countdown small{font-size:0.75rem}.fine-countdown>strong{font-size:1.8125rem}.fine-countdown-mark{flex-basis:43px;height:43px;font-size:1.5rem}@media(max-width:700px){.metrics .metric,.request-metric{min-height:124px;padding:17px 15px}.metric-head{font-size:0.75rem}.metric-icon{width:34px;height:34px}.metric-number{font-size:1.8125rem}.metric-note{font-size:0.6875rem}.task-card{padding:17px}.task-name{font-size:0.9375rem}.fine-countdown{gap:9px;padding:13px 12px}.fine-countdown small{font-size:0.6875rem}}

/* Mobile bottom-to-top pull refresh for the dashboard */
.bottom-pull-refresh{position:fixed;z-index:50;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:9px;padding:10px 16px;border:1px solid var(--bd-d9c78f);border-radius:999px;background:linear-gradient(130deg,var(--bg-fffdf7),var(--bg-f1ead8));color:var(--tx-243f43);box-shadow:0 12px 32px #111b3326;font-size:0.75rem;font-weight:700;opacity:0;pointer-events:none;transform:translate(-50%,18px);transition:opacity .18s ease,transform .18s ease,border-color .18s ease}
.bottom-pull-refresh.visible{opacity:1;transform:translate(-50%,0)}
.bottom-pull-refresh.armed{background:linear-gradient(130deg,var(--bg-203e46),var(--bg-15272f));color:#f4dda0;border-color:var(--bd-d9c78f)}
.bottom-pull-refresh-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--bg-e4eee9);color:var(--tx-315f67);font-size:1.1875rem;line-height:1}
.bottom-pull-refresh.armed .bottom-pull-refresh-icon{background:#ffffff17;color:#f4dda0}
.bottom-pull-refresh.loading .bottom-pull-refresh-icon{animation:bottomPullSpin .8s linear infinite}
@keyframes bottomPullSpin{to{transform:rotate(360deg)}}

.sidebar-home{justify-content:center;text-align:center;color:#ecd58f;border:1px solid #d8bd7a55;background:#ffffff0a;margin-bottom:8px}.sidebar-home>span{width:auto}.mobile-home{align-self:flex-end;min-width:58px;color:var(--tx-d8ae5b)!important;font-weight:700!important}.mobile-home span{width:42px;height:42px;margin-top:-20px;border:1px solid var(--bd-d8bd7a);border-radius:15px;background:linear-gradient(145deg,var(--bg-1b3038),var(--bg-15272f));color:#ecd58f;display:grid;place-items:center;box-shadow:0 5px 15px #0f182e33;font-size:1.4375rem!important}.mobile-home small{font-size:max(.6875rem,0.5625rem)}.mobile-home.active span{outline:2px solid #d8bd5a55}
.vault-warning{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;margin:0 0 20px;border:1px solid #d8ad5455;border-radius:18px;background:linear-gradient(130deg,var(--bg-fff9e9),var(--bg-fffdf7));color:var(--tx-55421c)}.vault-warning-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--bg-f4e2b7);color:var(--tx-765813);font-weight:800;font-size:1.1875rem}.vault-warning p{margin:6px 0 0;line-height:1.7;color:var(--tx-705f3b)}.vault-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.vault-panel{padding:20px}.vault-panel h3{margin:0 0 15px}.vault-lock-state{padding:10px 14px;border-radius:12px;background:var(--bg-f1f5f2);color:var(--tx-49655c);font-weight:700}.vault-device-list{display:grid;gap:10px}.vault-device-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--bd-e4e9e6);border-radius:14px;background:var(--bg-fcfdfc)}.vault-device-row>div:first-child{display:grid;gap:5px}.vault-device-row small{color:var(--tx-71817b)}.vault-device-actions{display:flex;gap:8px;flex-wrap:wrap}.vault-company-keys{margin-top:12px;padding:12px;border-radius:12px;background:var(--bg-f6f8f6);color:var(--tx-2e5552);line-height:1.8}.vault-note{margin:18px 0;color:var(--tx-647771)}.vault-logout-choice{display:grid;gap:12px;line-height:1.7}.vault-logout-choice .form-help{padding:12px 14px;border:1px solid var(--bd-eadfca);border-radius:12px;background:var(--bg-fffaf0)}.vault-logout-choice .btn{min-height:44px}@media(max-width:720px){.vault-grid{grid-template-columns:1fr}.vault-warning{padding:15px}.vault-device-row{align-items:flex-start;flex-direction:column}.vault-device-actions{width:100%}}
.vault-recovery-code{display:grid;gap:10px;margin-top:10px;padding:14px;border:1px dashed #c89d43;border-radius:12px;background:var(--bg-fffaf0)}.vault-recovery-code code{display:block;padding:10px;background:var(--surface);color:var(--tx-263d3b);border-radius:8px;font-size:0.9375rem;letter-spacing:.08em;overflow-wrap:anywhere;user-select:all}
.initial-card-status{display:grid;gap:5px;margin-top:10px;padding:12px 14px;border:1px solid var(--bd-f0dfbd);border-radius:10px;background:var(--bg-fff8eb);color:var(--tx-805d22);font-size:0.75rem}.initial-card-status span{color:var(--tx-796a4f);font-size:0.6875rem;line-height:1.6}

@media(max-width:700px){.mobile-home{align-self:center;min-width:58px}.mobile-home span{margin-top:0}}
.dashboard-upcoming{display:block}
@media(max-width:700px){.dashboard-upcoming{display:none}}

.attachment-preview{display:grid;gap:12px}.attachment-preview-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px;background:var(--surface);color:var(--muted);font-size:0.75rem}.attachment-preview-toolbar>span{overflow-wrap:anywhere}.attachment-preview-close{flex:0 0 auto;width:42px;height:42px;border:1px solid var(--bd-d9e3de);border-radius:12px;background:var(--surface);color:var(--ink);font-size:1.6875rem;line-height:1;box-shadow:0 4px 14px #131e3915}@media(hover:hover){.attachment-preview-close:hover{background:var(--red-bg);border-color:var(--bd-e7b8b4);color:var(--red-ink)}}.attachment-preview-image{display:block;max-width:100%;max-height:72vh;max-height:72dvh;object-fit:contain;margin-inline:auto;border-radius:8px}.attachment-preview-pdf{display:block;width:100%;height:min(72vh,820px);height:min(72dvh,820px);border:1px solid var(--line);border-radius:8px;background:var(--bg-f8faf8)}

.request-success-card{position:relative;overflow:hidden;text-align:center;padding:20px 14px 8px;animation:requestSuccessRise .65s cubic-bezier(.2,.85,.25,1) both}.request-success-card:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;border:1px solid #b58d4f20;top:-220px;left:calc(50% - 150px);box-shadow:0 0 0 24px #424f6e08,0 0 0 52px #b58d4f08;pointer-events:none}.request-success-brand{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--tx-284e59);font-size:0.75rem;font-weight:800;letter-spacing:1.1px}.request-success-brand small{display:block;font-size:max(.6875rem,0.5rem);letter-spacing:.55px;color:var(--tx-82928b);margin-top:3px}.request-success-logo{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#e9c77c,#b58d4f);color:#111b33;font-size:1.0625rem;box-shadow:0 8px 20px #b58d4f35}.request-success-seal{position:relative;width:78px;height:78px;margin:23px auto 10px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--bg-e8f1f0),var(--bg-f8f4ea));border:1px solid var(--bd-d8e5e2);box-shadow:inset 0 0 0 7px #fff,0 12px 28px #131e3912;animation:requestSuccessSeal .8s .12s cubic-bezier(.2,.9,.2,1) both}.request-success-seal:before{content:"";position:absolute;inset:-6px;border:1px solid #b58d4f70;border-radius:50%;animation:requestSuccessRing 1.2s .2s ease-out both}.request-success-seal span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#424f6e;color:#fff;font-size:1.5625rem;font-weight:700}.request-success-kicker{color:var(--tx-a27c42);font-size:max(.6875rem,0.625rem);letter-spacing:1.6px;font-weight:800}.request-success-card h3{font-size:1.3125rem;line-height:1.45;margin:8px 0;color:var(--tx-1b3038)}.request-success-copy{margin:0 auto 16px;max-width:420px;color:var(--tx-71827c);line-height:1.8;font-size:0.75rem}.request-success-number{padding:13px;border-radius:13px;background:linear-gradient(120deg,var(--bg-f3f7f6),var(--bg-fffaf0));border:1px solid var(--bd-e6ece8);margin:0 auto 12px;max-width:400px}.request-success-number small,.request-success-meta small{display:block;font-size:max(.6875rem,0.625rem);color:var(--tx-83938b);margin-bottom:6px}.request-success-number b{font-family:Consolas,monospace;font-size:1.25rem;letter-spacing:1px;color:var(--tx-284e59)}.request-success-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;text-align:right;max-width:400px;margin:auto}.request-success-meta>div{padding:10px;border:1px solid var(--bd-edf0ed);border-radius:10px;background:var(--surface)}.request-success-meta b{display:block;font-size:0.6875rem;line-height:1.6;overflow-wrap:anywhere}.request-success-storage{max-width:400px;margin:12px auto;color:var(--tx-667971);font-size:max(.6875rem,0.625rem);line-height:1.7}.request-success-close{min-width:120px;margin:3px auto 8px;padding:10px 24px}.request-success-foot{font-size:max(.6875rem,0.5625rem);color:var(--tx-9aa69f);margin:6px 0 0}.request-success-close:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@keyframes requestSuccessRise{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes requestSuccessSeal{from{opacity:0;transform:scale(.65) rotate(-12deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes requestSuccessRing{0%{opacity:0;transform:scale(.82)}45%{opacity:.8}100%{opacity:.18;transform:scale(1.12)}}@media(max-width:520px){.modal{padding:15px}.request-success-card{padding:15px 2px 6px}.request-success-card h3{font-size:1.125rem}.request-success-number b{font-size:1.0625rem}}@media(prefers-reduced-motion:reduce){.request-success-card,.request-success-seal,.request-success-seal:before{animation:none}}
.vault-remember-btn{background:#3a4a6f;border-color:#3a4a6f;color:#fff}@media(hover:hover){.vault-remember-btn:hover{background:var(--bg-246542);border-color:var(--bd-246542)}}
.brand-pro,.auth-brand .brand-pro{font-size:1.35em;color:#e4c783;letter-spacing:2.2px;text-shadow:0 3px 14px #d7b56b33;vertical-align:-1px}.team-vault-pending{margin:12vh auto;max-width:720px;padding:24px;border:1px solid var(--bd-e7d7b3);border-radius:18px;background:linear-gradient(135deg,var(--bg-fffdf7),var(--bg-fff8e9));box-shadow:0 18px 50px #0e16290c}.team-vault-pending .vault-warning-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--bg-f3e7c9);color:var(--tx-9b783b);font-size:1.5rem}.team-vault-pending p{line-height:1.9}

.cutover-preflight-result{margin-top:1rem;padding:1rem;border:1px solid var(--line,var(--bd-dfe8e5));border-radius:14px;background:var(--surface-soft,var(--bg-f5f8f7))}.cutover-preflight-result>p{margin:.65rem 0;color:var(--muted,var(--tx-64748b))}.cutover-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.65rem;margin:.8rem 0}.cutover-counts>div{padding:.7rem .8rem;border-radius:10px;background:var(--surface);border:1px solid var(--line,var(--bd-dfe8e5))}.cutover-counts dt{font-size:.82rem;color:var(--muted,var(--tx-64748b))}.cutover-counts dd{margin:.25rem 0 0;font-size:1.25rem;font-weight:700}.cutover-blockers{margin:.4rem 0;padding-inline-start:1.5rem;color:var(--tx-a13f35)}.cutover-preflight-result details{margin-top:.7rem}.cutover-preflight-result summary{cursor:pointer;font-weight:600}

.feedback-tile{cursor:pointer}.feedback-tile:focus-visible{outline:2px solid var(--gold,#c9a45c);outline-offset:2px}@media(hover:hover){.feedback-tile:hover{border-color:var(--bd-c4a66a)}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.load-skeleton{display:grid;gap:14px}.skeleton-hero,.skeleton-tile{border:1px solid var(--gold-hair,rgba(200,170,110,.25));border-radius:16px;background:var(--surface);padding:18px;display:grid;gap:12px}.skeleton-hero{min-height:120px;align-content:center}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.skeleton-grid.two{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.skeleton-bar{display:block;height:12px;width:70%;border-radius:8px;background:linear-gradient(90deg,rgba(150,140,120,.16) 25%,rgba(150,140,120,.34) 50%,rgba(150,140,120,.16) 75%);background-size:200% 100%;animation:skeletonShimmer 1.4s ease-in-out infinite}.skeleton-bar.short{width:40%}.skeleton-bar.big{height:26px;width:55%}@keyframes skeletonShimmer{from{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton-bar{animation:none}}
@media print{html,body{display:none!important;visibility:hidden!important}}
