:root{--navy:#0d2b45;--navy-deep:#071a2b;--orange-primary:#eb5b2a;--orange-light:#ff9a5a;--orange-dark:#c94318;--amber:#f4a63a;--black:#000;--white:#fff;--bg:#f4efe8;--surface:#fffbf5e0;--surface-strong:#fffffff5;--text:#10253a;--muted:#10253ab3;--line:#0d2b451f;--orange:var(--orange-primary);--blue:var(--navy);--green:var(--amber);--red:var(--orange-dark);--shadow:0 24px 60px #0d2b4524;--shadow-soft:0 10px 30px #0d2b4514;--bg-image:url(/background-grid.svg)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at top left, #f4a63a29, transparent 26%), radial-gradient(circle at 85% 20%, #0d2b451a, transparent 24%), linear-gradient(#fffaf4b3, #f4efe8e0), var(--bg-image) center/cover no-repeat fixed, linear-gradient(180deg, #fffdfa 0%, #f4efe8 100%);margin:0;font-family:Aptos,Segoe UI,Trebuchet MS,sans-serif;line-height:1.5}.page-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:24px 0 56px}.topbar,.panel,.hero-copy,.hero-card,.login-copy{background:var(--surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);border:1px solid #ffffffb3;border-radius:30px}.topbar{flex-direction:column;align-items:stretch;gap:22px;margin-bottom:28px;padding:20px;display:flex;position:relative;overflow:hidden}.topbar.dashboard-header{z-index:300;isolation:isolate;gap:0;padding:0;position:relative;overflow:visible}.dashboard-hero{color:var(--white);background-color:var(--navy-deep);background-image:linear-gradient(168deg, var(--navy-deep) 0%, var(--navy) 58%, #0e3048 100%);border-radius:26px 26px 0 0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px 28px;padding:22px 24px 20px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0d}.dashboard-hero:before{content:"";border-radius:inherit;pointer-events:none;z-index:0;background-image:repeating-conic-gradient(from 205deg at 100% 0,#0000 0deg 17deg,#ff9a5a17 17deg 18.5deg,#0000 18.5deg 35deg),repeating-conic-gradient(from 25deg at 0 0,#0000 0deg 21deg,#ffffff0d 21deg 22deg,#0000 22deg 42deg),repeating-conic-gradient(from 335deg at 100% 100%,#0000 0deg 19deg,#ff9a5a0f 19deg 20deg,#0000 20deg 38deg),repeating-conic-gradient(from 155deg at 0 100%,#0000 0deg 23deg,#ffffff0a 23deg 24deg,#0000 24deg 46deg);position:absolute;inset:0;-webkit-mask-image:radial-gradient(78% 72%,#0000 38%,#00000073 72%,#000 100%);mask-image:radial-gradient(78% 72%,#0000 38%,#00000073 72%,#000 100%)}.dashboard-hero:after{content:"";border-radius:inherit;pointer-events:none;z-index:0;background:radial-gradient(55% 40% at 100% 0,#ff9a5a14 0%,#0000 55%),radial-gradient(45% 35% at 0 100%,#5ea8f60d 0%,#0000 50%),radial-gradient(100% 65% at 50% 0,#ffffff08 0%,#0000 58%);position:absolute;inset:0}.dashboard-hero-copy{z-index:1;min-width:0;position:relative}.dashboard-hero-eyebrow{color:var(--orange-light);margin-bottom:6px}.leaveflow-brand{color:inherit;max-width:100%;text-decoration:none;display:inline-block}.leaveflow-brand-lockup{align-content:start;gap:6px;display:grid}.leaveflow-wordmark{letter-spacing:-.045em;flex-wrap:wrap;align-items:baseline;gap:0;font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif;font-weight:700;line-height:.95;display:inline-flex}.leaveflow-word-leave{color:var(--navy)}.leaveflow-word-flow{color:var(--orange-primary);letter-spacing:-.02em;background:linear-gradient(105deg, var(--orange-light) 0%, var(--orange-primary) 55%, var(--orange-dark) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:800}.leaveflow-brand-tagline{letter-spacing:.14em;text-transform:uppercase;color:var(--orange-primary);font-size:.68rem;font-weight:700;line-height:1.3}.leaveflow-brand--hero{margin-bottom:14px}.leaveflow-brand--hero .leaveflow-wordmark{font-size:clamp(2rem,4.5vw,2.75rem)}.leaveflow-brand--hero .leaveflow-word-leave{color:#fff;-webkit-text-fill-color:#fff;background:0 0}.leaveflow-brand--hero .leaveflow-word-flow{background:linear-gradient(100deg, #ffd4b8 0%, var(--orange-light) 40%, #fff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.leaveflow-brand--hero .leaveflow-brand-tagline{color:#ffdabef2;letter-spacing:.16em;font-size:.62rem}.leaveflow-brand--light .leaveflow-wordmark{font-size:1.65rem}.leaveflow-brand--compact .leaveflow-wordmark{font-size:1.2rem}.leaveflow-brand--compact .leaveflow-brand-tagline{letter-spacing:.12em;font-size:.58rem}.leaveflow-brand--footer .leaveflow-wordmark{font-size:1.05rem}.leaveflow-brand--footer .leaveflow-brand-tagline{color:var(--muted);font-size:.58rem}.dashboard-hero-brand{align-self:flex-start}.login-hero-brand{margin-bottom:22px}.login-hero-lead{max-width:32rem;margin:0 0 20px;font-size:1.02rem;line-height:1.55}.login-hero-points{gap:10px;max-width:28rem;margin:0;padding:0;list-style:none;display:grid}.login-hero-points li{color:#f4f9ffeb;padding-left:1.35rem;font-size:.95rem;line-height:1.45;position:relative}.login-hero-points li:before{content:"";background:var(--orange-light);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0;box-shadow:0 0 0 3px #eb5b2a40}.login-page-footer{text-align:center;color:var(--muted);margin:20px 0 0;font-size:.82rem}.login-page-footer strong{color:var(--navy);font-weight:700}.dashboard-hero-title{color:var(--white);text-shadow:0 2px 12px #0003;margin:0;font-size:clamp(1.45rem,2.8vw,2rem);line-height:1.15}.dashboard-hero-sub{color:#ffffffe0;max-width:34rem;margin:8px 0 0;font-size:.94rem;line-height:1.45}.dashboard-hero-aside{z-index:1;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:10px;display:flex;position:relative}.dashboard-identity{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff24;border:1px solid #fff3;border-radius:18px;align-items:center;gap:12px;max-width:min(100%,320px);padding:10px 14px;display:flex}.dashboard-identity-copy{text-align:left;min-width:0}.dashboard-identity-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:.92rem;line-height:1.3;display:block;overflow:hidden}.dashboard-identity-meta{opacity:.88;font-size:.78rem;line-height:1.35;display:block}.dashboard-identity .user-badge-tenure{margin-top:6px}.dashboard-sign-out{padding:8px 14px;font-size:.86rem}.dashboard-toolbar{border-top:1px solid var(--line);background:var(--surface-strong);z-index:2;border-radius:0 0 26px 26px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 28px;padding:14px 20px 16px;display:flex;position:relative;overflow:visible}.dashboard-toolbar-group{flex-direction:column;gap:8px;min-width:0;display:flex}.dashboard-toolbar-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.68rem;font-weight:700}.dashboard-toolbar-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.locale-format-control{z-index:25;display:inline-flex;position:relative}.locale-format-trigger{white-space:nowrap;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.locale-format-icon{color:var(--orange-primary);flex-shrink:0;display:inline-flex}.locale-format-trigger-label{color:var(--text);font-size:.88rem;font-weight:600}.locale-format-chevron{opacity:.55;margin-left:2px;font-size:.65rem}.locale-format-menu{z-index:1000;background:var(--surface-strong);border:1px solid var(--card-border,var(--line));min-width:260px;box-shadow:var(--shadow);border-radius:16px;margin:0;padding:10px;position:absolute;top:calc(100% + 8px);left:0}.locale-format-menu-hint{color:var(--muted);margin:0 0 8px;padding:0 8px;font-size:.78rem;line-height:1.35}.locale-format-options{gap:4px;margin:0;padding:0;list-style:none;display:grid}.locale-format-option{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;transition:background .15s,border-color .15s;display:grid}.locale-format-option:hover{background:#eb5b2a14}.locale-format-option.is-selected{background:#eb5b2a1f;border-color:#eb5b2a40}.locale-format-option-pattern{letter-spacing:.04em;min-width:3.2rem;color:var(--navy);background:#0d2b450f;border-radius:8px;justify-content:center;align-items:center;padding:4px 8px;font-size:.82rem;font-weight:800;display:inline-flex}.locale-format-option-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.locale-format-option-copy strong{font-size:.88rem}.locale-format-option-copy span{color:var(--muted);font-size:.78rem}.locale-format-option-check{color:var(--orange-primary);font-size:.9rem;font-weight:700}.install-app-hint{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.install-app-btn{white-space:nowrap}.install-app-dismiss{font-size:.82rem}.push-toggle-wrap{flex-direction:column;align-items:flex-start;gap:4px;display:inline-flex}.push-toggle-btn{white-space:nowrap}.push-toggle-message{max-width:14rem;margin:0;font-size:.75rem;line-height:1.35}.admin-tools-menu{z-index:20;position:relative}.admin-tools-trigger{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.admin-tools-trigger-icon{font-size:1rem;line-height:1}.admin-tools-chevron{opacity:.7;font-size:.7rem}.admin-tools-panel{z-index:1000;background:var(--surface-strong);border:1px solid var(--card-border,var(--line));min-width:272px;box-shadow:var(--shadow);border-radius:18px;margin:0;padding:12px;position:absolute;top:calc(100% + 8px);right:0}.admin-tools-panel-title{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;padding:0 8px;font-size:.72rem;font-weight:700}.admin-tools-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.admin-tools-link{color:var(--text);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;transition:background .15s;display:flex}.admin-tools-link:hover{background:#eb5b2a1a}.admin-tools-link-label{font-size:.92rem;font-weight:700}.admin-tools-link-hint{color:var(--muted);font-size:.78rem}.dashboard-header.is-compact .dashboard-hero{padding-block:14px 12px}.dashboard-header.is-compact .dashboard-hero-sub{display:none}.dashboard-header.is-compact .dashboard-hero-title{font-size:1.28rem}.dashboard-header.is-compact .leaveflow-brand-tagline{display:none}.dashboard-header.is-compact .leaveflow-brand--hero{margin-bottom:6px}.dashboard-header.is-compact .leaveflow-wordmark{font-size:1.35rem}.topbar:after{content:"";pointer-events:none;background:radial-gradient(circle,#ff9a5a2e 0%,#ff9a5a00 70%);border-radius:50%;width:260px;height:260px;position:absolute;bottom:-120px;right:-60px}.topbar.dashboard-header:after{display:none}.topbar-content{z-index:1;justify-content:space-between;align-items:center;gap:18px;display:flex;position:relative}.topbar-actions{align-items:center;gap:14px;display:flex}.user-badge{text-align:right;background:#ffffffa3;border:1px solid #0d2b4514;border-radius:18px;flex-direction:row;align-items:center;gap:10px;padding:12px 16px;display:flex}.user-badge strong,.user-badge span{display:block}.profile-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.profile-avatar-img{object-fit:cover;border:2px solid #0d2b451a}.profile-avatar-fallback{color:var(--navy);background:linear-gradient(145deg,#ff8c4259,#0d2b451f);border:2px solid #0d2b451a;font-weight:700}.profile-panel-stack{gap:16px;display:grid}.profile-summary{box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#fff6ecf5);border:1px solid #0d2b4514;border-radius:22px;padding:18px 20px}.profile-summary-name{margin:0 0 6px;font-size:1.15rem}.profile-summary-role{margin:0 0 10px;font-size:.88rem}.profile-tenure-hint{max-width:28rem;margin:8px 0 0;font-size:.82rem}.tenure-badge{letter-spacing:.04em;color:var(--navy);background:linear-gradient(135deg,#ffc10747,#e85d4c1f);border:1px solid #e85d4c38;border-radius:999px;align-items:center;padding:4px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.user-badge-copy{gap:2px;min-width:0;display:grid}.user-badge-tenure{margin-top:4px;padding:2px 8px;font-size:.7rem}.profile-photo-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.profile-photo-actions{flex-wrap:wrap;gap:10px;display:flex}.balance-header-ident{align-items:center;gap:12px;display:flex}.roster-name-cell{align-items:center;gap:10px;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.notification-bell-wrap{position:relative}.notification-bell-btn{min-width:44px;padding:10px 14px;position:relative}.notification-bell-icon{font-size:1.1rem;line-height:1}.notification-bell-badge{background:var(--orange);color:#fff;text-align:center;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:18px;position:absolute;top:4px;right:4px}.notification-panel{z-index:50;width:min(360px,92vw);max-height:420px;box-shadow:var(--shadow-soft);padding:0;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.notification-panel-head{border-bottom:1px solid #0d2b4514;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.inline-link-btn{color:var(--orange);cursor:pointer;background:0 0;border:none;padding:0;font-size:.88rem;font-weight:600;text-decoration:underline}.notification-list{margin:0;padding:0;list-style:none}.notification-item{border-bottom:1px solid #0d2b450f}.notification-item.unread{background:#ff8c4214}.notification-link{color:inherit;padding:12px 16px;text-decoration:none;display:block}.notification-link:hover{background:#0d2b450a}.notification-title{margin-bottom:4px;font-weight:700;display:block}.notification-body{color:var(--muted);white-space:pre-wrap;margin-bottom:6px;font-size:.9rem;display:block}.notification-time{font-size:.8rem;display:block}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--orange);margin:0 0 8px;font-size:.76rem;font-weight:700}.dashboard-title{font-size:1.01rem}h1,h2,h3{letter-spacing:-.02em;margin:0;font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif}h2{font-size:clamp(1.25rem,2vw,1.7rem)}.muted{color:var(--muted)}.hero{grid-template-columns:1.5fr .8fr;gap:24px;margin-bottom:24px;display:grid}.hero-copy,.hero-card,.panel,.login-copy{padding:28px}.hero-card{background:linear-gradient(160deg, #fffffffa, #f4a63a1f), var(--surface);box-shadow:var(--shadow-soft)}.detail-hero{justify-content:space-between;align-items:start;gap:20px;display:flex}.detail-hero-copy{max-width:54ch}.detail-status{text-align:right;flex-direction:column;align-items:flex-end;gap:10px;display:flex}.hero-card-label{text-transform:uppercase;letter-spacing:.16em;color:var(--blue);margin:0 0 12px;font-weight:700}.metrics-panel{margin-bottom:24px}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.metric-card{box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#fff8f1f0);border:1px solid #0d2b4514;border-radius:24px;padding:20px}.metric-label{color:var(--muted);margin-bottom:8px;font-size:.94rem;display:block}.metric-card strong{font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif;font-size:2.15rem}.accent-orange{box-shadow:inset 0 4px 0 var(--orange-primary), var(--shadow-soft)}.accent-blue{box-shadow:inset 0 4px 0 var(--navy), var(--shadow-soft)}.accent-green{box-shadow:inset 0 4px 0 var(--amber), var(--shadow-soft)}.accent-red{box-shadow:inset 0 4px 0 var(--orange-dark), var(--shadow-soft)}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.request-balance-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start;gap:24px;min-width:0;display:grid}.request-balance-grid>*,.stack-panels,.leave-request-panel,.leave-request-form,.leave-request-form>*{min-width:0}.stack-panels{gap:24px;display:grid}.panel-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px;display:flex}.panel-heading p{color:var(--muted);margin:6px 0 0}.leave-request-panel{overflow:clip}.leave-request-launcher{align-items:center;margin-bottom:0}.leave-request-launcher-copy{min-width:0}.primary-btn.leave-request-toggle,.ghost-btn.leave-request-toggle{border-radius:8px;flex-shrink:0;min-width:188px;min-height:46px;padding:10px 14px}.leave-request-toggle-icon{place-items:center;width:20px;height:20px;font-size:1.25rem;font-weight:500;line-height:1;display:inline-grid}.leave-request-panel[data-expanded=true] .leave-request-launcher{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:20px}.wide-panel{grid-column:1/-1}.progress-grid,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.leave-form,.stack-form{gap:16px;display:grid}.leave-form{grid-template-columns:repeat(2,minmax(0,1fr))}.leave-request-form{align-items:start}.leave-form label,.stack-form label{flex-direction:column;gap:8px;font-weight:600;display:flex}.leave-duration-fieldset{border:1px solid #0d2b451a;border-radius:16px;margin:0;padding:14px 16px}.leave-duration-fieldset legend{padding:0 6px;font-weight:700}.leave-duration-fieldset:disabled{opacity:.72}.leave-duration-options{flex-wrap:wrap;gap:12px 18px;margin-top:10px;display:flex}.leave-duration-option{cursor:pointer;align-items:center;gap:8px;font-weight:600;display:inline-flex}.leave-duration-option input{width:auto;margin:0}.annual-forecast{background:#0d2b450d;border:1px solid #0d2b451a;border-radius:16px;padding:14px 16px}.annual-forecast-title,.annual-forecast p{margin:0 0 8px}.annual-forecast p:last-child{margin-bottom:0}.annual-forecast-detail{font-size:.85rem}.annual-forecast-gentle{background:#2e86ab14;border-color:#2e86ab47}.thank-approver-panel{margin-top:0}.thank-approver-form{margin-top:12px}.thank-approver-sent{border-left:4px solid var(--green);background:#7bc5181a;border-radius:12px;margin:12px 0 0;padding:12px 14px;font-size:.9rem}.thank-approver-display{background:#7bc51814;border:1px solid #7bc51840;border-radius:12px;padding:12px 14px;font-size:.92rem;line-height:1.45}.form-note-gentle{color:var(--navy);background:#2e86ab14;border:1px solid #2e86ab38;border-radius:12px;padding:12px 14px;font-weight:500;line-height:1.45}.annual-forecast-error{color:var(--orange-primary)}.leave-templates{border-bottom:1px solid var(--line);padding:0 0 16px}.leave-templates-label{text-transform:uppercase;letter-spacing:0;color:var(--muted);margin:0 0 10px;font-size:.78rem;font-weight:700}.leave-templates-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.ghost-btn.leave-template-btn{text-align:left;border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;min-height:64px;padding:10px 14px;display:flex}.leave-template-btn-label{color:var(--navy);font-weight:700}.leave-template-btn-hint{color:var(--muted);font-size:.78rem;font-weight:500}.full-width{grid-column:1/-1}.form-error{color:var(--orange-dark);margin:0;font-weight:600}.form-success{color:#1b6e3f;margin:0;font-weight:600}.request-actions-cell{vertical-align:top;min-width:160px}.review-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.review-conflict-hint{color:var(--warning-text,#92400e);background:var(--warning-bg,#fffbeb);border:1px solid var(--warning-border,#fcd34d);border-radius:8px;flex-basis:100%;margin:0;padding:8px 10px;font-size:.85rem;line-height:1.4}.inline-review-form{margin:0;display:inline}.review-action-btn{padding:8px 14px;font-size:.88rem}.bulk-approve-bar{background:#0d2b450d;border:1px solid #0d2b4514;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:12px 14px;display:flex}.bulk-approve-summary{margin:0;font-size:.88rem}.bulk-approve-actions{gap:10px;display:flex}.bulk-approve-feedback{margin:0 0 12px}.bulk-select-col{vertical-align:top;width:40px}.bulk-select-col input{width:auto;margin:0}.decline-dialog{background:0 0;border:none;border-radius:30px;max-width:min(460px,94vw);padding:0}.decline-dialog::backdrop{background:#0d2b4573}.decline-dialog-form{padding:22px 24px 20px}.decline-dialog-title{margin:0 0 12px;font-size:1.15rem}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.users-page{gap:20px;display:grid}.users-page-back{margin:0}.users-page-header{gap:18px;padding:22px 24px;display:grid}.users-page-brand{margin-bottom:12px}.users-page-header-main h1{margin:0 0 8px;font-size:1.65rem}.users-page-lead{max-width:52rem;margin:0;font-size:.95rem;line-height:1.5}.users-page-callouts{gap:10px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:720px){.users-page-callouts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}.users-page-callouts li{background:#0d2b450d;border:1px solid #0d2b4514;border-radius:14px;margin:0;padding:12px 14px;font-size:.86rem;line-height:1.45}.users-page-callouts strong{text-transform:uppercase;letter-spacing:.06em;color:var(--navy);margin-bottom:4px;font-size:.78rem;display:block}.users-page-details{background:#ffffff80;border:1px dashed #0d2b452e;border-radius:14px;padding:12px 14px}.users-page-details summary{cursor:pointer;color:var(--navy);font-weight:700}.users-page-details p{margin:10px 0 0;font-size:.88rem;line-height:1.45}.users-page-flash{margin:0}.users-page-count{margin:0;font-size:.88rem;font-weight:600}.users-roster-list{gap:16px;display:grid}.users-roster-empty{text-align:center;background:#ffffffd1;border:1px dashed #0d2b451f;border-radius:18px;margin:0;padding:24px}.users-roster-card{background:#ffffffe6;border:1px solid #0d2b451a;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px #0d2b450f}.users-roster-card-head{background:#0d2b4508;border-bottom:1px solid #0d2b4514;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.users-roster-identity{align-items:center;gap:14px;min-width:0;display:flex}.users-roster-identity-copy{gap:4px;min-width:0;display:grid}.users-roster-identity-copy strong{color:var(--navy);font-size:1.05rem}.users-roster-email{text-overflow:ellipsis;font-size:.86rem;overflow:hidden}.users-roster-edit-btn{flex-shrink:0}.users-roster-card-body{gap:18px;padding:18px 20px;display:grid}@media (min-width:900px){.users-roster-card-body{grid-template-columns:repeat(2,minmax(0,1fr))}.users-roster-field--balances{grid-column:1/-1}}.users-roster-field{align-content:start;gap:8px;display:grid}.users-roster-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:800}.users-roster-field-hint{margin:0;font-size:.8rem;line-height:1.35}.users-roster-static{margin:0;font-weight:600}.users-balance-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin:0;display:grid}.users-balance-item{background:#0d2b450a;border:1px solid #0d2b4514;border-radius:12px;margin:0;padding:10px 12px}.users-balance-item dt{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 4px;font-size:.68rem;font-weight:700}.users-balance-item dd{font-variant-numeric:tabular-nums;color:var(--navy);margin:0;font-size:1rem;font-weight:700}.users-roster-dev{border-top:1px solid #0d2b451a}.users-roster-dev summary{cursor:pointer;color:var(--navy);padding:14px 20px;font-size:.9rem;font-weight:700;list-style-position:outside}.users-roster-dev summary::-webkit-details-marker{color:var(--orange-primary)}.users-roster-dev-inner{gap:14px;padding:0 20px 18px;display:grid}.users-roster-dev-intro{margin:0;font-size:.86rem;line-height:1.45}.users-roster-dev-grid{gap:14px;display:grid}@media (min-width:900px){.users-roster-dev-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.users-roster-dev-block{background:#0d2b450a;border:1px solid #0d2b4514;border-radius:14px;padding:14px}.users-roster-dev-block .review-delegation-block,.users-roster-dev-block .payslip-hr-form{border-top:none;margin-top:0;padding-top:0}.users-roster-table{min-width:720px}.users-hire-cell{vertical-align:middle;min-width:200px}.user-hire-date-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-hire-date-form input[type=date]{max-width:150px;padding:10px 12px;font-size:.9rem}.users-role-cell{vertical-align:middle;min-width:220px}.users-review-cell{flex-direction:column;gap:12px;min-width:240px;display:flex}.review-delegation-block{border-top:1px solid var(--border,#e5e7eb);padding-top:8px}.review-delegation-label{margin:0 0 6px;font-size:.8rem}.review-delegation-active{margin:0 0 8px;font-size:.8rem}.review-delegation-form{flex-direction:column;align-items:stretch}.review-delegation-date{flex-direction:column;gap:4px;font-size:.85rem;display:flex}.review-delegation-date input[type=date]{padding:8px 10px;font-size:.9rem}.review-delegation-actions{flex-wrap:wrap;gap:8px;display:flex}.review-delegation-clear{color:var(--muted,#6b7280)}.delegation-banner{background:var(--panel-alt,#f3f4f6);border-radius:8px;margin:0 0 16px;padding:10px 14px;font-size:.9rem}.holiday-category-pill{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-block}.holiday-category-kenya{color:#1b5e20;background:#1b5e201f}.holiday-category-international{color:#1565c0;background:#1565c01f}.holiday-category-manual{color:var(--muted);background:#0d2b4514}.public-holidays-manager{gap:28px;display:grid}.public-holiday-add-form{max-width:480px}.public-holiday-list-wrap h3{margin:0 0 12px}.payslip-hr-form{border-top:none;margin-top:0;padding-top:0}.payslip-admin-manager{gap:28px;display:grid}.payslip-upload-form{max-width:520px}.payslip-admin-list-wrap h3{margin:0 0 12px}.payslip-table td{vertical-align:middle}.payslip-period-code{margin-top:2px;font-size:.78rem;display:block}.payslip-uploader{font-size:.78rem;display:block}.payslip-download-btn{white-space:nowrap;padding:8px 14px;font-size:.82rem}.payslip-empty{margin:0}.dashboard-quick-link{text-decoration:none}.leave-days-preview{margin-top:4px}.leave-policy-snippet{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:4px 0 8px}.leave-policy-snippet-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:.88rem;font-weight:700;list-style:none;display:flex}.leave-policy-snippet-summary::-webkit-details-marker{display:none}.leave-policy-snippet-summary:after{content:"+";width:20px;color:var(--muted);text-align:center;font-size:1.1rem;font-weight:500}.leave-policy-snippet[open] .leave-policy-snippet-summary:after{content:"−"}.leave-policy-snippet-content{padding:0 0 12px}.leave-policy-snippet-text{margin:0 0 8px;font-size:.9rem;line-height:1.45}.leave-policy-snippet-link{font-size:.9rem}.export-csv-form{max-width:520px}.audit-log-wrap{margin-top:8px}.audit-log-table{font-size:.9rem}.audit-log-table .audit-log-when{white-space:nowrap}.audit-action-pill{background:var(--panel-alt,#f1f5f9);color:var(--muted,#475569);border-radius:6px;padding:2px 8px;font-size:.8rem;display:inline-block}.user-role-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-role-form select{max-width:160px;padding:10px 12px;font-size:.9rem}.user-role-save{padding:8px 12px;font-size:.85rem}.role-inline-error,.role-inline-success{flex-basis:100%;width:100%;margin:0;font-size:.85rem}.balances-compact{font-variant-numeric:tabular-nums;white-space:nowrap}.admin-user-form{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.admin-user-panel{overflow:clip}.admin-user-launcher{align-items:center;margin-bottom:0}.admin-user-launcher-copy{min-width:0}.admin-user-launcher-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.admin-user-manage-link{white-space:nowrap}.primary-btn.admin-user-toggle,.ghost-btn.admin-user-toggle{border-radius:8px;flex-shrink:0;min-width:150px;min-height:46px;padding:10px 14px}.admin-user-toggle-icon{place-items:center;width:20px;height:20px;font-size:1.25rem;font-weight:500;line-height:1;display:inline-grid}.admin-user-panel[data-expanded=true] .admin-user-launcher{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:20px}.admin-user-form[hidden]{display:none}.admin-user-guidance,.admin-user-server-note{margin:0}.code-block{white-space:pre-wrap;word-break:break-word;background:#0f23460f;border-radius:8px;margin:12px 0;padding:12px 14px;font-size:.88rem;line-height:1.45;overflow-x:auto}.admin-danger-form{gap:14px;max-width:520px;display:grid}.admin-danger-panel{border-color:#b43c3238}.danger-btn{color:#8b2e2e;border-color:#b43c3259}.system-admin-check{align-items:center;gap:10px;font-size:.94rem;display:flex}.system-admin-check input{width:auto}.form-note{color:var(--muted);margin:-4px 0 2px;font-size:.94rem}input,select,textarea,button,a{font:inherit}input,select,textarea{width:100%;color:var(--text);background:#fffffff2;border:1px solid #0d2b451f;border-radius:16px;padding:14px 15px;transition:border-color .18s,box-shadow .18s,background .18s;box-shadow:inset 0 1px 2px #0d2b4508}input:focus,select:focus,textarea:focus{background:#fff;border-color:#eb5b2a6b;outline:none;box-shadow:0 0 0 4px #eb5b2a1f}textarea{resize:vertical}.primary-btn,.ghost-btn,.action-btn{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;padding:12px 18px;font-weight:700;text-decoration:none;transition:transform .18s,opacity .18s,box-shadow .18s,background .18s;display:inline-flex}.primary-btn{background:linear-gradient(135deg, var(--orange-light), var(--orange-primary) 55%, var(--orange-dark));color:var(--white);box-shadow:0 12px 28px #c9431838}.ghost-btn{color:var(--text);border:1px solid var(--line);background:#ffffffe0}.inline-link{color:var(--blue);font-weight:700;text-decoration:none}.inline-link:hover{text-decoration:underline}.primary-btn:hover,.ghost-btn:hover,.action-btn:hover{transform:translateY(-2px)}.primary-btn:hover{box-shadow:0 16px 34px #c9431847}.out-today-panel .panel-heading{align-items:center}.out-today-date{white-space:nowrap;margin:0;font-size:.9rem}.out-today-empty{margin:0}.out-today-list{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.out-today-card{min-width:min(100%,240px);max-width:320px;box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#fff6ecf5);border:1px solid #0d2b4514;border-radius:18px;flex:220px;align-items:center;gap:12px;padding:12px 14px;display:flex}.out-today-card-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.out-today-card-copy strong{font-size:.95rem}.out-today-card-copy .muted{font-size:.82rem}.team-color-chip{text-transform:uppercase;letter-spacing:.08em;color:var(--team-color);background:color-mix(in srgb, var(--team-color) 14%, white);border:1px solid color-mix(in srgb, var(--team-color) 35%, transparent);border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700;line-height:1.3;display:inline-block}.team-color-chip.out-today-team,.team-color-chip.employee-team{margin-top:4px}.team-colors-manager{gap:16px;display:grid}.team-colors-hint{margin:0}.team-colors-table .team-color-picker-cell{min-width:220px}.team-color-picker-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.team-color-picker-row input[type=color]{cursor:pointer;width:44px;height:36px;padding:2px}.team-color-hex-input{width:7.5rem;font-family:ui-monospace,monospace;font-size:.88rem}.team-color-presets{flex-wrap:wrap;gap:6px;display:flex}.team-color-swatch{cursor:pointer;border:2px solid #0d2b451f;border-radius:6px;width:22px;height:22px;padding:0}.team-color-swatch:hover{transform:scale(1.08)}.team-color-actions-cell{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.team-color-auto-hint{font-size:.78rem}.team-color-row-msg{margin:8px 0 0;font-size:.82rem}.leave-flair{color:var(--navy);font-size:.88rem;font-weight:600;line-height:1.35;display:block}.leave-flair.progress-flair{margin:4px 0 8px}.calendar-event .leave-flair{margin:2px 0;font-size:.72rem}.calendar-event-type{color:var(--muted);font-size:.7rem}.balances-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.side-balances-grid{grid-template-columns:1fr}.balance-card{box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#fff6ecf5);border:1px solid #0d2b4514;border-radius:22px;padding:18px}.balance-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px;display:flex}.employee-team.team-color-chip{flex-shrink:0}.balance-list{gap:10px;display:grid}.balance-row{background:#f4a63a1f;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;padding:10px 12px;display:flex}.balance-row-main{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.balance-row-low{background:#2e86ab14;border:1px solid #2e86ab29}.balance-hint{color:var(--muted);margin:8px 0 0;font-size:.82rem;font-weight:500;line-height:1.45}.balance-hint-low{color:#2a5f7a}.balance-row strong{font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif}.table-wrap{overflow-x:auto}.table-actions-stack{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.inline-edit-form{align-items:center;gap:8px;min-width:240px;display:flex}.inline-edit-form select{border-radius:14px;min-width:130px;padding:10px 12px}table{border-collapse:collapse;width:100%;min-width:840px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #0d2b4514;padding:14px 12px}th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#0d2b4508;font-size:.88rem}.status-pill{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:92px;padding:8px 12px;font-size:.85rem;font-weight:700;display:inline-flex}.status-pending{color:var(--orange-primary);background:#f4a63a29;border-color:#eb5b2a1f}.status-approved{color:var(--navy);background:#0d2b4514;border-color:#0d2b451a}.status-declined{color:var(--orange-dark);background:#c943181f;border-color:#c943181f}.actions{flex-wrap:wrap;gap:8px;display:flex}.actions form,.detail-actions form{margin:0}.approve-btn{color:var(--navy);background:#0d2b451a}.decline-btn{color:var(--orange-dark);background:#c943181f}.empty-state{text-align:center;color:var(--muted);padding:28px 12px}.login-shell{grid-template-columns:1.2fr .9fr;align-items:center;gap:24px;min-height:calc(100vh - 72px);display:grid}.login-copy{background:linear-gradient(#ffffff0a 0%,#071a2bd6 100%),url(/background-wave.svg) 50%/cover no-repeat;align-items:flex-end;min-height:620px;display:flex;position:relative;overflow:hidden}.login-copy:before{content:"";background:linear-gradient(135deg,#ff9a5a2e,#0d2b4514),linear-gradient(#ffffff0a,#071a2b2e);position:absolute;inset:0}.login-copy-inner{z-index:1;max-width:34rem;position:relative}.login-copy .eyebrow,.login-copy h1,.login-copy .muted{color:#f4f9ff}.login-copy h1{margin-bottom:18px;font-size:clamp(2rem,4vw,4rem);line-height:.97}.demo-card{background:#fffbf6c2;border:1px solid #ffffff38;border-radius:20px;margin-top:24px;padding:18px}.demo-card p{margin:10px 0 0}.login-panel{width:100%;max-width:480px}.single-panel{max-width:640px;margin:48px auto 0}.flash{border:1px solid #0000;border-radius:18px;margin:0 0 18px;padding:14px 16px;font-weight:700}.flash-info{color:var(--navy);background:#0d2b4514;border-color:#0d2b451a}.flash-success{color:var(--orange-primary);background:#f4a63a24;border-color:#eb5b2a1f}.flash-error{color:var(--orange-dark);background:#c943181f;border-color:#c943181f}.progress-card{box-shadow:var(--shadow-soft);background:linear-gradient(#fffffffa,#fff8f1f0);border:1px solid #0d2b4514;border-radius:24px;padding:20px}.progress-card-top,.progress-card-bottom,.progress-summary,.detail-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.progress-card-title{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:0 0 6px;font-size:.78rem;font-weight:700}.progress-dates,.progress-summary-text{margin:14px 0 0}.stage-strip{gap:10px;margin:18px 0 0;display:flex}.stage-dot{background:#0d2b451f;border-radius:999px;flex:1;height:10px}.stage-dot.is-active{background:linear-gradient(90deg, var(--amber), var(--orange-primary))}.stage-dot.is-complete{background:linear-gradient(90deg,#0f766e,#14b8a6)}.progress-badge{color:var(--navy);background:#0d2b4514;border-radius:16px;flex-direction:column;gap:4px;padding:10px 14px;display:inline-flex}.progress-badge-label{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:700}.empty-progress{justify-content:center;align-items:center;min-height:160px;display:flex}.detail-header,.detail-footer{margin-bottom:24px}.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.detail-fact{background:#f4a63a1f;border-radius:18px;flex-direction:column;gap:6px;padding:14px;display:flex}.detail-fact span{color:var(--muted);font-size:.9rem}.full-width-fact{grid-column:1/-1}.detail-actions{flex-wrap:wrap;justify-content:flex-start;margin-top:18px}.progress-summary{align-items:flex-start;margin-bottom:18px}.progress-summary p{max-width:40ch;margin:0}.calendar-month-label{color:var(--navy);background:#0d2b4514;border-radius:16px;padding:10px 14px}.calendar-toolbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.calendar-toolbar-actions{align-items:center;gap:12px;display:flex}.calendar-toggle-button{white-space:nowrap}.calendar-view-toggle{background:#0d2b450f;border-radius:14px;gap:4px;padding:4px;display:inline-flex}.calendar-view-btn{padding:8px 12px;font-size:.82rem}.calendar-view-btn.is-active{color:var(--navy);background:#fff;font-weight:700;box-shadow:0 4px 12px #0d2b451a}.heatmap-shell{gap:12px;display:grid}.heatmap-intro{margin:0;font-size:.88rem}.heatmap-days .heatmap-day{min-height:72px}.heatmap-day{border:1px solid #0d2b4514;border-radius:16px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:6px;padding:10px;transition:transform .12s,box-shadow .12s;display:flex;position:relative}.heatmap-day:not(.is-empty):hover{transform:translateY(-1px);box-shadow:0 8px 20px #0d2b451a}.heatmap-day.is-empty{background:#0d2b4508;border-style:dashed;min-height:48px}.heatmap-day-number{color:var(--navy);font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif;font-size:.95rem;font-weight:700}.heatmap-count{color:var(--navy);background:#ffffffa6;border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:700}.heatmap-day.intensity-0{background:#ffffffe6}.heatmap-day.intensity-1{background:#ffe6d2f2;border-color:#eb5b2a1f}.heatmap-day.intensity-2{background:#ffc8a0eb;border-color:#eb5b2a38}.heatmap-day.intensity-3{background:#ffa56ee6;border-color:#c9431847}.heatmap-day.intensity-4{color:#fff;background:#eb5b2ae0;border-color:#a3300c59}.heatmap-day.intensity-4 .heatmap-day-number,.heatmap-day.intensity-4 .heatmap-count{color:#fff}.heatmap-day.intensity-4 .heatmap-count{background:#0000002e}.heatmap-day.is-public-holiday{box-shadow:inset 0 0 0 2px #f4a63abf,0 0 0 1px #c98c1433}.heatmap-holiday-name{color:#784808f2;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;font-size:.62rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.heatmap-legend-swatch--holiday{background:#f4a63a8c;border-color:#c98c1466;box-shadow:inset 0 0 0 2px #f4a63a80}.heatmap-legend{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.heatmap-legend-label{color:var(--muted);font-size:.78rem;font-weight:600}.heatmap-legend-swatch{border:1px solid #0d2b451a;border-radius:6px;width:28px;height:14px}.heatmap-legend-max{margin-left:4px;font-size:.78rem}.calendar-panel{margin-top:18px;animation:.22s ease-out both rise-in}.calendar-shell,.calendar-month-view{gap:10px;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}.calendar-weekday{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;background:#0d2b450f;border-radius:14px;padding:10px 12px;font-size:.78rem;font-weight:700}.calendar-day{background:#ffffffd1;border:1px solid #0d2b4514;border-radius:18px;align-content:start;gap:6px;height:88px;min-height:88px;padding:10px;display:grid;overflow:hidden;box-shadow:0 6px 18px #0d2b450a}.calendar-day.has-events{background:#fff2e1d1;border-color:#eb5b2a2e}.calendar-day.is-public-holiday{background:linear-gradient(165deg,#f4a63a38 0%,#ffffffe0 42%);border-color:#f4a63a73;box-shadow:inset 0 0 0 1px #f4a63a33}.calendar-day.is-public-holiday.has-events{background:linear-gradient(165deg,#f4a63a47 0%,#fff2e1e6 45%)}.calendar-intro{margin:0;font-size:.88rem;line-height:1.45}.calendar-day-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.calendar-day-holiday{color:#784808f2;text-align:right;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.68rem;font-weight:700;line-height:1.2;overflow:hidden}.calendar-legend{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:4px;display:flex}.calendar-legend-swatch{border:1px solid #0d2b451f;border-radius:6px;width:22px;height:14px}.calendar-legend-swatch--holiday{background:#f4a63a73;border-color:#c98c1466}.calendar-legend-swatch--leave{background:#fff2e1f2;border-color:#eb5b2a40}.calendar-legend-label{color:var(--muted);font-size:.78rem;font-weight:600}.calendar-day.is-empty{background:#0d2b4508;border-style:dashed}.calendar-day-number{color:var(--navy);font-family:Bahnschrift,Aptos Display,Segoe UI Semibold,sans-serif;font-size:1rem}.calendar-day-trigger{cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:none;align-self:end;margin:0;padding:0}.calendar-day-trigger:hover .calendar-day-count,.calendar-day-trigger:focus-visible .calendar-day-count{background:#eb5b2a38;outline:none}.calendar-day-trigger:focus-visible{outline-offset:2px;border-radius:10px;outline:2px solid #eb5b2a73}.calendar-day-count{color:var(--navy);background:#eb5b2a24;border-radius:999px;align-items:center;padding:5px 10px;font-size:.72rem;font-weight:700;line-height:1.2;transition:background .12s;display:inline-flex}.calendar-day-dialog{max-width:min(520px,94vw)}.calendar-day-dialog-body{gap:12px;max-height:min(80vh,640px);padding:22px 24px 20px;display:grid;overflow:auto}.calendar-day-dialog-title{margin:0;font-size:1.15rem}.calendar-day-dialog-holiday{margin:0;font-size:.88rem}.calendar-day-dialog-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.calendar-events{gap:8px;display:grid}.calendar-event{border-left:4px solid var(--orange-primary);background:#fffffff5;border-radius:12px;gap:2px;padding:8px 10px;display:grid}.calendar-event--team{border-left:4px solid var(--team-event-color,var(--orange-primary));background:color-mix(in srgb, var(--team-event-color,var(--orange-primary)) 12%, white)}.calendar-event strong{color:var(--navy);font-size:.86rem}.calendar-event span,.calendar-more{color:var(--muted);font-size:.78rem}.timeline{gap:18px;display:grid;position:relative}.timeline:before{content:"";background:#0d2b451f;width:2px;position:absolute;top:12px;bottom:12px;left:13px}.timeline-step{grid-template-columns:28px 1fr;align-items:start;gap:16px;display:grid;position:relative}.timeline-marker{z-index:1;background:#fff;border:2px solid #0d2b452e;border-radius:50%;width:28px;height:28px;position:relative;box-shadow:0 4px 14px #0d2b4514}.timeline-step.is-active .timeline-marker{border-color:var(--orange);background:#f4a63a24}.timeline-step.is-complete .timeline-marker{border-color:var(--navy);background:#0d2b451f}.timeline-copy{background:#ffffffc7;border:1px solid #0d2b4514;border-radius:18px;padding:14px 16px}.timeline-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.timeline-header span{color:var(--muted);font-size:.92rem}.timeline-copy p{margin:8px 0 0}.header-image-container{border-radius:24px;width:100%;height:240px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.header-image{object-fit:cover;filter:brightness(.72)saturate(1.05);width:100%;height:100%;transition:transform .6s}.header-overlay{background:linear-gradient(110deg,#071a2bdb 16%,#eb5b2a3d 62%,#f4a63a38 100%);position:absolute;inset:0}.header-text{color:var(--white);z-index:2;max-width:38rem;position:absolute;bottom:24px;left:30px;right:30px}.header-text h1{text-shadow:0 2px 14px #00000059;margin:0;font-size:clamp(1.9rem,3vw,2.5rem);font-weight:700}.header-text p{opacity:.9;margin-top:8px;font-size:.98rem}.header-image-container:after{content:"";background:linear-gradient(#0000,#00000042);width:100%;height:40%;position:absolute;bottom:0}.topbar:hover .header-image{transform:scale(1.03)}@media (prefers-reduced-motion:no-preference){.panel,.metric-card,.balance-card,.progress-card,.calendar-day{animation:.42s ease-out both rise-in}}@media (max-width:980px){.hero,.login-shell,.request-balance-grid,.dashboard-grid,.metrics-grid,.balances-grid,.progress-grid,.detail-grid{grid-template-columns:minmax(0,1fr)}.calendar-month-view{-webkit-overflow-scrolling:touch;padding-bottom:4px;overflow-x:auto}.calendar-month-view>.calendar-grid{min-width:38rem}.calendar-weekday{padding:8px 4px;font-size:.68rem}.calendar-day{height:80px;min-height:80px;padding:8px}.heatmap-days .heatmap-day{min-height:64px}.calendar-day-holiday{font-size:.6rem}.topbar-content{flex-direction:column;align-items:flex-start}.dashboard-hero{grid-template-columns:1fr;align-items:start}.dashboard-hero-aside{align-items:stretch;width:100%}.dashboard-identity{width:100%;max-width:none}.dashboard-identity-copy strong{white-space:normal;max-width:none}.dashboard-sign-out{align-self:flex-start}.dashboard-toolbar{flex-direction:column;align-items:stretch}.admin-tools-panel{width:min(100%,320px);left:0;right:auto}.calendar-toolbar,.calendar-toolbar-actions{flex-direction:column;align-items:flex-start}}@media (max-width:640px){.page-shell{width:min(100% - 20px,1180px);padding-top:16px}.login-copy{background-position:62%;min-height:420px}.topbar{padding:16px}.topbar-actions,.user-badge{text-align:left;align-items:flex-start}.leave-form{grid-template-columns:1fr}.leave-request-launcher{flex-direction:column;align-items:stretch}.leave-request-toggle{width:100%}.admin-user-launcher{flex-direction:column;align-items:stretch}.admin-user-launcher-actions{flex-direction:column;justify-content:flex-start;align-items:stretch}.admin-user-manage-link{white-space:normal}.admin-user-toggle{width:100%}.detail-hero,.progress-card-top,.progress-card-bottom,.progress-summary,.timeline-header{flex-direction:column;align-items:flex-start}.detail-status{text-align:left;align-items:flex-start}.detail-facts{grid-template-columns:1fr}.header-image-container{height:220px}.header-text{bottom:20px;left:20px;right:20px}}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111;--surface:#18181bf0;--surface-strong:#1e1e21fa;--surface-elevated:#252528;--text:#f4f4f5;--muted:#f4f4f59e;--line:#ffffff1a;--navy:#f4f4f5;--shadow:0 24px 60px #00000080;--shadow-soft:0 10px 30px #00000059;--panel-border:#ffffff14;--panel-alt:#1a1a1c;--border:#3f3f46;--card-bg:linear-gradient(180deg, #222226fa, #18181bf5);--card-border:#ffffff14;--inset-bg:#00000040;--inset-border:#ffffff14;--input-bg:#0f0f10f2;--input-bg-focus:#1c1c1f;--input-border:#ffffff24;--ghost-bg:#27272ae6;--table-head-bg:#00000047;--table-border:#ffffff14;--dialog-backdrop:#000000b8;--badge-bg:#27272ad9;--badge-border:#ffffff14;--success-text:#6ee7a8;--warning-text:#fcd34d;--warning-bg:#fcd34d1f;--warning-border:#fcd34d59;--code-bg:#0006}[data-theme=dark] body{background:radial-gradient(circle at 0 0,#eb5b2a1a,#0000 30%),radial-gradient(circle at 85% 20%,#ffffff08,#0000 26%),linear-gradient(#141414 0%,#111 100%)}[data-theme=dark] .topbar,[data-theme=dark] .panel,[data-theme=dark] .hero-copy,[data-theme=dark] .hero-card,[data-theme=dark] .login-copy{border-color:var(--panel-border);background:var(--surface)}[data-theme=dark] .hero-card{background:var(--card-bg), var(--surface)}[data-theme=dark] .user-badge{background:var(--badge-bg);border-color:var(--badge-border)}[data-theme=dark] .profile-avatar-fallback{color:var(--text);background:linear-gradient(145deg,#eb5b2a59,#3f3f46e6)}[data-theme=dark] .metric-card,[data-theme=dark] .progress-card,[data-theme=dark] .balance-card,[data-theme=dark] .out-today-card{background:var(--card-bg);border-color:var(--card-border)}[data-theme=dark] .notification-panel-head,[data-theme=dark] .notification-item{border-color:var(--table-border)}[data-theme=dark] .notification-item.unread{background:#eb5b2a1f}[data-theme=dark] .notification-link:hover{background:#ffffff0a}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text);box-shadow:inset 0 1px 2px #0003}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{background:var(--input-bg-focus);border-color:#ff9a5a80;box-shadow:0 0 0 4px #eb5b2a33}[data-theme=dark] .ghost-btn{background:var(--ghost-bg);color:var(--text);border-color:var(--line)}[data-theme=dark] .form-success{color:var(--success-text)}[data-theme=dark] .leave-duration-fieldset,[data-theme=dark] .annual-forecast,[data-theme=dark] .bulk-approve-bar,[data-theme=dark] .calendar-view-toggle,[data-theme=dark] .calendar-month-label,[data-theme=dark] .progress-badge,[data-theme=dark] .detail-fact,[data-theme=dark] .annual-forecast-gentle{background:#ffffff0d;border-color:#ffffff1f}[data-theme=dark] .form-note-gentle{color:var(--text);background:#ffffff0d;border-color:#ffffff1f}[data-theme=dark] .balance-row-low{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .balance-hint-low{color:var(--muted)}[data-theme=dark] .balance-row,[data-theme=dark] .delegation-banner,[data-theme=dark] .audit-action-pill{background:var(--inset-bg);border-color:var(--inset-border)}[data-theme=dark] .leave-templates,[data-theme=dark] .leave-policy-snippet{border-color:var(--line)}[data-theme=dark] .leave-template-btn-label,[data-theme=dark] .leave-flair,[data-theme=dark] .heatmap-day-number{color:var(--navy)}[data-theme=dark] th{background:var(--table-head-bg)}[data-theme=dark] th,[data-theme=dark] td{border-color:var(--table-border)}[data-theme=dark] .status-approved{color:var(--success-text);background:#6ee7a81f;border-color:#6ee7a840}[data-theme=dark] .decline-dialog::backdrop,[data-theme=dark] .calendar-day-dialog::backdrop{background:var(--dialog-backdrop)}[data-theme=dark] .calendar-day-count{color:var(--text);background:#eb5b2a38}[data-theme=dark] .calendar-view-btn.is-active{color:var(--text);background:#3f3f46f2;box-shadow:0 4px 12px #00000059}[data-theme=dark] .heatmap-day.is-empty{border-color:var(--inset-border);background:#0003}[data-theme=dark] .heatmap-day.intensity-0{background:#27272af2}[data-theme=dark] .heatmap-day.intensity-1{background:#503223d9;border-color:#eb5b2a33}[data-theme=dark] .heatmap-day.intensity-2{background:#784128e0}[data-theme=dark] .heatmap-day.intensity-3{background:#b4552de6}[data-theme=dark] .heatmap-day.intensity-4{background:#eb5b2aeb}[data-theme=dark] .heatmap-count{color:var(--text);background:#00000040}[data-theme=dark] .calendar-day.is-public-holiday{background:linear-gradient(165deg,#f4a63a33 0%,#1e1e21eb 45%);border-color:#f4a63a66}[data-theme=dark] .calendar-day-holiday,[data-theme=dark] .heatmap-holiday-name{color:#f4c878f2}[data-theme=dark] .heatmap-day.is-public-holiday{box-shadow:inset 0 0 0 2px #f4a63a8c,0 0 0 1px #ffffff0f}[data-theme=dark] .heatmap-day{border-color:var(--card-border)}[data-theme=dark] .demo-card{border-color:var(--panel-border);background:#18181be6}[data-theme=dark] .flash-info{color:var(--text);background:#ffffff0f}[data-theme=dark] .stage-dot{background:#ffffff1f}[data-theme=dark] .approve-btn{background:#ffffff14}[data-theme=dark] code{background:var(--code-bg);border-radius:4px;padding:2px 6px}[data-theme=dark] .calendar-day{border-color:var(--card-border);background:#1e1e21eb;box-shadow:0 6px 18px #00000040}[data-theme=dark] .calendar-day.has-events{background:#322016bf;border-color:#eb5b2a47}[data-theme=dark] .calendar-day.is-empty{background:#0000002e}[data-theme=dark] .thank-approver-sent,[data-theme=dark] .thank-approver-display{background:#7bc5181f;border-color:#7bc5184d}[data-theme=dark] .profile-summary{background:var(--surface-elevated);border-color:var(--card-border)}[data-theme=dark] .tenure-badge{color:var(--text);background:linear-gradient(135deg,#ffc1072e,#e85d4c1a);border-color:#ffc10740}[data-theme=dark] .team-color-chip{background:color-mix(in srgb, var(--team-color) 22%, var(--surface));border-color:color-mix(in srgb, var(--team-color) 45%, transparent)}[data-theme=dark] .calendar-event--team{background:color-mix(in srgb, var(--team-event-color,var(--orange-primary)) 18%, var(--surface));border-left-color:var(--team-event-color,var(--orange-primary))}[data-theme=dark] .calendar-event{border-color:var(--card-border);background:#18181bfa}[data-theme=dark] .calendar-event strong{color:var(--text)}[data-theme=dark] .dashboard-hero{background-color:#0a0a0a;background-image:linear-gradient(168deg,#0a0a0a 0%,#141416 72%,#1a1a1c 100%);box-shadow:inset 0 1px #ffffff0a}[data-theme=dark] .dashboard-hero:before{background-image:repeating-conic-gradient(from 205deg at 100% 0,#0000 0deg 17deg,#eb5b2a1a 17deg 18.5deg,#0000 18.5deg 35deg),repeating-conic-gradient(from 25deg at 0 0,#0000 0deg 21deg,#ffffff0a 21deg 22deg,#0000 22deg 42deg),repeating-conic-gradient(from 335deg at 100% 100%,#0000 0deg 19deg,#eb5b2a12 19deg 20deg,#0000 20deg 38deg),repeating-conic-gradient(from 155deg at 0 100%,#0000 0deg 23deg,#ffffff08 23deg 24deg,#0000 24deg 46deg)}[data-theme=dark] .dashboard-hero:after{background:radial-gradient(55% 40% at 100% 0,#eb5b2a12 0%,#0000 55%),radial-gradient(45% 35% at 0 100%,#ffffff08 0%,#0000 50%),radial-gradient(100% 65% at 50% 0,#ffffff05 0%,#0000 58%)}[data-theme=dark] .dashboard-identity{background:#ffffff14;border-color:#ffffff1f}[data-theme=dark] .dashboard-toolbar{background:var(--surface-strong);border-top-color:var(--line)}[data-theme=dark] .admin-tools-panel{background:var(--surface-strong);border:1px solid var(--card-border);box-shadow:0 20px 50px #0000008c}[data-theme=dark] .header-image{filter:brightness(.58)saturate(.85)}[data-theme=dark] .header-overlay{background:linear-gradient(110deg,#000000c7 16%,#eb5b2a2e 62%,#00000059 100%)}[data-theme=dark] .holiday-category-international{color:#d4d4d8;background:#ffffff14}[data-theme=dark] .users-page-callouts li,[data-theme=dark] .users-balance-item,[data-theme=dark] .users-roster-dev-block{border-color:var(--card-border);background:#ffffff0d}[data-theme=dark] .users-page-callouts strong{color:var(--text)}[data-theme=dark] .users-page-details{border-color:var(--card-border);background:#0003}[data-theme=dark] .users-roster-card{background:var(--surface-strong);border-color:var(--card-border);box-shadow:var(--shadow-soft)}[data-theme=dark] .users-roster-card-head{border-bottom-color:var(--card-border);background:#0003}[data-theme=dark] .users-roster-empty{background:var(--surface-strong);border-color:var(--card-border)}[data-theme=dark] .leaveflow-brand--light .leaveflow-word-leave,[data-theme=dark] .leaveflow-brand--footer .leaveflow-word-leave,[data-theme=dark] .login-page-footer strong{color:var(--text)}[data-theme=dark] .leaveflow-brand--light .leaveflow-brand-tagline,[data-theme=dark] .leaveflow-brand--footer .leaveflow-brand-tagline{color:var(--orange-light)}.theme-toggle-btn{gap:8px;padding:10px 14px}.theme-toggle-icon{font-size:1rem;line-height:1}.theme-toggle-text{font-size:.88rem}.login-theme-toggle{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:12px;display:flex}[data-theme=dark] .locale-format-menu{background:var(--surface-strong);border-color:var(--card-border);box-shadow:0 20px 50px #0000008c}[data-theme=dark] .locale-format-option-pattern{color:var(--text);background:#ffffff14}

