.vhrm-portal{max-width:1280px;margin:0 auto;padding:24px 20px 80px;color:#16345f;font-family:Arial,Helvetica,sans-serif}.vhrm-main-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.vhrm-home-btn{position:fixed;right:22px;bottom:22px;z-index:9999;background:linear-gradient(145deg,#1677ff,#0754c9);color:#fff!important;padding:12px 18px;border-radius:14px;text-decoration:none;box-shadow:0 8px 20px rgba(0,70,160,.28);font-weight:700}.vhrm-home-btn:hover{transform:translateY(-2px)}.vhrm-nav-current{font-weight:700;color:#16427b}.vhrm-company-header{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid #dce8f5;border-radius:20px;padding:18px 22px;box-shadow:0 8px 24px rgba(20,70,120,.07);margin-bottom:18px}.vhrm-company-brand{display:flex;align-items:center;gap:14px}.vhrm-company-logo{width:58px;height:58px;object-fit:contain;border-radius:12px}.vhrm-company-mark{width:58px;height:58px;border-radius:14px;background:#0b74d8;color:#fff;display:grid;place-items:center;font-weight:800}.vhrm-header-employee{font-size:18px}.vhrm-company-copy{margin-left:auto;text-align:right;display:flex;flex-direction:column;gap:4px}.vhrm-company-copy strong{font-size:19px}.vhrm-company-copy span,.vhrm-company-copy small{color:#7186a3}.vhrm-task-grid,.vhrm-portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0}.vhrm-portal-card{min-height:120px;border-radius:20px;padding:18px;background:linear-gradient(145deg,#fff,#eef6ff);border:1px solid #dbe8f6;box-shadow:0 8px 20px rgba(40,90,150,.10);display:flex;gap:12px;align-items:center;text-decoration:none;color:#173d70;transition:.18s}.vhrm-portal-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(40,90,150,.16)}.vhrm-card-icon{font-size:34px}.vhrm-portal-card strong{display:block;margin-top:5px}.vhrm-portal-section{background:#fff;border:1px solid #dce8f5;border-radius:20px;padding:20px;margin:18px 0;box-shadow:0 8px 24px rgba(20,70,120,.06)}.vhrm-section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.vhrm-eyebrow{font-size:12px;font-weight:800;color:#1673d2;letter-spacing:.04em}.vhrm-section-head h3{margin:7px 0 4px;color:#123b70}.vhrm-section-head p{margin:0;color:#7186a3}.vhrm-portal-table{overflow-x:auto}.vhrm-portal-table table{width:100%;border-collapse:collapse;min-width:760px}.vhrm-portal-table th,.vhrm-portal-table td{padding:11px 10px;border:1px solid #d9e3ee;text-align:left;vertical-align:middle}.vhrm-portal-table th{background:#f3f7fb;color:#1a477b}.vhrm-table-photo{width:72px;height:52px;object-fit:cover;border-radius:8px}.vhrm-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b9cee5;background:#fff;color:#155ba3;padding:10px 14px;border-radius:10px;text-decoration:none;cursor:pointer;font-weight:600}.vhrm-btn-primary{background:#1673d2;color:#fff;border-color:#1673d2}.vhrm-portal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.vhrm-form label{display:block;font-weight:600;margin:12px 0}.vhrm-form input,.vhrm-form select,.vhrm-form textarea{width:100%;box-sizing:border-box;margin-top:6px;padding:10px;border:1px solid #c8d7e8;border-radius:9px;background:#fff}.vhrm-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vhrm-checkin-actions{display:flex;gap:12px;flex-wrap:wrap}.vhrm-login-box{max-width:460px;margin:40px auto;padding:30px;background:#fff;border:1px solid #dce8f5;border-radius:22px;box-shadow:0 14px 40px rgba(30,70,120,.12)}.vhrm-login-box h2{margin:0 0 8px;color:#103d73}.vhrm-login-box p{color:#7186a3}.vhrm-login-box form p{margin:14px 0}.vhrm-login-box input[type=text],.vhrm-login-box input[type=password]{width:100%;box-sizing:border-box;padding:11px;border:1px solid #c8d7e8;border-radius:9px}.vhrm-login-box input[type=submit]{width:100%;padding:12px;border:0;border-radius:10px;background:#1673d2;color:#fff;font-weight:700;cursor:pointer}.vhrm-work-guide-content img,.vhrm-work-guide-content video{max-width:100%;height:auto;border-radius:10px}.vhrm-voice-wrap{display:flex;gap:10px;align-items:flex-start;flex-direction:column}.vhrm-voice-btn{width:auto}.vhrm-table-photo{display:block}@media(max-width:700px){.vhrm-portal{padding:14px 10px 90px}.vhrm-company-header{align-items:flex-start;flex-direction:column}.vhrm-company-copy{margin-left:0;text-align:left}.vhrm-grid-2{grid-template-columns:1fr}.vhrm-home-btn{right:12px;bottom:12px;padding:10px 13px;font-size:13px}.vhrm-section-head{flex-direction:column}}
/* Trang đăng nhập chuyên dụng: ẩn các tiêu đề/khối trang phổ biến của theme để không còn card 'Cổng nhân viên' trùng lặp. */
body.vhrm-employee-login-page .entry-title,body.vhrm-employee-login-page .page-title,body.vhrm-employee-login-page .page-header,body.vhrm-employee-login-page .breadcrumbs,body.vhrm-employee-login-page .flatsome-breadcrumbs{display:none!important}

/* === v1.7.13: giao diện đăng nhập nhân viên 3D 4x4 === */
body.vhrm-employee-login-page .site-main,body.vhrm-employee-login-page .content-area,body.vhrm-employee-login-page .entry-content{min-height:0!important}
body.vhrm-employee-login-page{background:radial-gradient(circle at 15% 20%,#eaf4ff 0,transparent 34%),radial-gradient(circle at 85% 80%,#eef2ff 0,transparent 34%),#f7fbff!important}
body.vhrm-employee-login-page .vhrm-login-shell{max-width:1180px;margin:0 auto;padding:34px 24px 60px;color:#123b70}
.vhrm-login-brand{display:flex;align-items:center;gap:13px;justify-content:center;margin-bottom:22px}
.vhrm-login-logo{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-weight:900;font-size:20px;color:#fff;background:linear-gradient(145deg,#1c8cff,#0751c8);box-shadow:inset 0 2px 0 rgba(255,255,255,.55),0 8px 0 #083f99,0 16px 28px rgba(10,70,160,.2);transform:translateY(-2px)}
.vhrm-login-brand strong{display:block;font-size:23px;letter-spacing:.02em;color:#083b82}.vhrm-login-brand span{display:block;font-size:11px;color:#e53b3b;font-weight:800;letter-spacing:.08em;margin-top:2px}
.vhrm-login-heading{text-align:center;margin:4px auto 25px}.vhrm-login-badge{display:inline-block;padding:7px 13px;border-radius:999px;background:#e9f2ff;color:#1673d2;font-size:12px;font-weight:900;letter-spacing:.06em}.vhrm-login-heading h1{margin:10px 0 5px;font-size:36px;line-height:1.15;color:#092f67}.vhrm-login-heading p{margin:0;color:#7186a3;font-size:15px}
.vhrm-login-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:24px;align-items:stretch}.vhrm-login-box{max-width:none;margin:0;padding:28px;background:rgba(255,255,255,.96);border:1px solid #d5e4f5;border-radius:24px;box-shadow:0 14px 35px rgba(20,70,120,.12);position:relative;overflow:hidden}.vhrm-login-box:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#1477ff,#13b875,#8b5cf6)}.vhrm-login-icon{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#e8f3ff);color:#1673d2;font-size:28px;font-weight:900;box-shadow:0 5px 0 #c1d6ed,0 10px 18px rgba(30,90,150,.12);margin-bottom:18px}.vhrm-login-box h2{font-size:25px;margin:0 0 5px}.vhrm-login-box p{margin:0 0 16px}.vhrm-login-box form p{margin:14px 0}.vhrm-login-box .login-remember{font-size:13px}.vhrm-login-box input[type=submit]{margin-top:6px;box-shadow:0 5px 0 #0753bd,0 9px 18px rgba(20,90,180,.2);transition:.12s}.vhrm-login-box input[type=submit]:hover{transform:translateY(-2px)}.vhrm-login-box input[type=submit]:active{transform:translateY(3px);box-shadow:0 2px 0 #0753bd}
.vhrm-login-features{background:rgba(255,255,255,.78);border:1px solid #d8e6f5;border-radius:24px;padding:18px;box-shadow:0 12px 30px rgba(20,70,120,.08)}.vhrm-login-features-title{font-size:13px;font-weight:900;letter-spacing:.06em;color:#174a82;margin:2px 3px 14px}.vhrm-login-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.vhrm-login-tile{min-height:118px;border-radius:18px;padding:14px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:linear-gradient(145deg,#fff,#edf5ff);border:1px solid #d4e3f2;box-shadow:0 6px 0 #b7cbe0,0 11px 18px rgba(20,70,120,.10);transition:transform .13s,box-shadow .13s;cursor:default}.vhrm-login-tile:nth-child(4n+1){background:linear-gradient(145deg,#ecfff6,#d8f8e9);border-color:#b8e7d0;box-shadow:0 6px 0 #8bcbaa,0 11px 18px rgba(20,130,90,.10)}.vhrm-login-tile:nth-child(4n+2){background:linear-gradient(145deg,#eef6ff,#dcecff);box-shadow:0 6px 0 #9dbfe4,0 11px 18px rgba(30,100,190,.10)}.vhrm-login-tile:nth-child(4n+3){background:linear-gradient(145deg,#fff9e9,#ffefbe);border-color:#f1db98;box-shadow:0 6px 0 #d5b55d,0 11px 18px rgba(190,130,20,.10)}.vhrm-login-tile:nth-child(4n){background:linear-gradient(145deg,#faf0ff,#eadbff);border-color:#d9c1ee;box-shadow:0 6px 0 #b79bd2,0 11px 18px rgba(120,70,170,.10)}.vhrm-login-tile:hover{transform:translateY(-3px);box-shadow:0 9px 0 rgba(100,130,160,.55),0 15px 22px rgba(20,70,120,.14)}.vhrm-login-tile-icon{width:52px;height:52px;display:grid;place-items:center;font-size:31px;border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(218,231,246,.7));box-shadow:inset 0 2px 3px rgba(255,255,255,.9),0 4px 0 rgba(90,120,150,.25),0 7px 10px rgba(20,50,90,.10);text-shadow:0 2px 1px rgba(0,0,0,.12)}.vhrm-login-tile strong{font-size:12px;color:#173e6e;line-height:1.15}.vhrm-login-tile small{font-size:10px;color:#6e829c;line-height:1.15}.vhrm-login-footer{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-top:25px;font-size:11px;font-weight:800;color:#5f7693}.vhrm-login-footer span:nth-child(1){color:#1673d2}.vhrm-login-footer span:nth-child(2){color:#60758d}.vhrm-login-footer span:nth-child(3){color:#d52d55}.vhrm-login-footer span:nth-child(4){color:#5941bd}
@media(max-width:900px){.vhrm-login-layout{grid-template-columns:1fr}.vhrm-login-box{max-width:480px;width:100%;box-sizing:border-box;margin:0 auto}.vhrm-login-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.vhrm-login-heading h1{font-size:30px}}
@media(max-width:560px){body.vhrm-employee-login-page .vhrm-login-shell{padding:22px 12px 45px}.vhrm-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vhrm-login-tile{min-height:108px}.vhrm-login-heading h1{font-size:27px}.vhrm-login-brand{justify-content:flex-start}.vhrm-login-footer{gap:15px}}

/* === v1.7.14: Mobile iOS-style 3D app grid 4x4 === */
@media (max-width:560px){
  html,body{overflow-x:hidden!important}
  body.vhrm-employee-login-page{min-width:0!important;background:linear-gradient(180deg,#f6f9ff 0%,#eef4ff 100%)!important}
  body.vhrm-employee-login-page #page,
  body.vhrm-employee-login-page #content,
  body.vhrm-employee-login-page .site-content,
  body.vhrm-employee-login-page .content-area{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  body.vhrm-employee-login-page .vhrm-login-shell{width:100%;max-width:none;box-sizing:border-box;padding:16px 10px 34px!important}
  body.vhrm-employee-login-page .vhrm-login-brand{justify-content:center;margin-bottom:12px;gap:9px}
  body.vhrm-employee-login-page .vhrm-login-logo{width:48px;height:48px;border-radius:15px;font-size:17px;box-shadow:inset 0 2px 0 rgba(255,255,255,.6),0 5px 0 #083f99,0 10px 18px rgba(10,70,160,.18)}
  body.vhrm-employee-login-page .vhrm-login-brand strong{font-size:19px}
  body.vhrm-employee-login-page .vhrm-login-brand span{font-size:9px}
  body.vhrm-employee-login-page .vhrm-login-heading{margin:3px auto 14px}
  body.vhrm-employee-login-page .vhrm-login-badge{padding:5px 9px;font-size:9px}
  body.vhrm-employee-login-page .vhrm-login-heading h1{font-size:24px;margin:7px 0 4px}
  body.vhrm-employee-login-page .vhrm-login-heading p{font-size:12px;line-height:1.35;padding:0 10px}
  body.vhrm-employee-login-page .vhrm-login-layout{display:flex!important;flex-direction:column;gap:12px!important}
  body.vhrm-employee-login-page .vhrm-login-box{order:1;width:100%;max-width:none;margin:0!important;padding:18px 16px!important;border-radius:22px;box-shadow:0 10px 28px rgba(20,70,120,.11)}
  body.vhrm-employee-login-page .vhrm-login-box h2{font-size:21px}
  body.vhrm-employee-login-page .vhrm-login-icon{width:46px;height:46px;border-radius:14px;font-size:24px;margin-bottom:12px}
  body.vhrm-employee-login-page .vhrm-login-features{order:2;width:100%;box-sizing:border-box;padding:11px 9px 13px;border-radius:24px;background:rgba(255,255,255,.68);box-shadow:0 8px 22px rgba(20,70,120,.07)}
  body.vhrm-employee-login-page .vhrm-login-features-title{text-align:center;font-size:10px;margin:1px 0 10px;letter-spacing:.08em}
  /* Exactly 4 columns on phones = 4 x 4 for the 16 shortcuts. */
  body.vhrm-employee-login-page .vhrm-login-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;width:100%}
  body.vhrm-employee-login-page .vhrm-login-tile{min-width:0!important;min-height:92px!important;height:92px;padding:7px 3px!important;border-radius:19px!important;gap:4px!important;box-sizing:border-box;overflow:hidden;box-shadow:0 4px 0 rgba(125,150,180,.48),0 7px 12px rgba(20,70,120,.10)!important;transform:none!important;-webkit-tap-highlight-color:transparent;user-select:none}
  body.vhrm-employee-login-page .vhrm-login-tile:active{transform:translateY(3px)!important;box-shadow:0 1px 0 rgba(100,130,160,.55),0 4px 8px rgba(20,70,120,.10)!important}
  body.vhrm-employee-login-page .vhrm-login-tile-icon{width:43px;height:43px;min-width:43px;border-radius:13px;font-size:24px;line-height:1;background:linear-gradient(145deg,#ffffff 5%,#e2ebf8 100%);box-shadow:inset 0 2px 3px rgba(255,255,255,.95),0 3px 0 rgba(85,115,145,.25),0 6px 9px rgba(20,50,90,.12);text-shadow:0 2px 2px rgba(0,0,0,.12)}
  body.vhrm-employee-login-page .vhrm-login-tile strong{font-size:8.5px!important;line-height:1.08!important;max-width:100%;word-break:break-word}
  body.vhrm-employee-login-page .vhrm-login-tile small{font-size:7.5px!important;line-height:1.05!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.vhrm-employee-login-page .vhrm-login-footer{gap:8px 12px;margin-top:14px;font-size:8px}
}
@media (max-width:360px){
  body.vhrm-employee-login-page .vhrm-login-shell{padding-left:7px!important;padding-right:7px!important}
  body.vhrm-employee-login-page .vhrm-login-grid{gap:7px!important}
  body.vhrm-employee-login-page .vhrm-login-tile{height:84px!important;min-height:84px!important;border-radius:17px!important}
  body.vhrm-employee-login-page .vhrm-login-tile-icon{width:38px;height:38px;min-width:38px;border-radius:12px;font-size:21px}
  body.vhrm-employee-login-page .vhrm-login-tile strong{font-size:7.7px!important}
  body.vhrm-employee-login-page .vhrm-login-tile small{font-size:6.8px!important}
}


/* === v1.7.15: Unified iOS-style 3D 4x4 responsive login theme === */
body.vhrm-employee-login-page{
  --ios-bg:#eef5ff;
  --ios-ink:#0b376d;
  background:
    radial-gradient(circle at 12% 8%,rgba(91,161,255,.22),transparent 28%),
    radial-gradient(circle at 88% 12%,rgba(142,105,255,.18),transparent 26%),
    radial-gradient(circle at 50% 100%,rgba(70,210,164,.13),transparent 35%),
    linear-gradient(180deg,#f8fbff 0%,var(--ios-bg) 100%)!important;
}
body.vhrm-employee-login-page .vhrm-login-shell{
  width:min(1240px,calc(100% - 40px));max-width:none;margin:0 auto;padding:28px 0 54px;
}
body.vhrm-employee-login-page .vhrm-login-layout{
  display:flex;flex-direction:column;gap:18px;align-items:stretch;
}
body.vhrm-employee-login-page .vhrm-login-box{
  width:100%;max-width:none;box-sizing:border-box;margin:0;padding:22px 26px;
  border-radius:28px;background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 18px 45px rgba(37,83,145,.13);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
body.vhrm-employee-login-page .vhrm-login-icon{margin-bottom:10px}
body.vhrm-employee-login-page .vhrm-login-features{
  width:100%;box-sizing:border-box;padding:20px;border-radius:30px;
  background:rgba(255,255,255,.58);border:1px solid rgba(255,255,255,.88);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 45px rgba(37,83,145,.11);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
body.vhrm-employee-login-page .vhrm-login-features-title{text-align:center;font-size:13px;margin:0 0 16px}
body.vhrm-employee-login-page .vhrm-login-grid{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-template-rows:repeat(4,minmax(0,1fr));gap:16px!important;width:100%;
}
body.vhrm-employee-login-page .vhrm-login-tile{
  min-width:0!important;min-height:clamp(128px,10vw,158px)!important;height:auto;
  padding:15px 10px!important;border-radius:25px!important;box-sizing:border-box;
  border:1px solid rgba(255,255,255,.9)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(231,240,252,.88))!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.96),0 7px 0 rgba(150,171,199,.55),0 15px 28px rgba(38,76,125,.13)!important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
  position:relative;overflow:hidden;cursor:pointer;
}
body.vhrm-employee-login-page .vhrm-login-tile:before{
  content:"";position:absolute;inset:1px 1px auto;height:46%;border-radius:24px 24px 55% 55%;
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,255,255,0));pointer-events:none;
}
body.vhrm-employee-login-page .vhrm-login-tile:hover{
  transform:translateY(-5px) scale(1.015)!important;filter:saturate(1.08);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.98),0 10px 0 rgba(132,158,190,.55),0 22px 34px rgba(38,76,125,.18)!important;
}
body.vhrm-employee-login-page .vhrm-login-tile:active{
  transform:translateY(4px) scale(.985)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 2px 0 rgba(132,158,190,.5),0 8px 14px rgba(38,76,125,.12)!important;
}
body.vhrm-employee-login-page .vhrm-login-tile-icon{
  width:clamp(54px,5vw,68px)!important;height:clamp(54px,5vw,68px)!important;min-width:0!important;
  border-radius:19px!important;font-size:clamp(28px,3vw,37px)!important;position:relative;z-index:1;
  background:linear-gradient(145deg,#ffffff 0%,#e5edf8 100%)!important;
  box-shadow:inset 0 3px 4px rgba(255,255,255,.98),inset 0 -2px 3px rgba(145,165,195,.2),0 5px 0 rgba(111,139,171,.35),0 10px 17px rgba(34,68,108,.16)!important;
  text-shadow:0 2px 2px rgba(0,0,0,.13);
}
body.vhrm-employee-login-page .vhrm-login-tile strong{font-size:clamp(11px,1vw,14px)!important;line-height:1.15!important;position:relative;z-index:1}
body.vhrm-employee-login-page .vhrm-login-tile small{font-size:clamp(9px,.8vw,11px)!important;line-height:1.2!important;position:relative;z-index:1}
body.vhrm-employee-login-page .vhrm-login-tile:nth-child(4n+1){background:linear-gradient(145deg,#f1fff8,#d8f8e9)!important}
body.vhrm-employee-login-page .vhrm-login-tile:nth-child(4n+2){background:linear-gradient(145deg,#f0f7ff,#dcecff)!important}
body.vhrm-employee-login-page .vhrm-login-tile:nth-child(4n+3){background:linear-gradient(145deg,#fffaf0,#ffedbd)!important}
body.vhrm-employee-login-page .vhrm-login-tile:nth-child(4n){background:linear-gradient(145deg,#fbf2ff,#e9dcff)!important}
body.vhrm-employee-login-page .vhrm-login-footer{margin-top:20px}

@media (max-width:900px){
  body.vhrm-employee-login-page .vhrm-login-shell{width:min(760px,calc(100% - 28px));padding-top:20px}
  body.vhrm-employee-login-page .vhrm-login-grid{gap:12px!important}
  body.vhrm-employee-login-page .vhrm-login-tile{min-height:116px!important;border-radius:22px!important}
  body.vhrm-employee-login-page .vhrm-login-tile-icon{width:54px!important;height:54px!important;font-size:29px!important}
}
@media (max-width:560px){
  body.vhrm-employee-login-page .vhrm-login-shell{width:calc(100% - 14px);padding:12px 0 38px}
  body.vhrm-employee-login-page .vhrm-login-box{padding:17px 14px;border-radius:24px}
  body.vhrm-employee-login-page .vhrm-login-features{padding:12px 8px 14px;border-radius:25px}
  body.vhrm-employee-login-page .vhrm-login-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(0,1fr));gap:8px!important}
  body.vhrm-employee-login-page .vhrm-login-tile{min-height:88px!important;padding:7px 2px!important;border-radius:17px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 4px 0 rgba(150,171,199,.48),0 8px 14px rgba(38,76,125,.10)!important}
  body.vhrm-employee-login-page .vhrm-login-tile-icon{width:39px!important;height:39px!important;border-radius:12px!important;font-size:21px!important;box-shadow:inset 0 2px 3px rgba(255,255,255,.98),0 3px 0 rgba(111,139,171,.3),0 6px 9px rgba(34,68,108,.12)!important}
  body.vhrm-employee-login-page .vhrm-login-tile strong{font-size:7.8px!important;line-height:1.05!important}
  body.vhrm-employee-login-page .vhrm-login-tile small{font-size:6.7px!important;line-height:1!important}
}
@media (max-width:360px){
  body.vhrm-employee-login-page .vhrm-login-grid{gap:6px!important}
  body.vhrm-employee-login-page .vhrm-login-tile{min-height:80px!important;height:80px!important}
  body.vhrm-employee-login-page .vhrm-login-tile-icon{width:35px!important;height:35px!important;font-size:19px!important}
  body.vhrm-employee-login-page .vhrm-login-tile strong{font-size:7.2px!important}
  body.vhrm-employee-login-page .vhrm-login-tile small{display:none}
}

/* === v1.7.16: Dashboard task icons - bright 3D colors matching Minh Khang sample === */
.vhrm-dashboard-tasks{margin:18px 0 22px}
.vhrm-dashboard-tasks .vhrm-task-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  margin:0!important;
}
.vhrm-dashboard-tasks .vhrm-task-card{
  min-height:142px!important;
  padding:16px 10px 13px!important;
  border:0!important;
  border-radius:22px!important;
  color:#fff!important;
  text-decoration:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  position:relative!important;
  overflow:hidden!important;
  cursor:pointer!important;
  transform:translateY(0)!important;
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease!important;
  box-shadow:inset 0 2px 1px rgba(255,255,255,.58),inset 0 -4px 8px rgba(0,0,0,.10),0 7px 0 rgba(0,0,0,.16),0 14px 24px rgba(20,60,110,.18)!important;
}
.vhrm-dashboard-tasks .vhrm-task-card:before{
  content:"";position:absolute;left:8%;right:8%;top:7px;height:32%;border-radius:50%;
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0));
  pointer-events:none;
}
.vhrm-dashboard-tasks .vhrm-task-card:hover{transform:translateY(-5px)!important;filter:saturate(1.06) brightness(1.03)!important;box-shadow:inset 0 2px 1px rgba(255,255,255,.68),inset 0 -5px 9px rgba(0,0,0,.12),0 10px 0 rgba(0,0,0,.14),0 19px 30px rgba(20,60,110,.23)!important}
.vhrm-dashboard-tasks .vhrm-task-card:active{transform:translateY(4px)!important;box-shadow:inset 0 2px 2px rgba(0,0,0,.14),0 3px 0 rgba(0,0,0,.15),0 7px 12px rgba(20,60,110,.16)!important}
.vhrm-dashboard-tasks .vhrm-task-green{background:linear-gradient(145deg,#24d989 0%,#0aa968 52%,#078957 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-blue{background:linear-gradient(145deg,#63b5ff 0%,#247ee8 54%,#1264c9 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-yellow{background:linear-gradient(145deg,#ffd95a 0%,#ffb52d 55%,#ed9311 100%)!important;color:#14294a!important}
.vhrm-dashboard-tasks .vhrm-task-purple{background:linear-gradient(145deg,#c477ff 0%,#8d43e3 54%,#7131c3 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-red{background:linear-gradient(145deg,#ff7c7c 0%,#f24d55 55%,#df343d 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-cyan{background:linear-gradient(145deg,#58dedc 0%,#20b9bb 55%,#0e9fa5 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-orange{background:linear-gradient(145deg,#ff9b66 0%,#f56a3d 55%,#dc4c2c 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-indigo{background:linear-gradient(145deg,#5c9fff 0%,#3577df 55%,#2459bf 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-gray{background:linear-gradient(145deg,#b9c5d2 0%,#71839a 55%,#566a82 100%)!important}
.vhrm-dashboard-tasks .vhrm-task-3d-icon{
  width:68px!important;height:68px!important;min-width:68px!important;
  display:grid!important;place-items:center!important;
  border-radius:20px!important;
  font-size:39px!important;line-height:1!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(225,235,247,.78))!important;
  color:#17385f!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:inset 0 3px 4px rgba(255,255,255,.98),inset 0 -3px 5px rgba(90,120,155,.20),0 5px 0 rgba(71,101,132,.42),0 9px 15px rgba(17,47,83,.22)!important;
  text-shadow:0 2px 1px rgba(0,0,0,.12)!important;
  position:relative!important;z-index:1!important;
}
.vhrm-dashboard-tasks .vhrm-task-card strong{font-size:14px!important;line-height:1.15!important;margin-top:10px!important;color:inherit!important;position:relative!important;z-index:1!important;text-shadow:0 1px 2px rgba(0,0,0,.20)!important}
.vhrm-dashboard-tasks .vhrm-task-card small{font-size:11px!important;line-height:1.15!important;margin-top:4px!important;color:rgba(255,255,255,.92)!important;position:relative!important;z-index:1!important}
.vhrm-dashboard-tasks .vhrm-task-yellow small,.vhrm-dashboard-tasks .vhrm-task-yellow strong{color:#172c49!important;text-shadow:none!important}
.vhrm-dashboard-tasks .vhrm-task-form{min-height:142px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
.vhrm-dashboard-tasks .vhrm-task-form .vhrm-task-camera-button{background:transparent!important;border:0!important;color:#fff!important;padding:0!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;cursor:pointer!important;position:relative!important;z-index:2!important}
.vhrm-dashboard-tasks .vhrm-task-form .vhrm-task-camera-button strong{margin-top:10px!important}
.vhrm-dashboard-tasks .vhrm-task-form .vhrm-task-camera-button small{margin-top:4px!important}
@media(max-width:900px){
  .vhrm-dashboard-tasks .vhrm-task-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
  .vhrm-dashboard-tasks .vhrm-task-card{min-height:116px!important;padding:10px 5px 9px!important;border-radius:18px!important}
  .vhrm-dashboard-tasks .vhrm-task-3d-icon{width:52px!important;height:52px!important;min-width:52px!important;border-radius:15px!important;font-size:29px!important}
  .vhrm-dashboard-tasks .vhrm-task-card strong{font-size:10px!important;margin-top:7px!important}
  .vhrm-dashboard-tasks .vhrm-task-card small{font-size:8px!important}
}
@media(max-width:560px){
  .vhrm-dashboard-tasks .vhrm-task-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}
  .vhrm-dashboard-tasks .vhrm-task-card{min-height:92px!important;padding:7px 2px 6px!important;border-radius:15px!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.62),inset 0 -3px 5px rgba(0,0,0,.10),0 4px 0 rgba(0,0,0,.15),0 7px 13px rgba(20,60,110,.15)!important}
  .vhrm-dashboard-tasks .vhrm-task-3d-icon{width:39px!important;height:39px!important;min-width:39px!important;border-radius:12px!important;font-size:21px!important;box-shadow:inset 0 2px 3px rgba(255,255,255,.98),0 3px 0 rgba(71,101,132,.36),0 6px 9px rgba(17,47,83,.16)!important}
  .vhrm-dashboard-tasks .vhrm-task-card strong{font-size:7.6px!important;margin-top:5px!important}
  .vhrm-dashboard-tasks .vhrm-task-card small{font-size:6.5px!important;margin-top:2px!important}
}

/* === v1.7.17: Employee login redesigned to match the supplied mobile sample === */
body.vhrm-employee-login-page .header-wrapper,
body.vhrm-employee-login-page .header-main,
body.vhrm-employee-login-page #header,
body.vhrm-employee-login-page .footer-wrapper,
body.vhrm-employee-login-page #footer,
body.vhrm-employee-login-page .page-title,
body.vhrm-employee-login-page .breadcrumbs,
body.vhrm-employee-login-page .flatsome-breadcrumbs{display:none!important}
body.vhrm-employee-login-page #main-content,
body.vhrm-employee-login-page .main-page-wrapper,
body.vhrm-employee-login-page .content-area,
body.vhrm-employee-login-page .entry-content{padding:0!important;margin:0!important;background:transparent!important}
body.vhrm-employee-login-page{min-height:100vh;background:
 radial-gradient(circle at 12% 10%,rgba(103,174,255,.20),transparent 32%),
 radial-gradient(circle at 90% 86%,rgba(109,149,255,.14),transparent 35%),
 linear-gradient(180deg,#f8fbff 0%,#eef5fc 100%)!important;color:#263f5b}
body.vhrm-employee-login-page .vhrm-login-shell{width:min(780px,calc(100% - 28px));margin:0 auto;padding:38px 0 48px;text-align:center}
body.vhrm-employee-login-page .vhrm-login-brand{display:flex;justify-content:center;align-items:center;margin:0 0 14px}
body.vhrm-employee-login-page .vhrm-login-company-logo{display:block;width:190px;height:190px;object-fit:contain;border-radius:50%;filter:drop-shadow(0 12px 20px rgba(35,72,120,.13))}
body.vhrm-employee-login-page .vhrm-login-company-logo-fallback{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#174b91,#092f67);color:#fff;font-weight:900;font-size:48px;box-shadow:inset 0 3px 5px rgba(255,255,255,.25),0 10px 0 #082c5f,0 18px 28px rgba(25,65,120,.20)}
body.vhrm-employee-login-page .vhrm-login-heading{margin:0 0 22px}
body.vhrm-employee-login-page .vhrm-login-heading h1{margin:0 0 8px!important;font-size:40px!important;line-height:1.1!important;letter-spacing:.01em;color:#0c376b!important;font-weight:800!important}
body.vhrm-employee-login-page .vhrm-login-heading p{margin:0!important;font-size:17px!important;line-height:1.45;color:#71839a!important}
body.vhrm-employee-login-page .vhrm-login-badge,
body.vhrm-employee-login-page .vhrm-login-layout>.vhrm-login-features,
body.vhrm-employee-login-page .vhrm-login-features{display:none!important}
body.vhrm-employee-login-page .vhrm-login-layout{display:block!important}
body.vhrm-employee-login-page .vhrm-login-box{width:100%;max-width:100%;box-sizing:border-box;margin:0;padding:34px 36px 28px;text-align:left;background:rgba(255,255,255,.93);border:1px solid rgba(207,220,235,.92);border-radius:26px;box-shadow:0 14px 38px rgba(35,72,120,.12);overflow:visible}
body.vhrm-employee-login-page .vhrm-login-box:before{height:0!important}
body.vhrm-employee-login-page .vhrm-login-form-title{display:none}
body.vhrm-employee-login-page .vhrm-login-box form{margin:0!important}
body.vhrm-employee-login-page .vhrm-login-box form p{margin:0 0 20px!important}
body.vhrm-employee-login-page .vhrm-login-box form label{display:block;margin:0 0 8px!important;font-size:18px;font-weight:700;color:#29415c}
body.vhrm-employee-login-page .vhrm-login-box form input[type=text],
body.vhrm-employee-login-page .vhrm-login-box form input[type=password]{height:58px!important;width:100%!important;box-sizing:border-box;padding:0 18px!important;border:1.5px solid #d4dce6!important;border-radius:17px!important;background:#fff!important;box-shadow:inset 0 1px 2px rgba(20,50,90,.03)!important;font-size:17px!important;color:#243b53!important;outline:none!important}
body.vhrm-employee-login-page .vhrm-login-box form input[type=text]:focus,
body.vhrm-employee-login-page .vhrm-login-box form input[type=password]:focus{border-color:#3185d8!important;box-shadow:0 0 0 4px rgba(49,133,216,.11)!important}
body.vhrm-employee-login-page .vhrm-login-box form .login-password{position:relative}
body.vhrm-employee-login-page .vhrm-login-box form .login-password:after{content:'◉';position:absolute;right:19px;bottom:15px;font-size:23px;line-height:1;color:#2d79b7;pointer-events:none;opacity:.95}
body.vhrm-employee-login-page .vhrm-login-box form .login-remember{display:flex;align-items:center;gap:10px;margin:2px 0 20px!important;font-size:17px!important;font-weight:600!important;color:#61748a!important}
body.vhrm-employee-login-page .vhrm-login-box form .login-remember input{width:22px!important;height:22px!important;margin:0!important;accent-color:#2879da}
body.vhrm-employee-login-page .vhrm-login-box form .login-submit{margin:0!important}
body.vhrm-employee-login-page .vhrm-login-box form input[type=submit]{height:58px!important;margin:0!important;border-radius:17px!important;background:linear-gradient(135deg,#1976e8,#1161d5)!important;color:#fff!important;font-size:20px!important;font-weight:800!important;box-shadow:0 5px 0 #0d4ea9,0 10px 20px rgba(24,92,190,.18)!important}
body.vhrm-employee-login-page .vhrm-login-box form input[type=submit]:hover{filter:brightness(1.04);transform:translateY(-1px)}
body.vhrm-employee-login-page .vhrm-login-links{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:27px;font-size:17px}
body.vhrm-employee-login-page .vhrm-login-links a{color:#2673c2;text-decoration:none}
body.vhrm-employee-login-page .vhrm-login-links a:hover{text-decoration:underline}
body.vhrm-employee-login-page .vhrm-login-links span{color:#9aa9b8}
body.vhrm-employee-login-page .vhrm-login-back{margin:26px auto 0;font-size:16px;line-height:1.55}
body.vhrm-employee-login-page .vhrm-login-back a{color:#2771b9;text-decoration:none}
body.vhrm-employee-login-page .vhrm-login-policy{margin-top:32px;color:#8b9bad;font-size:13px}
body.vhrm-employee-login-page .vhrm-login-footer{display:none!important}
@media(max-width:600px){
 body.vhrm-employee-login-page .vhrm-login-shell{width:calc(100% - 20px);padding:26px 0 38px}
 body.vhrm-employee-login-page .vhrm-login-company-logo{width:176px;height:176px}
 body.vhrm-employee-login-page .vhrm-login-heading h1{font-size:34px!important}
 body.vhrm-employee-login-page .vhrm-login-heading p{font-size:15px!important}
 body.vhrm-employee-login-page .vhrm-login-box{padding:26px 20px 22px;border-radius:24px}
 body.vhrm-employee-login-page .vhrm-login-box form label{font-size:16px}
 body.vhrm-employee-login-page .vhrm-login-box form input[type=text],body.vhrm-employee-login-page .vhrm-login-box form input[type=password],body.vhrm-employee-login-page .vhrm-login-box form input[type=submit]{height:58px!important}
 body.vhrm-employee-login-page .vhrm-login-links{font-size:15px;margin-top:24px}
 body.vhrm-employee-login-page .vhrm-login-back{font-size:14px;margin-top:23px}
}
body.vhrm-employee-login-page .vhrm-password-toggle{position:absolute;right:14px;bottom:8px;width:44px;height:44px;border:0;background:transparent!important;padding:0!important;margin:0!important;box-shadow:none!important;color:#2476b6;font-size:22px;line-height:44px;cursor:pointer;z-index:3}
body.vhrm-employee-login-page .vhrm-password-toggle:hover{transform:none!important;filter:none!important}
body.vhrm-employee-login-page .vhrm-login-box form .login-password:after{display:none!important}


/* === v1.7.18: Full-width mobile employee portal / dashboard === */
body.vhrm-employee-portal-page{overflow-x:hidden}
body.vhrm-employee-portal-page .vhrm-portal{max-width:none;width:100%;box-sizing:border-box;margin:0;padding-left:20px;padding-right:20px}
@media(max-width:700px){
  body.vhrm-employee-portal-page #main-content,
  body.vhrm-employee-portal-page .main-page-wrapper,
  body.vhrm-employee-portal-page .content-area,
  body.vhrm-employee-portal-page .entry-content{max-width:none!important;width:100%!important;box-sizing:border-box!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
  body.vhrm-employee-portal-page .vhrm-portal{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;padding:10px 9px calc(105px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important}
  body.vhrm-employee-portal-page .vhrm-main-nav{min-height:0;margin:0 0 8px!important}
  body.vhrm-employee-portal-page .vhrm-nav-current{font-size:11px;max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.vhrm-employee-portal-page .vhrm-home-btn{right:auto!important;left:9px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;padding:10px 13px!important;border-radius:14px!important;font-size:12px!important;z-index:10001}
  body.vhrm-employee-portal-page .vhrm-home-btn span{display:none}
  body.vhrm-employee-portal-page .vhrm-company-header{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;width:100%!important;box-sizing:border-box!important;margin:0 0 10px!important;padding:11px 10px!important;border-radius:18px!important}
  body.vhrm-employee-portal-page .vhrm-company-brand{min-width:0;flex:1;gap:9px!important}
  body.vhrm-employee-portal-page .vhrm-company-logo,
  body.vhrm-employee-portal-page .vhrm-company-mark{width:48px!important;height:48px!important;min-width:48px!important;border-radius:13px!important}
  body.vhrm-employee-portal-page .vhrm-header-employee{font-size:15px!important;line-height:1.15!important;white-space:normal}
  body.vhrm-employee-portal-page .vhrm-company-copy{display:none!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks{margin:10px 0 13px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;width:100%!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card{min-width:0!important;width:100%!important;min-height:0!important;height:112px!important;padding:8px 2px 7px!important;border-radius:17px!important;box-sizing:border-box!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-3d-icon{width:46px!important;height:46px!important;min-width:46px!important;border-radius:13px!important;font-size:25px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card strong{font-size:8px!important;line-height:1.08!important;margin-top:6px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card small{font-size:6.7px!important;line-height:1.05!important;margin-top:2px!important;max-width:96%;text-align:center}
  body.vhrm-employee-portal-page .vhrm-profile{width:100%!important;box-sizing:border-box!important;margin:10px 0!important;padding:14px!important;border-radius:18px!important}
  body.vhrm-employee-portal-page .vhrm-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;width:100%!important;margin:10px 0!important}
  body.vhrm-employee-portal-page .vhrm-portal-card{min-height:78px!important;padding:10px!important;border-radius:15px!important;box-sizing:border-box!important;gap:8px!important}
  body.vhrm-employee-portal-page .vhrm-card-icon{font-size:24px!important}
  body.vhrm-employee-portal-page .vhrm-portal-section{border-radius:18px!important;padding:12px!important;margin:10px 0!important}
  body.vhrm-employee-portal-page .vhrm-portal-actions{gap:7px!important}
}
@media(max-width:380px){
  body.vhrm-employee-portal-page .vhrm-portal{padding-left:6px!important;padding-right:6px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-grid{gap:5px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card{height:102px!important;border-radius:15px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-3d-icon{width:42px!important;height:42px!important;min-width:42px!important;font-size:23px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card strong{font-size:7.3px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card small{display:none!important}
}


/* === v1.7.19: Mobile dashboard header cleanup === */
@media(max-width:700px){
  /* Remove redundant plugin header text; the website header already carries the brand. */
  body.vhrm-employee-portal-page .vhrm-company-header{display:none!important}
  body.vhrm-employee-portal-page .vhrm-main-nav{display:none!important}
  body.vhrm-employee-portal-page .vhrm-profile-label,
  body.vhrm-employee-portal-page .vhrm-profile .vhrm-company-name{display:none!important}
  body.vhrm-employee-portal-page .vhrm-profile{margin-top:4px!important}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks{margin-top:7px!important}
}


/* === v1.7.20: Mobile employee portal - clean top + reliable task navigation === */
@media (max-width:700px){
  body.vhrm-employee-portal-page{
    overflow-x:hidden!important;
    background:#f7fbff!important;
  }
  /* The HRM portal is a standalone employee app on mobile. */
  body.vhrm-employee-portal-page .header-wrapper,
  body.vhrm-employee-portal-page #header,
  body.vhrm-employee-portal-page .page-title,
  body.vhrm-employee-portal-page .breadcrumbs,
  body.vhrm-employee-portal-page .flatsome-breadcrumbs,
  body.vhrm-employee-portal-page .entry-header,
  body.vhrm-employee-portal-page .page-header,
  body.vhrm-employee-portal-page .archive-page-header{
    display:none!important;
  }
  body.vhrm-employee-portal-page #main,
  body.vhrm-employee-portal-page #main-content,
  body.vhrm-employee-portal-page .main-page-wrapper,
  body.vhrm-employee-portal-page .content-area,
  body.vhrm-employee-portal-page .entry-content,
  body.vhrm-employee-portal-page .page-wrapper{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    background:transparent!important;
  }
  body.vhrm-employee-portal-page .vhrm-portal{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:12px 8px calc(88px + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
  }
  body.vhrm-employee-portal-page .vhrm-main-nav,
  body.vhrm-employee-portal-page .vhrm-company-header{
    display:none!important;
  }
  body.vhrm-employee-portal-page .vhrm-profile{
    margin:0 0 10px!important;
    padding:12px!important;
    border-radius:18px!important;
  }
  body.vhrm-employee-portal-page .vhrm-profile-main{min-width:0!important;}
  body.vhrm-employee-portal-page .vhrm-avatar{
    width:52px!important;height:52px!important;min-width:52px!important;
  }
  body.vhrm-employee-portal-page .vhrm-profile h2{
    font-size:19px!important;line-height:1.15!important;margin:0!important;
  }
  body.vhrm-employee-portal-page .vhrm-profile p{font-size:12px!important;margin:4px 0 0!important;}
  body.vhrm-employee-portal-page .vhrm-profile-badge{font-size:10px!important;white-space:nowrap!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks{margin:0 0 12px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    margin:0!important;
  }
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    height:105px!important;
    min-height:105px!important;
    padding:7px 2px 6px!important;
    box-sizing:border-box!important;
    border-radius:16px!important;
    text-decoration:none!important;
    -webkit-tap-highlight-color:transparent;
  }
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-3d-icon{
    width:43px!important;height:43px!important;min-width:43px!important;
    font-size:23px!important;border-radius:12px!important;
  }
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card strong{
    font-size:7.8px!important;line-height:1.08!important;margin-top:5px!important;
  }
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card small{
    display:block!important;font-size:6.2px!important;line-height:1.05!important;
  }
  /* Never let a floating contact button cover a task. */
  body.vhrm-employee-portal-page .vhrm-home-btn{display:none!important;}
  body.vhrm-employee-portal-page .vhrm-detail-home{display:inline-flex!important;}
}
@media (max-width:380px){
  body.vhrm-employee-portal-page .vhrm-portal{padding-left:5px!important;padding-right:5px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-grid{gap:5px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card{height:96px!important;min-height:96px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-3d-icon{width:39px!important;height:39px!important;min-width:39px!important;font-size:21px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card strong{font-size:7.1px!important;}
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks .vhrm-task-card small{display:none!important;}
}

/* v1.7.21 — MOBILE APP FULL-WIDTH / FULL-BLEED FIX
 * The HRM portal must not inherit the theme's desktop container, row gutters,
 * max-width or page padding on phones. Keep the site header untouched. */
@media (max-width:700px){
  html,body{max-width:100%;overflow-x:hidden!important;}
  body.vhrm-employee-portal-page #content,
  body.vhrm-employee-portal-page .site-content,
  body.vhrm-employee-portal-page .content-area,
  body.vhrm-employee-portal-page .entry-content,
  body.vhrm-employee-portal-page .page-wrapper,
  body.vhrm-employee-portal-page .container,
  body.vhrm-employee-portal-page .row,
  body.vhrm-employee-portal-page .col,
  body.vhrm-employee-portal-page .col-inner{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
  body.vhrm-employee-portal-page .row,
  body.vhrm-employee-portal-page .container{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.vhrm-employee-portal-page .col{padding-left:0!important;padding-right:0!important;}
  body.vhrm-employee-portal-page .entry-content{padding-left:0!important;padding-right:0!important;}
  body.vhrm-employee-portal-page .vhrm-portal{
    display:block!important;
    width:100vw!important;
    max-width:none!important;
    margin-left:calc(50% - 50vw)!important;
    margin-right:calc(50% - 50vw)!important;
    padding:8px 10px 92px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  body.vhrm-employee-portal-page .vhrm-main-nav{
    min-height:0!important;
    margin:0 0 8px!important;
    padding:0!important;
  }
  body.vhrm-employee-portal-page .vhrm-nav-current{display:none!important;}
  body.vhrm-employee-portal-page .vhrm-home-btn{
    position:fixed!important;
    right:12px!important;
    bottom:78px!important;
    z-index:10050!important;
  }
  body.vhrm-employee-portal-page .vhrm-company-header{
    width:100%!important;
    box-sizing:border-box!important;
    margin:0 0 10px!important;
    padding:10px!important;
    border-radius:16px!important;
  }
  body.vhrm-employee-portal-page .vhrm-company-copy{display:none!important;}
  body.vhrm-employee-portal-page .vhrm-company-brand{width:100%!important;justify-content:flex-start!important;}
  body.vhrm-employee-portal-page .vhrm-company-logo{width:44px!important;height:44px!important;}
  body.vhrm-employee-portal-page .vhrm-header-employee{font-size:17px!important;}

  /* 4-column app grid: equal cards, no clipping and no theme gutters. */
  body.vhrm-employee-portal-page .vhrm-task-panel,
  body.vhrm-employee-portal-page .vhrm-dashboard-tasks{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
  }
  body.vhrm-employee-portal-page .vhrm-task-grid{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    margin:0!important;
    padding:0!important;
  }
  body.vhrm-employee-portal-page .vhrm-task-card{
    min-width:0!important;
    width:100%!important;
    min-height:112px!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:8px 4px!important;
    border-radius:17px!important;
    overflow:hidden!important;
  }
  body.vhrm-employee-portal-page .vhrm-task-card strong,
  body.vhrm-employee-portal-page .vhrm-task-card small{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.vhrm-employee-portal-page .vhrm-task-3d-icon{font-size:28px!important;}
  body.vhrm-employee-portal-page .vhrm-profile,
  body.vhrm-employee-portal-page .vhrm-portal-grid,
  body.vhrm-employee-portal-page .vhrm-portal-section{
    width:100%!important;
    box-sizing:border-box!important;
  }
  body.vhrm-employee-portal-page .vhrm-profile{margin-left:0!important;margin-right:0!important;}
}

@media (max-width:360px){
  body.vhrm-employee-portal-page .vhrm-portal{padding-left:7px!important;padding-right:7px!important;}
  body.vhrm-employee-portal-page .vhrm-task-grid{gap:6px!important;}
  body.vhrm-employee-portal-page .vhrm-task-card{min-height:104px!important;padding:7px 2px!important;}
  body.vhrm-employee-portal-page .vhrm-task-card strong{font-size:10px!important;}
  body.vhrm-employee-portal-page .vhrm-task-card small{font-size:8px!important;}
}

/* === v1.7.22: TASK -> DETAIL PAGE / HOME NAVIGATION === */
@media (max-width:700px){
  body.vhrm-employee-portal-page .vhrm-portal.vhrm-detail-view{
    padding-top:58px!important;
  }
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-main-nav{
    display:flex!important;
    position:fixed!important;
    top:6px!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    align-items:center!important;
    justify-content:flex-start!important;
    z-index:10060!important;
    pointer-events:none!important;
  }
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-home-btn{
    display:inline-flex!important;
    position:static!important;
    right:auto!important;
    bottom:auto!important;
    min-height:44px!important;
    padding:8px 16px!important;
    border-radius:14px!important;
    align-items:center!important;
    justify-content:center!important;
    pointer-events:auto!important;
    box-shadow:0 7px 18px rgba(0,0,0,.18)!important;
  }
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-home-btn span{display:inline!important;}
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-nav-current{
    display:inline-block!important;
    margin-left:8px!important;
    max-width:calc(100vw - 150px)!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    font-size:12px!important;
    font-weight:700!important;
    background:rgba(255,255,255,.94)!important;
    border-radius:12px!important;
    padding:8px 10px!important;
    box-shadow:0 5px 16px rgba(0,0,0,.10)!important;
  }
  body.vhrm-employee-portal-page .vhrm-detail-view > .vhrm-company-header{display:none!important;}
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-portal-section:first-of-type{scroll-margin-top:62px!important;}
}
@media (min-width:701px){
  body.vhrm-employee-portal-page .vhrm-detail-view .vhrm-main-nav{
    position:sticky!important;
    top:10px!important;
    z-index:100!important;
  }
}


/* === v1.7.23: Reliable navigation on every task/detail page === */
.vhrm-detail-task-nav{
  margin:18px 0 8px!important;
  padding:16px!important;
  border:1px solid rgba(28,83,140,.12)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 10px 28px rgba(25,72,120,.10)!important;
}
.vhrm-detail-nav-head{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:12px!important}
.vhrm-detail-nav-head>div{display:flex!important;flex-direction:column!important;gap:2px!important}
.vhrm-detail-nav-head strong{font-size:16px!important;color:#173f70!important}
.vhrm-detail-nav-head small{font-size:11px!important;color:#718399!important}
.vhrm-detail-home{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:76px!important;padding:11px 14px!important;border-radius:14px!important;
  text-decoration:none!important;font-weight:800!important;color:#fff!important;
  background:linear-gradient(145deg,#1682e8,#1760d5)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.55),0 4px 0 rgba(17,65,130,.35),0 8px 16px rgba(17,88,180,.18)!important;
}
.vhrm-detail-task-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
.vhrm-detail-task{
  min-width:0!important;min-height:76px!important;padding:8px 4px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  gap:5px!important;text-align:center!important;text-decoration:none!important;border-radius:15px!important;
  background:linear-gradient(145deg,#f5faff,#e7f1fb)!important;color:#173f70!important;
  box-shadow:inset 0 1px 2px rgba(255,255,255,.95),0 3px 0 rgba(69,106,140,.20),0 7px 12px rgba(20,60,110,.10)!important;
}
.vhrm-detail-task span{font-size:25px!important;line-height:1!important}
.vhrm-detail-task strong{font-size:8px!important;line-height:1.05!important}
.vhrm-detail-home-card{background:linear-gradient(145deg,#1879e7,#1557cc)!important;color:#fff!important}
@media(max-width:700px){
  body.vhrm-employee-portal-page .vhrm-detail-task-nav{margin:14px 0 6px!important;padding:10px!important;border-radius:18px!important}
  body.vhrm-employee-portal-page .vhrm-detail-nav-head{margin-bottom:9px!important}
  body.vhrm-employee-portal-page .vhrm-detail-home{min-width:68px!important;padding:9px 12px!important;font-size:12px!important}
  body.vhrm-employee-portal-page .vhrm-detail-nav-head strong{font-size:13px!important}
  body.vhrm-employee-portal-page .vhrm-detail-nav-head small{font-size:9px!important}
  body.vhrm-employee-portal-page .vhrm-detail-task-grid{gap:6px!important}
  body.vhrm-employee-portal-page .vhrm-detail-task{min-height:68px!important;border-radius:13px!important;padding:7px 2px!important}
  body.vhrm-employee-portal-page .vhrm-detail-task span{font-size:22px!important}
  body.vhrm-employee-portal-page .vhrm-detail-task strong{font-size:7px!important}
  body.vhrm-employee-portal-page .vhrm-portal{padding-bottom:24px!important}
}

/* === v1.7.24: task page navigation is always visible and mobile-safe === */
.vhrm-detail-task-nav{position:relative!important;z-index:5!important;clear:both!important;}
.vhrm-detail-task-nav a{touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(23,96,213,.15)!important;}
@media(max-width:700px){
  body.vhrm-employee-portal-page .vhrm-detail-task-nav{width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;}
  body.vhrm-employee-portal-page .vhrm-detail-view{width:100%!important;max-width:none!important;overflow:visible!important;}
}


/* === v1.7.25: always-visible mobile HOME + remove redundant portal intro === */
.vhrm-top-home{display:none!important;}
@media(max-width:700px){
  body.vhrm-employee-portal-page .vhrm-top-home{display:inline-flex!important;position:fixed!important;top:8px!important;left:9px!important;z-index:10080!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-height:42px!important;padding:8px 14px!important;box-sizing:border-box!important;border-radius:14px!important;text-decoration:none!important;font-size:13px!important;font-weight:900!important;color:#fff!important;background:linear-gradient(145deg,#1682e8,#1557cc)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.55),0 5px 0 rgba(17,65,130,.32),0 9px 18px rgba(17,88,180,.20)!important;touch-action:manipulation!important;}
  body.vhrm-employee-portal-page .vhrm-top-home:active{transform:translateY(3px)!important;box-shadow:0 2px 0 rgba(17,65,130,.32)!important;}
  body.vhrm-employee-portal-page .vhrm-top-home + .vhrm-main-nav{display:none!important;}
  body.vhrm-employee-portal-page .page-title-wrapper,body.vhrm-employee-portal-page .page-title-inner,body.vhrm-employee-portal-page .page-title-bg,body.vhrm-employee-portal-page .page-header,body.vhrm-employee-portal-page .entry-header,body.vhrm-employee-portal-page .entry-title,body.vhrm-employee-portal-page .entry-divider,body.vhrm-employee-portal-page .breadcrumbs,body.vhrm-employee-portal-page .flatsome-breadcrumbs{display:none!important;}
  body.vhrm-employee-portal-page .vhrm-portal{padding-top:58px!important;}
}

/* === v1.7.26 FINAL: force clean employee portal + TOP HOME === */
body.vhrm-employee-portal-page .vhrm-top-home{
  display:inline-flex!important;
  position:fixed!important;
  top:12px!important;
  left:12px!important;
  right:auto!important;
  bottom:auto!important;
  z-index:2147483000!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:42px!important;
  padding:9px 15px!important;
  box-sizing:border-box!important;
  border-radius:14px!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  color:#fff!important;
  background:linear-gradient(145deg,#1682e8,#1557cc)!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.55),0 5px 0 rgba(17,65,130,.32),0 9px 18px rgba(17,88,180,.20)!important;
}
body.vhrm-employee-portal-page .vhrm-top-home:hover{color:#fff!important;transform:translateY(-1px)!important;}
body.vhrm-employee-portal-page .vhrm-top-home:active{transform:translateY(3px)!important;}
body.vhrm-employee-portal-page .vhrm-top-home + .vhrm-main-nav{display:none!important;}

/* Remove page-builder/theme hero text and duplicate portal intro on the actual portal page. */
body.vhrm-employee-portal-page .page-title-wrapper,
body.vhrm-employee-portal-page .page-title-inner,
body.vhrm-employee-portal-page .page-title-bg,
body.vhrm-employee-portal-page .page-header,
body.vhrm-employee-portal-page .entry-header,
body.vhrm-employee-portal-page .entry-title,
body.vhrm-employee-portal-page .entry-divider,
body.vhrm-employee-portal-page .breadcrumbs,
body.vhrm-employee-portal-page .flatsome-breadcrumbs,
body.vhrm-employee-portal-page .vhrm-legacy-portal-intro,
body.vhrm-employee-portal-page .vhrm-portal-intro,
body.vhrm-employee-portal-page .vhrm-portal-hero{display:none!important;}

body.vhrm-employee-portal-page .vhrm-portal{
  width:100%!important;
  max-width:1280px!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.vhrm-employee-portal-page .vhrm-detail-view{padding-top:66px!important;}
body.vhrm-employee-portal-page .vhrm-home-view{padding-top:66px!important;}

@media(max-width:700px){
  body.vhrm-employee-portal-page .vhrm-top-home{top:8px!important;left:8px!important;min-height:40px!important;padding:8px 13px!important;font-size:12px!important;}
  body.vhrm-employee-portal-page .vhrm-top-home span{display:inline!important;}
  body.vhrm-employee-portal-page .vhrm-portal{padding-top:58px!important;padding-left:7px!important;padding-right:7px!important;}
  body.vhrm-employee-portal-page .vhrm-detail-view,
  body.vhrm-employee-portal-page .vhrm-home-view{padding-top:58px!important;}
}


/* === v1.7.27 FINAL CLEAN MOBILE PORTAL === */
/* The employee app must start immediately after the site's real header. */
body.vhrm-employee-portal-page .vhrm-company-header{display:none!important;}
body.vhrm-employee-portal-page .vhrm-company-name{display:none!important;}
body.vhrm-employee-portal-page .vhrm-top-home{
  display:inline-flex!important;
  position:sticky!important;
  top:0!important;
  left:auto!important;
  right:auto!important;
  z-index:10050!important;
  margin:0 0 12px 0!important;
  min-height:44px!important;
  padding:9px 16px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  box-sizing:border-box!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#1682e8,#1557cc)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:0 5px 0 rgba(17,65,130,.28),0 9px 18px rgba(17,88,180,.18)!important;
}
body.vhrm-employee-portal-page .vhrm-top-home + .vhrm-main-nav{display:none!important;}
body.vhrm-employee-portal-page .vhrm-portal{padding-top:10px!important;}
/* Hide common builder-generated hero/title/card shells when a portal page is rendered. */
body.vhrm-employee-portal-page .page-title-wrapper,
body.vhrm-employee-portal-page .page-title-inner,
body.vhrm-employee-portal-page .page-title-bg,
body.vhrm-employee-portal-page .page-header,
body.vhrm-employee-portal-page .entry-header,
body.vhrm-employee-portal-page .entry-title,
body.vhrm-employee-portal-page .entry-divider,
body.vhrm-employee-portal-page .breadcrumbs,
body.vhrm-employee-portal-page .flatsome-breadcrumbs,
body.vhrm-employee-portal-page .vhrm-legacy-portal-intro,
body.vhrm-employee-portal-page .vhrm-portal-intro,
body.vhrm-employee-portal-page .vhrm-portal-hero{display:none!important;}
@media(max-width:700px){
  body.vhrm-employee-portal-page #content,
  body.vhrm-employee-portal-page .site-content,
  body.vhrm-employee-portal-page .content-area,
  body.vhrm-employee-portal-page .entry-content,
  body.vhrm-employee-portal-page .page-inner,
  body.vhrm-employee-portal-page .row,
  body.vhrm-employee-portal-page .col{
    width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;
    padding-left:0!important;padding-right:0!important;box-sizing:border-box!important;
  }
  body.vhrm-employee-portal-page .vhrm-portal{
    width:100%!important;max-width:none!important;margin:0!important;padding:10px 6px 30px!important;
    box-sizing:border-box!important;
  }
  body.vhrm-employee-portal-page .vhrm-top-home{position:sticky!important;top:0!important;margin:0 0 10px!important;}
  body.vhrm-employee-portal-page .vhrm-home-view,
  body.vhrm-employee-portal-page .vhrm-detail-view{padding-top:0!important;}
  body.vhrm-employee-portal-page .vhrm-profile{margin-top:0!important;}
}

/* v1.7.29 — login page must not show floating Zalo / Call contact controls. */
body.vhrm-employee-login-page .floating-contact,
body.vhrm-employee-login-page .floating-contacts,
body.vhrm-employee-login-page .contact-floating,
body.vhrm-employee-login-page .float-contact,
body.vhrm-employee-login-page .float-buttons,
body.vhrm-employee-login-page .zalo-float,
body.vhrm-employee-login-page .call-float,
body.vhrm-employee-login-page [class*="zalo"],
body.vhrm-employee-login-page [class*="floating-call"],
body.vhrm-employee-login-page [class*="float-call"] { display:none!important; }


/* v1.7.30 — employee document viewer */
.vhrm-employee-documents{margin-top:22px;padding:18px;border:1px solid rgba(148,163,184,.28);border-radius:18px;background:rgba(248,250,252,.88);}
.vhrm-documents-head h4{margin:5px 0 4px;font-size:18px;}
.vhrm-documents-head p{margin:0 0 14px;color:#64748b;}
.vhrm-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.vhrm-document-card{min-width:0;background:#fff;border:1px solid #dbe5f1;border-radius:15px;padding:14px;box-shadow:0 6px 18px rgba(15,23,42,.06);}
.vhrm-document-title{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:15px;}
.vhrm-document-title span{font-size:22px;}
.vhrm-document-preview-image{display:block;text-decoration:none!important;}
.vhrm-document-preview-image img{display:block;width:100%;height:220px;object-fit:contain;background:#f1f5f9;border-radius:10px;border:1px solid #e2e8f0;}
.vhrm-document-preview-image span{display:block;margin-top:8px;text-align:center;font-weight:800;}
.vhrm-document-pdf{height:360px;overflow:hidden;border:1px solid #e2e8f0;border-radius:10px;background:#fff;}
.vhrm-document-pdf iframe{width:100%;height:100%;border:0;}
.vhrm-document-open{margin-top:10px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:6px;}
.vhrm-document-file,.vhrm-document-empty{min-height:90px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;color:#64748b;padding:12px;}
@media(max-width:700px){.vhrm-document-grid{grid-template-columns:1fr;}.vhrm-document-pdf{height:420px;}.vhrm-document-preview-image img{height:240px;}.vhrm-employee-documents{padding:12px;}}

/* Payslip/A5 print styles shared by employee portal and standalone PDF page */
.vhrm-print-document{margin:0!important;background:#eef2f6!important;color:#111!important}.vhrm-print-toolbar{position:sticky;top:0;z-index:20;display:flex;justify-content:center;gap:10px;padding:10px;background:#fff;border-bottom:1px solid #d7dee7;box-shadow:0 2px 8px rgba(0,0,0,.08)}.vhrm-print-stack{max-width:148mm;margin:14px auto}.vhrm-print-stack .vhrm-payslip{width:138mm;min-height:196mm;box-sizing:border-box;margin:0 auto 8mm;padding:0;background:#fff;color:#111;border:0;box-shadow:0 2px 12px rgba(0,0,0,.12);font-family:'Noto Sans',Arial,sans-serif}.vhrm-payslip{font-family:'Noto Sans',Arial,sans-serif;color:#111;background:#fff}.vhrm-payslip-header{padding:3.2mm 3.5mm 2.4mm;text-align:center;border:1.2px solid #111;background:#c6f0cf}.vhrm-payslip-header h1{margin:0;font-size:12.5px;line-height:1.2;text-transform:uppercase}.vhrm-payslip-header h2{margin:2px 0 0;font-size:10.5px;font-weight:700}.vhrm-payslip-header p{margin:1px 0 0;font-size:7.5px}.vhrm-payslip table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:7.2px}.vhrm-payslip th,.vhrm-payslip td{border:1px solid #111;padding:2.1px 2.6px;line-height:1.12;vertical-align:middle}.vhrm-payslip td:nth-child(1){width:7%;text-align:center}.vhrm-payslip td:nth-child(2){width:49%}.vhrm-payslip td:nth-child(3){width:18%;text-align:right}.vhrm-payslip td:nth-child(4){width:26%}.vhrm-payslip .section th{font-weight:800;text-align:left;background:#eaf3fb;color:#0a3f70}.vhrm-payslip .subsection th{font-weight:800;text-align:left;color:#c21e1e;background:#fff}.vhrm-payslip .total td{font-weight:800;text-align:right}.vhrm-payslip .highlight{font-weight:900;background:#d8ff32;text-align:center}.vhrm-payslip .net th,.vhrm-payslip .net{font-weight:900;background:#fff400}.vhrm-bank{padding:2.2mm .5mm 1.2mm;font-size:7.2px}.vhrm-bank p{margin:1px 0}.vhrm-regulation{border:1px solid #111;padding:1.8mm;margin-top:1mm;font-size:6.5px}.vhrm-regulation strong{display:block;margin-bottom:1px}.vhrm-regulation p{margin:0;line-height:1.25}.vhrm-payroll-note{padding:1.5mm;font-size:6.5px}@page{size:A5 portrait;margin:5mm}@media print{.vhrm-print-toolbar,.vhrm-page-title,.vhrm-portal-actions{display:none!important}.vhrm-print-document{background:#fff!important}.vhrm-print-stack{max-width:none!important;margin:0!important}.vhrm-print-stack .vhrm-payslip{width:138mm!important;min-height:196mm!important;margin:0 auto!important;box-shadow:none!important;page-break-after:always}.vhrm-print-stack .vhrm-payslip:last-child{page-break-after:auto}.vhrm-payslip-header{background:#c6f0cf!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.vhrm-payslip .highlight{background:#d8ff32!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.vhrm-payslip .net{background:#fff400!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media(max-width:760px){.vhrm-print-toolbar{padding:8px}.vhrm-print-stack{margin:6px auto}.vhrm-print-stack .vhrm-payslip{width:calc(100vw - 12px);min-height:auto}.vhrm-payslip-header h1{font-size:11px}.vhrm-payslip-header h2{font-size:9px}.vhrm-payslip table{font-size:6.8px}.vhrm-payslip th,.vhrm-payslip td{padding:2px 1.5px}.vhrm-bank,.vhrm-regulation{font-size:6.5px}}

/* =========================================================
   VHRM 2.0.0 — Minh Khang Glass 3D interface
   ========================================================= */
:root{--vhrm-green:#78b82a;--vhrm-blue:#1673d2;--vhrm-ink:#123b70;--vhrm-glass:rgba(255,255,255,.72)}
body.vhrm-employee-login-page,body.vhrm-employee-portal-page{overflow-x:hidden;background:radial-gradient(circle at 8% 8%,rgba(120,184,42,.18),transparent 28%),radial-gradient(circle at 92% 18%,rgba(22,115,210,.18),transparent 30%),linear-gradient(135deg,#f8fcff,#eef5fb 48%,#f9fff4)!important}
body.vhrm-employee-login-page:before,body.vhrm-employee-portal-page:before{content:"";position:fixed;inset:-25%;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.42) 48%,transparent 60%);animation:vhrm20-sheen 16s linear infinite;z-index:0}
.vhrm-login-shell,.vhrm-portal{position:relative;z-index:1;width:100%;max-width:1440px!important;box-sizing:border-box}
.vhrm-login-shell{min-height:calc(100vh - 30px);display:flex;flex-direction:column;justify-content:center;padding:42px clamp(14px,4vw,56px) 70px!important}
.vhrm-login-brand,.vhrm-login-heading,.vhrm-login-box,.vhrm-login-features{filter:drop-shadow(0 18px 35px rgba(28,70,110,.09))}
.vhrm-login-brand{padding:12px 22px;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:rgba(255,255,255,.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.vhrm-login-company-logo{max-height:78px!important;width:auto!important;max-width:min(90vw,360px);object-fit:contain}
.vhrm-login-box,.vhrm-login-features,.vhrm-company-header,.vhrm-portal-section{background:var(--vhrm-glass)!important;border-color:rgba(255,255,255,.9)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 20px 50px rgba(26,76,120,.12),inset 0 1px 0 rgba(255,255,255,.9)!important}
.vhrm-login-box{border-radius:30px!important}
.vhrm-login-box input[type=text],.vhrm-login-box input[type=password],.vhrm-form input,.vhrm-form select,.vhrm-form textarea{background:rgba(255,255,255,.82)!important;border-color:rgba(145,175,205,.5)!important;box-shadow:inset 0 2px 8px rgba(25,70,110,.035),0 2px 0 rgba(255,255,255,.8)}
.vhrm-login-box input[type=submit],.vhrm-btn-primary,.vhrm-3d-btn{background:linear-gradient(135deg,#1598df,#1554c9)!important;border:0!important;border-radius:16px!important;box-shadow:0 6px 0 #0b4299,0 15px 28px rgba(21,84,201,.24)!important;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important}
.vhrm-login-box input[type=submit]:hover,.vhrm-btn-primary:hover,.vhrm-3d-btn:hover{transform:translateY(-3px);filter:saturate(1.08);box-shadow:0 9px 0 #0b4299,0 20px 34px rgba(21,84,201,.28)!important}
.vhrm-portal-card{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(235,246,255,.72))!important;border-color:rgba(255,255,255,.95)!important;box-shadow:0 10px 0 rgba(141,174,205,.35),0 18px 30px rgba(35,85,130,.12)!important}
.vhrm-portal-card:after{content:"";position:absolute;inset:-80% 45% 20% -35%;background:rgba(255,255,255,.42);transform:rotate(25deg);pointer-events:none}
.vhrm-portal-card:hover{transform:translateY(-6px) rotateX(1deg);box-shadow:0 13px 0 rgba(141,174,205,.28),0 24px 38px rgba(35,85,130,.18)!important}
.vhrm-card-icon{filter:drop-shadow(0 4px 4px rgba(30,75,120,.15))}
@keyframes vhrm20-sheen{0%{transform:translateX(-18%) rotate(8deg)}100%{transform:translateX(18%) rotate(8deg)}}
@media(prefers-reduced-motion:reduce){body.vhrm-employee-login-page:before{animation:none}.vhrm-portal-card,.vhrm-login-box input[type=submit]{transition:none!important}}
@media(max-width:700px){.vhrm-login-shell{min-height:calc(100vh - 10px);padding:22px 12px 44px!important}.vhrm-login-brand{padding:10px 14px}.vhrm-login-company-logo{max-width:85vw;max-height:64px!important}.vhrm-login-heading h1{font-size:30px}.vhrm-login-box{padding:22px!important;border-radius:24px!important}.vhrm-portal{padding-left:8px!important;padding-right:8px!important}.vhrm-portal-card{min-height:112px;padding:14px}.vhrm-company-header{border-radius:20px!important}}


/* VHRM 2.0.1 — Admin payslip print isolation and A4 layout */
@page { size: A4 portrait; margin: 8mm; }
@media print {
  body.wp-admin:has(.vhrm-admin-payslip-wrap) * { visibility: hidden !important; }
  body.wp-admin:has(.vhrm-admin-payslip-wrap) .vhrm-admin-payslip-wrap,
  body.wp-admin:has(.vhrm-admin-payslip-wrap) .vhrm-admin-payslip-wrap * { visibility: visible !important; }
  body.wp-admin:has(.vhrm-admin-payslip-wrap) .vhrm-admin-payslip-wrap {
    position: fixed !important; inset: 0 !important; z-index: 2147483647 !important;
    width: 100% !important; height: auto !important; overflow: visible !important;
    margin: 0 !important; padding: 0 !important; background: #fff !important;
  }
  .vhrm-admin-payslip-wrap .vhrm-print-stack {
    width: 194mm !important; max-width: 194mm !important; margin: 0 auto !important;
    padding: 0 !important; overflow: visible !important;
  }
  .vhrm-admin-payslip-wrap .vhrm-payslip {
    width: 194mm !important; min-height: 0 !important; height: auto !important;
    box-sizing: border-box !important; margin: 0 auto !important; padding: 0 !important;
    box-shadow: none !important; border: 0 !important; page-break-after: auto !important;
    break-after: auto !important; overflow: visible !important;
  }
  .vhrm-admin-payslip-wrap .vhrm-payslip table { width: 100% !important; font-size: 9pt !important; }
  .vhrm-admin-payslip-wrap .vhrm-payslip th,
  .vhrm-admin-payslip-wrap .vhrm-payslip td { padding: 4px 5px !important; line-height: 1.2 !important; }
  .vhrm-admin-payslip-wrap .vhrm-payslip-header h1 { font-size: 16pt !important; }
  .vhrm-admin-payslip-wrap .vhrm-payslip-header h2 { font-size: 13pt !important; }
  .vhrm-admin-payslip-wrap .vhrm-bank { font-size: 9pt !important; }
  .vhrm-admin-payslip-wrap .vhrm-regulation,
  .vhrm-admin-payslip-wrap .vhrm-payroll-note { font-size: 8pt !important; }
  .vhrm-admin-payslip-wrap table, .vhrm-admin-payslip-wrap tr,
  .vhrm-admin-payslip-wrap .vhrm-bank, .vhrm-admin-payslip-wrap .vhrm-regulation {
    break-inside: avoid !important; page-break-inside: avoid !important;
  }
}
