:root{--bg:#f7f4ee;--surface:#fff;--surface-2:#faf7f0;--text:#1f1a12;--muted:#75695a;--border:#e6ddcd;--primary:#8a6a1a;--primary-dark:#6b510f;--primary-soft:#f5ecd6;--gold:#c9a24b;--gold-light:#e8cd8a;--ink:#171310;--danger:#c92a2a;--warning:#e67700;--shadow:0 16px 45px rgba(60,45,15,.12);--radius:16px;--sidebar:260px;--focus:#2b8aef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}
[data-theme=dark]{--bg:#14110c;--surface:#1d1812;--surface-2:#262017;--text:#f4eee1;--muted:#b3a68e;--border:#3d3423;--primary:#d9b25f;--primary-dark:#ecd18f;--primary-soft:#33290f;--gold:#d9b25f;--gold-light:#f0dca4;--ink:#0e0b08;--shadow:0 16px 45px rgba(0,0,0,.35);color-scheme:dark}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:var(--primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.15}h2{font-size:1.25rem}h3{font-size:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:var(--primary);margin-bottom:.4rem}.muted,small{color:var(--muted)}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:99;background:var(--surface);padding:.7rem 1rem;border-radius:8px}.skip-link:focus{top:1rem}.brand-mark{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#8a6a1a,#e8cd8a);color:#1f1a12;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px rgba(138,106,26,.3)}.brand-logo{width:46px;height:auto;filter:drop-shadow(0 3px 8px rgba(0,0,0,.25))}.brand-logo.large{width:96px;margin-bottom:1rem}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:clamp(1rem,4vw,4rem);background:radial-gradient(circle at 15% 15%,var(--primary-soft),transparent 36%),var(--bg)}.auth-shell{display:grid;grid-template-columns:1.08fr .92fr;width:min(1040px,100%);min-height:620px;background:var(--surface);border:1px solid var(--border);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.auth-brand{padding:clamp(2rem,5vw,4.5rem);background:linear-gradient(150deg,#0e0b08,#241c10 55%,#3a2c11);color:#f4eee1;display:flex;flex-direction:column;justify-content:center}.auth-brand .eyebrow{color:#e8cd8a}.auth-brand p{color:#cdbf9f}.auth-brand h1{font-size:clamp(2.2rem,5vw,4rem);max-width:12ch}.auth-benefits{padding:0;list-style:none;display:grid;gap:.8rem}.auth-benefits li:before{content:'✓';margin-right:.7rem;color:#e8cd8a}.auth-card{padding:clamp(2rem,5vw,4.5rem);display:flex;flex-direction:column;justify-content:center}.auth-card h2{font-size:1.8rem}.security-note{font-size:.78rem;color:var(--muted);margin-top:1.5rem}.error-card{background:var(--surface);padding:3rem;border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);max-width:480px}.error-card .brand-mark{margin:0 auto 1.5rem;width:70px}
label{display:grid;gap:.42rem;font-weight:700;margin-bottom:1rem}input,select,textarea{width:100%;min-height:44px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:.7rem .8rem}textarea{min-height:100px;resize:vertical}input:invalid:not(:placeholder-shown){border-color:var(--danger)}.checkbox{display:flex;align-items:center;gap:.5rem;font-weight:500;margin:0}.checkbox input{width:18px;min-height:18px}.form-row{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.form-row>*{flex:1}.spread{justify-content:space-between}.spread>*{flex:0 1 auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.form-grid .full{grid-column:1/-1}.field-error{color:var(--danger);font-size:.78rem}.button{display:inline-flex;justify-content:center;align-items:center;gap:.5rem;min-height:42px;padding:.65rem 1rem;border-radius:10px;border:1px solid transparent;font-weight:800;cursor:pointer;text-decoration:none;background:var(--surface-2);color:var(--text)}.button:hover{filter:brightness(.97)}.button:disabled{opacity:.55;cursor:not-allowed}.button.primary{background:linear-gradient(135deg,var(--primary),#b8933a);color:#fff}.button.ghost{border-color:var(--border);background:transparent}.button.danger{background:var(--danger);color:#fff}.button.small{min-height:34px;padding:.4rem .65rem;font-size:.82rem}.button.full{width:100%}.link-button{border:0;background:transparent;color:var(--primary);cursor:pointer;padding:0}.icon-button{width:42px;height:42px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer}.spinner{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:.8rem 1rem;border-radius:10px;background:#fff3bf;color:#7c4d00;margin-bottom:1rem}.alert.error{background:#ffe3e3;color:#9c1c1c}.alert.success{background:var(--primary-soft);color:var(--primary-dark)}
.screen-loader{min-height:100vh;display:flex;gap:.8rem;align-items:center;justify-content:center;color:var(--muted)}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#0e0b08,#1c150c);color:#e6dcc4;padding:1rem;display:flex;flex-direction:column}.brand{display:flex;gap:.75rem;align-items:center;color:#fff;text-decoration:none;padding:.5rem}.brand small{display:block;color:#b3a06f}.sidebar nav{display:grid;gap:.25rem;margin-top:2rem;overflow:auto}.nav-link{display:flex;align-items:center;gap:.75rem;color:#cfc2a0;text-decoration:none;padding:.72rem .8rem;border-radius:10px;font-weight:650}.nav-link:hover,.nav-link.active{background:#2e2412;color:#f0dca4}.nav-icon{width:1.2rem;text-align:center}.sidebar-footer{margin-top:auto;border-top:1px solid #43361c;padding:1rem .5rem 0;display:flex;align-items:center;gap:.5rem;font-size:.8rem}.status-dot{width:8px;height:8px;border-radius:50%;background:#51cf66}.workspace{min-width:0}.topbar{min-height:86px;padding:1rem clamp(1rem,3vw,2rem);display:flex;align-items:center;gap:1rem;background:color-mix(in srgb,var(--surface) 92%,transparent);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.topbar h1,.topbar p{margin:0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:.7rem}.user-chip{display:flex;align-items:center;gap:.55rem}.user-chip>span:first-child{width:38px;height:38px;border-radius:50%;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:900}.user-chip small{display:block}.menu-button{display:none}#main-content{padding:clamp(1rem,3vw,2rem);max-width:1600px;width:100%;margin:0 auto}.page-actions{display:flex;gap:.7rem;justify-content:flex-end;flex-wrap:wrap;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.stat-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 6px 20px rgba(20,48,40,.04)}.stat-card{padding:1.2rem}.stat-card strong{display:block;font-size:1.75rem;margin:.35rem 0}.stat-card .trend{font-size:.78rem;color:var(--muted)}.panel{padding:1.2rem;margin-bottom:1rem}.panel-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.panel-header h2{margin:0}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:.7rem;margin-bottom:1rem}.filters label{margin:0;font-size:.78rem}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:.78rem;border-bottom:1px solid var(--border);vertical-align:middle}th{background:var(--surface-2);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}tbody tr:hover{background:var(--surface-2)}.actions{display:flex;gap:.35rem}.badge{display:inline-flex;padding:.25rem .55rem;border-radius:999px;background:var(--surface-2);font-size:.75rem;font-weight:800;text-transform:capitalize}.badge.active,.badge.present,.badge.approved,.badge.paid,.badge.processed{background:#d3f9d8;color:#236b2c}.badge.inactive,.badge.absent,.badge.rejected{background:#ffe3e3;color:#a51d1d}.badge.pending,.badge.draft,.badge.half_day{background:#fff3bf;color:#8a5700}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--muted)}.empty-state strong{display:block;color:var(--text);font-size:1.1rem}.skeleton{height:90px;border-radius:var(--radius);background:linear-gradient(90deg,var(--surface-2),var(--border),var(--surface-2));background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}dialog{border:0;border-radius:var(--radius);background:var(--surface);color:var(--text);width:min(560px,calc(100% - 2rem));box-shadow:var(--shadow);padding:1.4rem}dialog::backdrop{background:rgba(14,11,8,.66)}.dialog-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.3rem}.modal-form{max-height:75vh;overflow:auto;padding:.25rem}.toast-region{position:fixed;right:1rem;bottom:1rem;z-index:100;display:grid;gap:.5rem}.toast{background:#241c10;color:#f4eee1;padding:.8rem 1rem;border-radius:10px;box-shadow:var(--shadow);min-width:250px}.toast.error{background:#8f2020}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.profile-card{display:flex;gap:1rem;align-items:center}.avatar{width:72px;height:72px;border-radius:16px;object-fit:cover;background:var(--primary-soft);display:grid;place-items:center;color:var(--primary);font-weight:900;font-size:1.4rem}.kpi-list{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.kpi{background:var(--surface-2);padding:1rem;border-radius:12px}.kpi strong{display:block;font-size:1.25rem}.amount{font-variant-numeric:tabular-nums}.payslip-page{padding:2rem}.print-toolbar{display:flex;justify-content:space-between;max-width:900px;margin:0 auto 1rem}.payslip-sheet{max-width:900px;margin:auto;background:white;color:#1f1a12;padding:3rem;box-shadow:var(--shadow);min-height:1050px}.payslip-head{display:flex;justify-content:space-between;border-bottom:2px solid #8a6a1a;padding-bottom:1.5rem;margin-bottom:1.5rem}.payslip-company{display:flex;gap:1rem}.payslip-meta{text-align:right}.payslip-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}.payslip-total{padding:1rem;background:#f7f2e6;border-radius:10px}.payslip-total.net{background:#f1e5c6}.payslip-footer{text-align:center;border-top:1px solid #ccd8d4;padding-top:1rem;margin-top:3rem;color:#52645e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.module-tabs{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1rem;padding:.35rem;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;width:max-content;max-width:100%}.module-tab{padding:.7rem 1rem;border-radius:9px;color:var(--muted);text-decoration:none;font-weight:800}.module-tab:hover,.module-tab.active{background:var(--surface);color:var(--primary);box-shadow:0 2px 8px rgba(20,48,40,.08)}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,1fr)}.filters>*:first-child{grid-column:1/-1}}
@media(max-width:780px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.app-shell{display:block}.sidebar{position:fixed;z-index:50;width:min(300px,88vw);transform:translateX(-105%);transition:.2s}.sidebar.open{transform:none}.menu-button{display:block}.user-chip>span:last-child{display:none}.top-actions{gap:.4rem}.top-actions .button.ghost{display:inline-flex;padding:.58rem .72rem;font-size:.78rem}#main-content{padding:1rem}.form-grid,.two-column{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.filters{grid-template-columns:1fr}.filters>*:first-child{grid-column:auto}.payslip-page{padding:.5rem}.payslip-sheet{padding:1.2rem}.payslip-head{display:block}.payslip-meta{text-align:left;margin-top:1rem}.payslip-totals{grid-template-columns:1fr}}
@media(max-width:520px){.stats-grid{grid-template-columns:1fr}.topbar{padding:.8rem}.topbar .eyebrow{display:none}.panel{padding:.85rem}.form-row:not(.spread){display:block}.kpi-list{grid-template-columns:1fr}.page-actions>.button{flex:1}.pagination{gap:.5rem}.pagination span{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.button,.icon-button,.link-button{position:relative;overflow:hidden;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}.button:hover,.icon-button:hover{box-shadow:0 5px 14px rgba(12,52,41,.1)}.button:active,.icon-button:active,.link-button:active{transform:scale(.96)}.button-ripple{position:absolute!important;z-index:0!important;width:12px;height:12px;border-radius:50%;pointer-events:none;background:currentColor;opacity:.2;transform:translate(-50%,-50%) scale(0);animation:button-ripple .52s ease-out forwards}.button>*:not(.button-ripple),.icon-button>*:not(.button-ripple){position:relative;z-index:1}@keyframes button-ripple{70%{opacity:.12}to{opacity:0;transform:translate(-50%,-50%) scale(18)}}
@media(prefers-reduced-motion:reduce){.button:active,.icon-button:active,.link-button:active{transform:none}.button-ripple{display:none}}
fieldset{border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem;margin:0 0 1rem}legend{font-weight:800;padding:0 .35rem}.checkbox-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.checkbox-grid label{display:flex;align-items:center;gap:.45rem;margin:0;font-weight:600}.checkbox-grid input{width:18px;min-height:18px}@media(max-width:780px){.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Public landing page */
.landing-page{min-height:100vh;background:radial-gradient(circle at 12% 8%,var(--primary-soft),transparent 28%),var(--bg)}
.landing-header{width:min(1180px,calc(100% - 2rem));margin:0 auto;min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.landing-brand{display:flex;align-items:center;gap:.75rem;color:var(--text);text-decoration:none}
.landing-brand small{display:block;font-size:.75rem}
.landing-nav{display:flex;align-items:center;gap:1.2rem}
.landing-nav>a:not(.button){color:var(--text);text-decoration:none;font-weight:700}
.landing-hero{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,8vw,7rem) 0;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2rem,6vw,5rem)}
.landing-hero-copy h1{font-size:clamp(2.5rem,5.8vw,5rem);max-width:13ch;letter-spacing:-.045em}
.landing-lead{max-width:650px;font-size:clamp(1rem,1.8vw,1.2rem);color:var(--muted)}
.landing-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.7rem 0}
.landing-trust{display:flex;flex-wrap:wrap;gap:.75rem 1.4rem;color:var(--muted);font-weight:700;font-size:.86rem}
.landing-trust span:before{content:'✓';color:var(--primary);margin-right:.4rem}
.landing-preview{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:1.2rem;box-shadow:var(--shadow);transform:rotate(1deg)}
.preview-topbar{display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}
.preview-topbar div:nth-child(2){flex:1}.preview-topbar small{display:block}
.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1rem 0}
.preview-stats article{background:var(--surface-2);padding:1rem;border-radius:13px}.preview-stats strong{display:block;font-size:1.35rem;margin:.25rem 0}.preview-stats span{font-size:.72rem;color:var(--muted)}
.preview-list{display:grid;gap:.65rem}.preview-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.8rem;border:1px solid var(--border);border-radius:12px}.preview-list small{display:block}.preview-avatar{width:38px;height:38px;border-radius:10px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;font-weight:900}
.landing-section{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(3rem,7vw,6rem) 0}.landing-section>h2{font-size:clamp(1.9rem,4vw,3rem);max-width:18ch}
.landing-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem}.landing-feature-grid article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;box-shadow:0 8px 24px rgba(20,48,40,.05)}.landing-feature-grid p{color:var(--muted);margin-bottom:0}.feature-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:var(--primary-soft);color:var(--primary);font-weight:900;font-size:1.25rem;margin-bottom:1rem}
.landing-security{width:min(1180px,calc(100% - 2rem));margin:0 auto 4rem;background:linear-gradient(135deg,#0e0b08,#3a2c11);color:#f4eee1;border-radius:24px;padding:clamp(2rem,5vw,4rem);display:flex;align-items:center;justify-content:space-between;gap:2rem}.landing-security .eyebrow{color:#e8cd8a}.landing-security p{color:#cdbf9f}.landing-security h2{font-size:clamp(1.8rem,4vw,3rem);max-width:18ch}.landing-security p{max-width:700px;margin-bottom:0}.landing-security .button.primary{background:linear-gradient(135deg,#e8cd8a,#c9a24b);color:#1f1a12}
.landing-footer{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:1.5rem 0 2.5rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.85rem}
.auth-home-link{position:fixed;top:1rem;left:1rem;z-index:5;color:var(--text);text-decoration:none;font-weight:800;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.55rem .8rem;box-shadow:0 6px 20px rgba(20,48,40,.08)}
@media(max-width:900px){.landing-hero{grid-template-columns:1fr}.landing-hero-copy h1{max-width:15ch}.landing-preview{transform:none}.landing-feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.landing-header{min-height:72px}.landing-nav>a:not(.button){display:none}.landing-hero{padding:3rem 0}.landing-hero-copy h1{font-size:clamp(2.35rem,12vw,3.7rem)}.preview-stats{grid-template-columns:1fr}.landing-feature-grid{grid-template-columns:1fr}.landing-security{display:block}.landing-security .button{margin-top:1.5rem}.landing-footer{display:block}.landing-footer span{display:block;margin:.3rem 0}.auth-home-link{position:absolute}.preview-list>div{grid-template-columns:auto 1fr}.preview-list .badge{grid-column:2;justify-self:start}}

/* Employee self-service signup */
.auth-shell-signup{width:min(1120px,100%);min-height:700px}
.auth-switch{text-align:center;margin:1.2rem 0 0;color:var(--muted)}
.auth-switch a{font-weight:800}
.signup-consent{margin:0 0 1rem}
.landing-actions.compact{margin:0;flex-wrap:nowrap}
.landing-security .button.ghost.light{border-color:rgba(255,255,255,.5);color:white}
@media(max-width:780px){.auth-shell-signup{min-height:auto}.auth-card{padding-top:4.5rem}}
@media(max-width:680px){.landing-nav{gap:.45rem}.landing-nav .button{padding:.55rem .7rem}.landing-actions.compact{flex-wrap:wrap}}


/* Google authentication and dedicated admin portal */
.auth-divider{display:flex;align-items:center;gap:.8rem;margin:1rem 0;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:var(--border);flex:1}.button.google{background:var(--surface);border:1px solid var(--border);color:var(--text);justify-content:center}.google-mark{width:24px;height:24px;border-radius:50%;display:inline-grid;place-items:center;background:white;color:#4285f4;border:1px solid #ddd;font-weight:900}.admin-auth-page{background:radial-gradient(circle at 85% 12%,rgba(201,162,75,.2),transparent 30%),var(--bg)}.admin-auth-page .auth-brand{background:linear-gradient(145deg,#0e0b08,#2c210d)}body[data-portal="admin"] .sidebar{background:linear-gradient(180deg,#0a0805,#241a0b)}body[data-portal="admin"] .sidebar-footer{color:#e6dcc4}.password-field[hidden]{display:none!important}
.attendance-summary{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 .9rem}.attendance-summary span{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.45rem .75rem;color:var(--muted);font-size:.82rem}.attendance-summary strong{color:var(--text)}.attendance-error{border:1px solid var(--border);border-radius:12px}.attendance-error .button{margin-top:1rem}

.payslip-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:1rem 0}.detail-list{display:grid;grid-template-columns:minmax(110px,.8fr) 1.2fr;gap:.45rem .8rem;margin:0}.detail-list dt{font-size:.78rem;color:#5f706a;font-weight:750}.detail-list dd{margin:0;overflow-wrap:anywhere}.payslip-attendance{margin:1rem 0}.payslip-metrics{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:.55rem}.payslip-metrics span{padding:.7rem;background:#f7f2e6;border-radius:8px;text-align:center}.payslip-metrics small{display:block;color:#5f706a;font-size:.68rem}.payslip-metrics strong{display:block;margin-top:.25rem}.payslip-breakdown table{min-width:0}.statutory-summary .detail-list{grid-template-columns:minmax(120px,.9fr) 1.1fr}
@media(max-width:900px){.payslip-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.payslip-details-grid{grid-template-columns:1fr}.payslip-metrics{grid-template-columns:repeat(2,1fr)}}
.checkbox-filter{display:flex!important;align-items:center;align-self:end;gap:.5rem;min-height:44px;font-size:.82rem!important;font-weight:700!important;white-space:nowrap}.checkbox-filter input{width:18px;min-height:18px;margin:0}

@media(max-width:520px){.topbar{gap:.5rem}.topbar>div:nth-child(2){min-width:0}.topbar h1{font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}.top-actions{margin-left:auto}.top-actions .icon-button{width:36px;min-width:36px;height:36px}.top-actions .button.ghost{padding:.5rem .6rem}.toast-region{left:.6rem;right:.6rem}.toast{min-width:0;width:100%}}

/* Khushi Enterprise branding */
.brand-tagline{color:#c9a24b;font-weight:700;font-size:.82rem;letter-spacing:.05em;text-transform:uppercase;margin:-.2rem 0 1rem}
.contact-footer{display:grid;gap:1rem;justify-items:start}
.footer-brand{display:flex;align-items:center;gap:.75rem;color:var(--text)}
.footer-brand small{display:block;color:var(--muted)}
.footer-contact{font-style:normal;display:grid;gap:.35rem}
.footer-copy{color:var(--muted)}
@media(min-width:681px){.contact-footer{grid-template-columns:auto 1fr;align-items:center}.footer-copy{grid-column:1/-1;border-top:1px solid var(--border);padding-top:.8rem;width:100%}}
