:root{--bg:#f3f6fb;--card:#fff;--text:#172033;--muted:#63718a;--primary:#0d1730;--accent:#2563eb;--border:#e6ebf3;--success:#16a34a;--danger:#dc2626;--warn:#f59e0b;--shadow:0 12px 34px rgba(20,30,55,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text)}a{color:inherit}.layout{display:flex;min-height:100vh}.sidebar{width:276px;background:#0b1326;color:#fff;position:fixed;inset:0 auto 0 0;padding:24px 18px;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand-icon{width:42px;height:42px;border-radius:14px;background:#172542;display:grid;place-items:center;font-size:22px}.brand h2{margin:0;font-size:22px}.brand small{color:#9fb0cd}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar a{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:14px;text-decoration:none;color:#e9eefb;font-weight:700;transition:.2s}.sidebar a:hover,.sidebar a.active{background:#172542;transform:translateX(3px)}.main{margin-left:276px;width:calc(100% - 276px);padding:32px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar h1{margin:0 0 8px;font-size:34px;letter-spacing:-.02em}.user-pill{display:inline-flex;background:#fff;border:1px solid var(--border);border-radius:999px;padding:8px 12px;color:var(--muted);font-weight:700}.language-switch{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:8px 10px;box-shadow:var(--shadow)}.language-switch a{text-decoration:none;padding:7px 10px;border-radius:999px;font-weight:800;color:var(--muted)}.language-switch a.active{background:var(--primary);color:#fff}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card,.form-card{background:var(--card);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}.card{padding:24px;min-height:132px}.card h3{margin:0 0 10px;color:#64748b;font-size:15px;text-transform:uppercase;letter-spacing:.04em}.card p{margin:0;font-size:30px;font-weight:900;letter-spacing:-.02em}.card small{color:var(--muted);font-weight:700}.metric-icon{float:right;font-size:26px;opacity:.7}.form-card{padding:24px;margin-bottom:22px}.form-card h2,h2{margin:0 0 18px;font-size:25px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label,.mini-label{font-size:13px;font-weight:900;color:#44516a;text-transform:uppercase;letter-spacing:.04em}input,select,textarea{width:100%;border:1px solid #d6deea;border-radius:13px;padding:13px 14px;font-size:15px;background:#fff;color:var(--text);outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(37,99,235,.12)}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:13px;background:var(--primary);color:#fff;padding:13px 18px;font-weight:900;text-decoration:none;cursor:pointer}.btn.secondary,button.secondary{background:#e8eef8;color:#172033}.danger{background:var(--danger)!important}.success{background:#dcfce7!important;color:#166534!important}.alert{border-radius:14px;padding:13px 14px;margin-bottom:15px;background:#e8f1ff;color:#1e3a8a;font-weight:800}.alert.error{background:#fee2e2;color:#991b1b}.table-wrap{overflow-x:auto;border-radius:18px;box-shadow:var(--shadow);margin-bottom:22px}.table{width:100%;border-collapse:collapse;background:#fff;min-width:760px}.table th{background:var(--primary);color:#fff;text-align:left;padding:15px;font-size:14px}.table td{padding:14px 15px;border-bottom:1px solid var(--border);vertical-align:top}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;background:#edf2fb;color:#334155}.badge.warn{background:#fff7ed;color:#c2410c}.badge.danger{background:#fee2e2;color:#b91c1c}.badge.success{background:#dcfce7;color:#166534}.actions{display:flex;gap:10px;flex-wrap:wrap}.inline-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.chart-card{padding:24px;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);margin-bottom:22px}canvas{max-width:100%;height:270px!important}.mobile-top{display:none}.overlay{display:none}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-box{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow);padding:28px}.login-brand{margin-bottom:18px}.login-lang{margin-bottom:18px;width:100%;justify-content:center}.print-only{display:none}@media(max-width:1100px){.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.mobile-top{display:flex;position:sticky;top:0;z-index:50;background:#fff;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.menu-toggle{padding:10px 13px}.sidebar{transform:translateX(-105%);z-index:80;transition:.25s;width:285px}.menu-open .sidebar{transform:translateX(0)}.menu-open .overlay{display:block;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:70}.main{margin-left:0;width:100%;padding:18px}.topbar{flex-direction:column}.topbar h1{font-size:26px}.grid,.form-grid{grid-template-columns:1fr}.card{min-height:auto}.card p{font-size:25px}.language-switch{box-shadow:none}.table{min-width:680px}}@media print{.sidebar,.mobile-top,.topbar,.actions,button,.btn,.no-print{display:none!important}.main{margin:0;width:100%;padding:0}.card,.form-card,.table-wrap,.chart-card{box-shadow:none;border:1px solid #ddd}.print-only{display:block}}
.brand-logo{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#0f766e,#f59e0b);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;box-shadow:0 12px 25px rgba(15,118,110,.25);font-weight:900;line-height:1}
.brand-logo span{font-size:19px;letter-spacing:-1px}.brand-logo small{font-size:10px;text-transform:uppercase}.logo-mini{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#0f766e,#f59e0b);color:#fff;font-weight:900;margin-right:6px}.receipt-brand{display:flex;align-items:center;gap:14px;border-bottom:1px solid #e5e7eb;padding-bottom:14px;margin-bottom:14px}.receipt-brand h1{margin:0;font-size:24px}.receipt-brand p{margin:4px 0 0;color:#64748b}.sidebar nav a{gap:12px}.card{border:1px solid #e7eef7;box-shadow:0 14px 35px rgba(15,23,42,.06)}.chart-card{border:1px solid #e7eef7;box-shadow:0 14px 35px rgba(15,23,42,.06)}
@media(max-width:760px){.brand-logo{width:42px;height:42px;border-radius:12px}.brand-logo span{font-size:16px}.brand-logo small{font-size:8px}.form-grid{grid-template-columns:1fr!important}.table{font-size:13px}.table th,.table td{padding:10px 8px}.inline-form{display:grid;grid-template-columns:1fr;gap:6px}.grid{grid-template-columns:1fr!important}.chart-card{grid-column:span 1!important}.topbar{gap:12px;align-items:flex-start}.topbar h1{font-size:22px}.mobile-top{box-shadow:0 8px 25px rgba(15,23,42,.08)}}
/* FINAL: correct logo sizing */
.brand.logo-only{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 0 28px 0!important;padding:0!important;background:transparent!important;min-height:120px!important;overflow:hidden!important}.sidebar-logo{width:110px!important;height:110px!important;max-width:110px!important;max-height:110px!important;object-fit:contain!important;display:block!important;background:transparent!important}.mobile-logo{width:42px!important;height:42px!important;object-fit:contain!important}.brand.logo-only h2,.brand.logo-only small,.logo-mini{display:none!important}.sidebar{overflow-x:hidden!important}.sidebar img{max-width:100%;height:auto}.login-logo-wrap{display:flex;justify-content:center;align-items:center;margin:0 auto 22px auto;padding:6px 0}.login-logo-img{width:210px;max-width:85%;height:auto;object-fit:contain;display:block}.receipt-brand{display:flex;align-items:center;gap:16px;border-bottom:1px solid #e5e7eb;padding-bottom:14px;margin-bottom:16px}.print-logo-img{width:120px;max-width:120px;height:auto;object-fit:contain;display:block}.slip-head .print-logo-img{width:120px;max-width:120px;height:auto}.slip-head img{max-width:120px!important;height:auto!important;object-fit:contain}@media(max-width:760px){.brand.logo-only{min-height:95px!important}.sidebar-logo{width:86px!important;height:86px!important}.mobile-logo{width:36px!important;height:36px!important}.login-logo-img{width:170px}.print-logo-img,.slip-head .print-logo-img{width:95px!important;max-width:95px!important}}

/* Final login/sidebar logo sizing patch v25 */
.login-page{min-height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:20px!important;overflow:auto!important;background:#f3f6fb!important}.login-box{width:min(430px,calc(100vw - 32px))!important;max-width:430px!important;padding:28px!important;margin:0 auto!important;overflow:hidden!important}.login-logo-wrap{width:100%!important;height:auto!important;max-height:160px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto 18px!important;padding:0!important;overflow:hidden!important;background:transparent!important}.login-logo-img{width:128px!important;height:128px!important;max-width:128px!important;max-height:128px!important;object-fit:contain!important;display:block!important;position:static!important;transform:none!important}.brand.logo-only{min-height:118px!important;overflow:hidden!important}.sidebar-logo{width:112px!important;height:112px!important;max-width:112px!important;max-height:112px!important;object-fit:contain!important}.mobile-logo{width:40px!important;height:40px!important;object-fit:contain!important}.receipt-brand .print-logo-img,.slip-head .print-logo-img{width:95px!important;max-width:95px!important;height:95px!important;max-height:95px!important;object-fit:contain!important}
@media(max-width:520px){.login-logo-img{width:105px!important;height:105px!important}.login-logo-wrap{max-height:130px!important}.login-box{padding:22px!important}}
@media print{.receipt-brand .print-logo-img,.slip-head .print-logo-img{width:90px!important;height:90px!important;max-width:90px!important;max-height:90px!important}}

/* Full logo fixes */
.login-logo-img{width:260px!important;max-width:90%!important;max-height:150px!important;height:auto!important;object-fit:contain!important}.print-logo-img{width:190px!important;max-width:190px!important;height:auto!important;object-fit:contain!important}.slip-head .print-logo-img{width:190px!important;max-width:190px!important}@media(max-width:520px){.login-logo-img{width:220px!important}.print-logo-img,.slip-head .print-logo-img{width:145px!important;max-width:145px!important}}@media print{.print-logo-img,.slip-head .print-logo-img{width:180px!important;max-width:180px!important}}
.notif-badge{background:#dc2626;color:#fff;border-radius:999px;padding:2px 7px;font-size:11px;margin-left:6px}.topbar-actions{display:flex;align-items:center;gap:10px}.notif-top{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border-radius:999px;background:#fff;border:1px solid #e5e7eb;text-decoration:none;font-weight:900}.notif-top b{background:#dc2626;color:#fff;border-radius:999px;padding:2px 7px;font-size:11px}.notification-card{border-left:5px solid #2563eb}.notification-card.low_stock{border-left-color:#f59e0b}.notification-card.complaint{border-left-color:#dc2626}.notification-card.cash{border-left-color:#16a34a}.notification-meta{color:#64748b;font-size:13px;font-weight:700}
@media(max-width:760px){.topbar-actions{width:100%;justify-content:space-between}.notif-top{padding:8px 10px}}


/* Notification bell alignment fix */
.topbar-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:nowrap!important}.notif-top{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:46px!important;height:46px!important;min-width:46px!important;padding:0!important;border-radius:999px!important;background:#fff!important;border:1px solid #e6ebf3!important;box-shadow:0 12px 34px rgba(20,30,55,.08)!important;text-decoration:none!important;line-height:1!important}.notif-icon{display:block!important;font-size:20px!important;line-height:1!important;transform:translateY(1px)!important}.notif-count{position:absolute!important;top:-6px!important;right:-6px!important;min-width:20px!important;height:20px!important;padding:0 5px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;background:#dc2626!important;color:#fff!important;font-size:11px!important;font-weight:900!important;border:2px solid #fff!important;line-height:1!important}.language-switch{height:46px!important;display:inline-flex!important;align-items:center!important;gap:7px!important;padding:6px 8px!important;margin:0!important;border-radius:999px!important;line-height:1!important}.language-switch .lang-icon{font-size:18px!important;line-height:1!important;display:inline-flex!important;align-items:center!important}.language-switch a{height:34px!important;min-width:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 12px!important;margin:0!important;line-height:1!important}.topbar{align-items:center!important}
@media(max-width:760px){.topbar-actions{width:100%!important;justify-content:flex-start!important;gap:8px!important}.notif-top{width:42px!important;height:42px!important;min-width:42px!important}.language-switch{height:42px!important}.language-switch a{height:30px!important;min-width:38px!important}.notif-count{top:-5px!important;right:-5px!important}}

/* Final: remove notification bell from language switch area */
.clean-actions{display:flex!important;align-items:center!important;gap:0!important}.topbar .notif-top{display:none!important}.sidebar .notif-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;background:#dc2626;color:#fff;border-radius:999px;font-size:11px;font-weight:900;margin-left:8px;padding:0 6px}.language-switch{margin-left:auto!important}

/* Professional UI refresh: HR, wages and cash summaries */
:root{--primary:#b91c1c;--primary-dark:#7f1d1d;--surface:#ffffff;--soft:#f8fafc;--text:#0f172a;--muted:#64748b;--ring:rgba(185,28,28,.16)}
body{background:linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%)!important;color:var(--text)!important}.main{padding-top:26px!important}.topbar{background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border:1px solid #e5e7eb;border-radius:24px;padding:18px 20px;margin-bottom:22px;box-shadow:0 18px 45px rgba(15,23,42,.06)}.topbar h1{letter-spacing:-.03em}.sidebar{background:linear-gradient(180deg,#111827 0%,#1f2937 100%)!important}.sidebar nav a{border:1px solid transparent;border-radius:15px;margin:5px 10px;color:#e5e7eb!important}.sidebar nav a:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.1);transform:translateX(3px)}button,.btn{border-radius:12px!important;font-weight:900!important;box-shadow:0 10px 24px var(--ring);transition:.2s ease}button:hover,.btn:hover{transform:translateY(-1px)}input,select,textarea{border-radius:13px!important;border:1px solid #dbe4ef!important;background:#fff!important;transition:.2s ease}input:focus,select:focus,textarea:focus{outline:none!important;border-color:var(--primary)!important;box-shadow:0 0 0 4px var(--ring)!important}.form-card,.table-wrap,.summary-panel,.card{border-radius:24px!important;border:1px solid #e6edf5!important;background:var(--surface)!important;box-shadow:0 18px 45px rgba(15,23,42,.07)!important}.page-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:22px 24px;border-radius:26px;background:linear-gradient(135deg,#7f1d1d,#dc2626);color:#fff;box-shadow:0 22px 50px rgba(185,28,28,.24)}.page-hero h2{margin:0 0 6px;font-size:28px;letter-spacing:-.03em}.page-hero p{margin:0;opacity:.9;max-width:850px}.page-hero .btn,.page-hero button{background:#fff!important;color:#7f1d1d!important}.compact-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-bottom:18px}.metric-card{min-height:118px!important;position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-28px;top:-28px;width:96px;height:96px;border-radius:50%;background:var(--ring)}.metric-card span{display:block;color:var(--muted);font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.metric-card p{margin:8px 0 0!important;font-size:28px!important;letter-spacing:-.04em}.metric-card small{color:var(--muted);font-weight:800}.summary-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 18px}.summary-panel{padding:20px}.summary-panel h3{margin:0 0 14px}.summary-line{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #e5e7eb}.summary-line:last-child{border-bottom:0}.summary-line span{color:var(--muted);font-weight:800}.salary-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.salary-preview span{padding:13px 14px;border:1px solid #e5e7eb;border-radius:16px;background:#f8fafc;color:var(--muted);font-weight:800}.salary-preview b{color:#111827}.preview-field input{font-weight:900;font-size:18px;background:#f0fdf4!important;color:#166534!important}.professional-table th{background:#f8fafc!important;color:#334155!important;text-transform:uppercase;font-size:12px;letter-spacing:.06em}.professional-table td{vertical-align:middle}.professional-table tr:hover td{background:#fff7f7}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px}.badge.success{background:#dcfce7;color:#166534}.badge.warn{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.stack-actions{display:flex;flex-wrap:wrap;gap:7px}.inline-form{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.table-wrap{overflow:auto;padding:18px}.table-wrap h2{margin-top:0}@media(max-width:1100px){.compact-grid{grid-template-columns:repeat(2,1fr)!important}.summary-panels{grid-template-columns:1fr}.salary-preview{grid-template-columns:1fr}}@media(max-width:760px){.page-hero{flex-direction:column;align-items:flex-start}.compact-grid{grid-template-columns:1fr!important}.topbar{border-radius:18px}.form-card,.table-wrap,.summary-panel,.card{border-radius:18px!important}.main{padding:14px!important}}@media print{.page-hero button,.form-card,.sidebar,.topbar,.mobile-top,.actions,.inline-form .btn,.btn.danger{display:none!important}.summary-panels,.compact-grid{display:grid!important}.table-wrap{box-shadow:none!important;border:1px solid #ddd!important}}

/* Client requested sidebar color and visible wage menu */
.sidebar{background:linear-gradient(180deg,#8b0000 0%,#b91c1c 48%,#450a0a 100%)!important;box-shadow:18px 0 45px rgba(69,10,10,.22)!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin}.sidebar nav{padding-bottom:28px!important}.sidebar nav a{color:#fff!important;background:rgba(255,255,255,.04)!important}.sidebar nav a:hover,.sidebar nav a.important-nav{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.22)!important}.sidebar nav a.important-nav{box-shadow:inset 4px 0 0 #fff,0 10px 22px rgba(0,0,0,.12)!important}.brand.logo-only{background:rgba(255,255,255,.06)!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
.dashboard-modern{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-top:18px}.analytics-card{background:#fff;border:1px solid #e6edf5;border-radius:26px;box-shadow:0 18px 45px rgba(15,23,42,.07);padding:22px;overflow:hidden}.analytics-card h2{margin:0 0 8px;letter-spacing:-.02em}.analytics-card p{margin:0 0 18px;color:#64748b;font-weight:700}.line-chart-wrap{height:300px}.donut-wrap{display:flex;align-items:center;justify-content:center;height:300px}.payment-legend{display:grid;gap:10px;margin-top:10px}.payment-legend div{display:flex;align-items:center;justify-content:space-between;border:1px solid #eef2f7;border-radius:14px;padding:10px 12px;font-weight:800}.payment-legend span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:currentColor;margin-right:8px}.chart-total{text-align:center;margin-top:-178px;pointer-events:none}.chart-total strong{font-size:28px;display:block;color:#0f172a}.chart-total small{color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.08em}@media(max-width:1050px){.dashboard-modern{grid-template-columns:1fr}.chart-total{margin-top:-170px}}@media(max-width:760px){.line-chart-wrap,.donut-wrap{height:240px}.chart-total{margin-top:-142px}.sidebar{max-height:100vh}}
